SlideShare a Scribd company logo
1 of 33
cfFramework vs wOrld
cfCamp 2016- October 20th
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
Disclaimer
This presentation reflect my own opinion.
As you are free to have a different one, so do I.
Like a italian mother, I can not be totally
objective about my framework.
But as a french how can I be wrong ? ;)
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
Disclaimer #2
Maybe I will say those words :
Java, Php, Symfony, Zend, Drupal,
Joomla, Magento, Spring,
Wordpress, …
Please, do not throw up
on the near person!
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
What’s a framework
“In computer programming, a software framework is an
abstraction in which software providing generic functionality
can be selectively changed by additional user-written code,
thus providing application-specific software. A software
framework is a universal, reusable software environment
that provides particular functionality as part of a larger
software platform to facilitate development of software
applications, products and solutions. […]”
-- Wikipedia guys
NB: You have passed the biggest slides
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
What’s a framework
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
CFML MVC Frameworks
• ColdBox
• FW/1
• CFWheels (reloaded)
• onTap (no update since 2014)
• Mach-II (RIP)
• FuseBox (RIP)
• Model-Glue (RIP)
• cfFramework
(from now)
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
Difference of philosophy
• Config over Dev
Drupal’s case
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
Difference of philosophy
• Configuration by Convention
Symfony’s case
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
Difference of philosophy
• Minimalism vs functionality
FW/1* vs ColdBox**
* <= version 2.5.x
** and %Box
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
Difference of philosophy
• Plugins handling and why ?
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
Difference of philosophy
• Fw Maintenance & Evolution
Joomla! Upgrade from v1.0 to >= v2.x
(disaster)
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
Difference of philosophy
• Ease of development
Magento’s case
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
Best Framework ever ?
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
Best Framework ever ?
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
Best Framework ever ?
• My opinion doesn’t count here, only yours
based on :
– Knowledge of the fwk
– Features of the fwk (and plugins)
– Team behind fwk (size, maturity, endurance)
– Quantity of time spent (and on what)
– Maintainability of your application
– Your team quality and turnover
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
cfFramework – v0.x
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
Structure of cfFramework
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
Structure of cfFramework
• Configuration
A simple example
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
Structure of cfFramework
• Routing & controllers
A very simple example
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
Structure of cfFramework
• Views
Another simple example
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
Structure of cfFramework
• Model
Let’s see
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
Structure of cfFramework
• Rendering
Please, just a tiny example again
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
Structure of cfFramework
• Rules of development
– #1 Everything is (or should be) an object
– #2 Every objects should be extensible
– #3 If it’s unclear or dirty, it has to be refactored
– #4 It should never left you on a dead-end
– #5 It has to be close to 100% compatible with CF9
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
Structure of cfFramework
• Next things on the roadmap
– IOC abstraction (possibility to choose another)
– RestFUL integration (abstraction of engines)
– Plugins feature
– Events & Listeners
– Change context to an object
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
Life of cfFramework
• Some facts
– Non profit application
– No “free or rental organisation” behind (yet ?)
– Large crew composed of almost one person
– Totally open to critics and help
– Big plan to take over the world ! (kidding)
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
cfFramework
Questions
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
Structure of cfFramework
• An obvious but tricky question :
Why another framework ?
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
Structure of cfFramework
• Question from a FB guy :
Why you should use cfFramework?
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
Structure of cfFramework
• Question from a Friend :
Why Railo and cf9 compatibility ?
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
Structure of cfFramework
• Now it’s your turn to asks questions :
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
Structure of cfFramework
• cfFramework is available on github :
https://github.com/jlepage/cfFramework
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
Special Thanks
• Michael Hnat from BlueGras (& CFCamp)
• My Besties Boys : Aurelien & Hervé
• My colleague and dear friend : Olivier
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)
It’s finish
If you any questions later…
or if you wan t to be involve in cfFramework
Thanks you for your attention
(and to have been so gentle with a French guy)
Twitter : @jlepage_info
Web : cfm.io
FB Page : cfFramework
cfFramework 2016
Copyrights J.Lepage (j@cfm.io)

More Related Content

Similar to cfFramework vs World - Overview of MVC and cfFramework v0.x

NET Event - Migrating WinForm
NET Event - Migrating WinFormNET Event - Migrating WinForm
NET Event - Migrating WinFormRaffaele Garofalo
 
Top 10 open source technologies for enterprise/Business web application devel...
Top 10 open source technologies for enterprise/Business web application devel...Top 10 open source technologies for enterprise/Business web application devel...
Top 10 open source technologies for enterprise/Business web application devel...Techcronus Business Solutions Pvt. Ltd.
 
Angular (v2 and up) - Morning to understand - Linagora
Angular (v2 and up) - Morning to understand - LinagoraAngular (v2 and up) - Morning to understand - Linagora
Angular (v2 and up) - Morning to understand - LinagoraLINAGORA
 
What Web Framework To Use?
What Web Framework To Use?What Web Framework To Use?
What Web Framework To Use?Kasra Khosravi
 
HTML5 - The Python Angle (PyCon Ireland 2010)
HTML5 - The Python Angle (PyCon Ireland 2010)HTML5 - The Python Angle (PyCon Ireland 2010)
HTML5 - The Python Angle (PyCon Ireland 2010)Kevin Gill
 
Lunch and learn as3_frameworks
Lunch and learn as3_frameworksLunch and learn as3_frameworks
Lunch and learn as3_frameworksYuri Visser
 
Unleash your Symfony projects with eZ Platform
Unleash your Symfony projects with eZ PlatformUnleash your Symfony projects with eZ Platform
Unleash your Symfony projects with eZ PlatformSébastien Morel
 
Where do you want to go today 2007
Where do you want to go today   2007Where do you want to go today   2007
Where do you want to go today 2007Mike Feltman
 
Ny symfony meetup may 2015
Ny symfony meetup may 2015Ny symfony meetup may 2015
Ny symfony meetup may 2015Roland Benedetti
 
[Rakuten TechConf2014] [E-4] Rakuten Front-end Framework Project
[Rakuten TechConf2014] [E-4] Rakuten Front-end Framework Project[Rakuten TechConf2014] [E-4] Rakuten Front-end Framework Project
[Rakuten TechConf2014] [E-4] Rakuten Front-end Framework ProjectRakuten Group, Inc.
 
Which Tools Are The Best For Symfony Projects_.pdf
Which Tools Are The Best For Symfony Projects_.pdfWhich Tools Are The Best For Symfony Projects_.pdf
Which Tools Are The Best For Symfony Projects_.pdfMoon Technolabs Pvt. Ltd.
 
Railo Presentation Railo 3.1
Railo Presentation Railo 3.1Railo Presentation Railo 3.1
Railo Presentation Railo 3.1Rhinofly
 
Building Rich Applications with Appcelerator
Building Rich Applications with AppceleratorBuilding Rich Applications with Appcelerator
Building Rich Applications with AppceleratorMatt Raible
 
LAMP is so yesterday, MEAN is so tomorrow! :)
LAMP is so yesterday, MEAN is so tomorrow! :) LAMP is so yesterday, MEAN is so tomorrow! :)
LAMP is so yesterday, MEAN is so tomorrow! :) Sascha Sambale
 
The distinct advantages of using PHP-Symfony Framework
The distinct advantages of using PHP-Symfony FrameworkThe distinct advantages of using PHP-Symfony Framework
The distinct advantages of using PHP-Symfony FrameworkMindfire LLC
 
Php Conference Brazil - Phalcon Giant Killer
Php Conference Brazil - Phalcon Giant KillerPhp Conference Brazil - Phalcon Giant Killer
Php Conference Brazil - Phalcon Giant KillerJackson F. de A. Mafra
 
Which Tools Are The Best For Symfony Projects_.pdf
Which Tools Are The Best For Symfony Projects_.pdfWhich Tools Are The Best For Symfony Projects_.pdf
Which Tools Are The Best For Symfony Projects_.pdfMoon Technolabs Pvt. Ltd.
 

Similar to cfFramework vs World - Overview of MVC and cfFramework v0.x (20)

Introducing symfony
Introducing symfonyIntroducing symfony
Introducing symfony
 
NET Event - Migrating WinForm
NET Event - Migrating WinFormNET Event - Migrating WinForm
NET Event - Migrating WinForm
 
Top 10 open source technologies for enterprise/Business web application devel...
Top 10 open source technologies for enterprise/Business web application devel...Top 10 open source technologies for enterprise/Business web application devel...
Top 10 open source technologies for enterprise/Business web application devel...
 
Angular (v2 and up) - Morning to understand - Linagora
Angular (v2 and up) - Morning to understand - LinagoraAngular (v2 and up) - Morning to understand - Linagora
Angular (v2 and up) - Morning to understand - Linagora
 
T2 Web Framework
T2 Web FrameworkT2 Web Framework
T2 Web Framework
 
What Web Framework To Use?
What Web Framework To Use?What Web Framework To Use?
What Web Framework To Use?
 
HTML5 - The Python Angle (PyCon Ireland 2010)
HTML5 - The Python Angle (PyCon Ireland 2010)HTML5 - The Python Angle (PyCon Ireland 2010)
HTML5 - The Python Angle (PyCon Ireland 2010)
 
Lunch and learn as3_frameworks
Lunch and learn as3_frameworksLunch and learn as3_frameworks
Lunch and learn as3_frameworks
 
Unleash your Symfony projects with eZ Platform
Unleash your Symfony projects with eZ PlatformUnleash your Symfony projects with eZ Platform
Unleash your Symfony projects with eZ Platform
 
Where do you want to go today 2007
Where do you want to go today   2007Where do you want to go today   2007
Where do you want to go today 2007
 
Ny symfony meetup may 2015
Ny symfony meetup may 2015Ny symfony meetup may 2015
Ny symfony meetup may 2015
 
[Rakuten TechConf2014] [E-4] Rakuten Front-end Framework Project
[Rakuten TechConf2014] [E-4] Rakuten Front-end Framework Project[Rakuten TechConf2014] [E-4] Rakuten Front-end Framework Project
[Rakuten TechConf2014] [E-4] Rakuten Front-end Framework Project
 
Which Tools Are The Best For Symfony Projects_.pdf
Which Tools Are The Best For Symfony Projects_.pdfWhich Tools Are The Best For Symfony Projects_.pdf
Which Tools Are The Best For Symfony Projects_.pdf
 
Railo Presentation Railo 3.1
Railo Presentation Railo 3.1Railo Presentation Railo 3.1
Railo Presentation Railo 3.1
 
Building Rich Applications with Appcelerator
Building Rich Applications with AppceleratorBuilding Rich Applications with Appcelerator
Building Rich Applications with Appcelerator
 
LAMP is so yesterday, MEAN is so tomorrow! :)
LAMP is so yesterday, MEAN is so tomorrow! :) LAMP is so yesterday, MEAN is so tomorrow! :)
LAMP is so yesterday, MEAN is so tomorrow! :)
 
The distinct advantages of using PHP-Symfony Framework
The distinct advantages of using PHP-Symfony FrameworkThe distinct advantages of using PHP-Symfony Framework
The distinct advantages of using PHP-Symfony Framework
 
Php Conference Brazil - Phalcon Giant Killer
Php Conference Brazil - Phalcon Giant KillerPhp Conference Brazil - Phalcon Giant Killer
Php Conference Brazil - Phalcon Giant Killer
 
Which Tools Are The Best For Symfony Projects_.pdf
Which Tools Are The Best For Symfony Projects_.pdfWhich Tools Are The Best For Symfony Projects_.pdf
Which Tools Are The Best For Symfony Projects_.pdf
 
Micro Front Ends : Divided We Rule by Parth Ghiya - AhmedabadJS
Micro Front Ends : Divided We Rule by Parth Ghiya - AhmedabadJSMicro Front Ends : Divided We Rule by Parth Ghiya - AhmedabadJS
Micro Front Ends : Divided We Rule by Parth Ghiya - AhmedabadJS
 

Recently uploaded

#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024BookNet Canada
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfjimielynbastida
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDGMarianaLemus7
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Unlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsUnlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsPrecisely
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 

Recently uploaded (20)

#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
New from BookNet Canada for 2024: BNC BiblioShare - Tech Forum 2024
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Science&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdfScience&tech:THE INFORMATION AGE STS.pdf
Science&tech:THE INFORMATION AGE STS.pdf
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
APIForce Zurich 5 April Automation LPDG
APIForce Zurich 5 April  Automation LPDGAPIForce Zurich 5 April  Automation LPDG
APIForce Zurich 5 April Automation LPDG
 
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Unlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsUnlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power Systems
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 

cfFramework vs World - Overview of MVC and cfFramework v0.x

  • 1. cfFramework vs wOrld cfCamp 2016- October 20th cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 2. Disclaimer This presentation reflect my own opinion. As you are free to have a different one, so do I. Like a italian mother, I can not be totally objective about my framework. But as a french how can I be wrong ? ;) cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 3. Disclaimer #2 Maybe I will say those words : Java, Php, Symfony, Zend, Drupal, Joomla, Magento, Spring, Wordpress, … Please, do not throw up on the near person! cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 4. What’s a framework “In computer programming, a software framework is an abstraction in which software providing generic functionality can be selectively changed by additional user-written code, thus providing application-specific software. A software framework is a universal, reusable software environment that provides particular functionality as part of a larger software platform to facilitate development of software applications, products and solutions. […]” -- Wikipedia guys NB: You have passed the biggest slides cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 5. What’s a framework cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 6. CFML MVC Frameworks • ColdBox • FW/1 • CFWheels (reloaded) • onTap (no update since 2014) • Mach-II (RIP) • FuseBox (RIP) • Model-Glue (RIP) • cfFramework (from now) cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 7. Difference of philosophy • Config over Dev Drupal’s case cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 8. Difference of philosophy • Configuration by Convention Symfony’s case cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 9. Difference of philosophy • Minimalism vs functionality FW/1* vs ColdBox** * <= version 2.5.x ** and %Box cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 10. Difference of philosophy • Plugins handling and why ? cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 11. Difference of philosophy • Fw Maintenance & Evolution Joomla! Upgrade from v1.0 to >= v2.x (disaster) cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 12. Difference of philosophy • Ease of development Magento’s case cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 13. Best Framework ever ? cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 14. Best Framework ever ? cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 15. Best Framework ever ? • My opinion doesn’t count here, only yours based on : – Knowledge of the fwk – Features of the fwk (and plugins) – Team behind fwk (size, maturity, endurance) – Quantity of time spent (and on what) – Maintainability of your application – Your team quality and turnover cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 16. cfFramework – v0.x cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 17. Structure of cfFramework cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 18. Structure of cfFramework • Configuration A simple example cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 19. Structure of cfFramework • Routing & controllers A very simple example cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 20. Structure of cfFramework • Views Another simple example cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 21. Structure of cfFramework • Model Let’s see cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 22. Structure of cfFramework • Rendering Please, just a tiny example again cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 23. Structure of cfFramework • Rules of development – #1 Everything is (or should be) an object – #2 Every objects should be extensible – #3 If it’s unclear or dirty, it has to be refactored – #4 It should never left you on a dead-end – #5 It has to be close to 100% compatible with CF9 cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 24. Structure of cfFramework • Next things on the roadmap – IOC abstraction (possibility to choose another) – RestFUL integration (abstraction of engines) – Plugins feature – Events & Listeners – Change context to an object cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 25. Life of cfFramework • Some facts – Non profit application – No “free or rental organisation” behind (yet ?) – Large crew composed of almost one person – Totally open to critics and help – Big plan to take over the world ! (kidding) cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 27. Structure of cfFramework • An obvious but tricky question : Why another framework ? cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 28. Structure of cfFramework • Question from a FB guy : Why you should use cfFramework? cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 29. Structure of cfFramework • Question from a Friend : Why Railo and cf9 compatibility ? cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 30. Structure of cfFramework • Now it’s your turn to asks questions : cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 31. Structure of cfFramework • cfFramework is available on github : https://github.com/jlepage/cfFramework cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 32. Special Thanks • Michael Hnat from BlueGras (& CFCamp) • My Besties Boys : Aurelien & Hervé • My colleague and dear friend : Olivier cfFramework 2016 Copyrights J.Lepage (j@cfm.io)
  • 33. It’s finish If you any questions later… or if you wan t to be involve in cfFramework Thanks you for your attention (and to have been so gentle with a French guy) Twitter : @jlepage_info Web : cfm.io FB Page : cfFramework cfFramework 2016 Copyrights J.Lepage (j@cfm.io)