Angular Introduction
앵귤러는 SPA 개발을 위한 구글의 오픈소스 자바스크립트 프레임워크입니다. 앵귤러의 철학중 하나는 "One framework. Mobile & Desktop" 으로 하나의 프레임워크로 모바일과 데스크탑을 개발할 수 있다는 것입니다.
Angular 의 특징
앵귤러의 특징들과 함께 Vue.js
와 React
와의 차이점과 공통점도 알아보며 왜 앵귤러를 사용하는지 살펴보겠습니다.
컴포넌트 기반 개발
컴포넌트 기반 개발은 vue.js
나 React
도 마찬가지라고 생각합니다. React, Vue.js, Angular 모두 컴포넌트기반 개발(CBD: Component Based Development)에 중심이 있습니다.
타입스크립트 사용
타입스크립트를 사용한다는 점에서 vue.js
는 아직 도입이 되지 않아 어려움이 있고 React
와 Angular
는 타입스크립트를 지원함에 따라 코드의 가독성을 높이고 컴파일 단계에서 오류를 예측할 수 있다는 장점이 있습니다.
개발도구의 통합 및 개발환경 구축 자동화
프레임워크 및 라이브러리를 도입시 개발환경을 구축한다는게 쉽지만은 않습니다. 예로 webpack
설정만 하더라도 방대하기 마련입니다. React
는 create-react-app
, Vue.js
는 vue-cli
, Angular
는 angular-cli
를 지원하여 폴더구조나 배포, 테스팅환경 등을 손쉽게 구축할 수 있다는 공통사항입니다.
적재적소에
만약 대규모 프로젝트를 진행한다면 리액트나 앵귤러가 좋은 대안이라고 할 수 있습니다. 그리고 둘 의 차이점중 하나는 html을 분리하는 앵귤러이냐 아니면 html 을 흡수하는 jsx 이냐로 나눌 수 있을 것 같습니다.
Vue.js
는 비교적 러닝커브가 낮고 가볍고, 구현속도가 빠르다는것이 장점입니다. 또한 html 을 분리하는 면에서는 앵귤러와 비슷하다고 볼 수 있지만 이름에서 볼 수 있듯이 view 에 최적화 되어있습니다. Vue.js
는 현재 성장하고 있어 지켜볼만 하다고 할 수 있습니다.