ASP.Net 5의 새로운 기능 :: 기능 설명
게시 됨: 2014-11-27 ASP.NET 5.0 소개
ASP.NET 5 는 처음부터 .NET 제품군의 레거시를 기반으로 구축되어 최신 웹 응용 프로그램을 구축합니다. ASP.Net 5.0에 새로 추가된 기능은 고객 요청과 피드백을 기반으로 구축되어 로컬 구내에서 배포되거나 실행될 애플리케이션에 최적화된 개발 프레임워크를 달성합니다. ASP.Net은 무시할 수 있는 오버헤드가 있는 소형 구성 요소로 구성되어 있으므로 개발자는 응용 프로그램을 구성하는 동안 유연성을 느낄 수 있습니다.
ASP.Net 5.0에 도입된 변경 사항은 최신 웹 응용 프로그램을 만드는 데 정확하게 적용됩니다. 이러한 변경은 확실히 개발 프로세스, 웹 호스팅 및 애플리케이션 유지 관리를 단순화할 것입니다. 레거시 응용 프로그램은 수정 없이 새 버전의 ASP.NET에서 실행됩니다. 그러나 ASP.NET 5의 새로운 기능을 활용하려면 코드를 새 프레임워크로 이식해야 합니다.
ASP.NET 5의 기능
단일 프로그래밍 모델에서 MVC, Web API 및 웹 페이지 조합
ASP.NET 5에서 MVC, Web API 및 웹 페이지는 MVC 6이라는 단일 프레임워크에 번들로 제공됩니다. 이 접근 방식은 프레임워크에서 중복을 제거하고 개발자가 앱을 더 쉽게 빌드할 수 있도록 합니다. 따라서 MVC, Web API 또는 Web Pages 컨텍스트 내에 있는지 여부에 따라 다른 코드를 작성할 필요가 없습니다.
다른 .NET Framework를 나란히 사용
애플리케이션이 특정 버전의 .NET Framework에 종속되는 경우 모든 앱은 동일한 버전의 .NET을 실행해야 합니다. 일부 앱에서 최신 버전의 .NET을 사용하려는 경우 모든 레거시 앱이 새 버전에서 적절하게 작동하는지 확신이 서지 않을 수 있습니다.
이 상황을 극복하기 위해 ASP.NET 5를 사용하여 배포 패키지 내에서 종속성을 정의할 수 있으므로 각 앱에 사용할 .NET 버전을 지정할 수 있습니다. 다른 앱의 경우 이전 .NET 버전을 유지하면서 일부 앱의 경우 최신 .NET 버전의 이점을 누릴 수 있습니다. 이러한 모든 .NET 버전은 문제 없이 나란히 실행할 수 있습니다.
자체 호스트 또는 IIS에서 호스트하는 기능
ASP.NET 5는 IIS에서 응용 프로그램을 호스팅하거나 자체 프로세스에서 자체 호스팅할 수 있는 유연성을 제공합니다. Core CLR을 대상으로 하는 응용 프로그램을 빌드할 때 배포 패키지 내에 번들된 모든 종속성을 사용하여 배포할 수 있습니다. 따라서 애플리케이션과 해당 종속성은 .NET의 시스템 설치와 완전히 독립적이며 독립적입니다. 이 새로운 기능을 사용하면 모든 유형의 장치 또는 호스팅 플랫폼에서 앱을 자유롭게 호스팅할 수 있습니다. 프로젝트를 해당 호스트에 배포하기만 하면 됩니다.
프로젝트를 다시 빌드하지 않고 브라우저에서 변경 사항 확인
Visual Studio 2015는 ASP.NET 응용 프로그램을 위한 가벼운 개발자 환경을 제공합니다. 코드를 변경하고 저장하고 브라우저를 새로 고치기만 하면 됩니다. 프로젝트를 다시 빌드하지 않고도 웹 브라우저에서 코드 변경 사항을 볼 수 있습니다.
Mono 런타임을 사용하여 OS X 및 Linux에서 실행할 수 있는 새롭고 유연한 크로스 플랫폼 런타임
이전에는 .NET Framework가 단일 설치로 제공되었습니다. .NET의 각 릴리스와 함께 기능이 점차적으로 추가되었지만 제거되지는 않았습니다. 따라서 프레임 워크의 크기는 지속적으로 커졌습니다. 이 접근 방식을 사용하면 .NET이 설치된 Windows 시스템이 모든 .NET 앱을 지원하지만 각 애플리케이션이 설치된 모든 기능을 사용하지 않을 수도 있습니다.
ASP.NET 5는 다음과 같은 세 가지 런타임을 제공하여 더 큰 유연성을 제공합니다.
- 전체 .NET CLR: 전체 .NET CLR은 Visual Studio 프로젝트의 기본 런타임입니다. 전체 API 세트를 제공하므로 이전 버전과의 호환성을 위한 최상의 옵션입니다.
- Core CLR(클라우드 최적화 런타임): Core CLR은 ASP.NET 5 프로젝트를 위한 순수 모듈식 런타임입니다. 구성 요소로 설계되었으므로 앱에 필요한 기능만 포함하면 됩니다. Core CLR은 전체 .NET CLR의 경우 약 200MB가 아닌 약 11MB입니다.
- 교차 플랫폼 CLR: Microsoft는 Linux 및 Mac OS X용 교차 플랫폼 런타임을 출시할 예정입니다. 이를 통해 Mac 및 Linux 시스템에서 .NET 앱을 개발하고 실행할 수 있습니다. 출시될 때까지 플랫폼 간 개발을 위해 Mono CLR을 사용할 수 있습니다. 기본적으로 Visual Studio 프로젝트는 전체 .NET CLR을 사용합니다. 프로젝트의 구성 속성에서 Core CLR을 지정할 수 있습니다.
최고의 처리량을 위한 모듈식 HTTP 요청 파이프라인
ASP.NET 5에서는 모듈화되고 빠른 새로운 HTTP 요청 파이프라인이 도입되었습니다. 이 새로운 파이프라인을 사용하면 애플리케이션을 실행하는 데 필요한 구성 요소만 추가할 수 있습니다. 이 접근 방식은 파이프라인의 오버헤드를 줄여 애플리케이션에서 향상된 출력을 얻을 수 있습니다.
NuGet 패키지 관리자를 통한 종속성 관리
ASP.NET 5를 사용하면 프로젝트에 어셈블리 참조를 추가할 필요가 없는 방식으로 프로젝트의 종속성을 관리할 수 있습니다. 대신 NuGet 패키지 관리자를 통해 NuGet 패키지를 추가하거나 프로젝트에 사용된 NuGet 패키지 및 버전을 나열하는 JSON 파일(project.json)을 편집할 수 있습니다. 종속성을 추가하려면 프로젝트.json 파일에 NuGet 패키지의 이름과 버전 번호를 입력하기만 하면 됩니다.
project.json 파일에는 프로젝트에 직접 추가된 NuGet 패키지만 포함됩니다. 일부 다른 패키지에 종속된 NuGet 패키지를 추가하면 해당 보조 종속성이 로드되지만 project.json 파일에는 나열되지 않습니다. 이 접근 방식은 project.json 파일을 덜 어색하고 관리하기 쉽게 유지합니다. 모든 텍스트 편집기를 통해 Project.json 파일에 종속성을 추가할 수 있습니다.
클라우드 최적화 환경 구성
ASP.NET 5를 기반으로 구축된 프로젝트는 클라우드 플랫폼에 고도로 최적화되어 쉽게 배포할 수 있습니다. Visual Studio 2015에는 Web.config 파일 대신 새로운 환경 구성이 도입되었습니다. 다양한 소스(예: JSON, XML 또는 환경 변수)에서 명명된 값을 요청할 수 있습니다. 각 환경에 대한 값을 지정할 수 있으며 배포 후 앱은 단순히 올바른 값을 읽습니다.
.NET Foundation을 통한 오픈 소스 및 GitHub에서 기여
전체 ASP.NET 5 코드는 GitHub에서 사용할 수 있습니다. GitHub는 모든 개발을 위한 리포지토리로 사용되므로 어떤 변경 사항이 언제 변경되었는지 확인할 수 있습니다. 코드를 다운로드하고, ASP.NET 기능의 사용자 지정 구현을 빌드하고, GitHub에서 변경 사항을 제출할 수 있습니다.
레거시 애플리케이션에 대한 걱정 없음
이전 버전의 ASP.NET에서 빌드한 응용 프로그램은 계속해서 새 .NET Framework에서 작동합니다. ASP.NET 5의 새로운 기능이 필요하지 않은 경우 이러한 응용 프로그램을 업데이트하거나 이식할 필요가 없습니다.
결론
확실히 Microsoft는 최신 웹 앱을 개발하기 위해 ASP.NET 5에서 몇 가지 혁신적인 디자인 수준 변경을 수행했습니다. ASP.NET 5의 가장 매력적인 부분은 완전히 오픈 소스이며 GitHub에서 사용할 수 있다는 것입니다. Microsoft는 개발자가 코드를 이해하고 개선 사항에 기여할 수 있도록 GitHub에서 ASP.NET 5를 개발했습니다. Microsoft는 ASP.Net을 오픈 소스로 만들어 커뮤니티와 개발자에게 코드를 다운로드하고 ASP.NET의 사용자 지정 구현을 빌드하도록 초대했습니다.