2011-01-06 7 views
0

php 프레임 워크의 질문에 이미 답변을했기 때문에, 필자는 내가 제공하고있는 요구 사항이 어떤 프레임 워크에 가장 적합한 지 질문을하고 있습니다. 나는 현재 대규모 프로젝트를 구축하고있다. 나는 앞으로 몇 가지 중형/대형 프로젝트와 몇 가지 작은 프로젝트에서 일하게 될 것입니다. 나는 숙련 된 PHP 개발자이며 OOP 안팎을 완벽하게 알고 있으며 mysql 데이터베이스에 대해 잘 알고 있으므로 시스템을 배우는 것이 문제가되지 않습니다.php framework help

이제는 실제로 내가 찾고있는 것입니다. 나는 현재 "프레임 워크"를 사용하여 프로젝트 프로젝트를 위해 나에게 제공되지 않은 큰 프레임 워크를 사용하고 있습니다. "프레임 워크"를 제거하고 실제 프레임 워크를 사용하여 실제로 시작하고 싶습니다. 내 자신의 프레임 워크를 만들려고했지만 이미 기존 프레임 워크를 사용하는 것을 고려하고있었습니다. 나는 많은 프레임 워크를 살펴 보았고 심지어 그들 중 몇 명과 함께 놀았다. 프레임 워크를 선택하고 나면 사용을 계속하고 길을 6 개월 동안 전환 할 필요가 없으므로 최종 결정을하기 전에 철저한 테스트를 수행 할 것입니다. 일부 사용자로부터 내 의견을 가장 잘 반영 할 수있는 의견을 얻고 싶습니다.

는 프레임 워크에서 나는 다음과 같은 항목을 찾고 :

  1. 속도 - 때문에 내가 마음에 속도를 유지해야합니다 큰 프로젝트 인의. 나는 효율적인 코드를 작성할 수 있지만 프레임 워크가 느리다면 정말 중요하지 않을 것이다. :)
  2. 인증 - 가능한 경우 프레임 워크를 통해 내장 된 인증을 사용하고 싶습니다. 필자는 사용자별로 세분화 된 권한을 필요로하지는 않지만 그룹을 통해 더 많거나 적은 권한을 필요로하지는 않습니다 (세분화 된 권한은 요구 사항을 벗어나지 않습니다).
  3. 아약스 - 내 응용 프로그램에서 아약스를 사용하여 프레임 워크에서 일종의 아약스 구현을하고 싶습니다. 개인적으로 jquery를 선호합니다. 필연적으로 ajax 기능을 내장 할 필요는 없지만 효율성을 위해 출력되기 전에 ajax 출력으로 페이지를 종료하는 방법은 없습니다.
  4. 폼 - 폼을 관리하기위한 프레임 워크가 많지만 두통을 피하기 위해 여기에서 언급 할 것이라고 생각했습니다.
  5. 관리 - 이것은 내가 필요한 정말로 필요한 기능 중 하나 일 수 있습니다. 사이트 관리를 위해 백엔드를 만들 수 있어야합니다. 나는이 일을하기 위해 무언가를 함께 해킹하고 싶지 않다.
  6. Api - 내가 허용 할 데이터에 액세스하거나 수정할 때 API가 필요할 것입니다.
  7. 데이터베이스 - 데이터베이스 방법으로 구축되었습니다. 반드시 자동으로 처리해야 할 필요는 없으며 필요한 데이터를 검색/업데이트 할 수있는 액세스 권한을 부여하십시오.

    1. 나는 종류의 "모듈"로 특정 항목에 간다 내 모든 데이터를 싸는 수 있도록하고 싶습니다 :

    이들은 neccessarily 요구하지만, 다소 좋은 기능하지 않습니다 . 그래서 나는 그것을 다른 사이트에 쉽게 복사 할 수 있으며 모든 준비가 완료되었습니다.

  8. 쉽게 탐색 할 수있는 구조입니다. 컨트롤러에 들어가서 50 개의 파일을 볼 수는 없지만 대신 폴더에 넣은 파일이 10 개의 폴더로 표시되어 더 잘 구분됩니다.

저는 현재로서는 다른 것을 생각하지 않습니다.하지만 다른 것을 생각하면 게시글을 업데이트 할 것입니다. 나는 어떤 프레임 워크를 사용하고있는 사람들로부터 피드백을 받고 싶습니다.프레임 워크를 사용하는 데 방해가된다면 경험이 없으므로 권장하지 마십시오. 내 요구 사항에 맞는지 알 수 없습니다. 어떤 도움을 주셔서 감사합니다.

편집 : 일부 게시물을 명확히하기 위해이 게시물을 편집하고 싶습니다. 찾고있는 요구 사항/기능에서 모든 기능을 프레임 워크에 내장 할 필요는 없습니다. 일부 사람들은 마치이 모든 것들이 사전 준비가되어야한다고 생각하는 것처럼 보였습니다. 필자는 프레임 워크의 구성 요소로 쉽게 수행 할 수있는 모든 기능을 지원하는 프레임 워크를 찾고 있습니다. 예를 들어 관리에는 기본 관리 영역이있을 필요가 없지만 사이트에 추가 할 구성 요소를 사용하여 쉽게 관리 할 수 ​​있습니다.

+3

흥미롭지는 않지만 사려 깊고 잘 쓰여있는 질문입니다. 어쨌든 평범한 5 명과 함께 대답 할 것이기 때문에 동정심을 표현하십시오. admin 백엔드 요구 사항을 제외하고 대부분의 프레임 워크는 나열된 모든 기능을 제공합니다. – mario

+0

오직 하나의 조언 **은 자신의 글을 썼습니다. 응용 프로그램 요구 사항에 대해 누구보다 잘 압니다 ** – ajreal

답변

3

제 경험 (CodeIgniter, Zend Framework)에서 하지만 실제로 모든 주요 프레임 워크는 당신이 묻기를 할 수있게합니다.

  1. 속도 - CodeIgniter는 내가 함께 일한 가장 빠른,이 ZF의 강력한 기능이 아닙니다, 나는 우리 모두가 ZF가 느린 결론을 얻었다 작동 사실이다.

  2. 인증 - 젠드 프레임 워크는 내가 다른 프레임 워크

    에서 본 것보다 인증 더 나은 처리
  3. 아약스 - 당신이 레이아웃 /보기를 비활성화 할 수 있습니다 모든 주요 프레임 워크는, 젠드, 여기에 약간 더 나은 당신이 특별이 수 json보기.

  4. Forms - CodeIgniter 프레임 워크는 ZF보다 쉬운 형식을 처리하지만 모든 프레임 워크는이 문제를 쉽게 처리해야합니다. Symfony는 폼 생성기와 함께 여기에 언급 될 필요가 있습니다.

  5. 관리 - 당신이 지나가고있는 테이블 ("관리자 생성기"그들이 그것을 광고하는 방법)에 기반한 멋진 crud form generator를 가지고 있기 때문에 Symfony는 개발 속도가 상당히 빨라질 것입니다.

  6. ???

  7. 데이터베이스 - ZF는 내 opionion에서 데이터베이스를 더 멋지게 처리하지만, Symfony에 대한 좋은 점도 들었습니다. CodeIgniter는 엄격한 마녀가 내 의견으로는 좋지 않다는 것을 여기에 있습니다.

  8. 모듈 응용 프로그램 - (. ... 예를 들어, 전체 응용 프로그램이 모듈) ZF에서 건물의 모듈은 정말 쉽고, 내가 가장 좋아하는 기능은 모듈 구조는 전체 응용 프로그램 자체처럼 보이는 것입니다

  9. 구조를 쉽게 탐색 할 수 있습니다. - 일단 익숙하다면 CodeIgniter가 컨트롤러를 모두 한 곳에서 관리한다는 사실을 좋아하지 않습니다. ZF에서는 모듈을 추가하고 다른 것을 추가 할 수 있습니다.

+0

+1 주요 PHP 프레임 워크에 대한 폭 넓은 지식. – Yada

+0

@ 야다 : 감사합니다. 그러나 제 대답은 결코 깊지 않습니다. 프레임 워크를 선택할 때 가장 먼저 할 일은 좋은 문서입니다. ZF는 CodeIgniter와 CakePHP가 가지고있는 곳에서 나쁘게 결여되어 있습니다. 게다가 나는 결코 CakePHP에 대해 언급 한적이 없다. –

1

글쎄, 나는 과거에 여러 PHP 프레임 워크로 작업 했으므로 많은 훌륭한 프레임 워크가 없다. 당신은

  • 확인 (그러나 기업 수준)
  • 확인

    1. 확인 젠드 프레임 워크에서 좀 위험하지만, 도장 수
    2. 복잡한
    3. 아니, 그 프레임 워크가 아닌 응용 프로그램
    4. 괜찮 았지만 ERM이 아님
    5. 은 못생긴 방식으로 PDO를 캡슐화합니다 (잘못된 구현 된 공장 패턴)

    ZF는 Zend 자체에서 개발되었지만 많은 단점 (잔인한 DBAL, 복잡한 형식 처리, jQuery 대신 dojo 지원)을 가지고 있고 Java에 익숙하다면 정말 만족스럽지 않습니다./JBOSS 또는 .NET 그냥 (큰 프로젝트를 계획하고 있기 때문에 이것을 언급 만).

    프로젝트를 배포해야 할 때까지 기다렸다가 즉시 시작할 필요가없는 경우 TYPO3 팀에서 개발 한 FLOW3 (여전히 알파)을 사용해 볼 수도 있습니다. 나는 FLOW3로 조금 놀았으며 적어도 좋은 아키텍처와 좋은 아이디어/패러다임 (AOP 등)을 가진 유일한 PHP FW라고 말할 수 있습니다.

    올바른 방법으로 이해하면 백엔드 용 CMS와 같은 것이 필요할 것입니다. 어쩌면 기존 CMS를 평가하고 확장 할 수 있는지 확인하는 것이 좋습니다 (CMS를 프레임 워크 (예 : TYPO3)로 사용).

    당신은 정확히 당신의 요구와 일치하는 FW를 찾지 않을 것입니다, 그러므로 당신은 CMS/FW를 선택하고 그것을 원하는 방식으로 사용자 정의해야합니다. 프로젝트가 내가 상상하는 것만 큼 크다면 그러한 일에 충분한 자원이 있어야합니다.