Design Pattern 5

MVVM에서 IoC의 중요성

MVVM 패턴을 사용할 때 초기화하는 패턴만 대략 10가지 정도의 패턴이 있습니다. 그중에 Expression Blend와 VisualStudio의 디자인 타임에 잘 보이게 하려면 리소스에 ViewModel Locator를 넣는게 가장 좋습니다. 당연히 중복을 피하고 싶고 컨트롤마다 로케이터가 생성될 필요는 없으니 Window나 UserControl 모두에 Locator 리소스를 넣기보다는 App의 리소스(글로벌 리소스)에 넣는 방법이 먼저 시도되는 것이 바람직합니다. 그런데 여기서 디자인타임 지원에 문제가 생깁니다. Blend에서 윈도우나 사용자컨트롤에 포함되어 있는 사용자컨트롤을 생성할 때, 글로벌 리소스에는 접근할 수가 없는거죠. 검색을 좀 해보면 이것을 Blend의 버그로 보는 경향이 많습니다. ..

2011.10.18

Commands in Silverlight with SLExtensions - 2

자이닉스 개발부 블로그에 커맨드 패턴 연재 중 두 번째 글을 썼다. 다음 번에 좀 더 상세한 내용을 다루도록해야겠다. Commands in Silverlight with SLExtensions - 1 Commands in Silverlight with SLExtensions - 22010년에는 적어도 한 주에 포스트 하나씩은 작성하려는 목표를 세웠다. 이미 12월부터 시작해서 12월에는 한 주에 하나씩 쓰는 데 성공했다. 기세를 몰아서 1년간 계속 유지해보자. 이 연재처럼 개발부 블로그에 쓰는 포스트까지 포함시키는 꾀를 조금 부리고는 있지만, 영양가 없는 포스트로 채우기보다는 조금이나마 의미있는 포스트로 채우는 게 좋다는 생각으로 그 정도는 허용해주기로 했다. 화이팅!

2010.01.01

Commands in Silverlight with SLExtensions - 1

이번 스프린트에서 맡은 작업에서 혼자 MVVM 패턴과 Command 패턴을 적용해본다며 삽질을 했다. 덕분에 예상보다 많은 일정을 소모하고, 다른 팀원들 도움도 받고... 빡빡한 일정임을 알면서 그것도 남들 몰래 이런 모험을 하는 건 웬 못되먹은 심보란 말인가. 함께 한 팀원들께 죄송스럽고 고마울 따름이다. 그런 의미에서라도 이번에 알게된 내용은 꼭! 잘 기록해서 남겨둬야겠다. 그리하여 시리즈 중 첫 번째. Commands in Silverlight with SLExtensions - 1

2009.12.26

[Translation] Silverlight Model-View-ViewModel Pattern 2

Silverlight Model-View-ViewModel Pattern 1에 이어서. 눈치챘을지도 모르겠지만, 이 코드는 의존성 주입(dependency injection)의 필요성을 외치고 있고, 내가 다음 블로그 포스트에서 다루려고 하는 게 바로 그것이다. 우리는 현재 어플리케이션 개체의 타입을 체크한다. Blend는 그것 스스로의 어플리케이션 개체를 제공하는 반면, 실제로 실행되는 어플리케이션은 우리가 만든 어플리케이션 개체를 우리에게 준다. 리팩토링이 필요한 다음 부분은 메인 사용자 인터페이스이다. 여기서 내가 말하는 것은 카드 주위의 모든 것이다. 어플리케이션은 Twitter 계정을 넣는 텍스트 상자 하나와 새 카드를 추가하기 위한 추가 버튼을 가지고 있다. 클릭 이벤트 핸들러에서 우리는 새 ..

2008.11.16

[Translation] Silverlight Model-View-ViewModel Pattern 1

Silverlight의 MVVM 패턴을 소개하고 있는 YouCard Re-visited: Implementing the ViewModel pattern 라는 글을 번역한 글이다. 아직 1/3 정도라서 틈나는 대로 이어서 번역하려고 한다. 실력 부족/시간 부족으로 딱히 좋은 번역이라고 하긴 힘들겠지만. Model-View-Control (MVC) 패턴은 더 이상 유명할 수가 없을 정도이다. ASP.NET MVC 프레임워크로 Microsoft도 이제 그 대열에 뛰어들었다. Ruby on Rails, Django (Python), Spring MVC (JAVA) 같은 다른 유명한 프레임워크들은 모두 이 유명한 패턴을 구현한 것이다. MVC 패턴은 요청-응답 기반이라는 웹의 본성에 아주 잘 들어맞는다. 요청이 ..

2008.11.14