Difference between #8 and #9 of
(draft) Understanding Yii 3

Revision #9 has been created by Mehdi Achour on Dec 19, 2018, 10:56:23 AM with the memo:

Bold titles
« previous (#8) next (#10) »

Changes

Title unchanged

(draft) Understanding Yii 3

Category unchanged

Tutorials

Yii version unchanged

all

Tags unchanged

yii3

Content changed

[...]
This enable you to cherry pick the packages you need to compose your application.

This re-organisation is also a great news for maintainance, as these packages will be released separately, thus allowing more frequent updates.

###
**Autoloading** The custom PHP class autoloader have been removed in favor of Composer's PSR-4 implementation. This means that in order for Yii to see your classes, you will have to explicitly register your namespace in `composer.json`. We will see an example later. ### **PSR compatibility** Yii 3 takes some positive steps following the [PHP-FIG](https://www.php-fig.org/) recommendations, by implementing the following PSRs:

* Logging is now compliant with PSR-3
[...]
* Dependency Injection is now compliant with PSR-11

###
**Application configuration** <small>[TODO]</small> ### **Dependencies injection**

<small>[TODO]</small>
[...]
Let's introduce them briefly:

###
**The Framework**

* [yiisoft/yii-core](https://github.com/yiisoft/yii-core)
[...]
### **Librairies**

In Yii 3, libraries do **not** depend on Yii and are meant to be usable outside the framework.
[...]
* [yiisoft/db-elasticsearch](https://github.com/yiisoft/db-elasticsearch) Elastic

###
**Extensions**

Extensions depends (at least) on yii-core. Aside from the 3 extensions already encountered above (yii-console, yii-web, yii-api), these packages are available
[...]
Let's try running a web application using Yii 3, and the provided project template.

###
## **Installing the project template**

```
[...]
> You could start from scratch using this bare template, select the extensions & packages you want to use and start developing, or you can pick one of the three starters provided.

###
## **Installing the `web` starter**

Since we're doing a web application, we will need an asset manager. We can pick either one of those:
[...]
So where do what we see in the browser comes from ?

###
##  **Exploring yiisoft/yii-base-web structure:**

If you explore the folder in `vendor/yiisoft/yii-base-web`, you will see that the template is in fact a project itself, with this structure:

```
.
[...]
40 0
17 followers
Viewed: 191 168 times
Version: 3.0
Category: Tutorials
Tags: yii3
Written by: Mehdi Achour
Last updated by: samdark
Created on: Dec 16, 2018
Last updated: a year ago
Update Article

Revisions

View all history