2010.07.29 13:59
ASP.NET MVC의 버전 업이 가속도가 붙은 느낌입니다. 점점더 쓸만하고 안정된 버전으로 가고 있다는 반가움과 또 혹시 내가 잘 사용하던 기능이 없어지지나 않았을까? 라는 불안감도 함께 가지게 되는 일인 것 같습니다. 

 Microsoft의 개발 부문 부사장인 Scottgu는 자신의 블로그에서 ASP.NET MVC3 Preview 1을 발표 했습니다. 그리고 지금 바로 다운로드도 가능하게 링크도 함께 공개했습니다.
http://www.microsoft.com/downloads/details.aspx?FamilyID=cb42f741-8fb1-4f43-a5fa-812096f8d1e8&displaylang=en

벌써 ASP.NET MVC3 !!!
ASP.NET MVC3는 ASP.NET의 큰 버전업 중에 하나로 이야기 하고 있지만 ASP.NET MVC2와 호환이 가능하다라고 이야기 하고 있습니다. 또 기존의 MVC1,2에 비해서 새로운 기능이 추가 되었고 호환가능하다라고 이야기 하고 있습니다. 물론 이렇게 이야기 하면 안믿는 사람들이 많을 것 같습니다. 이제까지 새버전 나올 때 마다 홍역을 치뤄왔던 많은 얼리 어뎁터 개발자들이 있어왔기 때문입니다.

이번에는 정말 그렇지 않다라고 저 역시 보장은 아직 못하겠습니다만 이전 보다는 최소한 이런 부분에 있어서 많이 고려하고 있는 듯 하다는 것은 사실입니다.

특이한 점은 이전에 설명하다가 만 Razor를 View 엔진으로 사용할 수 있게 되었다는 점입니다. Razor를 사용하게 되었다는 점은 급한 사이트 혹은 가벼운 사이트는 최대한 그 성격에 맞는 가벼운 기술을 함께 사용할 수 있게 되었다는 의미입니다.
AddView9
또 Razor 뿐만 아니라 오픈소스로 진행중인  Spark, NHaml, NDjango등도 함께 포함시키고 있다고 합니다. 스캇의 블로그에 보면 자세하게 달라진 점이 소개되고 있는데 View 엔진의 변화 그리고 Java Script와 Ajax의 향상 그리고 모델 검증, Dependency Injection 등이 향상되었다고 합니다.

자세한 내용은 스캇의 블로그에 올라와 있는 글을 참조해 주세요~
http://weblogs.asp.net/scottgu/archive/2010/07/27/introducing-asp-net-mvc-3-preview-1.aspx 

개발자를 위한 IT블로그 영욱닷컴(http://www.YoungWook.com)
저작자 표시 변경 금지
신고
2010.07.28 10:29

레이저(Razor)라니? 갑자기 상당히 뜬금없는 이야기 갔지만 지금 제가 레이저라고 이름이 붙은 이 기술을 바라보는 마음은 낯설다는 느낌 보다는 반가운 느낌이 먼저 드는것은 왜일까요?
 Microsoft는 이미 ASP.NET이라는 웹 개발 플랫폼을 가지고 있습니다. ASP.NET는 기존의 ASP/PHP/JSP와는 다른 특징들을 가지고 있는 독특한 웹 플랫폼으로 자리 매김하고 있습니다. 

 ASP.NET은 내부적으로는 AJAX나 MVC를 지원하기 위한 기능들이 함께 제공되는데 최근에 .NET Fraemwork 4.0이 출시되면서 ASP.NET도 4.0으로 버전업이 되었습니다. 

 Razor라는 기술도 역시 하늘에서 뚝 떨어진 웹 개발 플랫폼이 아니라 ASP.NET의 기술중에 하나의 기술로 이해하는 관점이 필요합니다. 레이저는 이전의 Microsoft 웹 플랫폼에 하나가 더 올라간 형태로 이전의 모든 지식과 결과물을 부정하고 처음부터 새로 나온 것이 아니라는 것을 먼저 강조해 드리고 싶습니다.

<그림1>ASP.NET Razor의 계층

<그림1>에서 보시는 바와 같이 레이저라는 기술은 기존의 .NET Framework 4.0(반드시 4.0 입니다.)상에서 구현된 ASP.NET 4.0과 MVC 모델 위에 구현된 기술입니다. 제일 상단에 있는 Web Page라고 설명된 부분이 바로 지금 설명하고 있는 레이저라고 하는 부분에 해당합니다. 
 물론 레이저는 상당히 어렵고 복잡하며 하위의 모든 계층을 다 알아야 다룰 수 있는 엄청나게 어려운 기술인 것 같지만 실상은 전혀 그렇지 않고 그 반대 입니다.

 레이저는 쉽고 빠르게 그리고 강력하게라는 서로 다른 목적을 충족하기 위해서 나왔으며 따라서 쉽게 쓸 사람은 정말 엄청나게 쉽게 그리고 제대로 사용하려는 사람에게는 정말 제대로 사용할 수 있는 그런 유연함을 제공하기 위해서 많은 고민을 한 끝에 나온 결과물입니다. 그렇게 하기 위해서 .NET Framework 4.0상에 ASP.NET MVC 기반으로 제공되는 또 하나의 개발 레이어로 자리잡게 된 것입니다. 

그런 면에서는 ASP.NET MVC는 레이저의 아버지가 되는 샘입니다.
<그림2>아임 유어 파더
그럼 도대체 레이저란 무엇일까요? 무엇이길래 이렇게도 서두가 길 수 밖에 없는 것일까요?


도대체 레이저란 무엇일까?

기본적으로 레이저를 이해하면서 혼란을 줄이기 위해서 용어정리를 먼저 해야할 것 같습니다.

  • 레이저:
    Razor를 한 마디로 정의하면 'MVC 모델의 새로운 뷰 엔진' 정도로 정의할 수 있을 것 같습니다. 기존의 ASP.NET에서는 웹 폼을 실행할 수 있는 엔진이 있었듯이 레이저도 레이저 타입을 실행 시킬 수 있는 엔진의 이름이라고 이해 해야 합니다. 
  • 웹 페이지스(Web Pages):
    웹 페이지스는 실제로 레이저에 의해서 실행되는 파일 형태를 이야기 합니다. 웹 페이지는 현재 C#과 VB.NET 두 가지 형태를 지원하며 파일의 확장자는 cshtml, vbhtml 이렇게 두개의 파일 확장자를 가지고 있습니다.
  • 웹 메트릭스(Web Matrix)
    웹 메트릭스는 레이저 엔진을 사용할 수 있는 통합환경입니다. 개발도구 부터, 웹 서버, 데이터베이스 이렇게 세 가지 요소를 제공하고 있습니다.

사실 이 정도가 레이저를 이해하기 위해서 알아야 하는 선행적인 요소입니다.
아직 레이저라는 기술에 대해서 감이 오지 않았으리라 확신합니다. 개발자들은 코드를 보기 전에는 그게 무엇인지 잘 모르기 때문입니다. 다음 글에서는 레이저에 대해서 코드로 이야기 해 보도록 하겠습니다. ^^

개발자를 위한 IT블로그 영욱닷컴(http://www.YoungWook.com)

저작자 표시 변경 금지
신고