Clean code a handbook of agile software craftsmanship



tải về 0.5 Mb.
Chế độ xem pdf
trang17/20
Chuyển đổi dữ liệu02.02.2023
Kích0.5 Mb.
#54161
1   ...   12   13   14   15   16   17   18   19   20
I-II
12-KTXH-VUONG QUOC DUY(105-113)
Tên các phương thức 
Tên các phương thức nên có động từ hoặc cụm động từ như 
postPayment

deletePage

hoặc 
save
. Các phương thức truy cập, chỉnh sửa thuộc tính phải được đặt tên cùng với 
get

set
và 
is
theo tiêu chuẩn của Javabean. 
string name = employee.getName(); 
customer.setName(
"mike"
); 
if
(paycheck.isPosted())... 
Khi các hàm khởi tạo bị nạp chồng, sử dụng các phương thức tĩnh có tên thể hiện được đối số sẽ 
tốt hơn. Ví dụ: 
Complex
fulcrumPoint = Complex.FromRealNumber(
23.0
);
sẽ tốt hơn câu lệnh 
Complex
fulcrumPoint = 
new
Complex(
23.0
);
Xem xét việc thực thi chúng bằng các hàm khởi tạo private tương ứng. 
Đừng thể hiện rằng bạn cute 
Nếu tên quá hóm hỉnh, chúng sẽ chỉ được nhớ bởi tác giả và những người bạn. Liệu có ai biết 
chức năng của hàm 
HolyHandGrenade
không? Nó rất thú vị, nhưng trong trường hợp này, 
DeleteItems
sẽ là tên tốt hơn. Chọn sự rõ ràng thay vì giải trí. 
Sự cute thường xuất hiện dưới dạng phong tục hoặc tiếng lóng. Ví dụ: đừng dùng 
whack()
thay 
thế cho 
kill()
, đừng mang những câu đùa trong văn hóa nước mình vào code, như 
eatMyShorts()
có nghĩa là 
abort().
Say what you mean. Mean what you say. 
Chọn một từ cho mỗi khái niệm 
Chọn một từ cho một khái niệm và gắn bó với nó. Ví dụ, rất khó hiểu khi 
fetch

retrieve
và 
get
là các phương thức có cùng chức năng, nhưng lại đặt tên khác nhau ở các lớp khác nhau. Làm 
thế nào để nhớ phương thức nào đi với lớp nào? Buồn thay, bạn phải nhớ tên công ty, nhóm hoặc cá 
nhân nào đã viết ra các thư viện hoặc các lớp, để nhớ cụm từ nào được dùng cho các phương thức. Nếu 
không, bạn sẽ mất thời gian để tìm hiểu chúng trong các đoạn code trước đó. 
Các công cụ chỉnh sửa hiện đại như Eclipse và IntelliJ cung cấp các định nghĩa theo ngữ cảnh, 
chẳng hạn như danh sách các hàm bạn có thể gọi trên một đối tượng nhất định. Nhưng lưu ý rằng, danh 
sách thường không cung cấp cho bạn các ghi chú bạn đã viết xung quanh tên hàm và danh sách tham 


24 
số. Bạn may mắn nếu nó cung cấp tên tham số từ các khai báo hàm. Tên hàm phải đứng một mình, và 
chúng phải nhất quán để bạn có thể chọn đúng phương pháp mà không cần phải tìm hiểu thêm. 
Tương tự như vậy, rất khó hiểu khi 
controller

manager
và 
driver
lại xuất hiện trong 
cùng một mã nguồn. Có sự khác biệt nào giữa 
DeviceManager
và 
ProtocolController
? Tại 
sao cả hai đều không phải là 
controller
hay 
manager
? Hay cả hai đều cùng là 
driver
? Tên 
dẫn bạn đến hai đối tượng có kiểu khác nhau, cũng như có các lớp khác nhau. 
Một từ phù hợp chính là một ân huệ cho những lập trình viên phải dùng code của bạn. 

tải về 0.5 Mb.

Chia sẻ với bạn bè của bạn:
1   ...   12   13   14   15   16   17   18   19   20




Cơ sở dữ liệu được bảo vệ bởi bản quyền ©hocday.com 2024
được sử dụng cho việc quản lý

    Quê hương