티스토리 뷰

PHP개발에 관해서 찾다가..


이라는 글을 찾았습니다.
오호~ PHP에도 Framework라는 개념이 있더군요.
그래서 PHP Framework를 선택하기 위해서 이런저런 자료를 조사 하면서 조사한 내용을 정리 해 볼려고 합니다.

Ruby On Rails의 영향으로 웹 프로그래밍에서 Framework에 대한 관심이 폭발적으로 늘어나게 되고, PHP에서도 Framework에 지원이 활발하게 진행이 되었나 봅니다. 그리고 위의 글에서와 같이 여러개의 PHP Framework가 생겨 나게 되고, 현재 주류를 이루고 있는 Framework는 4개 정도로 압축 되는거 같습니다.

  • Zend Framework
  • CakePHP
  • Code Igniter
  • Symfony

자료를 찾아서 나름대로 특징을 정리 해 봤습니다.



Zend Framework
zend framework

  1. PHP의 핵심 기부자인 Zend Technologies에서 개발.
  2. PHP5 만 지원
  3. 다양한 DB 데이터베이스 추상화
  4. 확장가능한 MVC 모델 지원
  5. HTML 폼 렌더링 및 유효성 검사 지원
  6. 유연한 캐싱 서브 시스템
  7. 엄격한 코드 테스트를 거친 안정된 코드
  8. 국제화 지원
  9. 많은 양의 예제 지원
  10. new BSD 라이센스
  11. 국내 사용자 포럼을 못 찾았음.

CakePHP

  1. PHP4, PHP5 지원
  2. 구조화 된 MVC모델 지원
  3. 데이터베이스 인터랙션과 간략화한 쿼리를 위한 CRUD 가 통합됨
  4. 애플리케이션 스캐폴딩
  5. 보기좋은 맞춤 URL 의 요청 디스패처
  6. 빠르고 유연한 템플릿 기능 (PHP 문법, 각종 헬퍼 포함 )
  7. AJAX, 자바스크립트, HTML 폼을 위한 각종 뷰 헬퍼
  8. 보안, 세션, 리퀘스트 등을 처리하는 컴포넌트
  9. 유연한 뷰 캐시
  10. 유연한 접근 제한 목록
  11. 자료 검사 기능 내장
  12. 국제화 지원
  13. MIT License
  14. CakePHP 한국 사용자 모임.

Code Igniter

  1. PHP4, PHP5 지원
  2. 설치가 간편하다.
  3. 잘 정리된 문서
  4. 확장이 용이하다.
  5. MVC 모델 지원
  6. 간견한 문법
  7. 다른 프레임워크에 비해 빠른 속도
  8. 국제화 지원
  9. BSD 라이센스
  10. CodeIgniter 한국 사용자 모임
  11. CodeIgniter 한글 메뉴얼


Symfony

  1. PHP5만 지원
  2. 간단한 템플릿과 도우미(Helpers)
  3. 캐시 관리
  4. 기본 골격 (CRUD/Admin generator)
  5. 스마트 URLs (routing policy)
  6. 국제화 지원
  7. 객체모델과 MVC 분리
  8. MIT License
  9. 국내 사용자 포럼을 못 찾았음.

주요 특징들의 위와 같습니다. 여기저기서 찾은 자료들이라서 ^^;; 잘 비교가 되지 않네요..



실행 속도 비교

그리고 다음은 중요한 실행 속도 입니다.
4개의 Framework를 모두 비교한 자료는 찾지를 못했습니다.
먼저 Zend Framework, CakePHP, CodeIgniter를 비교한 결과를 그래프로 그려 봤습니다.


그래프에서 높을 수록 빠른 겁니다. CodeIgniter가 독보적인 선두를 보이고 있습니다. 그리고 Zend Framework와 CakePHP가 뒤를 따르고 있습니다.
그런데 Symfony에 대한 비교가 없어서, CakePHP, Zend Framework, Symfony의 속도를 비교를 검색해 봤는데.. 최근에 비교한 내용을 찾을 수가 없었습니다.
그래서 결국 이상한 나라의 언어(글을 보고 어떤 나라인지 유추를 못 하겠네요 ^^;;;)로 된 페이지를 찾았습니다. 언어는 해독 불가(-_-;;) 이지만, 그래프는 볼 수 있어서.. 첨부 합니다.

위와 같은 그래프가 나오더군요.. 결국 Symfony가 4개의 프레임워크 중에서 가장 늦은 속도를 가지고 있는거 같습니다.



그럼 대세는?
마지막으로 Google Trends의 그래프를 첨부하겠습니다.
검색의 빈도를 통해서 어떤게 관심을 받는지 보는건데,
검색 결과로 봐서는 cakephp가 1위 이지만, 가장 후발 주자로 시작한 codeingniter가 많이 따라잡고 있는 것으로 볼 수 있습니다.



여기 까지 PHP Framework를 소개하는 포스팅을 마칠려고 합니다.
비교는 여기까지이고 PHP의 Framework의 선택은 개발자의 몫이 아닐까 합니다.
댓글
  • 프로필사진 pam 비교글 덕분에 잘 봤습니다 :D 2010.10.27 17:43
  • 프로필사진 신규하 도움이 되었다니.. 기쁘네요.. 감사합니다. 2010.11.01 17:35 신고
  • 프로필사진 Songsari 좋은글 잘 보고 갑니다 ^^ 2012.03.12 14:07 신고
  • 프로필사진 dennis 감사합니다. 좋은 정보 얻고 가요^^ 2012.05.14 17:27
  • 프로필사진 데미나인 codeigniter가 지속적으로 상승세더니 2010년 이후로 전세를 역전시켰네요 ㅎㅎ
    2012년 현재 다른 프레임워크들이 따로올 수 없는 엄청난 인기를;;
    http://www.google.com/trends/?q=zend+framework,+cakephp,+codeigniter,+symfony
    2012.07.05 14:53 신고
  • 프로필사진 신규하 ci가 php 프레임워크 중에서는 대세가 맞는거 같습니다.
    하지만, ci의 크론으로 개발해서 나온 프레임워크도 많이 나오고, 새로운 다른 프레임워크도 있어서..유심히 봐야 할 것 같네요.

    http://socialcompare.com/en/comparison/php-frameworks-comparison

    여기를 참고해 보세요.
    2012.07.05 16:42 신고
  • 프로필사진 전문가 최고속도의 프레임워크는 phalcon(팔콘) 플레임워크입니다.
    젠드가 가장 느려터진 프레임워크이구요..
    데세를 떠나서, 느리면 안되요...
    c로 작성된 프레임워크라서 메모리점유율 1m도 안되고, cpu사용률도 거의 점유하지 않는 최고네요..
    2013.07.10 14:15
  • 프로필사진 신규하 오~ 좋은 정보 감사합니다.
    소스를 보니.. 정말 C로~ ㅋㅋ 정말 빠를수 밖에 없네요..
    이걸로 넘어가는걸 심각하게 고민해 봐야 겠네요.
    2013.07.13 08:12 신고
  • 프로필사진 박진영 좋은 정보네요. framework 선택하는데 큰 도움이 되었습니다. 2015.01.19 12:18
  • 프로필사진 차동박 좋은 자료 감사합니다.
    위의 좋은 자료에 한가지 더 욕심을 낸다면,
    초보자에게 있아서 접근성이라할까,
    배우고 익히고 활용하기에 어느 것이 더 쉬운가 하는 관점에서 비교해주면 더 좋을 것 같습니다.

    2015.12.16 10:46
  • 프로필사진 차동박 검색을 더 하다보니 이런 글도 보이네요.

    goodbye CodeIgniter, hello Laravel.

    출처: http://www.sitepoint.com/goodbye-codeigniter-hello-laravel

    베워야할 게 많아지니, 고민입니다


    2015.12.16 12:12
  • 프로필사진 신규하 저두 laravel을 배워 볼까 고민하고 있었는데..
    꼭 배우고 싶어 지네요..
    좋은 정보 감사드립니다.
    2015.12.21 13:52 신고
댓글쓰기 폼