개발 꿀팁/PHP

php에 많이 쓰이는 7가지 프레임

Jammie 2022. 7. 8. 13:03
반응형

지금까지 phper에서 가장 많이 논의된 것은 php의 각종 프레임의 장단점이며, 인터넷상의 자료도 비교적 단편적인데, 몇 가지 주류 프레임을 모아서 모아보면 그 중 본인은 Yii2, Laravel, Yaf, Thinkphp의 네 가지 프레임을 사용했을 뿐이므로, 대부분의 프레임에 대한 평가는 인터넷상의 자료에서 나온다고 하니, 만약 문제가 있다면 댓글에서 지적하고 함께 발전해 주세요.

1.ThinkPHP

ThinkPHP(FCS)는 경량급 중형 프레임워크로 자바의 Struts 구조에서 이식된 중국어 PHP 개발 프레임워크다.객체지향형 개발 구조와 MVC 모델을 사용하며, 시뮬레이션으로 Struts의 태그 라이브러리를 구현하여 각 방면에 인간적이었으며, J2EE에 익숙한 개발자는 비교적 손쉬운 방법으로 php 프레임워크 초보자용으로 적합하였다. ThinkPHP의 취지는 단순화입니다.개발, 효율성 향상, 확장 용이, 데이터베이스 지원에는 MySQL, MSSQL, Sqlite, PgSQL, Oracle, PDO 지원이 포함되어 있습니다.ThinkPHP는 문서와 예가 풍부하고 프레임워크의 호환성이 강하지만 기능이 제한적이어서 중소 프로젝트 개발에 더 적합하다.

장점

1.성숙한 자바 사상의 도움으로

2.손대기 쉽고,중국어가 풍부하다.문서; 학습 원가가 낮고, 지역사회의 활동도가 높다.

3.프레임 호환성 강함, PHP4와 PHP5는 완전 호환, UTF8 등을 완전히 지원한다.

4.중소사업에 적합한 개발

5.thinkphp3.2에서.2 composer 패키지 관리 도구 도입

결점

1.아약스에 대한 지지가 좋지 않다;

2.카탈로그 구조가 복잡하여 다른 틀에 비해선반 목차 구조가 아슬아슬하다.

3. 손대기는 쉬우나, 깊이 공부하기는 비교적 쉽다.어렵습니다.

둘, Yii

Yii는 컴포넌트 기반의 높은 성질이다php 프레임워크, 대형 웹 응용 프로그램 개발에 사용된다.Yii는 엄격한 OOP를 채택한다잘 짜여진 라이브러리 인용과 포괄적인 튜토리얼이 있다.MVC에서 DAO/ActiveRecord, widgets, caching, 계층형 RBAC, 웹 서비스, 테마화, I18N 및 L10N, Yii는 오늘의 웹 2.0 응용 프로그램을 제공합니다개발에 필요한 거의 모든 기능.사실 Yii가 가장 효율적이에요.PHP 프레임워크의 하나.

장점

1.순수OOOP

2.대규모 웹 응용에 사용

3. 모형은 사용하기 편리하다

4) 개발도 빠르고 운행도 빠르다.성능이 우수하고 기능이 풍부함

5.명령줄 도구를 사용합니다.

6.composer 패키지 지원정리도구

단점:

1.모델층에 대한 지도와 고려가 적음

2.문서의 실례가 적다

3.영어가 너무 많다

4) PHP 기술통달, OOP 프로그래밍 능숙하게!

5.View는 이상이 아니다 view, 이상 속의 view HTML 세대일 수 있음사이즈, PH는 취급하지 않습니다.P코드.

3. 라라벨

장점

1.laravel의 디자인 사상은 매우 진보적이고 매우 적절하다.각종 개발 모델 T를 응용하다DD, DDD BDD랑

2.composer 패키지 관리 도구 지원

3. php의 새로운 특성을 모아 다양한디자인 패턴, Ioc 용량기계, 주입 등에 의존합니다.

결점

1. 컴포넌트식 프레임으로 비대함

4. 코드 이그니터

장점:

1. 코드 이그니터는 "간단함은 아름다움"을 추앙한다.이 원칙. 화려하지 않다.디자인 패턴, 중국 없음아름다운 대상 구조, 모든 것이 그렇게 간단합니다.코드 몇 줄이면 시작할 수 있어요실행하고 코드 몇 줄을 더하면 출력할 수 있다.대도지간(大道之")의 전범이라 할 수 있다.

2.배치가 간단하며, 모든 배치는 PHP 스크립트를 사용하여 배치한다.실행 효율이 높다.

3.기본적인 라우팅 기능으로 어느 정도 라우팅 가능;

4. 초보적인 Layout 기능으로 일정하게 제작 가능도(度)의 인터페이스 외관

5. 데이터베이스 레이어 패키지가 좋습니다. 기본적인 MVC 기능을 갖추고 있습니다.

6.빠르고 간결하며 코드가 많지 않으며 실행 성능이 높다.

7.틀이 간단하고,손쉽게 손에 넣을 수 있으며,학습원가가 낮고,문서가 상세합니다.

8.간단하고 좋은 library를 많이 가지고 와서 프레임이 적당하다소형 응용 프로그램

단점:

1.본체의 실현은 그다지 이상적이지 않다.

2.내부구조가 너무 복잡해서 사용하기 쉽지만하지만 확장력이 부족하다.

3.모델 계층을 데이터베이스로 쉽게 이해조작하다.

4. 프레임이 다소 간단하여 소형 어플리케이션만 만족중형 어플리케이션의 요구를 약간 만족시킬 수 없다.

평가:

전체적으로 코드이그니터(CodeIgniter)를 가져와라.쉽고 빠른 응용을 완성할 가치가 있고, 동시에 어느 정도 lay를 구성할 수 있습니다.out, 템플릿의 다중화 용이, 데이터 조작 계층에서 패키징 불가 땡, 또한 CodeIgniter는 복잡한 설계 패턴을 많이 사용하지 않아 실행 성능과코드 가독성 모두 좋습니다.첨부한 library도 괜찮고, 간결하고 효율적이다.

5. Zend Framework

장점:

1.PHP5의 새로운 객체지향 적용특징: 인터페이스, 이상, 추상화 클래스, SPL 등.이 물건들의 응용은 Z를 만든다.end Framework는 고도의 모듈화와 영성을 가지고 있다활성

2. '인터페이스에 대한 프로그래밍'과 '단일성'을 엄격히 준수한다.대상직책' 등 원칙

3.공식적으로 출시, 수많은 libr을 들고 왔다ary, 프레임 자체는 디자인 패턴을 많이 사용해서 짜여져 있고, 구조적으로 우아합니다.실행 효율이 보통이다.

4.MVC 디자인으로 깔끔하게

5. 라우팅 기능이 있어 프로필이 강력합니다.XML과 php INI 처리 가능)

6.데이터베이스 운영 이외의 직관적인 지원이 가능Model 레이어 (CodeIgniter와 CakeP보다)HP가 강함) 또한 Loader 기능을 쉽게 사용할 수 있습니다.새로 추가된 다른 Class를 불러올 수 있습니다.

7.Cache 기능이 매우 강력하며 프론트Cache부터 백엔드 Cache까지 지원, 백엔드 Cache는 Memc 지원ache, APC, SQLite, 파일 등등

8.데이터베이스 조작 기능이 매우 강력하여, 각종 드라이브를 지원한다.동작 (어댑터)

9.문서가 완전하여, 국내 커뮤니티에서 매우 성숙하다.

단점:

1.MVC기능 완성이 약하다. View 레이어는 간단하게 구현한다(실현되지 않은 것과 같다), 프론트 엔드 페이지를 강하게 제어할 수 없다.

2.자동화 스크립트가 없고, 엔트리 파일을 포함한 애플리케이션을 만들며, 모두 직접 손으로 구축해야 하므로 엔트리 비용이 많이 든다.

3.심플하고 작은 프로젝트의 경우, 오히려 프레임워크에 객체지향 설계를 많이 적용하기 때문에 개발자에게 더 높은 요구, 간접적인 요구를 한다.프로젝트의 개발 원가를 증가시켰다

평가:

공식 출품의 프레임으로 젠드프레임워크의 야심은 예견할 수 있었다. 다른 프레임을 밀어내고 싶으면서도 패키징이 강했다.대형 라이브러리는 원스톱 프레임워크 서비스를 제공할 수 있고, 또한 그들의 개발팀은 매우 강하며, 충분히 강점을 개발할 수 있다.큰 제품이 나오기 때문에 기본적으로 확실한 것은 Zend Framework의 미래가 밝다는 것입니다. 더 많은 시간을 들여서 프레임을 완성하면 됩니다.마찬가지로 Zend FrAmework 아키텍처 자체도 비교적 우아하다. Zend 공식에는 많은 고수들이 있고, 디자인 철학상 비교적 앞서 있다. 비록 일부 기능 구현이 완벽하지 않지만, 예를 들어 View 계층, 자동화 스크립트 등은 모두 미래의 업그레이드에 달려 있다.

6. CakePHP

장점:

1.RoR과 가장 유사한 프레임워크로 설계 방식, 데이터베이스 조작을 포함한 Active Record 방식

2. 디자인면에서도 우아하고, 불필요한 library가 없으며, 모든 기능이 순수한 프레임으로 되어 있어 실행 효율이 좋다.

3. 데이터베이스 계층의 hasOne, hasMany 기능은 매우 강력하며 복잡한 업무 처리에 적합하다.

4. 라우팅 기능, 설정 난이도 적당

5.스캐폴드(scaffold)가 강력하여 중형 애플리케이션에 적합

6.MVC의 모든 층을 기본 구현했습니다.

7.명령줄을 자동으로 조작하는 스크립트 기능 포함

8.문서가 비교적 완전하여, 학습 비용은 중간 정도이다.

단점:

1.CakePHP의 심각한 문제는 Model을 데이터베이스 계층 조작으로 이해하는 것으로, 데이터베이스 이외의 조작능력에 심각한 영향을 미칩니다.

2.캐시의 기능이 약간 약해 보인다

3. 구성 기능이 약간 약하다

4. 대형 응용 프로그램에는 적합하지 않고 중형 응용 프로그램에만 적합하며 소형 응용 프로그램에서는 학습 비용이 약간 더 높다.

평가:

전반적으로 CakePHP 프레임워크는 PHP 프레임워크가 중요한 시대와 대표성을 대표하며, 또한 현재 매우 중요한 역할을 수행하고 있다.자신이 쓴 프레임은 모두 CakePHP 방식을 모방한 기념비적인 제품입니다. CakePHP는 Ro를 폭로하고 있다.R의 민첩한 개발 방식과 데이터베이스 조작을 유일한 모델이라고 생각하는 디자인 아이디어는 빠른 응용과 시제품을 개발하는 데 매우 좋은 도구이다. 마찬가지로 Web2.0 웹을 만드는 데 사용됩니다.역의 개발 틀도 선택할 만하다

세븐, 심포니

장점:

1.MVC 3단 완전 구현

2.$POST, $GET 데이터, 이상처리, 디버깅 기능, 데이터 검출 등 모든 것을 캡슐화합니다.

3. 강력한 캐시 기능 포함

4.클래스를 자동으로 불러와 다양한 나만의 클래스를 자유롭게 정의할 수 있다.

5.강력한 언어 지원

6.강력한 View 계층 운영으로 단일 파일 여러 개를 단편적으로 포함할 수 있습니다.

7. 매우 강력한 구성 기능으로 xml 구성으로 모든 프레임과 프로그램의 동작 제어

8.강력한 다계층 프로젝트와 응용 프로그램 관리 포함: Project -- > Application -- > Module --> Action, 하나의 프로젝트에서 여러 응용 프로그램의 요구를 충족시킬 수 있으며, 각 계층에서 자신을 정의할 수 있습니다.클래스 라이브러리, 프로필, layout

9.프로젝트 설정, 애플리케이션 설정, 모듈 설정, 캐시 새로 고침 등 매우 강력한 명령줄 운영 기능

10.Symfony는 대형 복합 프로젝트 개발의 첫 번째 선택입니다. Symfony를 사용함으로써 개발원가를 크게 절감할 수 있으며,여러 사람이 협업할 경우 문제가 발생하지 않으며 Project 레벨에서 기초 Class를 정의한 후 어떤 모듈도모두 재사용할 수 있고 코드를 크게 재사용할 수 있습니다.

단점:

1.가장 큰 문제점은 서로 다른 스타일의 오픈소스 아이템을 너무 많이 사용해 프레임을 짜는 것이다.

2.모자비와 프로펠 자체가 상당히 복잡하기 때문에 Symfony의 구조가 복잡하여 이해하기 어렵고 학습하기 어렵습니다.

3. 캐시 기능을 제어할 수 없습니다. 디버깅할 때마다 항상 캐시를 사용합니다. symfony cc, symfony rc를 실행해야 합니다.캐시 지우기 및 다시 만들기

4.효율이 그다지 높지 않고, 특히 템플릿 해석과 프로파일 읽기 과정이 적지 않은 시간이 소요됩니다.

5.학습비용이 많이 들고, 게다가 국내에는 성숙한 커뮤니티와 중국어 문서가 없다.

평가:

Symfony는 확실히 엔터프라이즈급 프레임입니다. 자바의 어떤 강한 프레임에 대항할 수 있을 것 같은 유일한, 강한 것,자연학습은 복잡하지만 그에 따른 프로그램 개발에도 도움이 되므로 복잡한 프로그램에는 Symfon을 추천합니다.y가 처리하면 보람을 느끼지만, 후기의 유지보수 비용은 비교적 낮고, 재사용성은 매우 강하다.Symfony를 사용하는 것이 복잡한 인터넷 항목이라면 해당됩니다.네, 데이터베이스 분포에 대한 문제를 고려한다면 Symfony가 가지고 있는 데이터베이스 운영 계층을 버리고 스스로 정의해야 합니다. 물론 Symfony는 임의의 구조 model 계층을 지원합니다.

총평:

위의 몇 가지 프레임워크는 각각 특색이 있고 모두 오픈 소스 프로젝트이지만 프레임워크가 목표로 하는 항목은 다르다. 일반적으로 다음과 같다:

1.스몰프로젝트:CodeIngiter

2.중형프로젝트:CakePHP,Zend Framework,Laravel,Thinkphp

3.대형 헤비급 아이템 : Yii, Symfony, Laravel

위의 구분도 절대적이지는 않습니다. 항목을 선정할 때 프레임워크의 사용자 정의 가능성과 확장성을 충분히 고려해야 합니다. 항목별로 여부를 확인할 수 없기 때문입니다.수요 변화에 따라 달라질 수 있다고 말했다.

이상이 PHP에서 자주 사용되는 7가지 프레임의 장점과 단점에 대한 자세한 내용입니다. 더 많은 php 중국어 사이트 기타 관련 글에 관심을 가져주세요!

 

반응형