Ember 1.7 위에 상당히 큰 앱이 있습니다. 코드의 상당한 부분이 유산이고 우리는 제거하기 위해 리팩토링/리 아키텍처를 원합니다. 목표는 최신 버전의 Ember (이 시점에서 2.9)를 사용하고 Ember 엔진을 활용하므로 나중에 필요할 경우 다른 앱에 앱의 일부를 이식 할 수 있습니다. 이번에는 새로운 기능에 대한 요청이 많지 않으며 기술 업데이트에 투자하는 데 6-8 주가 소요됩니다. 또한이 시간 동안 기존 앱에 몇 가지 기능을 추가해야 할 수도 있습니다. 우리 개발자는 몇 주 동안 다른 작은 프로젝트에서도 작업 할 수 있습니다. Ember 2.x를 사용하는 것이 중요하다고 생각합니다. 2017 년에 마이그레이션을 수행 할 시간이 없을 수도 있습니다. 현재이 옵션은 2 가지가 있습니다 :Ember 1.7에서 Ember 2.9로 마이그레이션
- 우리의 머리를 아래로 다이빙하면 마이그레이션과 동시에 리팩토링을하는 최신 엠버로 앱을 다시 빌드하십시오. 새로운 기능이있는 경우 이전 앱에 추가하고 나중에 마이그레이션 할 것입니다.
- 리팩터링 (Refactor) 먼저 엠버 1.7 버전에서 리팩토링하고 리팩터링을 완료하면 원치 않는 레거시 코드를 제거하고 마이그레이션합니다. 앱에 더 많은 기능을 추가해야하는 경우 리팩토링 프로세스 중에 추가 할 수 있습니다. 리팩토링을 완료하면 새로운 기능에서 앱을 고정시킵니다.
첫 번째 방법은 리팩토링과 마이그레이션으로 인해 제어가 어려울 수 있습니다. 그러나 일이 잘되면 짧은 시간에 끝날 수 있습니다.
나중에 접근하면 훨씬 안전합니다. 마지막에 시간이 없으면 코드 기반이 향상됩니다. 그리고 시간이있을 때마다 우리는 이주를 위해 다시 올 수 있습니다. 그러나 ember 2.x로 마이그레이션 할 때 다른 리팩터링을해야 할 것이므로 시간이 오래 걸릴 것입니다. 그리고 우리는 마이그레이션을위한 시간을 결코 가질 수 없으며 Ember 1.7에 영원히 붙어 있습니다.
우리는 리팩토링하고 앱의 작은 덩어리를 엠버 엔진 또는 더 작은 엠버 애플 리케이션으로 마이그레이션하는 세 번째 접근법을 찾으려고합니다. 그리고이 작은 엔진/앱을 기존의 대규모 레거시 앱에 삽입하십시오. 그러나 Ember 1.x 앱에서 Ember 2.x를 사용할 수 있다고 언급 한 곳을 찾을 수 없었습니다.
우리의 목표에 도달 할 수 있다는 아이디어, 제안, 팁 힌트는 정말 감사하겠습니다. 한 가지 더, RequireJS를 사용하는 기존 앱. 사실