기술 부채
기술 부채는 오래된 소프트웨어와 소스 코드, 아키텍처 결정으로 인해 소프트웨어 개발자가 떠안게 되는 부담입니다. 여기에는 잘못 작성된 함수부터 더 이상 지원되지 않는 프레임워크까지 다양한 형태가 포함될 수 있습니다. 기술 부채는 경우에 따라 코드를 다시 작성하여 해결할 수 있지만, 어떤 경우에는 개발자가 전체 프로그램을 다시 작성해야 할 수도 있습니다.
기술 부채 피하기
기술 부채를 관리하는 가장 좋은 방법은 처음부터 기술 부채를 쌓지 않는 것입니다. 이를 위해서는 장기적인 계획을 세워 프로그램을 설계하는 것부터 시작해야 합니다. 현명한 소프트웨어 엔지니어는 현재의 소프트웨어와 하드웨어 상태만 고려하지 않고 미래를 내다보며 애플리케이션을 설계합니다. "미래에도 사용할 수 있는" 프로그래밍 언어와 신뢰할 수 있는 프레임워크를 선택하는 것은 아키텍처를 설계할 때 내려야 하는 두 가지 중요한 결정입니다.
기술 부채를 피하려면 올바른 코딩 관행을 따르는 것도 필요합니다. 예를 들어 프로그램 안에서 동일한 논리가 여러 번 반복된다면 하나의 클래스나 함수로 통합해야 합니다. 그렇지 않으면 나중에 각 인스턴스를 찾아 업데이트하기가 더 어려워지며, 특히 새 개발자가 프로젝트 작업을 맡는 경우에는 더욱 그렇습니다. 나중에 코드를 검토하고 업데이트하려면 코드에 주석을 작성하는 것도 필수적입니다.
기술 부채 관리하기
기술 부채를 관리하는 두 가지 주요 방법은 코드의 일부를 다시 작성하거나 처음부터 새로 시작하는 것입니다. 가장 적합한 방법은 프로젝트의 규모와 기술 부채의 양에 따라 달라집니다.
1. 코드 다시 작성하기
코드를 다시 작성하거나 "리팩터링"하는 것은 기술 부채를 처리하는 가장 일반적인 방법입니다. 예를 들어 수석 개발자가 주니어 개발자가 작성한 코드를 검토하고 성능을 최적화할 방법을 찾을 수 있습니다. 코드가 더 새로운 플랫폼에서 실행되도록 더 이상 사용되지 않는 함수를 업데이트해야 할 수도 있습니다. 경우에 따라 새 API와 함께 작동하도록 코드의 상당 부분을 다시 작성해야 할 수 있습니다. 이러한 종류의 업데이트는 프로그래밍 분야에서 흔히 이루어지며, 개발자가 새 버전을 출시하는 이유 중 하나이기도 합니다.
2. 처음부터 새로 시작하기
기술 부채가 충분히 많다면 코드를 업데이트하는 것보다 새로운 프로그램을 처음부터 작성하는 데 시간이 더 적게 걸릴 수 있습니다. 경우에 따라 최신 소프트웨어 컴파일러와 호환되는 새로운 프로그래밍 언어로 애플리케이션을 다시 코딩해야 할 수도 있습니다. 앱을 처음부터 다시 만드는 것은 상당한 투자이지만, 추가적인 이점을 제공할 수 있습니다. 예를 들어 새로운 애플리케이션은 최신 하드웨어 기술과 현대적인 사용자 인터페이스 요소를 활용할 수 있습니다.
지식 테스트하기