이른 새벽 아침부터, 노트북은 열고 ASP.NET MVC에 대한 자료들을 읽어 보았다.
ASP.NET 3.5의 Extention 기능으로 제공할 예정이고, 기능에 대한 세부 소개는 다음 링크를 참조하면 된다.
     - ASP.NET Model View Controller Applications

사실상, MVC 패턴은 ASP.NET에서 구현 불가능한 것은 아니였는데, 그런데 왜 갑작스럽게 ASP.NET에서 MVC를 논하냐고 이야기 한다면, 이제 MVC 패턴도 성숙기에 들어섰기 때문이 큰 이유일 것이다. 그리고 다른 이유는 ASP.NET에서도 다른 Java의 웹 프레임워크과 같이 개발자를 위한 새로운 Framwork를 제공한 필요성을 강하게 느끼고 있는 것 같다.

       - Test Faramework (Visual Studio 2008에 nUnit이 기본 제공됨)
       - Moc 객체를 쉽게 생석할 수 있도록 지원함
       - DI(Dependency Injection)과 IoC(Inversion of Control) 지원
       - SEO(search engine optimization) and REST(representational state transfer) 지원
       - Urll despatch를 위한 Controller 와 Routing

위와 같은 내용들이 주요 특징 들이다. 자세한 내용은 위의 링크와 다음에 발취한 ASP.NET MVC Feature 참조하면 이해에 도움이 될것이다.
 
The ASP.NET MVC framework provides the following features:

  • Separation of application tasks (input logic, business logic, and UI logic), testability, and test-driven development (TDD) by default. All core contracts within the MVC framework are interface-based and can be tested by using mock objects, which are simulated objects that imitate the behavior of actual objects in the application. You can unit-test the application without having to run the controllers in an ASP.NET process, which makes unit testing fast and flexible. You can use any unit-testing framework that is compatible with the .NET Framework.

  • An extensible and pluggable framework. The components of the ASP.NET MVC framework are designed so that they can be easily replaced or customized. You can plug in your own view engine, URL routing policy, action-method parameter serialization, and other components. The ASP.NET MVC framework also supports using existing Dependency Injection (DI) and Inversion of Control (IOC) container models. DI allows you to inject objects into a class, rather than relying on the class to create the object itself. IOC specifies that if an object requires another object, the first objects should get the second object from an outside source such as a configuration file. This facilitates testing.

  • A powerful URL-mapping component that lets you build applications that have comprehensible and searchable URLs. URLs do not have to include file-name extensions, and are designed to support URL naming patterns that work well for search engine optimization (SEO) and representational state transfer (REST) addressing.

  • Support for using the markup in existing ASP.NET page (.aspx files), user control (.ascx files), and master page (.master files) markup files as view templates. You can use existing ASP.NET features with the ASP.NET MVC framework, such as nested master pages, in-line expressions (<%= %>), declarative server controls, templates, data-binding, localization, and so on.

  • Support for existing ASP.NET features. ASP.NET MVC lets you use features such as forms and Windows authentication, URL authorization, membership and roles, output and data caching, session and profile state management, health monitoring, configuration system, the provider architecture, and other areas of ASP.NET.


 


WRITTEN BY
행복상자
행복한 마음으로 매일을 살고 싶은 개발자 입니다.

트랙백  0 , 댓글  0개가 달렸습니다.
secret

사실 오늘은 최근에 공개한 iPhone SDK 소개 키노츠와 데모 동영상을 보려고 PC를 열었다가  별 생각 없이 .Net MVC를 찾아들어가게 되었다. 의도한 것은 절대로 아니다.
요즘에 나온는 많은 웹 프레임워크들은 경쟁적으로 자기들이 많든 MVC Framework의 우수함을 알리는데 열을 올리고 있다. 그리고 실제로 쓰기에 충분할 만큼 안정성과 성능을 보장해 준다.

그러나 최근에 이도 종지부가 찍힌것 같다.(이는 절대적으로 내 개인적인 소견이다.) 새로 개발되거나 또는 기존 Framework가 버전업이 되면서 MVC Framework들이 유사해 지기 시작했으니 말이다. 이에 가장 큰 영향을 준 Framework는 역시 Rails이다. 개발자에게 필요한 것은(자신을 증명하는 것은), 마지막에 완성된 코드라고 누군가가 이야기 한것 같다. (아마도 최근에 한국에 찾아온 MS의 누군가 였었지요..)

개발자에게는 생산성과 안정성이 가장 큰 이슈이다. 이것은 마케팅적으로 영업적으로 대외에 홍보하는 포장되고 형식적인 것이 아니라, 프로젝트를 함에 있어서 필수적인 것이다.
웹 개발에 있어서는 배포된 Application의 성능과 안정성은 너무나 중요하다. (사실 이외에도 챙겨할 것들은 부지기수 이다.)

그런 면에서 RobyOnRails는 가히 충격적이었다. 마치 Visual Basic을 처음 접할때의 충격과도 같았다. MVC를 지원하기 위한 Simple하고도 직관적인 구조와 개발자가 부담감 없이 익힐 수 있는 기본 명령과 사용법등은 누구를 위한 Framework 인가를 바로 알수 있게 해준다.

지난 몇달전에 일민(Toby)이가 진행하는 KSUG 세미나를 통해, Spring 2.5에서 변화되는 Spring MVC 프레임워크의 변화를 접하게 되었는데, XML과 자바 Annotation 그리고 Auto Wiring를 이용하지만 그 근간은 Rails의 프레임워크라는 생각이 많이 들었다.

많은 프레임워크가 서로의 좋은 기능을 통해서 발전하는 것은 개발자로서는 행복한 선택을 할 수 있어서 즐겁다.

이야기가 길어졌는데, 오늘 내가 본 Micorsoft의 MVC 데모 동영상이다.  



너무나도 쉽고, Rails와 유사히지 않은가?
사실 회사에서는 요즘 .Net이냐 Java냐로 논란이 많다. 그래서 관심있게 본것이다.

아래의 링크들을 이용하면 다른 데모도 볼수 있다.
      - Part 1 - Displaying Data 
      - Part 2 - Editing Data and Making Forms 
      - Part 3 - Advanced Techniques 
      - Part 4 - Testing


WRITTEN BY
행복상자
행복한 마음으로 매일을 살고 싶은 개발자 입니다.

트랙백  0 , 댓글  0개가 달렸습니다.
secret