2010-07-29 2 views
1

저는 MVC 플러그인의 다양한 기능을 잘 알고 있습니다. 예를 들어, 컨트롤러를 생성하고 컨트롤러에 액션 메소드를 작성한 다음 컨텍스트 메뉴에서 "뷰 생성"기능을 사용하여 컨트롤러에 대한 뷰를 생성 할 수 있습니다.ASP.NET MVC - 컨트롤러/액션 또는 뷰 또는 ViewModels 먼저?

질문은 무엇이 먼저 할 것을 권장합니까?

나는이 같은 자신에게 방법을 시작할 수있다 생각하고 있어요 :

  1. 계획을 밖으로 UI 등이 어떻게 보일까 및 작동 방법.
  2. 필요할 것으로 생각되는 컨트롤러 동작에 대한 단위 테스트를 작성하십시오.
  3. 컨트롤러 만들기 (컨트롤러 종류가 기본 CRUD 인 경우 가능).
  4. 각 컨트롤러 작업에 대해 ViewModel 클래스를 만듭니다.
  5. 각 ViewModel에 대해 강력한 형식의보기를 만듭니다.
  6. 뷰가 빌드 될 때 ViewModel을 통해 컨트롤러로 다시 작업하는 뷰 빌드를 시작합니다.

이 접근 방식에 대해 어떻게 생각하며 무엇을하고 있습니까?

+0

이런 질문을 끝내기 위해 투표 한 사람이 있는데 왜 그런지는 모르겠다. 내가 그것을 향상 시켜서 이런 식으로 느끼지 않도록 할 수있는 것이 있다면? –

답변

3

제대로 된 것 같습니다. 컨트롤러는이 세 가지 중에서 가장 쉽게 테스트 된 구성 요소입니다. 컨트롤러 우선으로 테스트 주도 개발 사례를 따르는 것이 더 쉽습니다.

기본 뷰 템플릿에 만족하지 못했지만 모든 MVC 전문가는 자신 만의 T4 템플릿을 알려줄 것입니다. 기본 뷰 템플릿과 마찬가지로 기존 뷰 모델 및 컨트롤러를 사용하면 더욱 효과적입니다.

+0

TDD에 대한 나에게 상기시키는 +1. –

+0

T4 템플릿을지지하는 +1, 템플릿없이 '살 수 없음' –

0

먼저 VM을 ViewModel로 정의하고 싶습니다. VM은 다양한 뷰에 필요한 엔티티의 전부 또는 일부로 구성 될 수 있습니다. VM을 분리하는 방법은 앱과 그 안에 논리 단위를 분할하는 방법에 따라 다릅니다.

기본형으로 VM을 갖게되면 선택한 데이터 저장소에 필요한 모델로 이동하게됩니다 (기존 데이터 저장소가 없으면 모델로 시작했을 것입니다). 그런 다음 컨트롤러에. 그런 다음 조롱 된 데이터 소스와 함께 TDD를 적용하여 컨트롤러 작업에서 반환 한 VM 개체가 예상과 일치하는지 확인할 수 있습니다. 마지막으로 실제로 UI를 생성 한 각 컨트롤러 동작에 대해 기본적으로 강력한 형식의 뷰 (ViewModel 객체 기반)를 생성합니다.

그런 다음 Jquery와 CSS를 사용하여 멋지게 표현할 수 있습니다.