11# Should You Choose zend-expressive Over zend-mvc?
22
3- After creating several projects with zend-expressive, we recommend that you
4- choose Expressive for any new project &mdash ; _ if the choice is yours to make_ .
3+ We recommend that you choose Expressive for any new project &mdash ; _ if the
4+ choice is yours to make_ .
5+
6+ ## Why Use zend-mvc?
7+
8+ zend-mvc is a proven platform, with half a decade of development behind it. It
9+ is stable and battle-tested in production platforms.
10+
11+ Because it is opinionated about project structure and architecture, fewer
12+ decisions need be made up front; developers know where new code goes, and how it
13+ will wire into the overall application.
14+
15+ Additionally, a number of training courses exist, including [ offerings by
16+ Zend] ( http://www.zend.com/en/services/training/zf-fundamentals-i ) , allowing you
17+ or your team to fully learn the framework and take advantage of all its features.
18+
19+ Finally, zend-mvc has a lively [ module ecosystem] ( https://packagist.org/search/?q=zf2 ) ,
20+ allowing you to add features and capabilities to your application without
21+ needing to develop them from scratch.
522
623## We Recommend Expressive
724
825[ zend-mvc] ( https://github.com/zendframework/zend-mvc ) has many preconceptions
9- about how things work, yet they're very broad and unspecific. What’s more, it
10- also has several pre-wired structures in place.
26+ about how things work, yet they're very broad and general. What’s more, it
27+ also has several pre-wired structures in place that may either aid you &mdash ;
28+ or get in your way.
1129
1230As a result, you are required to know a lot of what those things are &mdash ; * if* you
13- want to use it optimally. And to acquire that depth of knowledge, you’re going
14- to need to spend a lot of time, digging deep into zend-mvc’s internals, before
31+ want to use it optimally. And to acquire that depth of knowledge, you’re going
32+ to need to spend a lot of time digging deep into zend-mvc’s internals before
1533you begin to get the most out of it.
1634
1735To quote Zend Framework project lead, [ Matthew Weier O’Phinney] ( https://mwop.net ) :
@@ -29,25 +47,27 @@ on the other hand, comes with barely any of these assumptions and requirements.
2947It provides a very minimalist structure. Essentially all you have to become
3048familiar with are five core components. These are:
3149
32- - A DI container
33- - A router
34- - An error handler for development
35- - A template engine (if you’re not creating an API)
36- - PSR-7 messages and http-interop (future PSR-15) middleware
50+ - A DI container.
51+ - A router.
52+ - An error handler for development.
53+ - A template engine (if you’re not creating an API).
54+ - PSR-7 messages and http-interop (future PSR-15) middleware.
3755
38- Given that, you can quickly get up to speed with the framework and begin
39- creating the application that you need. We believe that this approach &mdash ; in
40- contrast to the zend-mvc approach &mdash ; is more flexible and accommodating.
56+ In many cases, these are provided for you by the skeleton, and do not require
57+ any additional knowledge on your part. Given that, you can quickly get up to
58+ speed with the framework and begin creating the application that you need. We
59+ believe that this approach &mdash ; in contrast to the zend-mvc approach &mdash ;
60+ is more flexible and accommodating.
4161
4262What’s more, you can mix and match the types of applications that you create.
4363
4464- Do you just need an API? Great; you can do that quite quickly.
4565- Do you want an HTML-based front-end? That’s available too.
4666
47- When building applications with Expressive, you can make use of any other
48- Zend library , or non-Zend library. You can pick and choose what you need, as
49- and when you need it. You’re not bound by many, if any, constraints and design
50- decisions.
67+ When building applications with Expressive, you can make use of the various Zend
68+ components , or any third-party components or middleware. You can pick and
69+ choose what you need, as and when you need it. You’re not bound by many, if
70+ any, constraints and design decisions.
5171
5272## In Conclusion
5373
0 commit comments