본문 바로가기

Software Engineering18

static 키워드의 의미와 용법 (class, fields, methods) Static 키워드의 의미 타 언어도 유사하지만 c#에서 static 키워드는 "객체화할 수 없는(cannot be instantiated)"의 의미를 가지고 있다. 객체화할 수 없기 때문에 class 앞에 static이 오게되면 해당 클래스의 객체는 선언될 수 없으며 멤버변수(필드)에 static이 오게되면 해당 변수는 전 객체가 공통으로 사용하는 변수가 되며 객체가 직접 참조할 수 없다 기본적으로는 객체화할 수 없다는 의미를 내포하지만 static 키워드는 필드, 클래스, 메소드, 프로퍼티, 생성자 등 붙는 위치에 따라 규칙이 미묘하게 변화한다. Static Class 클래스 앞에 사용된 경우에는 해당 클래스는 객체화할 수 없게 되어 클래스라는 설계도만 존재하는 형태가 된다.따라서 자연스럽게 해당 클.. 2022. 1. 18.
스프링부트에서 정적 파일(html, js, css) 자동 반영(liveload) 설정 하기(intellij, gradle 기준) 스프링부트에서 정적 파일(html, js, css) 자동 반영(LIVELOAD) 설정 하기(intellij, gradle 기준) build.gradle 의존성 추가 implementation 'org.springframework.boot:spring-boot-devtools' application.properties 추가 spring.devtools.livereload.enabled=true intellij settings 변경 compiler 탭에서 Build project automatically 체크 advanced setting 탭에서 Allow auto-make to start even if developed application is currently running 체크 혹시라도 안될 경우 브.. 2022. 1. 17.
[Rookiss 강좌] 3. Input Manager 본 내용은 'Rookiss님의 C#과 유니티로 만드는 MMORPG 게임 개발 시리즈 강좌'를 참고하여 작성되었습니다. Input manager가 필요한 이유 입력을 체크하는 로직을 update문에 넣는 것은 굉장히 비효율적이다. 다수의 게임 오브젝트에서 매번 프레임수만큼 이를 체크하고 있기 때문이다. 이에 싱글톤으로 구현된 매니저 객체 내에서만 이를 체크하도록 하여 만약 이벤트가 발생했을 경우 호출하는 방식으로 변경하자. 즉 각 게임 오브젝트가 체크하는 것이 아닌 매니저가 체크하게 된다. Input manager 코드 작성 델리게이트를 이용하여 특정 이벤트를 받아오는 KeyAction을 선언하고, action을 invoke할 수 있는 함수를 선언한다. monobehavior 를 상속하지 않는 것에 주의하.. 2021. 12. 27.
[Rookiss 강좌] 2. Transform (position, rotation) 본 내용은 'Rookiss님의 C#과 유니티로 만드는 MMORPG 게임 개발 시리즈 강좌'를 참고하여 작성되었습니다. Transform 컴포넌트에 대해 모든 게임오브젝트는 transform component를 가지고 있으며, 이는 해당 오브젝트의 position, object, scale을 조정하기 위해 사용된다. transform의 property는 다음 링크에서 확인할 수 있다. https://docs.unity3d.com/ScriptReference/Transform.html Unity - Scripting API: Transform Every object in a Scene has a Transform. It's used to store and manipulate the position, rota.. 2021. 12. 27.
[Rookiss 강좌] 1. Manager Object 및 Singleton 본 내용은 Rookiss님의 'C#과 유니티로 만드는 MMORPG 게임 개발 시리즈 강좌'를 참고하여 작성되었습니다. Manager Object란? Manager는 게임 프로그램의 뼈대가 되는 오브젝트로 어디서나 호출 할 수 있는 전역으로 선언되는 관리용 객체이다. 싱글톤(Singleton)이란? 싱글톤은 특정 클래스의 객체를 단 한번만 생성하여 이용하는 디자인패턴으로 유니티에서 Manager 객체를 싱글톤의 특성을 만족하게 구현하려면 다음 두가지 조건을 기억하자. 전역으로 선언 (어디서나 해당 객체를 이용할 수 있도록) 객체 필드와 객체 반환 메서드에 static 키워드를 사용 ( 클래스 필드, 메서드를 통해 유일성을 보장) Managers 클래스 및 반환 메서드를 전역으로 생성하고, 자신의 객체 필드.. 2021. 12. 20.
C# Visual Studio Code Auto Snippet and shortcut Auto snippet (visual studio) 다음과 같은 형태의 명령어 입력 후 TAB TAB하면 자동으로 코드 스니펫이 생성된다. 상세정 보는 여기 참조 (https://docs.microsoft.com/en-us/visualstudio/ide/visual-csharp-code-snippets?view=vs-2022) 자주 쓰는 것들은 다음과 같다. ctor: Default constructor prop: Property propg: Read-only property sim: static int main method svm: static void main method cw : console write line shortcut ctrl+m+m : 블록 숨기기/보이기 alt+enter : 고치기 s.. 2021. 12. 10.