SlideShare a Scribd company logo
㈜유미테크
1. What is Angular?
• Angular is a structural framework for dynamic wep app.
– Let’s you use HTML as a template language.
– Let’s you extend HTML’s syntax to express your app’s components.
– Eliminates much of the code you write through data binding and dependency
injection.
• HTML
– A greate declarative language for static documents.
– But, do not contain much in the way of creating application.
• Angular teaches the browser new syntax.
– Data binding, as in {{}}
– DOM control structures for repeating/hiding DOM fragments
– Support for forms and form validation.
– Attaching code-behind to DOM elements..
– Grouping of HTML into reusable components.
사내전파교육 제목명을 적어주세요.2
2. A Complete client-side solution
• Handles all of the DOM and AJAX code you once wrote by hand, and make
sure that you can easily change at a starting point.
– Everything you need: data-binding, basic templating directives, form validation,
routing, deep-linking, reusable components, dependency injection.
– Testability story: unit-testing, end-to-end testing, mocks, test harness.
– Seed application with directory layout and test scripts as a starting point.
사내전파교육 제목명을 적어주세요.3
3. Angular Sweet Spot
• Angular simplifies application development by presenting a higher level of
abstraction to the developer.
• Every app is a good fit for Angular.
• Angular was built with the CRUD application in mind.
사내전파교육 제목명을 적어주세요.4
4. The Zen of Angular
• Angular is built around the belief that declarative code is better than
imperative when it comes to building UIs and wiring software components
together.
– Good to decouple DOM manipulation from app logic.
– Good to regard app testing as equal in importance to app writing.
– Excellent to decouple the client side of an app from the server side.
– Helpful indeed if the framework guides developers through the entire journey of
building an app: from designing the UI, through writing the business logic, to testing.
– Good to make common tasks trivial and difficult tasks possible.
사내전파교육 제목명을 적어주세요.5
5. Angular frees you from what!
• Registering callbacks:
– It vastly reduces the amount of JavaScript coding you have to do, and it makes it
easier to see what your application does.
• Manipulating HTML DOM programmatically:
– By declaratively describing how the UI should change as your application state
changes, you are freed from low-level DOM manipulation tasks.
• Marshaling data to and from the UI:
– Angular eliminates almost all of this boilerplate, leaving code that describes the
overall flow of the application rather than all of the implementation details.
• Writing tons of initialization code just to get started:
– With Angular you can bootstrap your app easily using services, which are auto-
injected into your application in a Guice-like dependency-injection style.
사내전파교육 제목명을 적어주세요.6
6. Conceptual Overview
• Template
– HTML with additional markup
• Directives
– extend HTML with custom attributes and elements
• Model
– the data that is shown to the user and with which the user interacts
• Scope
– context where the model is stored so that controllers, directives and expressions can
access it
• Expressions
– access variables and functions from the scope
• Compiler
– parses the template and instantiates directives and expressions
• Filter
– formats the value of an expression for display to the user
사내전파교육 제목명을 적어주세요.7
6. Conceptual Overview Cont’d
• View
– what the user sees (the DOM)
• Data Binding
– sync data between the model and the view
• Controller
– the business logic behind views
• Dependency Injection
– Creates and wires objects / functions
• Injector
– dependency injection container
• Module
– configures the Injector
• Service
– reusable business logic independent of views
사내전파교육 제목명을 적어주세요.8
7. Bootstrap (one of details)
• Angular <script> tag
– Placing script tags at the end of the page improves app load time because the HTML
loading is not blocked by loading of the angular.js script.
– Place ng-app to the root of your application, typically on the <html> tag if you want
angular to auto-bootstrap your application.
사내전파교육 제목명을 적어주세요.9
7. Bootstrap Cont’d
• Angular initialize Process
– initializes automatically upon DOMContentLoaded event or when the angular.js script
is evaluated if at that time document.readyState is set to 'complete'.
– load the module associated with the directive.
– create the application injector
– compile the DOM treating the ng-app directive as the root of the compilation.
사내전파교육 제목명을 적어주세요.10
7. Bootstrap Cont’d
• Angular automatic & manual initialize script code.
– Automatic
– Manual
사내전파교육 제목명을 적어주세요.11
8. HTML Compiler (one of details)
• Overview
– what is need is a way to teach the browser new HTML syntax.
– AngularUS provides HTML directives extensions
– You will create a Domain Specific Language for building your application.
• Compiler
– Compile: traverse the DOM and collect all of the directives.
– Link: combine the directives with a scope and produce a live view.
사내전파교육 제목명을 적어주세요.12
8. HTML Compiler Cont’d
• Other templating system
– any changes to the data need to be re-merged with the template and then
innerHTMLed into the DOM.
• AngularJS
– Angular compiler consumes the DOM, not string templates and a linking function,
which when combined with a scope model results in a live view is the result.
– The view and scope model bindings are transparent.
사내전파교육 제목명을 적어주세요.13
Other templating system Angular JS
8. HTML Compiler Cont’d
• Other’s approaches
– reading user input and merging it with data
– clobbering user input by overwriting it
– managing the whole update process
– lack of behavior expressiveness
• AngularJS’s approaches
– approach produces a stable DOM.
– The DOM element instance bound to a model item instance does not change for the
lifetime of the binding.
사내전파교육 제목명을 적어주세요.14
8. HTML Compiler Cont’d
• Compile directives
– $compile traverses the DOM and matches directives.
– $compile links the template with the scope by calling the combined linking function.
– This in turn will call the linking function of the individual directives, registering
listeners
– The result of this is a live binding between the scope and the DOM. So at this point,
a change in a model on the compiled scope will be reflected in the DOM.
사내전파교육 제목명을 적어주세요.15
9. Code compare vs jQuery
• When you input the name, reflect it to the input text.
사내전파교육 제목명을 적어주세요.16
via jQuery via AngularJS
10. References
• AnguarJS Official Site
– http://www.angularjs.org
• Developer Guide
– http://docs.angularjs.org/guide
• API
– http://docs.angularjs.org/api
사내전파교육 제목명을 적어주세요.17

More Related Content

What's hot

Angularjs overview
Angularjs  overviewAngularjs  overview
Angularjs overview
VickyCmd
 
Itroducing Angular JS
Itroducing Angular JSItroducing Angular JS
Itroducing Angular JS
Carlos Emanuel Mathiasen
 
Angularjs PPT
Angularjs PPTAngularjs PPT
Angularjs PPT
Amit Baghel
 
Angular crash course
Angular crash courseAngular crash course
Angular crash course
Birhan Nega
 
Introduction to AngularJS Framework
Introduction to AngularJS FrameworkIntroduction to AngularJS Framework
Introduction to AngularJS Framework
Raveendra R
 
CTTDNUG ASP.NET MVC
CTTDNUG ASP.NET MVCCTTDNUG ASP.NET MVC
CTTDNUG ASP.NET MVC
Barry Gervin
 
Introduction to Angular Js
Introduction to Angular JsIntroduction to Angular Js
Introduction to Angular Js
Professional Guru
 
Go live with angular 4
Go live with angular 4Go live with angular 4
Go live with angular 4
Indra Gunawan
 
Mastering angular - Dot Net Tricks
Mastering angular - Dot Net TricksMastering angular - Dot Net Tricks
Mastering angular - Dot Net Tricks
Gaurav Singh
 
AngularJS - introduction & how it works?
AngularJS - introduction & how it works?AngularJS - introduction & how it works?
AngularJS - introduction & how it works?
Alexe Bogdan
 
Angular 4 fronts
Angular 4 frontsAngular 4 fronts
Angular 4 fronts
badal dubla
 
Angularjs tutorial
Angularjs tutorialAngularjs tutorial
Angularjs tutorial
HarikaReddy115
 
AngularJS
AngularJSAngularJS
Adobe Experience Manager Core Components
Adobe Experience Manager Core ComponentsAdobe Experience Manager Core Components
Adobe Experience Manager Core Components
Gabriel Walt
 
Ng talk
Ng talkNg talk
OCTO BOF - How to build Netvibes with AngularJS
OCTO BOF - How to build Netvibes with AngularJSOCTO BOF - How to build Netvibes with AngularJS
OCTO BOF - How to build Netvibes with AngularJS
Jonathan Meiss
 
Angular 4 and TypeScript
Angular 4 and TypeScriptAngular 4 and TypeScript
Angular 4 and TypeScript
Ahmed El-Kady
 
Introduction to AngularJS By Bharat Makwana
Introduction to AngularJS By Bharat MakwanaIntroduction to AngularJS By Bharat Makwana
Introduction to AngularJS By Bharat Makwana
Bharat Makwana
 
Angular js 1.3 presentation for fed nov 2014
Angular js 1.3 presentation for fed   nov 2014Angular js 1.3 presentation for fed   nov 2014
Angular js 1.3 presentation for fed nov 2014
Sarah Hudson
 
Angular js presentation at Datacom
Angular js presentation at DatacomAngular js presentation at Datacom
Angular js presentation at Datacom
David Xi Peng Yang
 

What's hot (20)

Angularjs overview
Angularjs  overviewAngularjs  overview
Angularjs overview
 
Itroducing Angular JS
Itroducing Angular JSItroducing Angular JS
Itroducing Angular JS
 
Angularjs PPT
Angularjs PPTAngularjs PPT
Angularjs PPT
 
Angular crash course
Angular crash courseAngular crash course
Angular crash course
 
Introduction to AngularJS Framework
Introduction to AngularJS FrameworkIntroduction to AngularJS Framework
Introduction to AngularJS Framework
 
CTTDNUG ASP.NET MVC
CTTDNUG ASP.NET MVCCTTDNUG ASP.NET MVC
CTTDNUG ASP.NET MVC
 
Introduction to Angular Js
Introduction to Angular JsIntroduction to Angular Js
Introduction to Angular Js
 
Go live with angular 4
Go live with angular 4Go live with angular 4
Go live with angular 4
 
Mastering angular - Dot Net Tricks
Mastering angular - Dot Net TricksMastering angular - Dot Net Tricks
Mastering angular - Dot Net Tricks
 
AngularJS - introduction & how it works?
AngularJS - introduction & how it works?AngularJS - introduction & how it works?
AngularJS - introduction & how it works?
 
Angular 4 fronts
Angular 4 frontsAngular 4 fronts
Angular 4 fronts
 
Angularjs tutorial
Angularjs tutorialAngularjs tutorial
Angularjs tutorial
 
AngularJS
AngularJSAngularJS
AngularJS
 
Adobe Experience Manager Core Components
Adobe Experience Manager Core ComponentsAdobe Experience Manager Core Components
Adobe Experience Manager Core Components
 
Ng talk
Ng talkNg talk
Ng talk
 
OCTO BOF - How to build Netvibes with AngularJS
OCTO BOF - How to build Netvibes with AngularJSOCTO BOF - How to build Netvibes with AngularJS
OCTO BOF - How to build Netvibes with AngularJS
 
Angular 4 and TypeScript
Angular 4 and TypeScriptAngular 4 and TypeScript
Angular 4 and TypeScript
 
Introduction to AngularJS By Bharat Makwana
Introduction to AngularJS By Bharat MakwanaIntroduction to AngularJS By Bharat Makwana
Introduction to AngularJS By Bharat Makwana
 
Angular js 1.3 presentation for fed nov 2014
Angular js 1.3 presentation for fed   nov 2014Angular js 1.3 presentation for fed   nov 2014
Angular js 1.3 presentation for fed nov 2014
 
Angular js presentation at Datacom
Angular js presentation at DatacomAngular js presentation at Datacom
Angular js presentation at Datacom
 

Viewers also liked

Angular js Frontenders Valencia
Angular js Frontenders ValenciaAngular js Frontenders Valencia
Angular js Frontenders Valencia
Javier Ruiz
 
¿Qué es AngularJS? Un vistazo de 45 minutos
¿Qué es AngularJS? Un vistazo de 45 minutos¿Qué es AngularJS? Un vistazo de 45 minutos
¿Qué es AngularJS? Un vistazo de 45 minutos
Software Guru
 
Por qué AngularJS
Por qué AngularJSPor qué AngularJS
Por qué AngularJS
Alvaro Yuste Torregrosa
 
Angular js
Angular jsAngular js
Angular js
Knoldus Inc.
 
Angular js for beginners
Angular js for beginnersAngular js for beginners
Angular js for beginners
Munir Hoque
 
Angular js
Angular jsAngular js
Angular js
ParmarAnisha
 
Building modular enterprise scale angular js applications
Building modular enterprise scale angular js applicationsBuilding modular enterprise scale angular js applications
Building modular enterprise scale angular js applications
Jonathan Fontanez
 
UI DEVELOPER/ ANGULAR JS
UI DEVELOPER/ ANGULAR JSUI DEVELOPER/ ANGULAR JS
UI DEVELOPER/ ANGULAR JS
Cristina Ceban
 

Viewers also liked (8)

Angular js Frontenders Valencia
Angular js Frontenders ValenciaAngular js Frontenders Valencia
Angular js Frontenders Valencia
 
¿Qué es AngularJS? Un vistazo de 45 minutos
¿Qué es AngularJS? Un vistazo de 45 minutos¿Qué es AngularJS? Un vistazo de 45 minutos
¿Qué es AngularJS? Un vistazo de 45 minutos
 
Por qué AngularJS
Por qué AngularJSPor qué AngularJS
Por qué AngularJS
 
Angular js
Angular jsAngular js
Angular js
 
Angular js for beginners
Angular js for beginnersAngular js for beginners
Angular js for beginners
 
Angular js
Angular jsAngular js
Angular js
 
Building modular enterprise scale angular js applications
Building modular enterprise scale angular js applicationsBuilding modular enterprise scale angular js applications
Building modular enterprise scale angular js applications
 
UI DEVELOPER/ ANGULAR JS
UI DEVELOPER/ ANGULAR JSUI DEVELOPER/ ANGULAR JS
UI DEVELOPER/ ANGULAR JS
 

Similar to Angular js

4 Anguadasdfasdasdfasdfsdfasdfaslar (1).pptx
4 Anguadasdfasdasdfasdfsdfasdfaslar (1).pptx4 Anguadasdfasdasdfasdfsdfasdfaslar (1).pptx
4 Anguadasdfasdasdfasdfsdfasdfaslar (1).pptx
tilejak773
 
Angular js interview question answer for fresher
Angular js interview question answer for fresherAngular js interview question answer for fresher
Angular js interview question answer for fresher
Ravi Bhadauria
 
Angularjs basic part01
Angularjs basic part01Angularjs basic part01
Angularjs basic part01
Mohd Abdul Baquee
 
Single Page Applications in SharePoint with Angular
Single Page Applications in SharePoint with AngularSingle Page Applications in SharePoint with Angular
Single Page Applications in SharePoint with Angular
Sparkhound Inc.
 
What are the key distinctions between Angular and AngularJS?
What are the key distinctions between Angular and AngularJS?What are the key distinctions between Angular and AngularJS?
What are the key distinctions between Angular and AngularJS?
Albiorix Technology
 
Angular patterns
Angular patternsAngular patterns
Angular patterns
Premkumar M
 
Angular 9
Angular 9 Angular 9
Angular 9
Raja Vishnu
 
Angular Best Practices To Build Clean and Performant Web Applications
Angular Best Practices To Build Clean and Performant Web ApplicationsAngular Best Practices To Build Clean and Performant Web Applications
Angular Best Practices To Build Clean and Performant Web Applications
Albiorix Technology
 
Intoduction to Angularjs
Intoduction to AngularjsIntoduction to Angularjs
Intoduction to Angularjs
Gaurav Agrawal
 
A perfect choice for web apps
A perfect choice for web apps A perfect choice for web apps
A perfect choice for web apps
adhyathakkar10
 
AngularJS is awesome
AngularJS is awesomeAngularJS is awesome
AngularJS is awesome
Eusebiu Schipor
 
Dive into Angular, part 1: Introduction
Dive into Angular, part 1: IntroductionDive into Angular, part 1: Introduction
Dive into Angular, part 1: Introduction
Oleksii Prohonnyi
 
Angular Js
Angular JsAngular Js
Angular Js
Knoldus Inc.
 
Modern webtechnologies
Modern webtechnologiesModern webtechnologies
Modern webtechnologies
Besjan Xhika
 
Angularjs for kolkata drupal meetup
Angularjs for kolkata drupal meetupAngularjs for kolkata drupal meetup
Angularjs for kolkata drupal meetup
Goutam Dey
 
Introduction To Angular.js - SpringPeople
Introduction To Angular.js - SpringPeopleIntroduction To Angular.js - SpringPeople
Introduction To Angular.js - SpringPeople
SpringPeople
 
Training On Angular Js
Training On Angular JsTraining On Angular Js
Training On Angular Js
Mahima Radhakrishnan
 
How Does Angular Work?
How Does Angular Work?How Does Angular Work?
How Does Angular Work?
Albiorix Technology
 
Integrating AngularJS into the Campus CMS
Integrating AngularJS into the Campus CMSIntegrating AngularJS into the Campus CMS
Integrating AngularJS into the Campus CMS
Tom Borger
 
5 benefits of angular js
5 benefits of angular js5 benefits of angular js
5 benefits of angular js
OnGraph Technologies Pvt. Ltd.
 

Similar to Angular js (20)

4 Anguadasdfasdasdfasdfsdfasdfaslar (1).pptx
4 Anguadasdfasdasdfasdfsdfasdfaslar (1).pptx4 Anguadasdfasdasdfasdfsdfasdfaslar (1).pptx
4 Anguadasdfasdasdfasdfsdfasdfaslar (1).pptx
 
Angular js interview question answer for fresher
Angular js interview question answer for fresherAngular js interview question answer for fresher
Angular js interview question answer for fresher
 
Angularjs basic part01
Angularjs basic part01Angularjs basic part01
Angularjs basic part01
 
Single Page Applications in SharePoint with Angular
Single Page Applications in SharePoint with AngularSingle Page Applications in SharePoint with Angular
Single Page Applications in SharePoint with Angular
 
What are the key distinctions between Angular and AngularJS?
What are the key distinctions between Angular and AngularJS?What are the key distinctions between Angular and AngularJS?
What are the key distinctions between Angular and AngularJS?
 
Angular patterns
Angular patternsAngular patterns
Angular patterns
 
Angular 9
Angular 9 Angular 9
Angular 9
 
Angular Best Practices To Build Clean and Performant Web Applications
Angular Best Practices To Build Clean and Performant Web ApplicationsAngular Best Practices To Build Clean and Performant Web Applications
Angular Best Practices To Build Clean and Performant Web Applications
 
Intoduction to Angularjs
Intoduction to AngularjsIntoduction to Angularjs
Intoduction to Angularjs
 
A perfect choice for web apps
A perfect choice for web apps A perfect choice for web apps
A perfect choice for web apps
 
AngularJS is awesome
AngularJS is awesomeAngularJS is awesome
AngularJS is awesome
 
Dive into Angular, part 1: Introduction
Dive into Angular, part 1: IntroductionDive into Angular, part 1: Introduction
Dive into Angular, part 1: Introduction
 
Angular Js
Angular JsAngular Js
Angular Js
 
Modern webtechnologies
Modern webtechnologiesModern webtechnologies
Modern webtechnologies
 
Angularjs for kolkata drupal meetup
Angularjs for kolkata drupal meetupAngularjs for kolkata drupal meetup
Angularjs for kolkata drupal meetup
 
Introduction To Angular.js - SpringPeople
Introduction To Angular.js - SpringPeopleIntroduction To Angular.js - SpringPeople
Introduction To Angular.js - SpringPeople
 
Training On Angular Js
Training On Angular JsTraining On Angular Js
Training On Angular Js
 
How Does Angular Work?
How Does Angular Work?How Does Angular Work?
How Does Angular Work?
 
Integrating AngularJS into the Campus CMS
Integrating AngularJS into the Campus CMSIntegrating AngularJS into the Campus CMS
Integrating AngularJS into the Campus CMS
 
5 benefits of angular js
5 benefits of angular js5 benefits of angular js
5 benefits of angular js
 

More from ymtech

20171120 tech day-11th-소프트웨어 테스팅2-서현용
20171120 tech day-11th-소프트웨어 테스팅2-서현용20171120 tech day-11th-소프트웨어 테스팅2-서현용
20171120 tech day-11th-소프트웨어 테스팅2-서현용
ymtech
 
20170908 tech day-9th-재미없는 java runtime process 디버그-김성중
20170908 tech day-9th-재미없는 java runtime process 디버그-김성중20170908 tech day-9th-재미없는 java runtime process 디버그-김성중
20170908 tech day-9th-재미없는 java runtime process 디버그-김성중
ymtech
 
20170713 tech day_7th_pxe 부팅-김주한
20170713 tech day_7th_pxe 부팅-김주한20170713 tech day_7th_pxe 부팅-김주한
20170713 tech day_7th_pxe 부팅-김주한
ymtech
 
20170609 tech day_4th-nginx(lb)-이재훈
20170609 tech day_4th-nginx(lb)-이재훈20170609 tech day_4th-nginx(lb)-이재훈
20170609 tech day_4th-nginx(lb)-이재훈
ymtech
 
20170519 tech day-3rd-highcharts를 이용한 차트 구현-김영석
20170519 tech day-3rd-highcharts를 이용한 차트 구현-김영석20170519 tech day-3rd-highcharts를 이용한 차트 구현-김영석
20170519 tech day-3rd-highcharts를 이용한 차트 구현-김영석
ymtech
 
20170414 techday 2nd_uiux디자인-최민희
20170414 techday 2nd_uiux디자인-최민희20170414 techday 2nd_uiux디자인-최민희
20170414 techday 2nd_uiux디자인-최민희
ymtech
 
20170310 tech day-1st-maven을 이용한 프로그램 빌드-박준홍
20170310 tech day-1st-maven을 이용한 프로그램 빌드-박준홍20170310 tech day-1st-maven을 이용한 프로그램 빌드-박준홍
20170310 tech day-1st-maven을 이용한 프로그램 빌드-박준홍
ymtech
 
Mikrotic CCR1036 라우팅 설정
Mikrotic CCR1036 라우팅 설정Mikrotic CCR1036 라우팅 설정
Mikrotic CCR1036 라우팅 설정
ymtech
 
Cubietruck 리눅스 이미지 설치
Cubietruck 리눅스 이미지 설치Cubietruck 리눅스 이미지 설치
Cubietruck 리눅스 이미지 설치
ymtech
 
Installation Openstack Swift
Installation Openstack SwiftInstallation Openstack Swift
Installation Openstack Swift
ymtech
 
Welcome to keystone the open stack identity service_v1.0.0-20141208-1212
Welcome to keystone the open stack identity service_v1.0.0-20141208-1212Welcome to keystone the open stack identity service_v1.0.0-20141208-1212
Welcome to keystone the open stack identity service_v1.0.0-20141208-1212
ymtech
 
Ubuntu Host AP Setting
Ubuntu Host AP SettingUbuntu Host AP Setting
Ubuntu Host AP Setting
ymtech
 
Intel Galileo Linux Setting
Intel Galileo Linux SettingIntel Galileo Linux Setting
Intel Galileo Linux Setting
ymtech
 
MarsBoard RK3066 Linux 설치
MarsBoard RK3066 Linux 설치MarsBoard RK3066 Linux 설치
MarsBoard RK3066 Linux 설치
ymtech
 
HP 3800-24G-2SFP OpenFlow Setting
HP 3800-24G-2SFP OpenFlow SettingHP 3800-24G-2SFP OpenFlow Setting
HP 3800-24G-2SFP OpenFlow Setting
ymtech
 
Openstack Instance Resize
Openstack Instance ResizeOpenstack Instance Resize
Openstack Instance Resize
ymtech
 
Openstack live migration
Openstack live migrationOpenstack live migration
Openstack live migration
ymtech
 
SDN OpenFlow Load Balancer 시나리오
SDN OpenFlow Load Balancer 시나리오SDN OpenFlow Load Balancer 시나리오
SDN OpenFlow Load Balancer 시나리오
ymtech
 
TR-069 클라이언트 검토자료8편
TR-069 클라이언트 검토자료8편TR-069 클라이언트 검토자료8편
TR-069 클라이언트 검토자료8편
ymtech
 
TR-069 클라이언트 검토자료7편
TR-069 클라이언트 검토자료7편TR-069 클라이언트 검토자료7편
TR-069 클라이언트 검토자료7편
ymtech
 

More from ymtech (20)

20171120 tech day-11th-소프트웨어 테스팅2-서현용
20171120 tech day-11th-소프트웨어 테스팅2-서현용20171120 tech day-11th-소프트웨어 테스팅2-서현용
20171120 tech day-11th-소프트웨어 테스팅2-서현용
 
20170908 tech day-9th-재미없는 java runtime process 디버그-김성중
20170908 tech day-9th-재미없는 java runtime process 디버그-김성중20170908 tech day-9th-재미없는 java runtime process 디버그-김성중
20170908 tech day-9th-재미없는 java runtime process 디버그-김성중
 
20170713 tech day_7th_pxe 부팅-김주한
20170713 tech day_7th_pxe 부팅-김주한20170713 tech day_7th_pxe 부팅-김주한
20170713 tech day_7th_pxe 부팅-김주한
 
20170609 tech day_4th-nginx(lb)-이재훈
20170609 tech day_4th-nginx(lb)-이재훈20170609 tech day_4th-nginx(lb)-이재훈
20170609 tech day_4th-nginx(lb)-이재훈
 
20170519 tech day-3rd-highcharts를 이용한 차트 구현-김영석
20170519 tech day-3rd-highcharts를 이용한 차트 구현-김영석20170519 tech day-3rd-highcharts를 이용한 차트 구현-김영석
20170519 tech day-3rd-highcharts를 이용한 차트 구현-김영석
 
20170414 techday 2nd_uiux디자인-최민희
20170414 techday 2nd_uiux디자인-최민희20170414 techday 2nd_uiux디자인-최민희
20170414 techday 2nd_uiux디자인-최민희
 
20170310 tech day-1st-maven을 이용한 프로그램 빌드-박준홍
20170310 tech day-1st-maven을 이용한 프로그램 빌드-박준홍20170310 tech day-1st-maven을 이용한 프로그램 빌드-박준홍
20170310 tech day-1st-maven을 이용한 프로그램 빌드-박준홍
 
Mikrotic CCR1036 라우팅 설정
Mikrotic CCR1036 라우팅 설정Mikrotic CCR1036 라우팅 설정
Mikrotic CCR1036 라우팅 설정
 
Cubietruck 리눅스 이미지 설치
Cubietruck 리눅스 이미지 설치Cubietruck 리눅스 이미지 설치
Cubietruck 리눅스 이미지 설치
 
Installation Openstack Swift
Installation Openstack SwiftInstallation Openstack Swift
Installation Openstack Swift
 
Welcome to keystone the open stack identity service_v1.0.0-20141208-1212
Welcome to keystone the open stack identity service_v1.0.0-20141208-1212Welcome to keystone the open stack identity service_v1.0.0-20141208-1212
Welcome to keystone the open stack identity service_v1.0.0-20141208-1212
 
Ubuntu Host AP Setting
Ubuntu Host AP SettingUbuntu Host AP Setting
Ubuntu Host AP Setting
 
Intel Galileo Linux Setting
Intel Galileo Linux SettingIntel Galileo Linux Setting
Intel Galileo Linux Setting
 
MarsBoard RK3066 Linux 설치
MarsBoard RK3066 Linux 설치MarsBoard RK3066 Linux 설치
MarsBoard RK3066 Linux 설치
 
HP 3800-24G-2SFP OpenFlow Setting
HP 3800-24G-2SFP OpenFlow SettingHP 3800-24G-2SFP OpenFlow Setting
HP 3800-24G-2SFP OpenFlow Setting
 
Openstack Instance Resize
Openstack Instance ResizeOpenstack Instance Resize
Openstack Instance Resize
 
Openstack live migration
Openstack live migrationOpenstack live migration
Openstack live migration
 
SDN OpenFlow Load Balancer 시나리오
SDN OpenFlow Load Balancer 시나리오SDN OpenFlow Load Balancer 시나리오
SDN OpenFlow Load Balancer 시나리오
 
TR-069 클라이언트 검토자료8편
TR-069 클라이언트 검토자료8편TR-069 클라이언트 검토자료8편
TR-069 클라이언트 검토자료8편
 
TR-069 클라이언트 검토자료7편
TR-069 클라이언트 검토자료7편TR-069 클라이언트 검토자료7편
TR-069 클라이언트 검토자료7편
 

Recently uploaded

UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s EcosystemUI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
Peter Muessig
 
Webinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for EmbeddedWebinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for Embedded
ICS
 
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, FactsALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
Green Software Development
 
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
rodomar2
 
How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?
ToXSL Technologies
 
Energy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina JonuziEnergy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina Jonuzi
Green Software Development
 
GreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-JurisicGreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-Jurisic
Green Software Development
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j
 
UI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design SystemUI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design System
Peter Muessig
 
Unveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdfUnveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdf
brainerhub1
 
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
kalichargn70th171
 
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
mz5nrf0n
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j
 
What is Master Data Management by PiLog Group
What is Master Data Management by PiLog GroupWhat is Master Data Management by PiLog Group
What is Master Data Management by PiLog Group
aymanquadri279
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
Ayan Halder
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
Aftab Hussain
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
Aftab Hussain
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
Rakesh Kumar R
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
Łukasz Chruściel
 

Recently uploaded (20)

UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s EcosystemUI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
UI5con 2024 - Keynote: Latest News about UI5 and it’s Ecosystem
 
Webinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for EmbeddedWebinar On-Demand: Using Flutter for Embedded
Webinar On-Demand: Using Flutter for Embedded
 
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, FactsALGIT - Assembly Line for Green IT - Numbers, Data, Facts
ALGIT - Assembly Line for Green IT - Numbers, Data, Facts
 
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CDKuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
KuberTENes Birthday Bash Guadalajara - Introducción a Argo CD
 
How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?How Can Hiring A Mobile App Development Company Help Your Business Grow?
How Can Hiring A Mobile App Development Company Help Your Business Grow?
 
Energy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina JonuziEnergy consumption of Database Management - Florina Jonuzi
Energy consumption of Database Management - Florina Jonuzi
 
GreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-JurisicGreenCode-A-VSCode-Plugin--Dario-Jurisic
GreenCode-A-VSCode-Plugin--Dario-Jurisic
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
 
UI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design SystemUI5con 2024 - Bring Your Own Design System
UI5con 2024 - Bring Your Own Design System
 
Unveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdfUnveiling the Advantages of Agile Software Development.pdf
Unveiling the Advantages of Agile Software Development.pdf
 
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf8 Best Automated Android App Testing Tool and Framework in 2024.pdf
8 Best Automated Android App Testing Tool and Framework in 2024.pdf
 
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
原版定制美国纽约州立大学奥尔巴尼分校毕业证学位证书原版一模一样
 
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit ParisNeo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
Neo4j - Product Vision and Knowledge Graphs - GraphSummit Paris
 
What is Master Data Management by PiLog Group
What is Master Data Management by PiLog GroupWhat is Master Data Management by PiLog Group
What is Master Data Management by PiLog Group
 
Using Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional SafetyUsing Xen Hypervisor for Functional Safety
Using Xen Hypervisor for Functional Safety
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
 
How to write a program in any programming language
How to write a program in any programming languageHow to write a program in any programming language
How to write a program in any programming language
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
 

Angular js

  • 2. 1. What is Angular? • Angular is a structural framework for dynamic wep app. – Let’s you use HTML as a template language. – Let’s you extend HTML’s syntax to express your app’s components. – Eliminates much of the code you write through data binding and dependency injection. • HTML – A greate declarative language for static documents. – But, do not contain much in the way of creating application. • Angular teaches the browser new syntax. – Data binding, as in {{}} – DOM control structures for repeating/hiding DOM fragments – Support for forms and form validation. – Attaching code-behind to DOM elements.. – Grouping of HTML into reusable components. 사내전파교육 제목명을 적어주세요.2
  • 3. 2. A Complete client-side solution • Handles all of the DOM and AJAX code you once wrote by hand, and make sure that you can easily change at a starting point. – Everything you need: data-binding, basic templating directives, form validation, routing, deep-linking, reusable components, dependency injection. – Testability story: unit-testing, end-to-end testing, mocks, test harness. – Seed application with directory layout and test scripts as a starting point. 사내전파교육 제목명을 적어주세요.3
  • 4. 3. Angular Sweet Spot • Angular simplifies application development by presenting a higher level of abstraction to the developer. • Every app is a good fit for Angular. • Angular was built with the CRUD application in mind. 사내전파교육 제목명을 적어주세요.4
  • 5. 4. The Zen of Angular • Angular is built around the belief that declarative code is better than imperative when it comes to building UIs and wiring software components together. – Good to decouple DOM manipulation from app logic. – Good to regard app testing as equal in importance to app writing. – Excellent to decouple the client side of an app from the server side. – Helpful indeed if the framework guides developers through the entire journey of building an app: from designing the UI, through writing the business logic, to testing. – Good to make common tasks trivial and difficult tasks possible. 사내전파교육 제목명을 적어주세요.5
  • 6. 5. Angular frees you from what! • Registering callbacks: – It vastly reduces the amount of JavaScript coding you have to do, and it makes it easier to see what your application does. • Manipulating HTML DOM programmatically: – By declaratively describing how the UI should change as your application state changes, you are freed from low-level DOM manipulation tasks. • Marshaling data to and from the UI: – Angular eliminates almost all of this boilerplate, leaving code that describes the overall flow of the application rather than all of the implementation details. • Writing tons of initialization code just to get started: – With Angular you can bootstrap your app easily using services, which are auto- injected into your application in a Guice-like dependency-injection style. 사내전파교육 제목명을 적어주세요.6
  • 7. 6. Conceptual Overview • Template – HTML with additional markup • Directives – extend HTML with custom attributes and elements • Model – the data that is shown to the user and with which the user interacts • Scope – context where the model is stored so that controllers, directives and expressions can access it • Expressions – access variables and functions from the scope • Compiler – parses the template and instantiates directives and expressions • Filter – formats the value of an expression for display to the user 사내전파교육 제목명을 적어주세요.7
  • 8. 6. Conceptual Overview Cont’d • View – what the user sees (the DOM) • Data Binding – sync data between the model and the view • Controller – the business logic behind views • Dependency Injection – Creates and wires objects / functions • Injector – dependency injection container • Module – configures the Injector • Service – reusable business logic independent of views 사내전파교육 제목명을 적어주세요.8
  • 9. 7. Bootstrap (one of details) • Angular <script> tag – Placing script tags at the end of the page improves app load time because the HTML loading is not blocked by loading of the angular.js script. – Place ng-app to the root of your application, typically on the <html> tag if you want angular to auto-bootstrap your application. 사내전파교육 제목명을 적어주세요.9
  • 10. 7. Bootstrap Cont’d • Angular initialize Process – initializes automatically upon DOMContentLoaded event or when the angular.js script is evaluated if at that time document.readyState is set to 'complete'. – load the module associated with the directive. – create the application injector – compile the DOM treating the ng-app directive as the root of the compilation. 사내전파교육 제목명을 적어주세요.10
  • 11. 7. Bootstrap Cont’d • Angular automatic & manual initialize script code. – Automatic – Manual 사내전파교육 제목명을 적어주세요.11
  • 12. 8. HTML Compiler (one of details) • Overview – what is need is a way to teach the browser new HTML syntax. – AngularUS provides HTML directives extensions – You will create a Domain Specific Language for building your application. • Compiler – Compile: traverse the DOM and collect all of the directives. – Link: combine the directives with a scope and produce a live view. 사내전파교육 제목명을 적어주세요.12
  • 13. 8. HTML Compiler Cont’d • Other templating system – any changes to the data need to be re-merged with the template and then innerHTMLed into the DOM. • AngularJS – Angular compiler consumes the DOM, not string templates and a linking function, which when combined with a scope model results in a live view is the result. – The view and scope model bindings are transparent. 사내전파교육 제목명을 적어주세요.13 Other templating system Angular JS
  • 14. 8. HTML Compiler Cont’d • Other’s approaches – reading user input and merging it with data – clobbering user input by overwriting it – managing the whole update process – lack of behavior expressiveness • AngularJS’s approaches – approach produces a stable DOM. – The DOM element instance bound to a model item instance does not change for the lifetime of the binding. 사내전파교육 제목명을 적어주세요.14
  • 15. 8. HTML Compiler Cont’d • Compile directives – $compile traverses the DOM and matches directives. – $compile links the template with the scope by calling the combined linking function. – This in turn will call the linking function of the individual directives, registering listeners – The result of this is a live binding between the scope and the DOM. So at this point, a change in a model on the compiled scope will be reflected in the DOM. 사내전파교육 제목명을 적어주세요.15
  • 16. 9. Code compare vs jQuery • When you input the name, reflect it to the input text. 사내전파교육 제목명을 적어주세요.16 via jQuery via AngularJS
  • 17. 10. References • AnguarJS Official Site – http://www.angularjs.org • Developer Guide – http://docs.angularjs.org/guide • API – http://docs.angularjs.org/api 사내전파교육 제목명을 적어주세요.17