ASP.NET Razor
1. 개요
ASP.NET Razor는 C# 프로그래밍 언어를 기반으로 하는 템플릿 마크업 구문으로, 프로그래머가 HTML을 쉽게 구성할 수 있도록 설계되었다. Razor는 코드 블록을 `@` 문자로 시작하며, HTML과 코드 간의 전환을 최소화하여 HTML 생성을 위한 최적화된 구문을 제공한다. 인텔리센스 지원, 레이아웃 지원, 단위 테스트 가능과 같은 장점을 가지고 있다.
이미지 준비중입니다.
| 개발자 | 마이크로소프트 |
|---|---|
| 개발 | 닷넷 재단 |
| 최초 릴리스 | 2010년 6월 |
| 안정화 버전 | 3.2.7 |
| 안정화 버전 출시일 | 2018년 11월 29일 |
| 미리보기 버전 | 4.0.0-rc1 |
| 미리보기 버전 출시일 | 2015년 11월 18일 |
| 저장소 | https://github.com/aspnet/Razor https://github.com/aspnet/AspNetWebStack https://github.com/dotnet/aspnetcore |
| 프로그래밍 언어 | C 샤프 비주얼 베이직 닷넷 HTML |
| 운영체제 | 마이크로소프트 윈도우 |
| 장르 | 웹 애플리케이션 프레임워크 |
| 라이선스 | 아파치 라이선스 2.0 |
| 웹사이트 | http://www.asp.net/web-pages |
| 파일 확장자 | .razor, .cshtml, .vbhtml |
|---|---|
| MIME 형식 | text/html |
| 개발 | 마이크로소프트 |
-
ASP.NET -
블레이저 (웹 프레임워크)
블레이저는 마이크로소프트가 개발한 웹 프레임워크로, .NET을 사용하여 웹 애플리케이션을 구축하며, C#과 Razor 구문을 사용해 컴포넌트를 만들고, 서버 측 및 클라이언트 측 렌더링을 모두 지원한다. -
ASP.NET -
ASP.NET 웹 폼
ASP.NET 웹 폼은 마이크로소프트의 ASP.NET 프레임워크를 사용하여 HTML, CSS, JavaScript와 서버 측 코드를 결합해 동적 웹 애플리케이션을 개발하는 기술로, 페이지 처리 지시어, 코드 비하인드 모델, 사용자 정의 컨트롤, 상태 관리, 템플릿 엔진 등을 제공하여 웹 개발 생산성을 높이고 이전 버전 ASP보다 성능, 보안, 개발 편의성이 개선되었다. -
2010년 소프트웨어 -
빅쿼리
빅쿼리는 구글의 데이터 분석 서비스로, 드레멜을 기반으로 수조 행의 데이터에 대한 빠른 쿼리를 가능하게 하며, 데이터 관리, 쿼리 실행, 서비스 통합, 접근 제어, 기계 학습 기능을 제공한다. -
2010년 소프트웨어 -
애플 북스
애플이 개발한 애플 북스는 iOS 및 macOS 기기에서 전자책 및 오디오북을 판매 및 소비하고 읽는 데 사용되는 앱으로, 다양한 사용자 설정 기능과 기기 간 동기화를 지원하지만, 독점적인 파일 형식 사용 및 앱 내 구매 정책 등으로 논란이 있다. -
C 샤프로 작성된 자유 소프트웨어 -
밴시 (미디어 플레이어)
밴시는 플러그인을 통해 기능을 확장할 수 있으며, Mac OS X, 리눅스, 윈도우를 지원하는 미디어 플레이어이다. -
C 샤프로 작성된 자유 소프트웨어 -
MonoDevelop
MonoDevelop은 .NET 플랫폼용 통합 개발 환경으로, 비주얼 스튜디오와 유사한 기능을 제공하며 다중 플랫폼 및 다양한 프로그래밍 언어를 지원하고, 오픈 소스 IDE로서 Visual Studio for Mac의 대안으로 고려될 수 있다.
2. 설계
Razor는 HTML과 코드 간의 전환을 최소화하면서 코드 중심의 템플릿 접근 방식을 사용하여 HTML 생성을 위한 최적화된 구문을 제공한다. 이 설계는 문자 및 키 입력의 수를 줄이고, HTML 코드 내에서 명시적으로 표시된 서버 블록을 요구하지 않음으로써 보다 유연한 코딩 워크플로우를 가능하게 한다.
2.1. 레이저 구문의 특징
Razor 구문은 C# 프로그래밍 언어를 기반으로 한 템플릿 마크업 구문으로 프로그래머가 HTML 구성 워크플로우를 사용할 수 있도록 한다. 코드 블록을 나타내기 위해 `<% %>` 기호와 함께 ASP.NET 웹 폼(.aspx) 마크업 구문을 사용하는 대신, Razor 구문은 @ 문자로 코드 블록을 시작하며 코드 블록을 명시적으로 닫을 필요가 없다.
Razor의 아이디어는 HTML과 코드 간의 전환을 최소화하면서 코드 중심의 템플릿 접근 방식을 사용하여 HTML 생성을 위한 최적화된 구문을 제공하는 것이다. 이 설계는 문자 및 키 입력의 수를 줄이고, HTML 코드 내에서 명시적으로 표시된 서버 블록을 요구하지 않음으로써 보다 유연한 코딩 워크플로우를 가능하게 한다. 다른 장점은 다음과 같다.
* 인텔리센스 지원 (문 자동 완성 지원)
* "레이아웃" 지원 (클래식 웹 폼의 "마스터 페이지" 개념에 대한 대안)
* 유닛 테스트 가능