0
0
Lập trình
Admin Team
Admin Teamtechmely

Hướng Dẫn Viết Hàm Hiệu Quả Trong Lập Trình: Phần 2

Đăng vào 1 tháng trước

• 3 phút đọc

Chủ đề:

#AppMobile

Hướng Dẫn Viết Hàm Hiệu Quả Trong Lập Trình: Phần 2

Cùng tiếp tục từ bài viết trước về việc viết hàm trong lập trình, hôm nay chúng ta sẽ khám phá những nguyên tắc quan trọng giúp bạn viết ra những hàm rõ ràng và dễ bảo trì hơn.

1. Truyền Đạt Ý Định

Khi tạo ra hàm, điều quan trọng là truyền đạt ý định của bạn một cách rõ ràng. Thay vì sử dụng các câu điều kiện phức tạp, bạn có thể viết một hàm với một tên rõ ràng giúp người đọc dễ dàng hiểu được mục đích.

Ví dụ thiếu rõ ràng:

java Copy
// Kiểm tra phần mở rộng tệp hợp lệ. Xác nhận quyền admin hoặc tệp đang hoạt động
if(fileExtension == "mp4" || fileExtension == "mpg" || fileExtension == "avi") && (isAdmin || isActiveFile) {
 // làm gì đó
}

Ví dụ rõ ràng:

java Copy
if(ValidFileRequest(fileExtension, isActiveFile, isAdmin)) {
 // làm gì đó
}

boolean ValidFileRequest(String fileExtension, boolean isActiveFile, boolean isAdmin) {
  List<String> validFileExtensions = Arrays.asList("mp4", "mpg", "avi");
  boolean validFileType = validFileExtensions.contains(fileExtension);
  boolean userIsAllowedToViewFile = isActiveFile || isAdmin;
  return validFileType && userIsAllowedToViewFile;
}

2. Thực Hiện Một Việc

Hàm của bạn nên chỉ thực hiện một công việc duy nhất để giúp tăng cường khả năng đọc và bảo trì mã nguồn. Điều này cũng hỗ trợ việc tái sử dụng hàm.

Ví dụ xấu:

java Copy
public void CreateFile(String name, boolean temp) {
  if (temp) {
    fs.Create(`./temp/${name}`);
  } else {
    fs.Create(name);
  }
}

Ví dụ tốt:

java Copy
public void CreateFile(String name) {
    fs.Create(name);
}

public void CreateTempFile(String name) {
    CreateFile(`./temp/${name}`);
}

3. Biến Mayfly

Cố gắng chỉ khai báo biến khi cần thiết và phạm vi biến nên hạn chế để dễ dàng theo dõi và hiểu mã nguồn.

Khái niệm về biến Mayfly:

Chuồn chuồn (Mayfly) chỉ sống một thời gian rất ngắn. Chúng ta nên áp dụng nguyên tắc này cho các biến của mình, khai báo đúng lúc và đưa chúng ra khỏi phạm vi khi không cần thiết nữa.

4. Số Lượng Tham Số

Nên hạn chế số lượng tham số trong hàm, tối ưu nhất là từ 0-2 tham số. Điều này giữ cho hàm đơn giản và dễ theo dõi.

Ví dụ xấu:

java Copy
void SaveUser(User user, boolean sendEmail, int emailFormat, boolean printReport, boolean sendBill) {
 // làm gì đó
}

Ví dụ tốt:

java Copy
void SaveUser(User user) {
 // làm gì đó
}

5. Độ Dài Hàm

Hãy để hàm ngắn gọn và tập trung vào một nhiệm vụ. Một hàm dài thường có nhiều logic và khó khăn trong việc theo dõi.

6. Xử Lý Ngoại Lệ

Mỗi hàm có thể gặp lỗi. Hãy xác định đúng loại ngoại lệ và xử lý chúng một cách hiệu quả. Tránh việc để hệ thống tiếp tục chạy khi điều xảy ra không như mong đợi.

java Copy
try {
    RegisterSpeaker();
} catch (Exception ex) {
    LogError(ex);
}

7. Ưu Tiên Hàm Riêng Tư

Các hàm có chức năng chỉ được sử dụng trong nội bộ của class nên được định nghĩa là private để giảm thiểu mã không cần thiết khi tính năng không còn hữu ích.

java Copy
class User {
    private String isNew;
    void Login() { /* logic */ }
    private void CheckPassword() { /* logic */ }
}

Cảm ơn bạn đã theo dõi bài viết! Nếu bạn thấy thông tin này hữu ích, hãy để lại một bình luận và hẹn gặp lại trong bài viết tiếp theo!
source: viblo

Gợi ý câu hỏi phỏng vấn
Không có dữ liệu

Không có dữ liệu

Bài viết được đề xuất
Bài viết cùng tác giả

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào