SlideShare una empresa de Scribd logo
1 de 10
ZEND FRAMEWORK
ABOUT ME

• Software Engineer
 • PHP, Ruby, Python, Java, JavaScript
 • Mainly web applications
• Framework Experience
 • Zend, CodeIgniter, Ruby on Rails, Struts, Drupal (CMS)
• Technology Blog
 • http://blog.philipjting.com/
 • Follow @philipjting
ZEND OVERVIEW

•   Enterprise development
•   Strong code base
•   “It’s like Java for PHP”
•   Modular – Use Zend in other applications
•   Extensible – Use other applications in Zend
•   Community – Active community
•   Support – Zend Technologies, thorough
    documentation
VERSIONS

• ZF1
  •   MVC (Model View Controller)
  •   Loosely coupled architecture (modular)
  •   Lots of plugins
  •   July 2007
• ZF2
  • MOVE (Model Operations Views Events)
  • Uses more PHP 5.3 concepts (late static binding, lambdas)
  • September 2012 first stable release
COMPARISON

• CodeIgniter
 • Better than Zend at small applications
 • Simpler, smaller, faster, less dependencies
 • Not as extensible
• CakePHP
 • ZF1 is loosely coupled, CakePHP is less so by comparison
 • CakePHP has more “magic”, ZF1 is more customizable
DATABASE AND MODEL

• ORM Documentation
 • Propel
 • Doctrine
• Support for many data stores
 • MySQL, MongoDB, Hadoop, etc.
REAL WORLD APPLICATION

• Rolled Own Library
 •   Instead of using ORM
 •   Factory Pattern
 •   DBMapper
 •   Script for creating models
REAL WORLD APPLICATION

• Several Zend applications
  • Public Facing, Internal applications
  • Common shared library
    • Models, DBMappers
    • JS, CSS libraries
• Good for Enterprise
  • Several developers split their work between the applications
  • Shared library ensures code reuse
REAL WORLD APPLICATION

• PHPUnit Controller Tests

 public function testIndexActionShouldContainLoginForm() {
   $this->dispatch('/user');
   $this->assertAction('index');
   $this->assertQueryCount('form#loginForm', 1);
 }
CONCLUSION

• Zend is great for Enterprise Development
  • Extensible, Modular, Reliable
• ZF2 is very different from ZF1
• Not recommended for beginners

Más contenido relacionado

La actualidad más candente

Angular4 kickstart
Angular4 kickstartAngular4 kickstart
Angular4 kickstartFoyzul Karim
 
JavaEE Microservices -the Payara Way
JavaEE Microservices -the Payara WayJavaEE Microservices -the Payara Way
JavaEE Microservices -the Payara WayPayara
 
Git branching
Git branchingGit branching
Git branchingiCapps
 
Developing JavaEE 7 based apps with Payara Micro
Developing JavaEE 7 based apps with Payara MicroDeveloping JavaEE 7 based apps with Payara Micro
Developing JavaEE 7 based apps with Payara MicroPayara
 
Decoupled Architecture and WordPress
Decoupled Architecture and WordPressDecoupled Architecture and WordPress
Decoupled Architecture and WordPressPantheon
 
Writing power shell the right tool for the job
Writing power shell   the right tool for the jobWriting power shell   the right tool for the job
Writing power shell the right tool for the jobJaap Brasser
 
The future of cloud programming
The future of cloud programmingThe future of cloud programming
The future of cloud programmingJason Straughan
 
[DEISER Day Conferences] "Development Lifecycle Using Atlassian Tools" Juan G...
[DEISER Day Conferences] "Development Lifecycle Using Atlassian Tools" Juan G...[DEISER Day Conferences] "Development Lifecycle Using Atlassian Tools" Juan G...
[DEISER Day Conferences] "Development Lifecycle Using Atlassian Tools" Juan G...Deiser
 
Building your own JEA Configuration
Building your own JEA ConfigurationBuilding your own JEA Configuration
Building your own JEA ConfigurationJaap Brasser
 
Developing Cross-Platform Web Apps with ASP.NET Core1.0
Developing Cross-Platform Web Apps with ASP.NET Core1.0Developing Cross-Platform Web Apps with ASP.NET Core1.0
Developing Cross-Platform Web Apps with ASP.NET Core1.0EastBanc Tachnologies
 
Secure your servers in time with JIT and JEA
Secure your servers in time with JIT and JEASecure your servers in time with JIT and JEA
Secure your servers in time with JIT and JEAJaap Brasser
 
SenchaCon 2016: Being Productive with the New Sencha Fiddle - Mitchell Simoens
SenchaCon 2016: Being Productive with the New Sencha Fiddle - Mitchell Simoens  SenchaCon 2016: Being Productive with the New Sencha Fiddle - Mitchell Simoens
SenchaCon 2016: Being Productive with the New Sencha Fiddle - Mitchell Simoens Sencha
 
Mysql from a DBA prespective
Mysql from a DBA prespectiveMysql from a DBA prespective
Mysql from a DBA prespectiveKarthik .P.R
 
Secure your environment by automation
Secure your environment by automationSecure your environment by automation
Secure your environment by automationJaap Brasser
 
SPSNJ 2014: EmberJS & SharePoint
SPSNJ 2014: EmberJS & SharePointSPSNJ 2014: EmberJS & SharePoint
SPSNJ 2014: EmberJS & SharePointGreg Hurlman
 

La actualidad más candente (20)

Angular4 kickstart
Angular4 kickstartAngular4 kickstart
Angular4 kickstart
 
My library
My libraryMy library
My library
 
Knockout
KnockoutKnockout
Knockout
 
JavaEE Microservices -the Payara Way
JavaEE Microservices -the Payara WayJavaEE Microservices -the Payara Way
JavaEE Microservices -the Payara Way
 
Git branching
Git branchingGit branching
Git branching
 
Developing JavaEE 7 based apps with Payara Micro
Developing JavaEE 7 based apps with Payara MicroDeveloping JavaEE 7 based apps with Payara Micro
Developing JavaEE 7 based apps with Payara Micro
 
Decoupled Architecture and WordPress
Decoupled Architecture and WordPressDecoupled Architecture and WordPress
Decoupled Architecture and WordPress
 
Writing power shell the right tool for the job
Writing power shell   the right tool for the jobWriting power shell   the right tool for the job
Writing power shell the right tool for the job
 
The future of cloud programming
The future of cloud programmingThe future of cloud programming
The future of cloud programming
 
[DEISER Day Conferences] "Development Lifecycle Using Atlassian Tools" Juan G...
[DEISER Day Conferences] "Development Lifecycle Using Atlassian Tools" Juan G...[DEISER Day Conferences] "Development Lifecycle Using Atlassian Tools" Juan G...
[DEISER Day Conferences] "Development Lifecycle Using Atlassian Tools" Juan G...
 
Building your own JEA Configuration
Building your own JEA ConfigurationBuilding your own JEA Configuration
Building your own JEA Configuration
 
Developing Cross-Platform Web Apps with ASP.NET Core1.0
Developing Cross-Platform Web Apps with ASP.NET Core1.0Developing Cross-Platform Web Apps with ASP.NET Core1.0
Developing Cross-Platform Web Apps with ASP.NET Core1.0
 
QuizUp Web Monorepo
QuizUp Web MonorepoQuizUp Web Monorepo
QuizUp Web Monorepo
 
Secure your servers in time with JIT and JEA
Secure your servers in time with JIT and JEASecure your servers in time with JIT and JEA
Secure your servers in time with JIT and JEA
 
.Net Fundamentals
.Net Fundamentals.Net Fundamentals
.Net Fundamentals
 
RavenDB 4.0
RavenDB 4.0RavenDB 4.0
RavenDB 4.0
 
SenchaCon 2016: Being Productive with the New Sencha Fiddle - Mitchell Simoens
SenchaCon 2016: Being Productive with the New Sencha Fiddle - Mitchell Simoens  SenchaCon 2016: Being Productive with the New Sencha Fiddle - Mitchell Simoens
SenchaCon 2016: Being Productive with the New Sencha Fiddle - Mitchell Simoens
 
Mysql from a DBA prespective
Mysql from a DBA prespectiveMysql from a DBA prespective
Mysql from a DBA prespective
 
Secure your environment by automation
Secure your environment by automationSecure your environment by automation
Secure your environment by automation
 
SPSNJ 2014: EmberJS & SharePoint
SPSNJ 2014: EmberJS & SharePointSPSNJ 2014: EmberJS & SharePoint
SPSNJ 2014: EmberJS & SharePoint
 

Destacado

Lavori Melfi srl scuola "G. Galilei"
Lavori Melfi srl scuola "G. Galilei"Lavori Melfi srl scuola "G. Galilei"
Lavori Melfi srl scuola "G. Galilei"PD Monteroduni
 
Kontseptsiya na soveshchanie_s_subektami_1
Kontseptsiya na soveshchanie_s_subektami_1Kontseptsiya na soveshchanie_s_subektami_1
Kontseptsiya na soveshchanie_s_subektami_1dmitryarshinnik
 
Inchiesta senza senso de L'Espresso sul Partito Democratico.
Inchiesta senza senso de L'Espresso sul Partito Democratico.Inchiesta senza senso de L'Espresso sul Partito Democratico.
Inchiesta senza senso de L'Espresso sul Partito Democratico.PD Monteroduni
 
Camino austral
Camino australCamino austral
Camino australhernik01
 
Death note Vol.1 cap.2
Death note Vol.1 cap.2Death note Vol.1 cap.2
Death note Vol.1 cap.2Swordfish25
 

Destacado (6)

Lavori Melfi srl scuola "G. Galilei"
Lavori Melfi srl scuola "G. Galilei"Lavori Melfi srl scuola "G. Galilei"
Lavori Melfi srl scuola "G. Galilei"
 
Kontseptsiya na soveshchanie_s_subektami_1
Kontseptsiya na soveshchanie_s_subektami_1Kontseptsiya na soveshchanie_s_subektami_1
Kontseptsiya na soveshchanie_s_subektami_1
 
Inchiesta senza senso de L'Espresso sul Partito Democratico.
Inchiesta senza senso de L'Espresso sul Partito Democratico.Inchiesta senza senso de L'Espresso sul Partito Democratico.
Inchiesta senza senso de L'Espresso sul Partito Democratico.
 
Camino austral
Camino australCamino austral
Camino austral
 
Death note Vol.1 cap.2
Death note Vol.1 cap.2Death note Vol.1 cap.2
Death note Vol.1 cap.2
 
Test presentation
Test presentationTest presentation
Test presentation
 

Similar a SD PHP Zend Framework

Getting Ready to Use Redis with Apache Spark with Tague Griffith
Getting Ready to Use Redis with Apache Spark with Tague GriffithGetting Ready to Use Redis with Apache Spark with Tague Griffith
Getting Ready to Use Redis with Apache Spark with Tague GriffithDatabricks
 
Extending ZF & Extending With ZF
Extending ZF & Extending With ZFExtending ZF & Extending With ZF
Extending ZF & Extending With ZFRalph Schindler
 
Karwin bill zf-db-zend_con-20071009
Karwin bill zf-db-zend_con-20071009Karwin bill zf-db-zend_con-20071009
Karwin bill zf-db-zend_con-20071009robinvnxxx
 
OSS at Microsoft
OSS at MicrosoftOSS at Microsoft
OSS at Microsoftweltling
 
Single Page Applications - Desert Code Camp 2012
Single Page Applications - Desert Code Camp 2012Single Page Applications - Desert Code Camp 2012
Single Page Applications - Desert Code Camp 2012Adam Mokan
 
Organizing Your PHP Projects (2010 ConFoo)
Organizing Your PHP Projects (2010 ConFoo)Organizing Your PHP Projects (2010 ConFoo)
Organizing Your PHP Projects (2010 ConFoo)Paul Jones
 
Introduction To Web Development & The New Digital Workplace
Introduction To Web Development & The New Digital WorkplaceIntroduction To Web Development & The New Digital Workplace
Introduction To Web Development & The New Digital WorkplaceJen Wei Lee
 
Cloud App Develop
Cloud App DevelopCloud App Develop
Cloud App DevelopFin Chen
 
Php Zen with Zend
Php Zen with ZendPhp Zen with Zend
Php Zen with Zendnrporter
 
Organinzing Your PHP Projects (2010 Memphis PHP)
Organinzing Your PHP Projects (2010 Memphis PHP)Organinzing Your PHP Projects (2010 Memphis PHP)
Organinzing Your PHP Projects (2010 Memphis PHP)Paul Jones
 
Phase2 Large Drupal Multisites (gta case study)
Phase2   Large Drupal Multisites (gta case study)Phase2   Large Drupal Multisites (gta case study)
Phase2 Large Drupal Multisites (gta case study)Phase2
 
MVC with Zend Framework
MVC with Zend FrameworkMVC with Zend Framework
MVC with Zend Frameworkwebholics
 
Phase2 - Large Drupal Multisites (GTA Case Study)
Phase2 - Large Drupal Multisites (GTA Case Study)Phase2 - Large Drupal Multisites (GTA Case Study)
Phase2 - Large Drupal Multisites (GTA Case Study)Robert Bates
 
Get acquainted with the new ASP.Net 5
Get acquainted with the new ASP.Net 5Get acquainted with the new ASP.Net 5
Get acquainted with the new ASP.Net 5Suyati Technologies
 
Zend con practical-zf1-zf2-migration
Zend con practical-zf1-zf2-migrationZend con practical-zf1-zf2-migration
Zend con practical-zf1-zf2-migrationClark Everetts
 
Drupal 8 introduction
Drupal 8 introductionDrupal 8 introduction
Drupal 8 introductionAditya Ghan
 
Zend MVC pattern based Framework – Best for Enterprise web applications
Zend MVC pattern based Framework – Best for Enterprise web applicationsZend MVC pattern based Framework – Best for Enterprise web applications
Zend MVC pattern based Framework – Best for Enterprise web applicationsEtisbew Technology Group
 

Similar a SD PHP Zend Framework (20)

Zend Code in ZF 2.0
Zend Code in ZF 2.0Zend Code in ZF 2.0
Zend Code in ZF 2.0
 
Zend
ZendZend
Zend
 
Getting Ready to Use Redis with Apache Spark with Tague Griffith
Getting Ready to Use Redis with Apache Spark with Tague GriffithGetting Ready to Use Redis with Apache Spark with Tague Griffith
Getting Ready to Use Redis with Apache Spark with Tague Griffith
 
The Architect Way
The Architect WayThe Architect Way
The Architect Way
 
Extending ZF & Extending With ZF
Extending ZF & Extending With ZFExtending ZF & Extending With ZF
Extending ZF & Extending With ZF
 
Karwin bill zf-db-zend_con-20071009
Karwin bill zf-db-zend_con-20071009Karwin bill zf-db-zend_con-20071009
Karwin bill zf-db-zend_con-20071009
 
OSS at Microsoft
OSS at MicrosoftOSS at Microsoft
OSS at Microsoft
 
Single Page Applications - Desert Code Camp 2012
Single Page Applications - Desert Code Camp 2012Single Page Applications - Desert Code Camp 2012
Single Page Applications - Desert Code Camp 2012
 
Organizing Your PHP Projects (2010 ConFoo)
Organizing Your PHP Projects (2010 ConFoo)Organizing Your PHP Projects (2010 ConFoo)
Organizing Your PHP Projects (2010 ConFoo)
 
Introduction To Web Development & The New Digital Workplace
Introduction To Web Development & The New Digital WorkplaceIntroduction To Web Development & The New Digital Workplace
Introduction To Web Development & The New Digital Workplace
 
Cloud App Develop
Cloud App DevelopCloud App Develop
Cloud App Develop
 
Php Zen with Zend
Php Zen with ZendPhp Zen with Zend
Php Zen with Zend
 
Organinzing Your PHP Projects (2010 Memphis PHP)
Organinzing Your PHP Projects (2010 Memphis PHP)Organinzing Your PHP Projects (2010 Memphis PHP)
Organinzing Your PHP Projects (2010 Memphis PHP)
 
Phase2 Large Drupal Multisites (gta case study)
Phase2   Large Drupal Multisites (gta case study)Phase2   Large Drupal Multisites (gta case study)
Phase2 Large Drupal Multisites (gta case study)
 
MVC with Zend Framework
MVC with Zend FrameworkMVC with Zend Framework
MVC with Zend Framework
 
Phase2 - Large Drupal Multisites (GTA Case Study)
Phase2 - Large Drupal Multisites (GTA Case Study)Phase2 - Large Drupal Multisites (GTA Case Study)
Phase2 - Large Drupal Multisites (GTA Case Study)
 
Get acquainted with the new ASP.Net 5
Get acquainted with the new ASP.Net 5Get acquainted with the new ASP.Net 5
Get acquainted with the new ASP.Net 5
 
Zend con practical-zf1-zf2-migration
Zend con practical-zf1-zf2-migrationZend con practical-zf1-zf2-migration
Zend con practical-zf1-zf2-migration
 
Drupal 8 introduction
Drupal 8 introductionDrupal 8 introduction
Drupal 8 introduction
 
Zend MVC pattern based Framework – Best for Enterprise web applications
Zend MVC pattern based Framework – Best for Enterprise web applicationsZend MVC pattern based Framework – Best for Enterprise web applications
Zend MVC pattern based Framework – Best for Enterprise web applications
 

Último

08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfhans926745
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 

Último (20)

08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 

SD PHP Zend Framework

  • 2. ABOUT ME • Software Engineer • PHP, Ruby, Python, Java, JavaScript • Mainly web applications • Framework Experience • Zend, CodeIgniter, Ruby on Rails, Struts, Drupal (CMS) • Technology Blog • http://blog.philipjting.com/ • Follow @philipjting
  • 3. ZEND OVERVIEW • Enterprise development • Strong code base • “It’s like Java for PHP” • Modular – Use Zend in other applications • Extensible – Use other applications in Zend • Community – Active community • Support – Zend Technologies, thorough documentation
  • 4. VERSIONS • ZF1 • MVC (Model View Controller) • Loosely coupled architecture (modular) • Lots of plugins • July 2007 • ZF2 • MOVE (Model Operations Views Events) • Uses more PHP 5.3 concepts (late static binding, lambdas) • September 2012 first stable release
  • 5. COMPARISON • CodeIgniter • Better than Zend at small applications • Simpler, smaller, faster, less dependencies • Not as extensible • CakePHP • ZF1 is loosely coupled, CakePHP is less so by comparison • CakePHP has more “magic”, ZF1 is more customizable
  • 6. DATABASE AND MODEL • ORM Documentation • Propel • Doctrine • Support for many data stores • MySQL, MongoDB, Hadoop, etc.
  • 7. REAL WORLD APPLICATION • Rolled Own Library • Instead of using ORM • Factory Pattern • DBMapper • Script for creating models
  • 8. REAL WORLD APPLICATION • Several Zend applications • Public Facing, Internal applications • Common shared library • Models, DBMappers • JS, CSS libraries • Good for Enterprise • Several developers split their work between the applications • Shared library ensures code reuse
  • 9. REAL WORLD APPLICATION • PHPUnit Controller Tests public function testIndexActionShouldContainLoginForm() { $this->dispatch('/user'); $this->assertAction('index'); $this->assertQueryCount('form#loginForm', 1); }
  • 10. CONCLUSION • Zend is great for Enterprise Development • Extensible, Modular, Reliable • ZF2 is very different from ZF1 • Not recommended for beginners