Quy ước lập trình

Một phần của tài liệu Kỹ thuật hỗ trợ kiểm soát chất lượng phần mềm (Trang 29)

Mục đích của việc xây dựng tài liệu quy ước lập trình là tạo sự thống nhất trong phong cách lập trình giữa các thành viên trong nhóm. Với sự thống nhất trong cách lập trình, việc trao đổi, kế thừa, đọc hiểu, bảo trì kết quả công việc của các thành viên sẽ dễ dàng hơn nhiều. Bản chất vấn đề là làm việc theo nhóm sẽ khác hẳn với phong cách làm việc cá nhân.

Theo định nghĩa của Wikipedia, quy ước lập trình (coding conventions) là một tập hợp các hướng dẫn cho từng ngôn ngữ lập trình trong đó nó định hướng phong cách lập trình, kỹ năng và phương pháp cho từng khía cạnh của mỗi phần chương trình được viết cho ngôn ngữ đó. Những quy ước này bao gồm tổ chức file, lùi dòng (indentation), chú thích (comments), khai báo, lệnh, khoảng trắng (white space), cách đặt tên, kỹ năng lập trình, quy tắc lập trình và bí quyết… Những lập trình viên rất cần được khuyến khích tuân thủ những hướng dẫn này để nâng cao tính dễ hiểu của mã nguồn do họ viết và theo đó là tăng cường tính bảo trì của phần mềm. Các quy ước này được tổ chức theo từng bộ luật được tài liệu hóa sao cho toàn bộ đội phát triển hoặc công ty phần mềm tuân thủ. Các quy ước này không được kiểm soát, hỗ trợ bởi các chương trình dịch. Do đó, việc không tuân thủ những quy ước này sẽ không ảnh hưởng gì tới khả năng chạy chương trình tạo ra từ mã nguồn.

Bảo trì phần mềm

Giảm chi phí bảo trì phần mềm là lý do quan trọng nhất khi tuân thủ quy ước lập trình. Trong lời giới thiệu tới quy ước lập trình cho ngôn ngữ Java, Sun Microsystems cung cấp những phản biện quan trọng sau:

- 80% chi phí toàn cuộc đời của một phần mềm là ở khâu bảo trì.

- Hầu như không có một phần mềm nào được bảo trì trong toàn vòng đời của nó bởi người tác giả đầu tiên.

- Quy ước lập trình tăng tính đọc hiểu của phần mềm, cho phép các kỹ sư/lập trình viên hiểu mã nguồn nhanh và thấu đáo hơn hẳn.

- Nếu bạn coi mã nguồn như một sản phẩm, bạn cần đảm bảo rằng nó được đóng gói kỹ lưỡng và sạch sẽ như mọi sản phẩm khác.

Chất lượng

Thẩm tra phần mềm (software peer review) thường liên quan tới đọc mã nguồn. Mã nguồn nếu được viết theo những chỉ dẫn nhất quán sẽ dễ dàng hơn nhiều cho những người thẩm tra khác đọc và đánh giá. Kể cả với tác giả đầu tiên của phần mềm, phần mềm được viết theo phong cách nhất quán sẽ dễ bảo trì hơn hẳn.

Tái tinh chỉnh mã nguồn (Refactoring)

Refactoring là một hoạt động bảo trì trong đó mã nguồn được thay đổi/tinh chỉnh để nâng cao tính dễ hiểu hoặc cấu trúc của nó. Phần mềm thường được tinh chỉnh theo hướng tuân thủ với các tiêu chuẩn lập trình của một đội phát triển trước khi nó được phát hành. Bất cứ thay đổi nào của refactoring không thay đổi hành vi của phần mềm. Những hoạt động refactoring phổ biến là: đổi tên biến, đổi tên hàm, chuyển hàm hoặc lớp, chia nhỏ những hàm quá lớn thành những hàm nhỏ hơn…

Tự động hóa quá trình kiểm soát quy ước lập trình

Quy ước lập trình cho phép những chương trình đơn giản xử lý mã nguồn với mục đích không phải dịch nó thành chương trình để chạy. Một số trình đơn giản là đếm số dòng của mã nguồn (source lines of code) hoặc thiết lập cơ sở để tính những dự đoán trong tương lai của dự án.

Để hỗ trợ quá trinh này, có thể một số thẻ đặc biệt được đưa vào phần chú thích mã nguồn để hỗ trợ quá trình tài liệu hóa. Ví dụ nổi bật là JavaDoc và Doxygen. Những công cụ này đặc tả việc sử dụng một tập hợp các thẻ.

Quy ước lập trình đơn giản hóa việc viết những phần mềm mới mà nhiệm vụ của chúng là xử lý những phần mềm có sẵn. Việc áp dụng kỹ thuật phân tích mã nguồn tĩnh đã phát triển từ những năm 1950.

Một phần của tài liệu Kỹ thuật hỗ trợ kiểm soát chất lượng phần mềm (Trang 29)