한 PHP 프레임 워크에서 다른 PHP 프레임 워크로 마이그레이션


10

데이터 모델에서 웹 서비스에 이르기까지 거의 모든 V1 기초와 원칙을 넘어 서기 때문에 제품을 V2로 다시 생각해야 할 시점에 접근하고있는 웹 회사와 협력하고 있습니다. 사용자 인터페이스. 여러 가지 이유로이 진화에는 CakePHP (V1이 구축 된)에서 Symfony 또는 Zend 로의 마이그레이션이 포함될 수 있습니다.

트래픽이 많고 수익이 발생하는 웹 사이트에서 사람들이 이와 같은 전환을 관리 한 방법에 대한 경험이 풍부한 의견을 요청하고 싶습니다. 다른 PHP 프레임 워크의 장단점에 대한 토론이나 왜이 마이그레이션이 필요한지 논의하고 싶지 않습니다. 오히려 몇 달 동안 V1과 함께 처음부터 V2를 처음부터 구축하고이 강렬한 기간 동안 귀중한 코딩 시간을 고정시키는 실질적인 대안이 있는지 여부를 듣고 싶습니다. 이러한 대안의 예는 오랜 기간 동안 앱을 부분적으로 마이그레이션하는 것일 수 있습니다.

그러한 전환을 관리했거나 관여했을 가능성이있는 사람들의 의견에 감사드립니다.

미리 감사드립니다.

답변:


2

이것이 회사의 비즈니스 인 상업용 응용 프로그램 인 경우, 타사 프레임 워크없이 완전히 진행하는 것이 좋습니다. 그런 다음 v3의 시간이 다가 오면이 같은 문제에 다시 직면하지 않게됩니다. 또한 프레임 워크 업데이트에 대한 응답으로 코드를 계속 조정해야하는 상황에 처할 수 없습니다. 프레임 워크는 작업을 빠르게 시작하고 실행하는 데 유용하지만 이것이 a) 비즈니스의 핵심 요소이고 b) 장기적으로 유지 관리되는 경우 프레임 워크의 가치가 떨어집니다.


1
감사-유용한 관점이지만 프레임 워크는 너무 많은 것들과 관련하여 삶을 더 쉽게 만들어 프레임 워크를 사용하지 않는다는 생각을하기가 어렵습니다. 또한 보안 취약점, X 지원 부족 등 실제로 필요한 경우가 아니면 사용자 정의 할 수 있으며 항상 업데이트 할 필요는 없습니다. 프레임 워크 스위치가 필요한 이유를 다루기보다는 실제로 "솔루션"에 관한 것이므로이 답변을 받아들입니다.
Tom

1
이 답변은 전혀 해결책이 아닙니다.
제임스

6

먼저 새로운 프레임 워크를 익히고 요구 사항을 충족하는지 확인하고 새로운 프레임 워크의 패러다임을 실제로 파악하십시오. 많은 코드를 버려야 할 것입니다. 중요한 것은 새로운 프레임 워크를 사용하려는 방식으로 사용하고 있으며, 그 기능을 최대한 활용하고 이전 프레임 워크의 사고 방식에 묶이지 않아야한다는 것입니다. Zend "CakePHP 방식"을 사용하지 마십시오 *

예를 들어, 이전의 비 MVC 프레임 워크에서 MVC 프레임 워크를 사용하기로 옮길 때 모델, 뷰 및 컨트롤러가 어떻게 작동해야하는지 알지 못했고 새로운 것을 이해하지 못했기 때문에 끔찍한 코드를 작성했습니다. 일하는 방법. 더 나은 프레임 워크에서 잘못 작성된 앱을 사용하는 것보다 오래된 프레임 워크를 고수하는 것이 좋습니다.

* 나는 어느 쪽에도 익숙하지 않기 때문에 그것들이 얼마나 유사하거나 비교 가능한지 모르겠다.


+1Don't try to use Zend "the CakePHP way
Tim Post

사람들이 '+1'이라고 말하면 일반적으로 답을 투표하여 실제로 +1을줍니다.)
GSto

인터넷 딸꾹질. :) 캐리어 비둘기를 통한 TCP.
Tim Post

유용한 답변에 감사드립니다. 나는 Zend와 CakePHP에 덤벼 들었고, 나는 당신의 의견에 동의하지만, 실제 경험이 아닌 경우 원칙적으로 "수락"할 수는 없습니다.
Tom

5

가장 먼저 고려해야 할 것은 제품을 처음부터 다시 작성하는 것은 절대로하지 말아야 할 것 입니다. 이것은 현재 버전이 이미 돈을 벌고있을 때 특히 그렇습니다. 기본적으로 6 개월의 시간을 보내고 6 개월 전에 있었던 곳으로 돌아갑니다. 이제는 더 많은 버그 (또는 적어도 다른 버그)가 있으며 이전 코드에서 이미 수정 된 버그가 다시 도입되었으며 6 개월이 지났을 있습니다. 이전 코드베이스에 기능 추가

CakePHP, Zend 및 Symphony는 대체로 동일하므로 (즉, PHP 위에있는 모든 MVC 스타일의 프레임 워크입니다) 서로간에 어떤 이점이 있는지 확신 할 수 없습니다. 기능 세트에는 확실히 차이가 있지만, 항상 자신을 되돌려 놓을 가치가 있습니까? Zend에서 처음부터 다시 쓰는 데 걸리는 시간 또는 필요한 기능을 Cake에 추가하는 데 같은 시간을 할애 할 수 있습니까?

내 의견으로는, 새로운 프레임 워크로 처음부터 완전히 시작하는 것보다 시간이 지남에 따라 기존 코드를 천천히 리팩토링하는 것이 좋습니다.

물론 이것은 내 의견 일뿐입니다. 기존의 (못생긴, 오래된) 코드를 삭제하고 처음부터 시작하려는 유혹을 알고 있지만 이미 작동하는 기존 제품의 경우 일반적으로 얻을 것이 거의없고 잃을 것이 많습니다.


정확히 내가 생각했던 것. 경제적 인 결정이 될 강력한 사례는 없기 때문에 여기에서 다시 쓰지 않아도됩니다.
EricBoersma
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.