Technical debt là gì?

Phrase Programming
Nợ kỹ thuật

Nợ kỹ thuật (technical debt) là gánh nặng mà các nhà phát triển phần mềm phải đối mặt từ các quyết định về kiến ​​trúc và mã nguồn (source code) cũ. Nó có thể bao gồm từ các chức năng được viết kém đến các framework không còn được hỗ trợ. Trong một số trường hợp, nợ kỹ thuật có thể được xử lý bằng cách viết lại mã, trong khi trong những trường hợp khác, các nhà phát triển có thể cần phải viết lại toàn bộ chương trình.

Cách tốt nhất để quản lý nợ kỹ thuật (technical debt) là tránh tích lũy nó ngay từ đầu. Điều này bắt đầu bằng việc xây dựng kiến ​​trúc một chương trình với một kế hoạch dài hạn. Một kỹ sư phần mềm khôn ngoan sẽ thiết kế một ứng dụng cho tương lai, không chỉ tình trạng hiện tại của phần mềm và phần cứng. Lựa chọn ngôn ngữ lập trình "tương lai" và các framework đáng tin cậy là hai quyết định quan trọng trong quá trình kiến ​​trúc.

Cũng cần phải tuân theo các best practice để tránh mắc nợ kỹ thuật (technical debt). Ví dụ, nếu cùng một logic được lặp lại nhiều lần trong một chương trình, thì nó nên được hợp nhất thành một lớp (class) hoặc một hàm (function) duy nhất. Nếu không, sẽ khó khăn hơn để xác định vị trí và cập nhật từng phiên bản trong tương lai, đặc biệt nếu các nhà phát triển mới đang làm việc trên dự án. Comment cũng rất cần thiết để xem xét và cập nhật code trong tương lai.

Learning English Everyday