Yii est un framework PHP hautes performances adapté au développement d'applications WEB2.0.
Yii est livré avec un riche ensemble de fonctionnalités, notamment MVC, DAO/ActiveRecord, I18N/L10N, la mise en cache, l'authentification et le contrôle d'accès basé sur les rôles, l'échafaudage, les tests, etc., qui peuvent réduire considérablement le temps de développement
Site officiel : http://www.yiiframework.com/
Oui vite
Yii ne charge que les fonctionnalités dont vous avez besoin. Il dispose d’un solide support de mise en cache. Il est explicitement conçu pour fonctionner efficacement avec AJAX.
Yii Sécurité
Yii est sûr selon ses normes. Il comprend la validation des entrées, le filtrage des sorties, l'injection SQL et la prévention des scripts intersites.
Professionnel
Yii vous aide à développer du code propre et réutilisable. Il suit le modèle MVC, garantissant une séparation claire des couches logiques et de présentation.
Yii Framework est un framework PHP hautes performances basé sur des composants pour développer des applications Web à grande échelle. Yii fournit presque tout ce dont vous avez besoin pour le développement d'applications Web 2.0 d'aujourd'hui. Yii est l'un des frameworks PHP les plus efficaces. Yii est le fruit de l'idée originale du fondateur Xue Qiang et a commencé son développement le 1er janvier 2008.
Yii est un framework PHP hautes performances basé sur des composants pour développer des applications Web à grande échelle. Yii est écrit en POO stricte et dispose de références de bibliothèque complètes et de didacticiels complets. De MVC, DAO/ActiveRecord, widgets, mise en cache, RBAC hiérarchique, services Web, jusqu'aux thèmes, I18N et L10N, Yii fournit presque tout ce dont vous avez besoin pour le développement d'applications Web 2.0 d'aujourd'hui. En fait, Yii est l’un des frameworks PHP les plus efficaces.
Yii est un framework de développement d'applications Web PHP5 hautes performances. Un simple outil de ligne de commande yiic peut créer rapidement un cadre de code d'application Web. Les développeurs peuvent ajouter une logique métier basée sur le cadre de code généré pour terminer rapidement le développement d'applications.
Avantages Yii
Yii est facile à apprendre et à utiliser. Il vous suffit de connaître PHP et la programmation orientée objet, et vous pouvez démarrer rapidement sans avoir à apprendre au préalable une nouvelle architecture ou un nouveau langage de modèle.
Le développement avec Yii est très rapide et, mis à part le framework lui-même, très peu de code doit être écrit pour l'application. En fait, c’est l’un des frameworks de développement les plus efficaces.
Yii est hautement réutilisable et extensible et est purement orienté objet. Tout dans Yii est un composant configurable indépendamment, réutilisable et extensible. Ce qui est plus important, c'est que Yii possède de plus en plus de bibliothèques d'extensions. Composé principalement de composants fournis par les utilisateurs, cela peut contribuer à réduire considérablement votre temps de développement.
Yii est riche en fonctionnalités, de MVC, DAO/ActiveRecord à la thématique, à l'internationalisation et à la localisation, Yii fournit presque toutes les fonctionnalités nécessaires au développement d'applications Web 2.0 d'aujourd'hui.
Le manuel de référence Yii est une documentation complète de Yii, avec toutes les informations dont vous avez besoin pour l'apprendre et le maîtriser.
Yii a été soigneusement conçu dès le début pour s'adapter au développement d'applications WEB complexes. Ce n'est pas un sous-produit d'un projet ou d'une intégration tierce. Il s'agit plutôt du point culminant de la riche expérience de l'auteur en matière de développement d'applications Web et d'excellentes idées provenant d'autres frameworks et applications Web populaires.
Enfin, Yii est gratuit et Yii suit la dernière licence BSD. Il garantit que son développement tiers suit également une licence compatible BSD. Cela signifie que vous êtes libre d'utiliser Yii pour développer n'importe quelle application open source ou propriétaire, tant légalement que financièrement.
Caractéristiques
Yii는 오늘날 Web 2.0 애플리케이션 개발의 거의 모든 기능을 갖추고 있습니다. 다음은 이러한 기능의 간단한 목록입니다.
MVC(Model-View-Controller) 디자인 패턴: Yii는 논리 레이어와 프리젠테이션 레이어를 더 잘 분리하기 위해 웹 프로그래밍에 성숙한 기술을 채택했습니다.
DAO(데이터베이스 액세스 개체) 및 활성 레코드: Yii를 사용하면 개발자가 데이터베이스의 데이터 개체를 모델링할 수 있으므로 길고 반복적인 SQL 문을 작성하는 데 드는 노력이 줄어듭니다.
jQuery와의 통합: 가장 널리 사용되는 JavaScript 프레임워크 중 하나인 jQuery를 사용하면 효율적이고 유연한 JavaScript 인터페이스를 작성할 수 있습니다.
양식 입력 및 유효성 검사: YII를 사용하면 양식 입력을 매우 쉽고 안전하게 수집할 수 있습니다. Yii에는 데이터의 유효성을 보장하는 일련의 유효성 검사기가 있으며 유효성 검사에 실패할 경우 오류를 표시하는 도우미 메서드와 구성 요소도 있습니다.
Web 2.0 위젯: jQuery로 구동되는 YII에는 자동 완성 입력 필드, TreeView 등과 같은 Web 2.0 위젯 세트가 함께 제공됩니다.
인증 및 권한 부여: Yii에는 인증 지원 기능이 내장되어 있습니다. 또한 계층형 역할 기반 액세스 제어(RBAC)를 통한 권한 부여도 지원합니다.
테마: Yii 애플리케이션의 보기를 즉시 변경할 수 있습니다.
웹 서비스: Yii는 복잡한 WSDL 서비스 사양을 자동으로 생성하고 웹 서비스 요청 처리를 관리하는 기능을 지원합니다.
국제화(I18N) 및 현지화(L10N): Yii는 메시지 변환, 날짜 및 시간 형식, 숫자 형식 및 인터페이스 현지화를 지원합니다.
계층적 캐싱 방식: Yii는 데이터 캐싱, 페이지 캐싱, 조각 캐싱 및 동적 콘텐츠를 지원합니다. 애플리케이션 코드를 건드리지 않고도 쉽게 변경할 수 있는 캐시된 저장 매체입니다.
오류 처리 및 로깅: 오류 처리가 잘 제공되며 로그 정보를 분류, 필터링하고 다른 위치에 할당할 수 있습니다.
보안: Yii에는 사이버 공격을 방지하기 위해 웹 애플리케이션을 보호하는 데 도움이 되는 다양한 보안 조치가 제공됩니다. 이러한 조치에는 XSS(교차 사이트 스크립팅) 방지, CSRF(교차 사이트 요청 위조) 방지, 쿠키 변조 방지 등이 포함됩니다.
XHTML 호환: Yii의 구성 요소와 명령줄 도구는 XHTML과 호환되는 코드를 생성합니다.
자동 코드 생성: Yii는 프로그램 뼈대 생성, CRUD 애플리케이션 생성 등과 같이 필요에 따라 자동으로 코드를 생성할 수 있는 도구를 제공합니다.
완전한 객체 지향: Yii 프레임워크는 엄격한 객체 지향 프로그래밍 패러다임을 고수합니다. 전역 함수나 변수를 정의하지 않습니다. 또한, 정의된 클래스 계층 구조는 재사용성과 사용자 정의를 극대화합니다.
제3자 코드 사용에 친숙함: Yii는 제3자 코드와 매우 잘 작동하도록 세심하게 설계되었습니다. 예를 들어 Yii 애플리케이션에서 PEAR 또는 Zend Framework 코드를 사용할 수 있습니다.
자세한 문서화: 모든 단일 메서드 또는 속성이 매우 명확하게 문서화되어 있습니다. 포괄적인 튜토리얼과 일부 초보자 튜토리얼도 제공됩니다.
확장 라이브러리: Yii는 사용자가 제공한 구성 요소로 구성된 확장 라이브러리를 제공하므로 위의 기능 목록이 끝이 없습니다.
Yii 소개
Yii는 대규모 웹 애플리케이션 개발을 위한 구성 요소 기반의 고성능 PHP 프레임워크입니다. WEB 개발에서 Yii는 코드 재사용을 극대화하고 개발 속도를 크게 향상시킬 수 있습니다. Yii라는 이름(Yee 또는 [ji:]로 발음, "yi"의 발음이어야 함)은 쉽고 효율적이며 확장 가능함을 나타냅니다
환경적 요구
Yii 기반 웹 애플리케이션을 실행하려면 PHP 5.1.0 이상을 지원하는 웹 서버가 필요합니다.
Yii를 사용하려는 개발자에게는 객체 지향 프로그래밍(OOP)을 아는 것이 매우 도움이 될 것입니다. Yii는 순수한 OOP 프레임워크이기 때문입니다.
적용범위
Yii는 거의 모든 웹 애플리케이션을 개발하는 데 사용할 수 있는 일반적인 웹 프로그래밍 프레임워크입니다. 가볍고 성숙한 캐싱 솔루션을 갖추고 있기 때문에 포털, 포럼, 콘텐츠 관리 시스템(CMS), 전자상거래 시스템 등과 같이 트래픽이 많은 애플리케이션을 개발하는 데 특히 적합합니다.
유사제품과 비교
대부분의 PHP 프레임워크와 마찬가지로 Yii는 MVC 프레임워크입니다.
Yii는 탁월한 성능, 풍부한 기능, 명확한 문서화로 다른 프레임워크보다 뛰어납니다. Yii는 진지한 웹 애플리케이션 개발에 적합하도록 처음부터 신중하게 설계되었습니다. 이는 다른 프로젝트의 파생물도 아니고 제3자 작업의 조합도 아닙니다. 이는 저자의 광범위한 웹 애플리케이션 개발 경험과 가장 널리 사용되는 웹 프로그래밍 프레임워크 및 애플리케이션에 대한 연구 및 사고의 결과입니다.
공연
yii 공연
Yii는 고성능 프레임워크입니다. 다음 차트는 다른 인기 있는 PHP 프레임워크와 비교하여 Yii의 높은 효율성을 보여줍니다. 이 차트에서 RPS는 "초당 요청 수"를 나타내며 이 프레임워크가 초당 수행하는 요청 수를 설명합니다. 이 숫자가 높을수록 이 프레임워크의 성능이 높아지며, 이 비교에서 Yii가 다른 프레임워크보다 성능이 뛰어나다는 것을 알 수 있습니다. Yii의 성능 이점은 널리 사용되는 APC 확장이 활성화될 때 특히 중요합니다.
성능 자체가 전부는 아닙니다(그렇지 않으면 모두 일반 HTML이나 PHP를 사용해야 합니다). 이러한 뛰어난 성능을 통해 Yii는 여전히 개발 효율성을 크게 향상시킬 수 있는 매우 풍부한 기능 세트를 제공합니다.
Yii는 왜 이렇게 빠른가요
Yii는 지연 로딩 기술을 광범위하게 사용하기 때문에 매우 빠릅니다. 예를 들어 클래스는 처음 사용될 때까지 포함되지 않으며, 개체에 처음 액세스할 때까지 개체가 생성되지 않습니다. 다른 프레임워크는 요청 중에 사용 여부에 관계없이 기능(예: DB 연결, 사용자 세션)을 활성화하기 때문에 성능 저하로 어려움을 겪습니다.
표준 설정
아래에서는 벤치마크 애플리케이션을 설계하고 위의 RPS 결과를 얻는 방법을 설명합니다.
벤치마크 요청
우리의 목표는 각 프레임워크의 최소 오버헤드를 비교하는 것이므로 각 프레임워크의 벤치마크 애플리케이션은 가장 간단한 것이어야 합니다. 각 애플리케이션의 기본 작업에 echo 문을 배치하여 "Hello World" 텍스트 문자열을 표시하도록 선택합니다. 비교의 공정성을 보장하기 위해 추가 프레임워크 기능(예: 세션)이 비활성화되어 있습니다. 벤치마크 애플리케이션의 사본을 얻으려면 phpmark 프로젝트를 확인하세요.
“Hello World”를 사용하는 이유
우리는 각 프레임워크의 최소 비용을 찾는 것과 같은 목표를 달성하기 위해 주로 "hello world" 테스트를 수행합니다. 많은 사람들은 실제 응용 프로그램이 종종 데이터베이스 쿼리와 같은 더 복잡한 작업을 포함하기 때문에 "hello world" 응용 프로그램이 무의미하다고 불평합니다. 이것은 옳지 않습니다. 사실, 특히 일부 대규모 web2.0 애플리케이션에서 우리가 자주 접하는 상황은 대개 "hello world"에 매우 가깝습니다. 예를 들어, 애플리케이션은 Ajax 요청에 대한 응답으로 현재 서버 시간을 반환해야 합니다. 페이지에는 대부분의 콘텐츠가 캐시되어 있으며 애플리케이션은 캐시된 콘텐츠를 가져와서 표시하기만 하면 됩니다.
"hello world"를 사용하는 또 다른 이유는 더 복잡한 기능(예: 데이터베이스 쿼리)을 참조할 때 비교의 명확성을 보장하기 어렵다는 것입니다. 예를 들어 프레임워크는 데이터베이스 쿼리를 매우 효율적으로 실행할 수 있지만 캐싱 솔루션이 부족합니다. 다른 프레임워크는 데이터베이스 쿼리에서는 약간 느리지만 시스템 오버헤드를 완화하는 고급 캐싱 기능을 갖추고 있습니다. 전체적으로 명확한 비교를 하기에는 너무 많은 요소가 관련되어 있습니다.
표준 도구 및 환경
ApacheBench 도구의 "ab -t 30 -c 10 URL" 명령을 사용하여 RPS 번호를 얻습니다(예: 동시성 수준 10에서 30초 동안 테스트 실행). 각 프레임의 수를 얻기 위해 먼저 간섭을 피하기 위해 Apache WEB 서버를 중지했다가 시작합니다. 또한 테스트 프로그램을 여러 번 실행하여 테스트 환경을 "워밍업"합니다. phpmark 프로젝트에는 벤치마크 프로세스를 자동화하는 benchmark.sh라는 쉘 스크립트가 있습니다.
크레딧
Yii는 다른 잘 알려진 웹 프로그래밍 프레임워크 및 애플리케이션에서 많은 아이디어를 얻었습니다. 아래는 짧은 목록입니다.
Prado: 이것이 Yii에 대한 주요 아이디어의 원천입니다. Yii는 구성 요소 기반 및 이벤트 중심 프로그래밍 모델, 데이터베이스 추상화 계층, 모듈식 애플리케이션 아키텍처, 국제화 및 현지화, 기타 여러 특징과 기능을 채택합니다.
Ruby on Rails: Yii는 구성 아이디어를 계승합니다. 또한 Active Record ORM 디자인 패턴을 참조합니다.
jQuery: Yii에 통합된 JavaScript 프레임워크입니다.
Symfony: Yii는 필터링 디자인과 플러그인 아키텍처를 참조합니다.
Joomla: Yii는 모듈식 설계 및 정보 번역 체계로 인용되었습니다.