'C#' 태그의 글 목록 (2 Page)
본문 바로가기
반응형

C#9

반응형
[Unity] 싱글톤(Singleton) 패턴을 제너릭 클래스로 구현해서 범용적으로 사용하는 방법 싱글톤(Singleton) 디자인 패턴은 게임 개발 시 단 하나의 유일한 인스턴스만 존재해야 하는 Manager 클래스 들을 구현하기 위해 가장 많이 사용되는 디자인 패턴이다. 개발 언어, 플랫폼과 관련없이 싱글톤 패턴은 언제 어디에서 호출 하든 동일한 인스턴스의 응답을 보장하기 위해 static 키워드를 사용하여 첫 호출 시 동적 할당한 자신의 인스턴스를 담아 게임이 종료 되는 순간까지 유지하는 방식으로 구현하게 된다. (다만, 유니티는 모든 GameObject가 MonoBehaviour 클래스를 상속받기 때문에 주의할 점이 있다.) SoundManager, NetworkManager, DataManager, CharacterManager, PopupManager, StageManager, GameMa.. 2019. 9. 18.
[Unity] MonoBehaviour 총정리 및 생명주기(Lifecycle) 1. 모노 (Mono) .Net은 마이크로 소프트(MicroSoft)에서 C언어에 자바의 장점을 수용하여 개발한 MS Windows 프로그램 개발 및 실행 환경이자 언어이다. 네트워크와 UI 등의 많은 작업을 캡슐화 하여 코딩의 효율성을 극대화 한 .Net 의 강력한 기능을 사용하기 위해서는 .Net 프레임워크가 설치 된 윈도우 환경이 있어야 했다. 이에 윈도우가 아닌 다른 플랫폼에서 .Net 프레임워크를 사용하기 위해 개발된 것이 얼마 전 MS에서 인수한 자마린(Xamarin) 사의 Mono 이다. Mono 는 .Net 프레임워크(framework) 의 오픈소스 개발 플랫폼으로서 크로스플랫폼(Cross-platform) 어플리케이션의 개발을 지원하며 C#과 CLI (Common Language Infr.. 2019. 9. 17.
[Unity] UniRx - ObservableWWW obsolete 해결 방법. UniTask를 사용하자 UniRx 의 ObservableWWW 은 매우 유용한 기능이지만 유니티 2018.3 이후 버전 부터는 실행시 아래와 같은 경고가 발생한다. 경고 CS0618 'ObservableWWW'은(는) 사용되지 않습니다. 'Use UnityWebRequest, a fully featured replacement which is more efficient and has additional features' 이는 Unity3D 에서 UnityEngine.WWW 가 deprecate 되면서 내부적으로 이를 사용하던 ObservableWWW 역시 obsolete 되었기 때문이다. 현재 유니티의 최신 버전인 2019.2 에서도 일단 작동 자체는 문제가 없지만 언제 기능이 삭제될지 알수 없기 때문에 가급적 수정해 주는 것.. 2019. 9. 12.
[C#/.NET] Nullable : ? (Null 조건 연산자) 코딩을 하다보면 인자로 넘긴 primitive 타입의 변수를 2가지 용도로 사용하는 경우가 있다. 예를 들면 int 형 변수를 갯수로 사용하기 위해 넘기되 그 값을 정상적인 상황에서 들어가지 않을 값으로 넣어서 예외처리를 하는 경우다. 1 2 3 4 5 6 7 8 9 10 public void TestFunc(int count) { if (count == -1) // or count == int.MaxValue { Reset(); return; } m_cnt = count; } c# 또는 bool 형의 추가 인자를 넣어서 기능을 분리할 수도 있지만 어쨌든 이쁘지 않다. 이런 경우 Null 조건 연산자를 사용하면 훨씬 깔끔하게 처리할 수 있다. 단지 변수 선언 시 ? 하나만 추가해 주면 값 타입(value.. 2019. 9. 3.