- SPA( Single Page Application ) 개발을 위한 구글의 오픈소스 자바스크립트 프레임워크
- 웹 애플리케이션, 모바일 웹, 네이티브 모바일과 데스크톱 애플리케이션까지 프론트엔드 개발에 필요한 대부분의 기능을 갖추고 있다.
- TypeScript를 주력 언어로 채택하여 대규모 애플리케이션 개발에 보다 적합한 환경을 제공한다.
- 브레이킹 체인지( 이전 버전과 호환성이 없는 변경 )가 빈번하게 발생하여 많은 개발자를 혼란스럽게 만들었지만 버전 5 이후로 안정된 모습을 보이고 있어 1 -> 2 같은 큰 혼란은 더이상 없을것으로 AngularEssentials 책 저자는 예상한다.
- 장점
- 개선된 개발 생산성
- 컴포넌트 기반 개발( Component Based Development )
- TypeScript 도입
- 개발 도구의 통합 및 개발환경 구축 자동화
- Angular CLI( Command Line Interface )를 통해 간편한 개발환경 구축 지원
- 성능의 향상
- 다이제스트 루프로 인한 성능 저하 문제의 해결( AngularJS의 단점 보완 )
- 양방향 데이터 바인딩시 와처가 추가되고 와처에 대해 다이제스트 루프가 실행되기 때문에 와처가 늘어날수록 성능이 떨어지는 문제
- AoT( Ahead of Time ) 컴파일
- 사전 컴파일 방식으로 ngIf 같은 구조 디렉티브를 브라우저가 실행 가능한 코드로 변환해야 하는데 이 과정을 런타임에 실시하지 않고 사전에 컴파일하여 실행 속도를 향상시키는 기법이다.
- 지연로딩
- SPA의 태생적 단점을 극복하기 위한 대안으로 애플리케이션이 필요한 시점에 필요한 모듈만 로딩하는 방식이다.
- 코드 최적화
- 모바일 퍼스트를 지향하는 고성능 프레임워크를 표방하고 있는 만큼 코드 최적화는 앞으로도 계속 진행될 것이다.
Angular Essentials 이웅모 저
'AngularEssentials' 카테고리의 다른 글
템플릿 리터럴 (0) | 2018.11.15 |
---|---|
let, const, 블록 레벨 스코프 (0) | 2018.11.15 |
package.json과 의존성 관리 (0) | 2018.11.14 |
npm (0) | 2018.11.14 |
Node.js (0) | 2018.11.14 |
댓글