의견.png

"앵귤러제이에스"의 두 판 사이의 차이

위키원
이동: 둘러보기, 검색
(특징)
(특징)
48번째 줄: 48번째 줄:
 
**모델의 데이터와 뷰 데이터가 양방향 데이터 바인딩이 되어, 모델이 바뀌면 뷰 데이터도 같이 변경되고 반대도 마찬가지로 동작한다.
 
**모델의 데이터와 뷰 데이터가 양방향 데이터 바인딩이 되어, 모델이 바뀌면 뷰 데이터도 같이 변경되고 반대도 마찬가지로 동작한다.
 
*재사용이 쉬운 정적인 UI 컴포넌트를 만들 수 있다.
 
*재사용이 쉬운 정적인 UI 컴포넌트를 만들 수 있다.
** 기본 HTML에서 제공하지 않는 복잡도가 높은 UI컴포넌트(지도, 그래프, 정렬가능한 테이블 등)를 <map>, <graph>,<table
+
** 기본 HTML에서 제공하지 않는 복잡도가 높은 UI컴포넌트(지도, 그래프, 정렬가능한 테이블 등)를 <map>, <graph>,<table sortable
  
 
== 참고자료 ==
 
== 참고자료 ==

2019년 7월 24일 (수) 11:42 판

앵귤러제이에스(AngularJS)는 구글(Google)이 관리하는 오픈소스 기반의 웹 어플리케이션 프레임워크이다. 간략히 앵귤러(Angular) 또는 앵귤러닷제이에스(Angular.js)라고도 한다.

개요

앵귤러제이에스(AngularJS)는 자바스크립트로 제작되었으며 기본적으로 MVC(Model-View-Controller) 모델 지원과 같은 다른 웹 애플리케이션 프레임워크에서도 지원하는 기능을 제공할 뿐만 Two-way data binding이나 directive 같은 새로운 개념의 기술도 지원하여 웹 개발자들이 해야 할 많은 일의 단축 및 좀 더 테스트가 용이한 웹 애플리케이션 제작에 도움을 주는 기능을 제공하고 있다.

탄생 배경

앵귤러제이에스(AngularJS)는 2009년 구글(Google)의 직원인 MiskioHeavery의 개인 프로젝트에서 시작했다. 개인 차원에서 시작한 프로젝트였지만 초기 아이디어에 대한 반응이 좋아서 현재는 구글의 공식 지원 프로젝트가 됐다.

버전

Angular 1

  • 기존에 자바스크립트로 코딩했던 $scope를 사용

Angular 1. x

  • 컴포넌트(Component)가 도입

Angular 2

  • 처음으로 타입스크립트(TypeScript)가 사용되고, 구성방식, 아키텍처 사용하는 툴 등의 변경으로 새로운 앵귤러(Angular.JS)가 됨

Angular 3

  • 라우터 패키지 버전을 잘못 정렬해 Angular 4로 바로 넘어감

Angular 4

  • 새로운 프레임워크가 아닌 오류와 성능개선에 목표를 둔 버전(앵귤러 2와 하위호환 가능, 타입스크립트 상위호환 가능 등)

기능

크로스 플랫폼 지원

  • 앱과 비슷한 사용자 경험을 제공
  • 웹 기술로 네이티브 앱 만들기 가능
  • 웹에서 사용하던 Angular 코드를 있는 그대로 사용하면서, 네이티브 OS에서 제공하는 API를 활용 가능

최적화된 성능

  • 플랫폼에 최적화된 코드 생성
  • 유니버설 지원
  • 실행하는데 필요한 코드만 로드

최고의 생산성 제공

  • 간결하고 효율적인 탬플릿 문법
  • 프로젝트 생성, 컴포넌트 추가, 테스트, 빌드, 배포까지 활용할 수 있는 커맨드 라인 툴 제공
  • 최신 에디터와 IDE에서 코드 자동 완성, 에러 감지 등 개발에 도움이 되는 기능 제공

그 외 기능

  • Karma로 유닛 테스트를 실행하면 문제를 찾는 데 드는 시간 감소
  • Protractor로 시나리오 테스트 수행
  • 복잡한 애니메이션도 Angular에서 제공하는 직관적 API를 활용하면 간단한 코드로 구현 가능
  • 웹 접근성을 테스트할 수 있는 환경 제공

특징

  • 작성해야 하는 자바스크립트 코드량을 줄여준다.
    • MVC 구조를 제공하므로, MVC 구조를 위한 코드를 작성할 필요가 없다.
    • DOM을 선택하고 조작하는 자바스크립트 코드를 작성하지 않아도 된다.
    • 모델은 단순 자바스크립트 객체이고, setter, getter 함수를 작성할 필요가 없다.
    • 화면과 모델 사이의 양방향 데이터 바인딩을 지원하여, 서로를 동기화하는 코드를 작성할 필요가 없다.
  • AngularJS의 데이터 모델은 단순 자바스크립트 객체이다.
    • 대부분의 MVC 프레임워크는 기본 모델 클래스를 상속하여 모델 클래스를 만들지만, AngularJS는 그렇지 않다.
    • 모델의 데이터와 뷰 데이터가 양방향 데이터 바인딩이 되어, 모델이 바뀌면 뷰 데이터도 같이 변경되고 반대도 마찬가지로 동작한다.
  • 재사용이 쉬운 정적인 UI 컴포넌트를 만들 수 있다.
    • 기본 HTML에서 제공하지 않는 복잡도가 높은 UI컴포넌트(지도, 그래프, 정렬가능한 테이블 등)를 <map>, <graph>,<table sortable

참고자료

같이 보기


  의견.png 이 앵귤러제이에스 문서는 프로그래밍에 관한 토막글입니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 이 문서의 내용을 채워주세요.