2011-02-10 3 views
3

저는 회사의 응용 프로그램을 다시 만드는 초기 단계에 있습니다. 응용 프로그램은 현재 symfony 1.2에서 실행 중이고, 기본 ORM은 Propel입니다.심포니에서 Doctrine & Propel을 비교하는 방법

Symfony는 이후 1.4로 업데이트되었으며 기본 ORM은 Doctrine으로 전환되었습니다.

제 생각에 각 ORM은 특정 유형의 데이터베이스 구조에서 뛰어납니다. 이것은 사실입니까, 아니면 다른 것보다 멀리 떨어져있는 것입니까?

내 환경 (예 : 이중 사이트, 동일한 사이트 설정 및 테스트 실행)을 사용하는 테스트 환경에서 어느 ORM이 가장 적합한 지 테스트 할 수있는 좋은 방법이 있습니까?

+0

나는 비슷한 상황에있다. 내 가게는 1.0 이후로 많은 수의 심포니 프로젝트를 만들었고 우리는 Propel을 계속 사용 해왔다. Doctrine의 추세와 함께, 최근 1.4 프로젝트를 시작하기 위해 그것을 사용했습니다. 아직 모델을 사용하지 않은 상태입니다. 내가 가진 좌절감은 Propel에서'setFirstName()'과 같은 기존의 메소드를 오버로드하는 것이 었습니다. Doctrine에서는 마술 메서드이고, parent :: setFirstName ('Jimbob')를 호출 할 수 없습니다. 오히려'$ this -> _set ('first_name', 'Jimbob')'또는 그와 같은 것들이 있습니다. 나는 Propel 기술이 훨씬 더 직관적이라는 것을 발견했다. – yitznewton

+1

또한보십시오 http://stackoverflow.com/questions/3969517/good-comparison-doctrine-vs-propel – yitznewton

답변

1

2008 년과 비교하면 다음과 같습니다. Doctrine vs Propel: 2009 update. 벤치마킹 운동 인 here (약간은 Propel focussed)도 있습니다.

실제로 프레임 워크 주변의 커뮤니티는 기술적 인 차이만큼 중요합니다. 훨씬 더 관련있는 지원 정보와 예제를 찾을 수 있었기 때문에 Doctrine을 사용하고 있습니다. traffic to the Symfony website은 교리가 가장 인기있는 선택이되고 있음을 암시하므로 Symfony/Doctrine 커뮤니티가 계속 성장할 것으로 기대합니다.

-1

귀하의 질문에 대한 답변이되지 않았지만 최근에이 링크를 발견하여 유용하다고 생각합니다. Comparing Propel, Doctrine and sfPropelFinder

+1

불행히도, 기사는 너무 오래되어 어떤 벤치 마크도 쓸모 없다고 생각합니다 (기사에서 사용 된 Doctrine의 버전은 0.11입니다. , 그들은 지금 버전 2.0에있다). 그래도 고마워! – Patrick

0

Symfony 1.4 기본 ORM은 현재 Doctrine 1.2입니다. I없는 추진과 교리 1.2 사이의 성능 차이가있을 것입니다하지만 당신은 또한 심포니이 버전의 교리 2.0을 사용할 수 있습니다 수행 할 here

교리 2는 교리의 완전한 재 작성이 빠른 것 같다 및 ODM을 지원합니다 MongoDB입니다.