MVVM 패턴으로 개발을 하다보면 서로 다른 ViewModel 끼리나 ViewModel에서 View로 1:1 혹은 1:N으로 이벤트를 전달해야 하는 경우들이 많습니다. 이 경우 static class를 생성해서 전역에서 접근 가능한 event를 만들어 처리하거나 service class를 만들어서 의존성 주입을 통해 여러 ViewModel에서 접근 가능한 event 변수를 만들어 처리하는 등 여러가지 방법이 있습니다만 CommunityToolkit에서 제공하는 WeakReferenceMessenger 클래스를 사용하면 간단히 Pub/Sub 형태의 이벤트 큐를 구현 할 수 있습니다. 단순해서 사용하기 편리하지만 실무에서는 event 스트림에 debounce time을 적용한다거나 이벤트 버퍼를 ring 버..
1. DrawText 수정 cocos2d project에 Source files -> platform -> win32 -> CCDevice-win32.cpp Line 334를 보면 아래와 같은 코드가 있습니다. nLen = MultiByteToWideChar(CP_UTF8, 0, pszText, nLen, pwszBuffer, nBufLen); CP_UTF8을 CP_ACP로 바꿔주면 됩니다. nLen = MultiByteToWideChar(CP_ACP, 0, pszText, nLen, pwszBuffer, nBufLen); 2. UIEditBox 수정 cocos2d -> Source files -> ui -> UIEditorBox -> UIEditorBoxImpl-win32.cpp Line 372로 이동..
지난 글에서 Visual Studio Project를 생성하고 이전 소스 코드 및 resources 복사가 완료된 상태에서 이제 에러를 하나씩 잡아 나가야됩니다. 우선 코드 수정을 시작하기 전에 local git 생성을 해서 원본 상태를 기록하고 시작하는걸 추천 드립니다. 자, 준비가 되었으면 일단 컴파일을 한 번 시도해봅니다. 저같은 경우에는 1251개 에러가 일단 보이는데, 하나 씩 수정 해보겠습니다. 1. Director 초기화 코드 [cocos2d-x 2.1.2] // initialize director CCDirector *pDirector = CCDirector::sharedDirector(); pDirector->setOpenGLView(CCEGLView::sharedOpenGLView())..
요즘도 Cocos2d-x 라이브러리를 사용해서 게임 개발을 하는 개발사/인디게임개발자들이 있는지 라이브러리는 계속 업데이트는 되고 있어보입니다. 10년전에 만들어서 구글 play store에 등록해두고 아무 업데이트를 안해서 결국 2019년에 마켓에서 삭제되었는데 귀찮아서 내버려두다가 그래도 아까워서 다시 마켓에 등록하는 겸 해서 최신 4.0 버전으로 Cocos2d-x 라이브러리 적용을 결정했습니다. 그런데 3.0 버전대에 breaking changes가 너무 많아서 수정해야 되는 부분이 너무 많아서 상당한 시간이 걸렸습니다. 저처럼 2.x.x 버전대에서 최신 버전으로 migration하시는 분들이 있다면 도움이 될까 싶어 글로 남겨봅니다. 1. 4.0 버전 다운로드 받기 공식싸이트: https://co..
나: "요즘 대한민국 청년들이 결혼을 꺼리는 근본적인 이유가 뭘까?" ChatGPT: "대한민국 청년들이 결혼을 꺼리는 이유는 다양합니다. 그 중에서도 가장 근본적인 이유는 경제적인 어려움과 사회적 압박입니다. 첫째로, 대한민국의 젊은 층들은 고학력과 높은 경쟁력을 갖추어도 일자리를 찾기 어렵습니다. 그리고 대학 졸업 후에도 적절한 직업에 취업하더라도 소득 수준이 낮은 경향이 있습니다. 이러한 경제적 어려움으로 인해 결혼을 꺼리는 경우도 있습니다. 둘째로, 결혼은 대한민국 사회에서 여전히 중요한 사회적 이슈이며, 일부 청년들은 이에 대한 압박을 느끼고 있습니다. 그리고 결혼은 경제적으로 부담이 크기 때문에 결혼을 꺼리는 경우도 있습니다. 셋째로, 대한민국 사회에서는 여성의 결혼과 출산이 강요되는 경우가 ..
.NET 6 부터 C# language version 10을 지원합니다. 여러 개선 사항중에 Lambda expression에 몇가지가 개선이 되었는데요, 한 번 알아보겠습니다. 원문 링크: https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/operators/lambda-expressions#explicit-return-type 1. Natural type of a lambda expression 아래와 같이 가변형 변수에 람다식을 할당하면 이전 버전에서는 에러를 뿜어내서 var 대신 Func로 타입을 명시적으로 선언해줘야 하는 불편함이 있었는데 컴파일러가 이제 조금 똑똑해져서 람다 표현식으로 부터 추론해서 리턴하는 값이 타입을 알아서..