Introduction to YII framework

naincygupta35574 2,343 views 13 slides Oct 09, 2014
Slide 1
Slide 1 of 13
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13

About This Presentation

A brief description of Yii Framework, features, comparison with other frameworks and why to choose.


Slide Content

Why Yii?
Presenter: Naincy Gupta
Mindfire Solutions

Introduction
Architecture
Technologies
Features of Yii
Comparison with other PHP Frameworks
Why to choose?
Agenda

Introduction
YII is a framework for creating Web applications using PHP 5 (or
greater).

High-performance framework and good for developing Web applications.

YII Framework is best because it is based on DRY (Don't repeat
yourself) design pattern that is why is called fast application
development framework.

YII is designed from the beginning to fit for serious Web application
development.

YII is a pure OOP framework.

Architecture

Architecture Flow:
1.) Pre-initialize the application with CApplication::preinit();
2.) Set up class autoloader and error handling
3.) Register core application components
4.) Load application configuration
5.) Initialize the application
- Register application behaviours
- Load static application components
6.) Raise on Begin Request event
7.) Process the user request
- Resolve the user request
- Create controller
- Run controller

Technologies
YII built with help of Qiang Xue made use of severa; other web technologies to
enhance power of YII Qiang Xue used.
PRADO is major source in development of YII
YII referenced its implementation of the active recprd design pattern for its
ORM layer.
Joomla and Symphony were also used in development in YII
jQuery is integrated in YII

Features of YII

Great Integration with industry standards CSS and JS frameworks like jQuery,
BootStrap, etc. Made it easy to create modern responsive designs.

YII also hepls in maintaining the application design as recommended by YII, which
helps in maintaining application security.

Migration utility provide great control over Database changes, will help us to upgrade /
downgrade application version on differnt installations.

Large collection of widgets and third party components.

Custom Theme Management

YII caching support is very handy with high traffic websites

Unit Testing Frameworks

- PHP5 MVC - Powerful Cache
- Nice API - RBAC, auth framework
- Migrations - Console
- Form Builder - Error Handler, Log
- Themes - GII
- Test Framework - Widgets
- Well documented - Friendly community

Comparison
with other
Frameworks

Features YII Laravel Symphony2 CI
Version 1.1.14 4.1.24 2.4 2.1.4
Requirement >= PHP 5.1.0>= 5.3.7 with
mcrypt ext.
>=PHP5.3.2 >= PHP 5.1.6
Cache StorageAPC,
MemCache,
XCache,
ZendPlatform
File System,
Database,
Memcached,
APC, Redis,
Xcache,
WinCache,
Memory
APC,
eAccelerator,
XCache
File, apc,
memcached,
xcache
Testing LibraryPHPUnit,
Selenium
PHPUNIT PHPUNIT PHPUnit (In
development)
Security XSS, Xsrf, Sql
Injection
XSS, Xsrf, Sql
Injection
XSS, Xsrf, Sql
Injection
XSS, Xsrf, Sql
Injection
Template
System
PHP and
Prado's -
Others using
Ext. (Razor,
Smarty, Twig,
etc)
Blade, PHP,
Custom
PHP, Twig PHP, Simple
template
parser
"{var_name}"
Logging
Management
Yes Yes PSR-3
compliant

Why to Choose??
When we choose any Framework for development then what we want:
- development should be staright forward
- Not do complex stuff for web apps
- Easy Learning and easy to debug and fix.
- Less configuration
- As simple API possible
Here, answer is YII.
Yii has all these features and many more benefits that we already
discussed. Some more benefits are:
- Easy to customize the application as per customers requirements.
- Provides great command line tool that help us create complicated CRON jobs.
- Data Cache and Performance

Questions??
Mail me your questions at [email protected]

Thank you