Yii ist ein leistungsstarkes PHP-Framework, das für die Entwicklung von WEB2.0-Anwendungen geeignet ist.
Yii verfügt über zahlreiche Funktionen, darunter MVC, DAO/ActiveRecord, I18N/L10N, Caching, Authentifizierung und rollenbasierte Zugriffskontrolle, Gerüstbau, Tests usw., die die Entwicklungszeit erheblich verkürzen können
Offizielle Website: http://www.yiiframework.com/
Yii schnell
Yii lädt nur die Funktionen, die Sie benötigen. Es verfügt über eine starke Caching-Unterstützung. Es ist explizit für die effiziente Zusammenarbeit mit AJAX konzipiert.
Yii-Sicherheit
Yii ist nach seinen Maßstäben sicher. Es umfasst Eingabevalidierung, Ausgabefilterung, SQL-Injection und Cross-Site-Scripting-Prävention.
Professionell
Yii hilft Ihnen, sauberen und wiederverwendbaren Code zu entwickeln. Es folgt dem MVC-Muster und gewährleistet eine klare Trennung von Logik- und Präsentationsebene.
Yii Framework ist ein komponentenbasiertes, leistungsstarkes PHP-Framework für die Entwicklung umfangreicher Webanwendungen. Yii bietet nahezu alles, was für die heutige Web 2.0-Anwendungsentwicklung benötigt wird. Yii ist eines der effizientesten PHP-Frameworks. Yii ist die Idee des Gründers Xue Qiang und begann am 1. Januar 2008 mit der Entwicklung.
Yii ist ein leistungsstarkes, komponentenbasiertes PHP-Framework für die Entwicklung umfangreicher Webanwendungen. Yii ist in striktem OOP geschrieben und verfügt über vollständige Bibliotheksreferenzen und umfassende Tutorials. Von MVC, DAO/ActiveRecord, Widgets, Caching, hierarchischem RBAC, Webdiensten bis hin zu Theming, I18N und L10N bietet Yii fast alles, was für die heutige Web 2.0-Anwendungsentwicklung benötigt wird. Tatsächlich ist Yii eines der effizientesten PHP-Frameworks.
Yii ist ein leistungsstarkes PHP5-Framework für die Entwicklung von Webanwendungen. Mit einem einfachen Befehlszeilentool kann yiic schnell ein Webanwendungscode-Framework erstellen. Entwickler können Geschäftslogik basierend auf dem generierten Code-Framework hinzufügen, um die Anwendungsentwicklung schnell abzuschließen.
Yii-Vorteile
Yii ist einfach zu erlernen und zu verwenden. Sie müssen lediglich PHP und objektorientierte Programmierung beherrschen und können schnell loslegen, ohne sich vorher eine neue Architektur oder Template-Sprache aneignen zu müssen.
Die Entwicklung mit Yii ist sehr schnell und erfordert außer dem Framework selbst nur sehr wenig Programmieraufwand für die Anwendung. Tatsächlich ist es eines der effizientesten Entwicklungsframeworks.
Yii ist in hohem Maße wiederverwendbar und erweiterbar und rein objektorientiert. Alles in Yii ist eine unabhängig konfigurierbare, wiederverwendbare und erweiterbare Komponente. Noch wichtiger ist, dass Yii über immer mehr Erweiterungsbibliotheken verfügt. Da es hauptsächlich aus vom Benutzer bereitgestellten Komponenten besteht, kann dies dazu beitragen, Ihre Entwicklungszeit erheblich zu verkürzen.
Yii ist reich an Funktionen: Von MVC, DAO/ActiveRecord bis hin zu Design, Internationalisierung und Lokalisierung bietet Yii fast alle Funktionen, die für die heutige Web 2.0-Anwendungsentwicklung benötigt werden.
Das Yii-Referenzhandbuch ist eine vollständige Dokumentation von Yii mit allen Informationen, die Sie zum Erlernen und Beherrschen benötigen.
Yii wurde von Anfang an sorgfältig entwickelt, um die Entwicklung komplexer WEB-Anwendungen zu ermöglichen. Es ist kein Nebenprodukt eines Projekts oder einer Drittanbieter-Integration. Es ist vielmehr das Produkt der umfassenden Erfahrung des Autors in der Entwicklung von Webanwendungen und der hervorragenden Ideen anderer beliebter Web-Frameworks und -Anwendungen.
Zu guter Letzt ist Yii kostenlos und folgt der neuesten BSD-Lizenz. Es stellt sicher, dass die Entwicklung durch Dritte ebenfalls einer BSD-kompatiblen Lizenz folgt. Das bedeutet, dass Sie Yii sowohl rechtlich als auch finanziell frei für die Entwicklung beliebiger Open-Source- oder proprietärer Anwendungen nutzen können.
Funktionen
Yii possède presque toutes les fonctionnalités du développement d'applications Web 2.0 actuel. Vous trouverez ci-dessous une courte liste de ces fonctionnalités.
Modèle de conception Model-View-Controller (MVC) : Yii adopte cette technologie mature dans la programmation WEB pour mieux séparer la couche logique et la couche de présentation.
Objet d'accès à la base de données (DAO) et Active Record : Yii permet aux développeurs de modéliser des objets de données dans une base de données, réduisant ainsi leurs efforts d'écriture d'instructions SQL longues et répétitives.
Intégration avec jQuery : en tant que l'un des frameworks JavaScript les plus populaires, jQuery permet d'écrire des interfaces JavaScript efficaces et flexibles.
Saisie et validation du formulaire : YII rend la collecte de la saisie du formulaire très simple et sécurisée. Yii dispose d'un ensemble de validateurs pour garantir la validité des données. Il dispose également de méthodes d'assistance et de composants pour afficher les erreurs en cas d'échec de la validation.
Widgets Web 2.0 : Propulsé par jQuery, YII est livré avec un ensemble de widgets Web 2.0 tels que des champs de saisie à saisie semi-automatique, TreeView et bien plus encore.
Authentification et autorisation : Yii dispose d'un support d'authentification intégré. Il prend également en charge l'autorisation via un contrôle d'accès basé sur les rôles (RBAC) en couches.
Thème : Il peut changer instantanément l’affichage d’une application Yii.
Services Web : Yii prend en charge la génération automatique de spécifications de service WSDL complexes et la gestion du traitement des demandes de service Web.
Internationalisation (I18N) et localisation (L10N) : Yii prend en charge la conversion de messages, les formats de date et d'heure, les formats de nombres et la localisation d'interface.
Schéma de mise en cache hiérarchique : Yii prend en charge la mise en cache des données, la mise en cache des pages, la mise en cache des fragments et le contenu dynamique. Un support de stockage en cache qui peut être facilement modifié sans toucher au code de l'application.
Gestion des erreurs et journalisation : la gestion des erreurs est bien présentée et les informations des journaux peuvent être classées, filtrées et attribuées à différents emplacements.
Sécurité : Yii est livré avec de nombreuses mesures de sécurité pour aider à sécuriser les applications Web afin de prévenir les cyberattaques. Ces mesures incluent la prévention des scripts intersites (XSS), la prévention des falsifications de requêtes intersites (CSRF), la prévention de la falsification des cookies, etc.
Conforme XHTML : les composants Yii et les outils de ligne de commande génèrent du code conforme à XHTML.
Génération automatique de code : Yii fournit des outils qui peuvent générer automatiquement du code en fonction de vos besoins, comme la génération d'un squelette de programme, d'une application CRUD, etc.
Entièrement orienté objet : le framework Yii adhère à un paradigme de programmation strictement orienté objet. Il ne définit aucune fonction ou variable globale. De plus, la hiérarchie de classes qu'elle définit permet une réutilisation et une personnalisation maximales.
Convivial à utiliser du code tiers : Yii est soigneusement conçu pour qu'il fonctionne très bien avec du code tiers. Par exemple, vous pouvez utiliser le code PEAR ou Zend Framework dans votre application Yii.
Documentation détaillée : chaque méthode ou propriété est documentée très clairement. Un tutoriel complet et quelques tutoriels pour débutants sont également fournis.
Bibliothèque d'extensions : Yii fournit une bibliothèque d'extensions composée de composants fournis par l'utilisateur, ce qui rend la liste des fonctions ci-dessus interminable.
À propos de Yii
Yii est un framework PHP hautes performances basé sur des composants pour développer des applications Web à grande échelle. Dans le développement WEB, Yii peut maximiser la réutilisation du code et améliorer considérablement la vitesse de développement. Le nom Yii (prononcé Yee ou [ji:], qui devrait être la prononciation de « yi ») représente simple, efficace et extensible
Besoins environnementaux
Pour exécuter une application Web basée sur Yii, vous avez besoin d'un serveur Web prenant en charge PHP 5.1.0 ou supérieur.
Pour les développeurs qui envisagent d'utiliser Yii, il sera très utile de connaître la programmation orientée objet (POO). Parce que Yii est un pur framework POO.
Champ d'application
Yii est un framework de programmation Web général qui peut être utilisé pour développer presque toutes les applications Web. Grâce à sa légèreté et à sa solution de mise en cache mature, il est particulièrement adapté au développement d'applications à fort trafic, telles que des portails, des forums, des systèmes de gestion de contenu (CMS), des systèmes de commerce électronique, etc.
Comparez avec des produits similaires
Comme la plupart des frameworks PHP, Yii est un framework MVC.
Yii surpasse les autres frameworks avec ses excellentes performances, ses fonctionnalités riches et sa documentation claire. Yii a été soigneusement conçu dès le départ pour être adapté au développement sérieux d'applications Web. Il ne s'agit ni d'un dérivé d'autres projets ni d'une combinaison de travaux de tiers. C'est le résultat de la vaste expérience de l'auteur en matière de développement d'applications Web, ainsi que de ses recherches et réflexions sur les cadres et applications de programmation Web les plus populaires.
Performances
yii performance
Yii est un framework hautes performances. Le graphique suivant montre la haute efficacité de Yii par rapport à d'autres frameworks PHP populaires. Dans ce graphique, RPS signifie « Requêtes par seconde » et décrit le nombre de requêtes que ce framework effectue par seconde. Plus ce nombre est élevé, plus les performances de ce framework sont élevées, et nous pouvons voir que Yii surpasse les autres frameworks dans cette comparaison. L'avantage en termes de performances de Yii est particulièrement significatif lorsque l'extension APC largement utilisée est activée.
Les performances seules ne suffisent pas (sinon nous devrions tous utiliser du HTML ou du PHP simple). Avec des performances aussi supérieures, Yii fournit toujours un ensemble de fonctionnalités très riches qui peuvent grandement améliorer votre efficacité de développement.
Pourquoi Yii est-il si rapide
Yii est si rapide car il utilise largement la technologie de chargement paresseux. Par exemple, la classe ne sera incluse que lorsqu'elle sera utilisée pour la première fois ; l'objet ne sera créé que lorsque l'objet sera accédé pour la première fois. D'autres frameworks souffrent d'une baisse de performances car ils activeraient une fonctionnalité (par exemple, connexion à une base de données, session utilisateur), peu importe qu'elle soit utilisée ou non lors d'une requête.
Paramètres standards
Ci-dessous, nous expliquons comment concevoir l'application de référence et obtenir les résultats RPS ci-dessus.
Demande de benchmark
Puisque notre objectif est de comparer la surcharge minimale de chaque framework, l'application de référence pour chaque framework doit être la plus simple. Nous choisissons d'afficher une chaîne de texte "Hello World" en plaçant une instruction echo dans l'action par défaut de chaque application. les fonctionnalités supplémentaires du framework (par exemple la session) sont désactivées pour garantir l'équité de la comparaison. Pour obtenir une copie des applications de référence, veuillez consulter le projet phpmark.
.
Pourquoi utiliser « Hello World »
Nous effectuons des tests « hello world » principalement pour atteindre nos objectifs, comme trouver le coût minimum de chaque framework. De nombreuses personnes se plaignent du fait que les applications « hello world » sont inutiles, car les applications du monde réel impliquent souvent des tâches plus complexes, telles que des requêtes dans des bases de données. Ce n'est pas correct. En fait, en particulier dans certaines applications Web2.0 à grande échelle, la situation que nous rencontrons souvent est généralement assez proche du « bonjour tout le monde ». Par exemple : l’application doit renvoyer l’heure actuelle du serveur en réponse à une requête ajax. La plupart de son contenu est mis en cache sur la page et l'application n'a qu'à récupérer le contenu mis en cache et à l'afficher.
Une autre raison d'utiliser « hello world » est que lors du référencement de fonctionnalités plus complexes (telles que des requêtes de base de données), la clarté de la comparaison sera difficile à garantir. Par exemple : le framework peut exécuter des requêtes de base de données de manière très efficace, mais il lui manque une solution de mise en cache. Alors qu'un autre framework est légèrement plus lent sur les requêtes de base de données, il dispose de fonctionnalités de mise en cache avancées pour atténuer la surcharge du système. Dans l’ensemble, trop de facteurs entrent en jeu pour établir une comparaison claire.
Outils et environnement standards
Utilisez la commande "ab -t 30 -c 10 URL" de l'outil ApacheBench pour obtenir le numéro RPS (par exemple : exécuter le test au niveau de concurrence 10 pendant 30 secondes). Afin d'obtenir le numéro de chaque frame, nous arrêtons et démarrons d'abord le serveur Apache WEB pour éviter les interférences. Exécutez également le programme de test plusieurs fois pour « réchauffer » l'environnement de test. Dans le projet phpmark, il existe un script shell appelé benchmark.sh qui automatise le processus de benchmark.
Crédits
Yii tire bon nombre de ses idées d'autres frameworks et applications de programmation Web bien connus. Vous trouverez ci-dessous une courte liste.
Prado : C'est la principale source d'idées pour Yii. Yii adopte des modèles de programmation basés sur les composants et pilotés par les événements, une couche d'abstraction de base de données, une architecture d'application modulaire, l'internationalisation et la localisation, ainsi que bon nombre de ses autres caractéristiques et fonctions.
Ruby on Rails : Yii hérite de l'idée de sa configuration. Fait également référence à son modèle de conception Active Record ORM.
jQuery : Il s'agit d'un framework JavaScript intégré à Yii.
Symfony : Yii fait référence à sa conception de filtrage et à son architecture de plugin.
Joomla : Yii cité pour sa conception modulaire et son système de traduction d'informations.