Introduction au framework Yii

Ce que vous allez créer

Pourquoi yii?

Écrire "Hello World" en PHP est assez facile, mais créer une application Web réelle devient rapidement compliqué. Dès que vous souhaitez gérer la sécurité, écrire du code DRY ou utiliser les techniques de conception MVC, PHP semble faire défaut. Auparavant, j’ai travaillé avec Ruby on Rails, mais j’ai constaté que beaucoup de problèmes subsistaient, en particulier en ce qui concerne l’hébergement et le déploiement économique et flexible.. 

C'est là qu'interviennent les frameworks PHP.

Il existe un certain nombre de bons frameworks PHP, Symfony, Cake, Zend, CodeIgniter, Laravel et mon préféré, Yii. Yii est un framework gratuit et à code source ouvert pour PHP5 qui favorise la conception propre et sèche et prend en charge le développement rapide. J'ai constaté que Yii offrait tout ce que j'attendais d'un framework dans un package hautes performances avec peu de limitations imposées par les autres frameworks PHP.

Le site média Upstart Vice est écrit en Yii, tout comme l'alternative du développeur émergent à WordPress, CraftCMS (suivez @reifman pour mon prochain Intro to CraftCMS)..

Yii se distingue par ses performances, qui sont essentielles lorsque vous adoptez un cadre:

Le framework Yii offre également de nombreuses fonctionnalités qui me permettent d’écrire rapidement et facilement des applications Web optimisées. Et surtout, Yii offre également une excellente documentation et une communauté de soutien.

Yii est mature, éprouvée et stable. Créée par le développeur Qiang Xue, la version 1.x existe depuis 2008. La version 2.0 est attendue dans un instant, la documentation et les tests finaux sont en cours de finalisation..

Caractéristiques

Pour un cadre hautement performant, l'étendue des capacités et des fonctionnalités de Yii est assez extraordinaire, et c'est l'une des raisons pour lesquelles j'ai été attiré par le cadre. Vous pouvez voir et essayer quelques exemples de code Yii en action sur le terrain de jeu Yii..

Voici quelques faits saillants:

  • Architecture modèle-vue-contrôleur. Tout comme Ruby on Rails, vous pouvez maintenant utiliser MVC dans vos applications PHP..
  • Les migrations DAO (base de données), Active Record et programmatique simplifient les tâches de création d'applications Web reposant sur une base de données..
  • La saisie de formulaire, la validation et le support Ajax sont intégrés. Yii rend les formulaires assez faciles.
  • L'authentification intégrée et les puissantes extensions de gestion des utilisateurs facilitent le lancement de nouvelles applications Web..
  • L'outil intégré de génération de code de Yii, Gii, accélère l'échafaudage de développement de votre application en mode MVC.
  • Console Yii. Vous pouvez exécuter Yii à partir de la ligne de commande ou en tant que démon. Avec cela, il est possible de créer des tâches d'arrière-plan hautes performances en PHP.
  • Les options de thèmes telles que l'extension Bootstrap facilitent la création d'applications de haute qualité et très réactives
  • Prise en charge de la mise en cache en couches Yii facilite la mise en œuvre des types de mise en cache qui conviennent à votre application
  • Sécurité. Yii minimise considérablement les facteurs de risque typiques liés à l'exécution de services avec PHP et MySQL
  • Intégration avec d'autres frameworks. Il est facile d'utiliser les fonctionnalités Zend ou PEAR dans Yii
  • Extensions La communauté de Yii propose une variété de plug-ins et de widgets open source gratuits
  • Internationalisation. Yii prend en charge I18N et facilite la fourniture de versions localisées de votre application..
  • Traitement des erreurs, enregistrement et test - oui, Yii livre.

La communauté Yii a également acheté une licence illimitée pour le bel éditeur de texte enrichi basé sur le Web, Redactor - pour que vous puissiez l’utiliser avec vos propres applications Yii. C'est parfait pour une entrée formatée riche ou des fonctionnalités CMS.

La documentation et la communauté Yii sont également d'excellentes fonctionnalités. Il existe quelques excellents livres électroniques pour vous aider à démarrer.

Mon expérience avec Yii

Yii a été un élément clé de ma productivité accrue au cours des deux dernières années. Yii m'a facilité la construction de nombreuses applications Web:

  • Simplifiez les filtres de messagerie, gérez et envoyez les résumés de mes e-mails, simplifiant ainsi les tracas de la communication moderne et activant de nouvelles fonctionnalités puissantes telles que la fermeture du courrier électronique. Il s'intègre à la bibliothèque PHP IMAP, à l'API Mailgun ainsi qu'à l'API Pushover pour les notifications.. 
  • Geogram est un projet visant à offrir des groupes de courrier électronique aux quartiers et aux lieux. Geogram s'intègre aux données de voisinage de Zillow, Google Maps, Google Places et Mailgun.
  • Simple Monitor surveille mes sites WordPress et la santé de mes serveurs. Quand quelque chose ne va pas, il envoie une notification iOS à mon téléphone..
  •  ListApp, une application gratuite de diffusion de courrier électronique open source utilisant la liste et l'API de validation de messagerie de Mailgun J'écrirai plus à ce sujet pour Tuts + bientôt.

Le code pour Simplify Email et Simple Monitor est disponible à l'achat si vous souhaitez passer en revue un code Yii plus profond. J'ai aussi écrit une poignée de tutoriels sur Yii. 

Certaines de mes extensions Yii préférées incluent Yii User, Yii Bootstrap, Redactor et Yii Hybridauth..

Quoi de neuf dans la version 2.0?

Yii 2.0 est sur le point d'être publié (suivez la feuille de route du développement). Les notes bêta de Yii2 résument le mieux les améliorations apportées à Yii 1.x. 

En partie à cause de l'état d'avancement de Yii 1.x, il n'y a pas une seule fonctionnalité étonnante pour Yii2, mais il existe un large éventail d'améliorations substantielles qui faciliteront de plus en plus la vie des développeurs Yii.. 

Voici quelques faits saillants:

  • Prise en charge du chargement automatique de la classe PSR-4, espaces de noms plus simples, chargement plus rapide et facilité d'utilisation améliorée pour les développeurs
  • Amélioration des performances et de la sécurité
  • Intégration de la structure de l'API RESTful pour faciliter la création d'API
  • Intégration des tests de réception
  • Améliorations apportées à la base de données et aux enregistrements actifs, notamment les requêtes par lots, la prise en charge des sous-requêtes et les relations inverses
  • Amélioration de la gestion et du traitement des URL
  • Traductions des messages de base disponibles en 26 langues
  • Générateur de documentation

Débuter avec Yii

Commencer avec Yii est assez facile en raison de sa documentation exceptionnelle. Voici quelques choses à essayer:

  • Faire le tour yii
  • Regarder Yii Screencasts
  • Allez à la bibliothèque: Le guide définitif de Yii, consultez Le livre Yii de Larry Ullman et le développement d'applications Web avec Yii et PHP
  • Explorez le terrain de jeu Yii
  • Essayez le tutoriel gratuit et open source ListApp for Mailgun, achetez le code dans Simple Monitor ou consultez mes autres tutoriels.
  • Assurez-vous de poser des questions sur le forum de la communauté Yii.

Je suis extrêmement enthousiasmé par Yii 2.0 et l’avenir de Yii en tant que framework PHP. Cela a renforcé mon efficacité en tant que développeur et consultant. J'espère que vous trouverez Yii aussi intéressant et utile que moi.

Si vous avez des questions ou des corrections, merci de les poster dans les commentaires. Si vous souhaitez suivre mes futurs tutoriels et séries, veuillez suivre @reifman ou visiter la page de mon auteur..