Difference between #4 and #5 of
(draft) Understanding Yii 3

Revision #5 has been created by Mehdi Achour on Dec 17, 2018, 9:09:08 PM with the memo:

Reverted to revision #3
« previous (#4) next (#6) »

Changes

Title unchanged

(draft) Understanding Yii 3

Category unchanged

Tutorials

Yii version unchanged

all

Tags unchanged

yii3

Content changed

[...]
Yii 3 is the second major rewrite of the Yii framework.

> Originally started in the 2.1 branch, it was later decided to switch to the 3.X series because of all the backward compatibility breakage. Starting with 3.0, [Yii will follow the Sementic Versionning](https://www.yiiframework.com/news/177/yii-adopts-semver-since-version-3-0-0).

This rewrite addresses a lot of issues Yii 2 suffered from, like the framework being too coupled with jQuery, bower, bootstrap.
 <small>[TODO: add more grieffs about Yii2]</small>
 
 
 
## Changes overview
 
 
Here are the main changes in Yii 3. You can check the complete [CHANGELOG](https://github.com/yiisoft/yii-core/blob/master/CHANGELOG.md#300-under-development) for an exhaustive list.
 
 
 
### Source code splitting
 
 
The framework source code have been split into several packages, and at its core level, Yii no longer makes assumptions about your development stack, or the features you will be using.
 
 
This enable you to cherry pick the packages you need to compose your application

 
 
 
In order to achieve this, the framework source code have been split into several packages, and at its core level, Yii no longer makes assumptions about your web stack
. This re-organisation is also a great news for maintainance, as these packages will be maintained and released separately, thus allowing more frequent updates. ### Autoloading
 
 
T
It's also important to note that the custom PHP class autoloader have also been removed in favor of Composer's PSR-4 implementation. We will see the implications of this change later. ### PSR compatibility
 
 
Yii 3 take 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
 
 * Caching is now compliant with PSR-16
 
 * Dependency Injection is now compliant with PSR-11
 
 
### Application configuration
 
 
<small>[TODO]</small>
 
 
### Dependencies injection
 
 
<small>[TODO]</small>
 
Other new PSR changes:
 
 
 * Logging is now compliant with PSR-3
 
 * Caching is now compliant with PSR-16
 
 * Dependency Injection is now compliant with PSR-11
 
 
You can check the complete [CHANGELOG](https://github.com/yiisoft/yii-core/blob/master/CHANGELOG.md#300-under-development) for an exhaustive list of modifications.


## Yii 3 composer packages
[...]
Let's introduce them briefly:

<details>
 
<summary>The framework</summary>
 
### The Framework

* [yiisoft/yii-core](https://github.com/yiisoft/yii-core)
[...]
* `yii-web` implements all that you need to build a web application (Assets management, Sessions, Request handling ..)
* `yii-rest` implements all that you need to build a REST interface (ActiveController, ..)
</details>
 
 
<details>
 
<summary>Librairies</summary>

 

### Librairies
[...]
* [yiisoft/db-mongodb](https://github.com/yiisoft/db-mongodb) MongoDB support
* [yiisoft/db-elasticsearch](https://github.com/yiisoft/db-elasticsearch) Elastic
</details>
 
 
<details>
 
<summary>Extensions</summary>

### Extensions
[...]
* [yiisoft/yii-http-client](https://github.com/yiisoft/yii-http-client) HTTP client extension
* [yiisoft/yii-auth-client](https://github.com/yiisoft/yii-auth-client) External authentication extension
</details>
 
 
<details>
 
<summary>Yii project template and application bases</summary>

### Yii project template and application bases
[...]
Let's try running the web base template in the next section.
</details>
## Running your first Yii 3 powered application

Let's try running a web application using Yii 3, and the provided project template.

##### Installing the project template
[...]
39 0
17 followers
Viewed: 190 196 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