2012-01-09 3 views
6

My question is fairly clear, 정말 답을 듣고 싶습니다.PDO를 감싸거나 연장 하시겠습니까?

추가 정보 :

  • 나는 PHP 프레임 워크의 어떤 종류를 사용하지 마십시오.
  • PHP> 5.3.

업데이트 : 내 프로젝트의 주위에 제한을 많이하지 않아도 지금

, 그것은 아직 한 사람 프로젝트 의와 결합 모듈 식으로 잃을 나는 모든을 위해 열심히 일했다 가능한. 내가 말했던 것과 마찬가지로 잠시 놀았지만 PDO API가 마음에 들지 않았지만 Public API를 사용하면 더 많은 유연성을 얻거나 우수 사례로 간주된다면 큰 문제는 아닙니다.

내 질문은, 당신이 얻고 싶습니다 구성 또는 상속을 사용하여 문제의 개체가 추상화 계층 자체,이 경우에는 PDO를 고려?

TL; DR : 가능한 모듈 형 되려고 한 사람 프로젝트, 구성 또는 3 자 추상화 계층을 사용하는 상속 (PDO 구체적으로)?

참고 : 올바른 장소가 아닌 경우 투표하여 프로그래머로 마이그레이션하십시오. 나쁜 영어로 미안해.

+0

@Downvoter : 정교하게 신경 써야할까요? –

+3

이것은 상당히 토론을 불러 일으 킵니다 (이것이 투표를 보는 이유이며 우리는 깃발을 보았습니다). 이 시나리오에서 최종 게임을 포함하도록 이것을 수정할 수 있다면 대답은 훨씬 객관적 일 수 있으며 프로그래머 SE의 주제가 될 것입니다. 스택 오버플로는 여러분이 직면하고있는 현실적인 문제에 대한 것이므로 더 구체적인 시나리오가 필요합니다 (이론적으로는 프로그래머가 더 나은 곳이라면). –

+0

@TimPost 삭제 해 주셔서 감사합니다. 내 질문이 업데이트되었습니다. –

답변

5

나는 "제 3 자"클래스를 래핑하는 팬으로, 클래스 지원에 덜 의존적입니다. 누군가 나중에 PDO에서 함수 이름을 변경하면 코드가 모든 코드 주위에서 변경됩니다. 래핑을 사용하면 인터페이스가 독립적이므로 래핑 클래스 만 변경됩니다.

3

API가 마음에 들지 않으면 일반적으로 포장하지 않습니다. 이 길로 내려 가기로 결정했다면, 내 자신을 굴리기보다는 Idiorm (가능하면 활성 레코드로 Paris)을 사용할 것입니다.

제 3 자 확장을 연장하려고 생각하지 않습니다. 코드를 유지하거나 그 라이브러리를 업그레이드하지 않는다면 저는 생각하지 않습니다. 코드를 변경함으로써 서드 파티 라이브러리를 최대한 멀리 샌드위치 처리하여 코드 변경을 덜어줍니다.