Skip to content
This repository was archived by the owner on Jan 29, 2020. It is now read-only.

Commit 3d5ee2e

Browse files
committed
Added a "Why use zend-mvc?" section
Also edited the other areas of the text covering zend-mvc for content.
1 parent 2543b39 commit 3d5ee2e

File tree

1 file changed

+38
-18
lines changed

1 file changed

+38
-18
lines changed

doc/book/why-expressive.md

Lines changed: 38 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,35 @@
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 — _if the choice is yours to make_.
3+
We recommend that you choose Expressive for any new project — _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 —
28+
or get in your way.
1129

1230
As a result, you are required to know a lot of what those things are — *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
1533
you begin to get the most out of it.
1634

1735
To 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.
2947
It provides a very minimalist structure. Essentially all you have to become
3048
familiar 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 — in
40-
contrast to the zend-mvc approach — 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 — in contrast to the zend-mvc approach —
60+
is more flexible and accommodating.
4161

4262
What’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

Comments
 (0)