SlideShare a Scribd company logo
Intro to Angular.js & Zend2
for Front-End Web Applications

Adrian Esquivel
aesquivel@teckpert.com
Chief Expert
About Me
•
•
•
•
•

Grew up in Miami
Computer Engineering @UF
Defense and security 7 Years
Chief Expert @TECKpert since 2009
Leading engineering teams for 10+ years
Outline
•
•
•
•
•

Background
Intro to Zend2
Intro to Angular.JS
Demo
Q&A
Background: What is MVC?
• Stands for “Model-View-Controller”.
• Architecture representation data based on
user interaction.
Background: Why MVC?
• Modularize the user interface.
• Consolidate front end code (HTML5).
• Different skill sets in development
(front/back).
• Smaller front end code footprint.
• Take advantage of cloud architecture.
Background: PHP & JS Frameworks
PHP
Zend
Symfony
CodeIgniter
CakePHP

JavaScript
Angular.js
Ember.js
Backbone.js
Intro to Zend2: History
• Started by graduates of Technion, Israeli hightech university, in 1997.
• Zend Technologies established in 1999.
• Opened US office in 2004 and established
offices worldwide.
• Commercial products from IDE to Server
software, security and certification.
Intro to Zend2: Benefits
•
•
•
•
•
•

Based on PHP 5.3+.
100% Object-Oriented.
Flexible components and full-featured stack.
Autoloading and dependency injection.
Modules
Event manager.
Intro to Zend2: Models
•
•
•
•
•

Single object or collection of objects.
Represents logical layer.
Contains application logic (i.e. business logic).
Manages data - stores, manipulates, responds.
Nothing to do with a user interface.
Intro to Zend2: Views
• Visual representations of a model.
• Here’s where all your front end code is (HTML,
JS, CSS).
• Zend2 file format: .phtml.
Intro to Zend2: Controllers
•
•
•
•
•

Interprets user action.
Link between the model and view.
Changes the state of the model and view.
Manages the output.
Always name files with “*Controller”.
– E.g. MapController.php

• Minimize code in controller with modules and
events.
Intro to Zend2: Modules
• Basic unit of ZF2.
• Collection of code and other files that solves
specific problem.
• Contains namespace and class file
(module.php)
Intro to Zend2: Events
• Events are actions.
• A Listener is a callback that reacts to an event.
• Event manager is an object that pulls together
listeners for one or more events.
Intro to Zend2: How to Start
• Download latest package (2.2.5).
– https://packages.zendframework.com/

• Start with a skeleton application.
– http://framework.zend.com/manual/2.2/en/userguide/skeleton-application.html

• Build something simple.
Intro to Angular.JS: History
• Released in 2009.
• Backed by Google.
• Checkout apps built with Angular.js at
builtwith.angularjs.org.
Intro to Angular.JS: Benefits
•
•
•
•
•

Based on MVC.
Breaks away from DOM manipulation.
Supports two way data binding.
Works well with other libraries.
Easy to test.
Intro to Angular.JS: How to Start
• Download
– http://angularjs.org/

• Watch tutorials and case studies.
– http://docs.angularjs.org/tutorial
– http://builtwith.angularjs.org/

• Install it in Zend2 skeleton app.
Intro to Angular.JS: Data Binding
• Syncs data between model and view
components.
• Does this automatically.
• Traditional templates bind data one way.
• Angular binds data two ways – keeps the
model in sync (single-source) and the view as
a snapshot.
• Great for testing.
Intro to Angular.JS: Controllers
• Respond to events.
• Gather data.
• NEVER interacts with DOM
Intro to Angular.JS: Directives
• Markers on elements.
– <input data-ng:model=“Hello">

• Tells Angular on “compilation” to modify
behavior on the element
• Used for DOM interaction and manipulation.
• Angular has built in directives
Intro to Angular.JS: Services
• Can handle complex business logic.
• Bring services to the client side.
• Objects or functions that execute tasks for
components (i.e. controller) that depend on it.
Intro to Angular.JS: Other Components
• Expressions.
• Forms and Filters.
Demo

http://angular-test.teckpert.com
Download Sample Code:
https://dl.dropboxusercontent.com/u/1183493/Intro%20t
o%20AngularJS%20and%20ZF2.zip
Final Notes: Target Applications
•
•
•
•

Dashboard applications.
Single-page applications.
Map interfaces.
Chart/Graph interfaces.
Pretty much any kind of UI…
Final Notes: Tips
•
•
•
•
•

Develop your application stack with Zend2.
Use HTML5 and CSS3.
Create web and mobile views.
Use Angular.js to be “device-agnostic”.
Make use of operations, events, and bindings.
Other Concepts
• MOVE - “Models-Operations-Views-Events”.
• SOLID - Single responsibility, Open-closed,
Liskov substitution, Interface segregation and
Dependency inversion
End of Presentation
Announcement

We’re building teams @TECKpert
Visit www.teckpert.com/careers
Questions?

More Related Content

What's hot (19)

PDF
Real World AngularJS recipes: beyond TodoMVC
Carlo Bonamico
 
PDF
Building Rich Applications with Appcelerator
Matt Raible
 
PDF
Why gradle
Sercan Karaoglu
 
PDF
Webdriver.io
LinkMe Srl
 
PDF
Breaking The Framework's Core #PHPKonf 2016
Mehmet Ince
 
PDF
"Applied Enterprise Metaprogramming in JavaScript", Vladyslav Dukhin
Fwdays
 
PDF
Continuous Integration and Deployment Patterns for Magento
AOE
 
PPTX
前端網頁自動測試
政億 林
 
PPTX
Take control. write a plugin. part II
Baruch Sadogursky
 
PPTX
Grails Spring Boot
TO THE NEW | Technology
 
PPTX
Intro to JavaScript Tooling in Visual Studio Code
ColdFusionConference
 
PDF
Magento and Continuous Integration - Damian Luszczymak
Meet Magento Spain
 
PDF
行動應用開發實務 - Gradle 介紹
Kyle Lin
 
PPTX
Composer for Magento 1.x and Magento 2
Sergii Shymko
 
PDF
JavaScript + Jenkins = Winning!
Eric Wendelin
 
PDF
Automatic constraints as a team maturity accelerator for startups
François-Guillaume Ribreau
 
PDF
Using Play Framework 2 in production
Christian Papauschek
 
PPTX
Introduction to django
Sreenath Ramamoorthi
 
PPTX
Django Interview Questions and Answers
Python Devloper
 
Real World AngularJS recipes: beyond TodoMVC
Carlo Bonamico
 
Building Rich Applications with Appcelerator
Matt Raible
 
Why gradle
Sercan Karaoglu
 
Webdriver.io
LinkMe Srl
 
Breaking The Framework's Core #PHPKonf 2016
Mehmet Ince
 
"Applied Enterprise Metaprogramming in JavaScript", Vladyslav Dukhin
Fwdays
 
Continuous Integration and Deployment Patterns for Magento
AOE
 
前端網頁自動測試
政億 林
 
Take control. write a plugin. part II
Baruch Sadogursky
 
Grails Spring Boot
TO THE NEW | Technology
 
Intro to JavaScript Tooling in Visual Studio Code
ColdFusionConference
 
Magento and Continuous Integration - Damian Luszczymak
Meet Magento Spain
 
行動應用開發實務 - Gradle 介紹
Kyle Lin
 
Composer for Magento 1.x and Magento 2
Sergii Shymko
 
JavaScript + Jenkins = Winning!
Eric Wendelin
 
Automatic constraints as a team maturity accelerator for startups
François-Guillaume Ribreau
 
Using Play Framework 2 in production
Christian Papauschek
 
Introduction to django
Sreenath Ramamoorthi
 
Django Interview Questions and Answers
Python Devloper
 

Viewers also liked (6)

PDF
Scaling Symfony2 apps with RabbitMQ - Symfony UK Meetup
Kacper Gunia
 
PPTX
RESTful modules in zf2
Corley S.r.l.
 
PDF
ZF3 introduction
Vincent Blanchon
 
PDF
Theres a rabbit on my symfony
Alvaro Videla
 
PDF
Criando API Rest no Zend Framework 2
Rankest
 
PDF
Node Foundation Membership Overview 20160907
NodejsFoundation
 
Scaling Symfony2 apps with RabbitMQ - Symfony UK Meetup
Kacper Gunia
 
RESTful modules in zf2
Corley S.r.l.
 
ZF3 introduction
Vincent Blanchon
 
Theres a rabbit on my symfony
Alvaro Videla
 
Criando API Rest no Zend Framework 2
Rankest
 
Node Foundation Membership Overview 20160907
NodejsFoundation
 
Ad

Similar to Intro to Angular.js & Zend2 for Front-End Web Applications (20)

PPTX
AngularJS - Architecture decisions in a large project 
Elad Hirsch
 
PPTX
PPT on Angular 2 Development Tutorial
Paddy Lock
 
PPTX
Spring Web Presentation - Framework and Its Ecosystem
horiadobrin
 
PPTX
Angular2 + Ng-Lightning + Lightning Design System = Great Apps
Emily Hurn
 
DOC
Resume_Venugopal
Venugopal Devarapalli
 
PDF
JAVA EE training from 3rd-oct-2015
Naz Ish
 
PPTX
What's new in Angular 2?
Alfred Jett Grandeza
 
PPTX
Valentine with Angular js - Introduction
Senthil Kumar
 
PPTX
Reason to choose Angular JS for your Web Application
Priyanka Verma
 
PPTX
638872_Akhil Garg
Akhil Garg
 
DOC
Chinnasamy Manickam
Chinnasamy Manickam
 
PPTX
Module2
Hoàng Lê
 
PPT
Spring - a framework written by developers
MarcioSoaresPereira1
 
PPTX
spring
Suman Behara
 
PDF
Asp.NETZERO - A Workshop Presentation by Citytech Software
Ritwik Das
 
PDF
jQuery: The World's Most Popular JavaScript Library Comes to XPages
Teamstudio
 
PPTX
ME vs WEB - AngularJS Fundamentals
Aviran Cohen
 
DOC
Amit Kumar Architect with Web and Angular JS
Amit Kumar
 
DOC
Bala Sr Java Developer
Java Dev
 
PDF
Framework adoption for java enterprise application development
Clarence Ho
 
AngularJS - Architecture decisions in a large project 
Elad Hirsch
 
PPT on Angular 2 Development Tutorial
Paddy Lock
 
Spring Web Presentation - Framework and Its Ecosystem
horiadobrin
 
Angular2 + Ng-Lightning + Lightning Design System = Great Apps
Emily Hurn
 
Resume_Venugopal
Venugopal Devarapalli
 
JAVA EE training from 3rd-oct-2015
Naz Ish
 
What's new in Angular 2?
Alfred Jett Grandeza
 
Valentine with Angular js - Introduction
Senthil Kumar
 
Reason to choose Angular JS for your Web Application
Priyanka Verma
 
638872_Akhil Garg
Akhil Garg
 
Chinnasamy Manickam
Chinnasamy Manickam
 
Module2
Hoàng Lê
 
Spring - a framework written by developers
MarcioSoaresPereira1
 
spring
Suman Behara
 
Asp.NETZERO - A Workshop Presentation by Citytech Software
Ritwik Das
 
jQuery: The World's Most Popular JavaScript Library Comes to XPages
Teamstudio
 
ME vs WEB - AngularJS Fundamentals
Aviran Cohen
 
Amit Kumar Architect with Web and Angular JS
Amit Kumar
 
Bala Sr Java Developer
Java Dev
 
Framework adoption for java enterprise application development
Clarence Ho
 
Ad

Recently uploaded (20)

PPTX
Agentforce World Tour Toronto '25 - Supercharge MuleSoft Development with Mod...
Alexandra N. Martinez
 
PDF
Book industry state of the nation 2025 - Tech Forum 2025
BookNet Canada
 
PDF
Staying Human in a Machine- Accelerated World
Catalin Jora
 
PPTX
The Project Compass - GDG on Campus MSIT
dscmsitkol
 
PDF
“Voice Interfaces on a Budget: Building Real-time Speech Recognition on Low-c...
Edge AI and Vision Alliance
 
PDF
“Computer Vision at Sea: Automated Fish Tracking for Sustainable Fishing,” a ...
Edge AI and Vision Alliance
 
PDF
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
PDF
“NPU IP Hardware Shaped Through Software and Use-case Analysis,” a Presentati...
Edge AI and Vision Alliance
 
PDF
How do you fast track Agentic automation use cases discovery?
DianaGray10
 
PPTX
Digital Circuits, important subject in CS
contactparinay1
 
DOCX
Cryptography Quiz: test your knowledge of this important security concept.
Rajni Bhardwaj Grover
 
PDF
NASA A Researcher’s Guide to International Space Station : Physical Sciences ...
Dr. PANKAJ DHUSSA
 
PDF
Peak of Data & AI Encore AI-Enhanced Workflows for the Real World
Safe Software
 
PDF
UPDF - AI PDF Editor & Converter Key Features
DealFuel
 
PDF
NLJUG Speaker academy 2025 - first session
Bert Jan Schrijver
 
PPTX
COMPARISON OF RASTER ANALYSIS TOOLS OF QGIS AND ARCGIS
Sharanya Sarkar
 
PDF
Kit-Works Team Study_20250627_한달만에만든사내서비스키링(양다윗).pdf
Wonjun Hwang
 
PPTX
Mastering ODC + Okta Configuration - Chennai OSUG
HathiMaryA
 
PPTX
Seamless Tech Experiences Showcasing Cross-Platform App Design.pptx
presentifyai
 
PDF
What’s my job again? Slides from Mark Simos talk at 2025 Tampa BSides
Mark Simos
 
Agentforce World Tour Toronto '25 - Supercharge MuleSoft Development with Mod...
Alexandra N. Martinez
 
Book industry state of the nation 2025 - Tech Forum 2025
BookNet Canada
 
Staying Human in a Machine- Accelerated World
Catalin Jora
 
The Project Compass - GDG on Campus MSIT
dscmsitkol
 
“Voice Interfaces on a Budget: Building Real-time Speech Recognition on Low-c...
Edge AI and Vision Alliance
 
“Computer Vision at Sea: Automated Fish Tracking for Sustainable Fishing,” a ...
Edge AI and Vision Alliance
 
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
“NPU IP Hardware Shaped Through Software and Use-case Analysis,” a Presentati...
Edge AI and Vision Alliance
 
How do you fast track Agentic automation use cases discovery?
DianaGray10
 
Digital Circuits, important subject in CS
contactparinay1
 
Cryptography Quiz: test your knowledge of this important security concept.
Rajni Bhardwaj Grover
 
NASA A Researcher’s Guide to International Space Station : Physical Sciences ...
Dr. PANKAJ DHUSSA
 
Peak of Data & AI Encore AI-Enhanced Workflows for the Real World
Safe Software
 
UPDF - AI PDF Editor & Converter Key Features
DealFuel
 
NLJUG Speaker academy 2025 - first session
Bert Jan Schrijver
 
COMPARISON OF RASTER ANALYSIS TOOLS OF QGIS AND ARCGIS
Sharanya Sarkar
 
Kit-Works Team Study_20250627_한달만에만든사내서비스키링(양다윗).pdf
Wonjun Hwang
 
Mastering ODC + Okta Configuration - Chennai OSUG
HathiMaryA
 
Seamless Tech Experiences Showcasing Cross-Platform App Design.pptx
presentifyai
 
What’s my job again? Slides from Mark Simos talk at 2025 Tampa BSides
Mark Simos
 

Intro to Angular.js & Zend2 for Front-End Web Applications

  • 1. Intro to Angular.js & Zend2 for Front-End Web Applications Adrian Esquivel [email protected] Chief Expert
  • 2. About Me • • • • • Grew up in Miami Computer Engineering @UF Defense and security 7 Years Chief Expert @TECKpert since 2009 Leading engineering teams for 10+ years
  • 4. Background: What is MVC? • Stands for “Model-View-Controller”. • Architecture representation data based on user interaction.
  • 5. Background: Why MVC? • Modularize the user interface. • Consolidate front end code (HTML5). • Different skill sets in development (front/back). • Smaller front end code footprint. • Take advantage of cloud architecture.
  • 6. Background: PHP & JS Frameworks PHP Zend Symfony CodeIgniter CakePHP JavaScript Angular.js Ember.js Backbone.js
  • 7. Intro to Zend2: History • Started by graduates of Technion, Israeli hightech university, in 1997. • Zend Technologies established in 1999. • Opened US office in 2004 and established offices worldwide. • Commercial products from IDE to Server software, security and certification.
  • 8. Intro to Zend2: Benefits • • • • • • Based on PHP 5.3+. 100% Object-Oriented. Flexible components and full-featured stack. Autoloading and dependency injection. Modules Event manager.
  • 9. Intro to Zend2: Models • • • • • Single object or collection of objects. Represents logical layer. Contains application logic (i.e. business logic). Manages data - stores, manipulates, responds. Nothing to do with a user interface.
  • 10. Intro to Zend2: Views • Visual representations of a model. • Here’s where all your front end code is (HTML, JS, CSS). • Zend2 file format: .phtml.
  • 11. Intro to Zend2: Controllers • • • • • Interprets user action. Link between the model and view. Changes the state of the model and view. Manages the output. Always name files with “*Controller”. – E.g. MapController.php • Minimize code in controller with modules and events.
  • 12. Intro to Zend2: Modules • Basic unit of ZF2. • Collection of code and other files that solves specific problem. • Contains namespace and class file (module.php)
  • 13. Intro to Zend2: Events • Events are actions. • A Listener is a callback that reacts to an event. • Event manager is an object that pulls together listeners for one or more events.
  • 14. Intro to Zend2: How to Start • Download latest package (2.2.5). – https://packages.zendframework.com/ • Start with a skeleton application. – http://framework.zend.com/manual/2.2/en/userguide/skeleton-application.html • Build something simple.
  • 15. Intro to Angular.JS: History • Released in 2009. • Backed by Google. • Checkout apps built with Angular.js at builtwith.angularjs.org.
  • 16. Intro to Angular.JS: Benefits • • • • • Based on MVC. Breaks away from DOM manipulation. Supports two way data binding. Works well with other libraries. Easy to test.
  • 17. Intro to Angular.JS: How to Start • Download – http://angularjs.org/ • Watch tutorials and case studies. – http://docs.angularjs.org/tutorial – http://builtwith.angularjs.org/ • Install it in Zend2 skeleton app.
  • 18. Intro to Angular.JS: Data Binding • Syncs data between model and view components. • Does this automatically. • Traditional templates bind data one way. • Angular binds data two ways – keeps the model in sync (single-source) and the view as a snapshot. • Great for testing.
  • 19. Intro to Angular.JS: Controllers • Respond to events. • Gather data. • NEVER interacts with DOM
  • 20. Intro to Angular.JS: Directives • Markers on elements. – <input data-ng:model=“Hello"> • Tells Angular on “compilation” to modify behavior on the element • Used for DOM interaction and manipulation. • Angular has built in directives
  • 21. Intro to Angular.JS: Services • Can handle complex business logic. • Bring services to the client side. • Objects or functions that execute tasks for components (i.e. controller) that depend on it.
  • 22. Intro to Angular.JS: Other Components • Expressions. • Forms and Filters.
  • 24. Final Notes: Target Applications • • • • Dashboard applications. Single-page applications. Map interfaces. Chart/Graph interfaces. Pretty much any kind of UI…
  • 25. Final Notes: Tips • • • • • Develop your application stack with Zend2. Use HTML5 and CSS3. Create web and mobile views. Use Angular.js to be “device-agnostic”. Make use of operations, events, and bindings.
  • 26. Other Concepts • MOVE - “Models-Operations-Views-Events”. • SOLID - Single responsibility, Open-closed, Liskov substitution, Interface segregation and Dependency inversion
  • 28. Announcement We’re building teams @TECKpert Visit www.teckpert.com/careers