안녕하세요! 이번 글에서는 WPF 예제 프로젝트를 통해 WPF에서 사용되는 디자인 패턴 중 하나인 MVVM패턴을 알아보도록 하겠습니다. 디자인 패턴은 소프트웨어 개발에서 반복적으로 발생하는 문제를 해결하기 위한 일종의 설계 템플릿이라고 할 수 있습니다. 이러한 패턴들은 이전에 검증된 해결책을 제공하여 개발자들이 특정 문제를 효과적으로 해결할 수 있도록 도와줍니다. 디자인 패턴은 코드의 구조와 관련이 있으며, 코드의 가독성, 재사용성 및 유지보수성을 개선하는 데 도움을 줄 수 있습니다. 프로젝트 생성 MVVM프로젝트를 생성해 줍니다. RelayCommand클래스 생성 [솔루션탐색기] → [프로젝트 우클릭] → [추가] → [새 항목] → [클래스] 를 통해 RelayCommand 클래스를 생성해 줍니다. ..
안녕하세요! 이번 글에서는 WPF 프로젝트에서 그래픽 요소를 다루는 방법에 대해 알아보겠습니다. WPF는 MFC의 GDI+와 다르게 벡터기반의 그래픽 렌더링을 사용하여 다양한 해상도에 대응할 수 있고, 그래픽 처리를 GPU에게 위임하여 성능을 향상시켜 풍부한 애니메이션 효과를 지원합니다. 프로젝트 생성 WPF프로젝트를 생성해 줍니다. 프로젝트 이름은 Graphic으로 설정해 주었습니다. MainWindow.xaml파일 수정 그래픽요소 예제의 동작확인을 위해 MainWindow.xaml파일을 아래와 같이 수정해 줍니다. 클릭 시 애니메이션을 출력 할 버튼을 추가하고 클릭 이벤트를 지정해 주었습니다. Ellipse를 사용하여 화면에 파란색 원을 출력하도록 코드를 작성하였습니다. 비하인드코드 수정 xaml에서..
안녕하세요! 이번 글에서는 WPF 프로젝트를 생성 후 메인윈도우에 배치한 컨트롤을 비하인드 코드에서 핸들링하는 방법에 대해 알아보겠습니다. 예제는 버튼을 클릭하면 텍스트 블록에 랜덤한 인사말이 출력되는 예제로 진행하겠습니다. WPF 프로젝트 생성 프로젝트 이름은 ControlHandling으로 정해주었습니다. xaml파일 수정 Grid 하위에 인사말을 변경해 줄 버튼과, 인사말을 랜덤 하게 나타낼 textBlock컨트롤을 추가해 주었습니다. 비하인드코드에서 추가해준 TextBlock컨트롤을 식별할 수 있도록 GreetingText라는 이름을 붙여주었습니다. 버튼에 [Click="Button_Click"] 선언으로 버튼클릭 시 비하인드 코드 내의 Button_Click 이벤트 메서드를 수행할 수 있도록 연..
안녕하세요! 이번 글에서는 Unity 2D 플랫폼에서 모바일 게임 개발 중 발생한 해상도 고정 방법에 대해 공유하고자 합니다. 모바일 기기의 종류가 많아짐에 따라 해상도 또한 종류가 많아 졌습니다. RTS게임의 경우, 모바일 기기 특성으로 인하여 상대방보다 해상도가 작을 때 굉장히 불리한 조건으로 작용될 수 있습니다. 이런 상황들을 예방하기 위해 모든 기기에서 똑같은 해상도로 플레이 할 수 있도록 대응하는 방법에 대해 알아보겠습니다. 프로젝트 생성 프로젝트를 생성 해 줍니다. 이 예제에서 프로젝트 이름은 ResolutionExample로 설정하였습니다. Canvas 생성 [Hierachy]창에서 우클릭 후 [CreateEmpty]를 클릭하여 UI 오브젝트를 만들어 줍니다. UI 오브젝트에서 우클릭 후 [..
안녕하세요! 이번 글에서는 WPF 프로젝트를 만들고, 생성되는 파일들의 역할과 용어를 알아보는 시간을 가져보겠습니다. 프로젝트 생성 비주얼 스튜디오를 실행하여 WPF프로젝트를 생성하여 줍니다. 기본파일 프로젝트 생성 직후 솔루션 탐색기에 *.xaml / *.cs 파일들이 생성됩니다. 이 파일들의 역할은 다음과 같습니다. [ MainWindow.xaml ] WPF 애플리케이션의 메인이 되는 창을 정의하는 데 사용됩니다. XAML을 사용하여 UI 요소와 레이아웃을 정의하며, 디자인과 레이아웃을 시각적으로 구성하는 데 주로 사용됩니다. [ MainWindow.xaml.cs ] MainWindow.xaml 파일의 코드 비하인드(Code-Behind) 파일입니다. UI 요소들과 상호 작용하고 비즈니스 로직을 처리..
안녕하세요! 이번 글에서는 C# 로깅(logging)에 대해 알아보겠습니다. 로깅은 프로그램의 상태와 동작을 기록하는 중요한 도구로, 디버깅, 문제 해결, 모니터링 등에 유용하게 사용됩니다. C#에서 로깅을 효과적으로 수행하는 방법과 널리 사용되는 로깅 라이브러리를 소개하겠습니다. 로깅 로깅은 프로그램이 실행 중에 발생하는 이벤트, 에러, 정보 등을 기록하는 과정을 말합니다. 이러한 기록을 통해 프로그램의 상태를 파악하고, 문제점을 발견하고 해결하는 데 도움을 줍니다. 특히, 운영 환경에서 프로그램이 어떻게 동작하는지 추적하고, 런타임 에러의 원인을 파악하는 데 매우 유용합니다. 방법 C#에서 로깅을 수행하는 방법은 여러 가지가 있습니다. 가장 간단하면서도 널리 사용되는 방법은 Console.WriteL..