 박재성
 박재성
                            http://netil.github.io/slides/angularjs/
                        
 
                        

컴파일은 DOM트리를 순회하면서 지시를 찾아 매칭하고(Compile 과정), 이후 지시자와 스코프를 결합(Link 과정)해 모델의 변경을 뷰에 출력하는 일련의 처리 작업을 의미
 
                 
                | 구분 | 종류 | 크기(byte) | Total(byte) | 
|---|---|---|---|
| DOM 제어(Jindo) | HTML | 1,164 | 4,951 (100%) | 
| JavaScript | 3,787 | ||
| AngularJS | HTML | 2,059 | 3,161 (63.84%) | 
| JavaScript | 1,102 | 
| 구분 | 학습 시간/예측 | 개발 서비스 종류 | 
|---|---|---|
| 사례1 | 6주 | 서비스 어드민 | 
| 사례2 | 7일(2일 학습 + 5일 개발) | 2개의 탭을 갖는 목록 | 
| 사례3 | JS 초급: 쉽게접근 JS 중/상급: 기존 방식의 익숙함으로 인한 시간필요 | APM, 저작도구, 프로모션 페이지, etc. | 
| 사례4 | 2주 | 컨텐츠와 목록 포함하는 엔드 페이지 | 

100개 목록 데이터가 HTML에 포함되어 처리되는 경우
← click to refresh →
데이터 편차에 따른 처리 속도
One-Way Data Binding vs. Two-Way Data Binding
<body ng-app="myApp">
<div ng-controller="myControllerList">
    <ul>
        <li ng-repeat="fruit in fruits">
            <span>{{fruit.name}}</span> / <span>{{fruit.qty}}</span>
        </li>
    </ul>
    <button onclick="location.reload()">reload</button>
</div>
<script type="text/javascript" src="https://code.angularjs.org/1.3.8/angular.min.js"></script>
<script type="text/javascript">
angular.module("myApp",[])
    .controller("myControllerList", function($scope) {
        $scope.fruits = [
            { name: '메론', qty: 9 },
            { name: '망고', qty: 3 },
            { name: '바나나', qty: 1 }
        ];
    });
</script>
</body>양방향 데이터 바인딩을 위해 모델로 지정된 요소에
여래 개의 이벤트가 바인딩 된다.
Angular 2.0에선 1.x과 호환성 갖지 않음 (주요 문법의 변경과 폐지)
 
                    
                 
                muchas gracias.