it-gundan.com

레거시 코드 유지

여전히 "작동"하지만 유지 관리가 어렵거나 거의 불가능한 오래된 코드베이스가 있습니다. 업데이트하는 데 많은 시간과 비용이 소요될 수 있습니다. 방금 진행하겠습니까, 아니면 계속 세상을 미워해야합니까 (하지만 작동하고 비교적 버그가없는 작업을 계속하고 있습니까)?

5
Jason

사이트에서 미래가 보이면 유지 관리 할 수없는 경우 가능한 빨리 다시 작성하십시오. 나는 +5 살짜리 큰 사이트를 여러 개 유지하고 그로부터 온 어리석은 문제에 대해 저주를 썼을 때 그것들을 모두 다시 쓸 수있었습니다. 스스로 즐거움을 느끼고 다시 작성하십시오. 새로운 것을 만드는 것이 더 재미 있습니다.)

4
D4V360

특정 상황에 달려 있다고 확신하지만 기존 코드베이스를 유지 관리하는 데 소요되는 추가 시간과 업데이트 비용을 고려해야합니다. 자세한 내용을 알지 못하더라도 가지고있는 것에 어려움을 겪지 않고 업데이트하십시오.

1
Travis Northcutt

나는 비슷한 상황에 처해있다. 우리 회사에는 필요한 모든 것을 수행하는 레거시 웹 사이트가 있습니다. 또한 외부 회사가 웹 사이트를 구축하여 필요한 것의 90 %를 대체하는 웹 사이트를 보유하고 있습니다. 그들은 90 %가 110 %가 될 것으로 기대합니다.

다음과 같은 행동을 결정했습니다.

  • 새 사이트가 배달 될 때까지 레거시 웹 사이트 유지
  • 새로운 기능을 최대한 빨리 새 사이트에 통합하십시오
  • 새 웹 사이트를 교체하지 않은 것처럼 유지
  • 모든 것이 작동되면 사이트를 다시 빌드하고 마이그레이션 계획을 작성하십시오.
  • 새 사이트로 이전하고 이전 사이트 중 하나가 존재했음을 잊어 버리십시오.

다른 두 사이트를 단순히 무시하고 싶을 때는 옵션이 아닙니다. 느낌에 관계없이 배달되는 사이트는 교체를 시도하기 전에 특정 개월 동안 서비스를 제공해야합니다. 이를 최적화하고 유지하며 개선하는 것이 저의 최우선 과제입니다. 해당 사이트는 수명 동안 수행해야합니다. 따라서 새 사이트를 구축하는 것은 모든 시간 동안 모든 것이 작동하고 내 개인 시간에 필요할 때 프로젝트가 될 것입니다. 그러나 그것은 모든 사람의 기대를 관리하기 때문에 좋습니다. 이 새로운 사이트가 특정 수준으로 성능을 발휘할 것으로 기대하는 회사는 해당 수준에서 사이트 성능을 발휘하게되며 동시에 현장 뒤에서 적극적으로 개선 할 것입니다. 그리고 동시에, 나는 그것을 날려 버릴 대체품을 만들 것입니다.

내 상황에서 (외부 회사의) "새 사이트"는 레거시 코드베이스이고 "새 새 사이트"는 당신이해야 할 것입니다. 따라서 짧은 대답은 레거시 코드베이스를 유지하면서 세상을 계속 돌파하면서도 다시 만들 수 있다는 것입니다.

0
Bryson

@ D4V360에 동의합니다. 새로운 것을 쓰는 데 실제로 기쁨이 있습니다. 또한 Jeff와 Joel이 포드 캐스트에서 언급 한 "기술 부채"개념을 고려하십시오. 주제에 대한 관련 링크는 다음과 같습니다.

  • 기술 부채에 관한 Steve McConnell (대규모 "코드 경쟁자"저자)
  • 앞서 말한 우리 자신의 Jeff Atwood 기술 부채
0
Alan