Skip to content

Commit 1b0ee71

Browse files
authored
Update article.md
1 parent 47dd350 commit 1b0ee71

File tree

1 file changed

+14
-15
lines changed

1 file changed

+14
-15
lines changed

1-js/03-code-quality/04-ninja-code/article.md

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33

44
```quote author="Khổng Tử (Luận ngữ)"
5-
Học mà không suy nghĩ là mất công; suy nghĩ mà không học nguy hiểm.
5+
Học mà không suy nghĩ thì vô ích; suy nghĩ mà không học thì nguy hiểm.
66
```
77

88
Các ninja lập trình viên trong quá khứ đã sử dụng những thủ thuật này để mài giũa tâm trí của những người bảo trì mã.
@@ -15,7 +15,7 @@ Hãy đọc kỹ chúng và tìm hiểu xem bạn là ai -- một ninja, một n
1515

1616

1717
```warn header="Phát hiện trớ trêu"
18-
Nhiều người cố gắng đi theo con đường ninja. Chỉ có số ít thành công.
18+
Nhiều người cố gắng đi theo con đường ninja. Chỉ có một số ít thành công.
1919
```
2020

2121

@@ -110,17 +110,17 @@ Việc đọc nhanh mã như vậy trở nên không thể. Và khi có một l
110110

111111
Sử dụng tên *tương tự* cho những thứ *giống nhau* khiến cuộc sống trở nên thú vị hơn và thể hiện sự sáng tạo của bạn với công chúng.
112112

113-
Chẳng hạn, hãy xem xét các tiền tố chức năng. Nếu một chức năng hiển thị thông báo trên màn hình -- hãy bắt đầu chức năng đó bằng `display…`, chẳng hạn như `displayMessage`. Và sau đó, nếu một chức năng khác hiển thị trên màn hình một thứ khác, chẳng hạn như tên người dùng, hãy bắt đầu bằng `show…` (chẳng hạn như `showName`).
113+
Chẳng hạn, hãy xem xét các tiền tố hàm. Nếu một hàm hiển thị thông báo trên màn hình -- hãy bắt đầu hàm đó bằng `display…`, chẳng hạn như `displayMessage`. Và sau đó, nếu một hàm khác hiển thị trên màn hình một thứ khác, chẳng hạn như tên người dùng, hãy bắt đầu bằng `show…` (chẳng hạn như `showName`).
114114

115-
Nói bóng gió rằng có một sự khác biệt tinh tế giữa các chức năng như vậy, trong khi không có.
115+
Nói bóng gió rằng có một sự khác biệt tinh tế giữa các hàm như vậy, trong khi không có.
116116

117-
Thỏa thuận với các ninja khác trong nhóm: nếu John bắt đầu "hiển thị" các chức năng với `display...` trong mã của anh ấy, thì Peter có thể sử dụng `render..`, và Ann -- `paint...`. Lưu ý rằng mã đã trở nên thú vị và đa dạng hơn bao nhiêu.
117+
Thỏa thuận với các ninja khác trong nhóm: nếu John bắt đầu "hiển thị" các hàm với `display...` trong mã của anh ấy, thì Peter có thể sử dụng `render..`, và Ann -- `paint...`. Lưu ý rằng mã đã trở nên thú vị và đa dạng hơn bao nhiêu.
118118

119119
...Và bây giờ là cú hat-trick!
120120

121121
Đối với hai hàm có sự khác biệt quan trọng -- hãy sử dụng cùng một tiền tố!
122122

123-
Chẳng hạn, chức năng `printPage(page)` sẽ sử dụng một máy in. Và chức năng `printText(text)` sẽ đưa văn bản lên màn hình. Hãy để một độc giả không quen biết suy nghĩ kỹ về chức năng có tên tương tự `printMessage`: "Nó đặt thông báo ở đâu? Đến máy in hay trên màn hình?". Để làm cho nó thực sự tỏa sáng, `printMessage(message)` nên xuất nó trong cửa sổ mới!
123+
Chẳng hạn, hàm `printPage(page)` sẽ sử dụng một máy in. Và hàm `printText(text)` sẽ đưa văn bản lên màn hình. Hãy để một độc giả không quen biết suy nghĩ kỹ về hàm có tên tương tự `printMessage`: "Nó đặt thông báo ở đâu? Đến máy in hay trên màn hình?". Để làm cho nó thực sự tỏa sáng, `printMessage(message)` nên xuất nó trong cửa sổ mới!
124124

125125
## Sử dụng lại tên
126126

@@ -151,7 +151,7 @@ function ninjaFunction(elem) {
151151
}
152152
```
153153

154-
Một lập trình viên đồng nghiệp muốn làm việc với `elem` trong nửa sau của chức năng sẽ ngạc nhiên... Chỉ trong quá trình gỡ lỗi, sau khi kiểm tra mã, họ mới phát hiện ra rằng mình đang làm việc với một bản sao!
154+
Một lập trình viên đồng nghiệp muốn làm việc với `elem` trong nửa sau của hàm sẽ ngạc nhiên... Chỉ trong quá trình gỡ lỗi, sau khi kiểm tra mã, họ mới phát hiện ra rằng mình đang làm việc với một bản sao!
155155

156156
Nhìn thấy trong mã thường xuyên. Hiệu quả chết người ngay cả đối với một ninja dày dặn kinh nghiệm.
157157

@@ -212,28 +212,27 @@ Thể hiện suy nghĩ ban đầu của bạn! Hãy để lệnh gọi `checkPer
212212
Những nhà phát triển cố gắng viết `if (checkPermission(..))`, sẽ thắc mắc tại sao nó không hoạt động. Hãy nói với họ: "Hãy đọc tài liệu!". Và đưa ra bài viết này.
213213

214214

215-
## Chức năng mạnh mẽ!
215+
## Hàm mạnh mẽ!
216216

217217
```quote author="Lão Tử (Đạo đức kinh)"
218218
Đạo lớn chảy khắp nơi,<br>
219219
cả bên trái và bên phải.
220220
```
221221

222-
Đừng giới hạn chức năng bởi những gì được viết trong tên của nó. Hãy rộng rãi hơn.
222+
Đừng giới hạn hàm bởi những gì được viết trong tên của nó. Hãy rộng rãi hơn.
223223

224-
Chẳng hạn, một chức năng `validateEmail(email)` có thể (ngoài việc kiểm tra tính chính xác của email) hiển thị thông báo lỗi và yêu cầu nhập lại email.
224+
Chẳng hạn, một hàm `validateEmail(email)` có thể (ngoài việc kiểm tra tính chính xác của email) hiển thị thông báo lỗi và yêu cầu nhập lại email.
225225

226226
Các hành động bổ sung không nên rõ ràng từ tên hàm. Một lập trình viên ninja thực thụ cũng sẽ khiến chúng không bị lộ ra khỏi mã.
227227

228228
**Kết hợp nhiều hành động thành một để bảo vệ mã của bạn không bị sử dụng lại.**
229229

230-
Hãy tưởng tượng, một nhà phát triển khác chỉ muốn kiểm tra email và không xuất bất kỳ thông báo nào. Chức năng `validateEmail(email)` của bạn thực hiện cả hai sẽ không phù hợp với họ. Vì vậy, họ sẽ không phá vỡ thiền định của bạn bằng cách hỏi bất cứ điều gì về nó.
230+
Hãy tưởng tượng, một nhà phát triển khác chỉ muốn kiểm tra email và không xuất bất kỳ thông báo nào. Hàm `validateEmail(email)` của bạn thực hiện cả hai sẽ không phù hợp với họ. Vì vậy, họ sẽ không phá vỡ thiền định của bạn bằng cách hỏi bất cứ điều gì về nó.
231231

232232
## Tóm tắt
233233

234-
Tất cả "mẩu lời khuyên" ở trên là từ mã thực... Đôi khi, được viết bởi các nhà phát triển có kinh nghiệm. Thậm chí có thể nhiều kinh nghiệm hơn bạn;)
234+
Tất cả "mẩu lời khuyên" ở trên là từ những thực tế... Đôi khi, được viết bởi các nhà phát triển có kinh nghiệm. Thậm chí có thể nhiều kinh nghiệm hơn bạn;)
235235

236-
- Làm theo một số trong số họ, và mã của bạn sẽ trở nên đầy bất ngờ.
237-
- Theo dõi nhiều người trong số họ, và mã của bạn sẽ thực sự là của bạn, không ai muốn thay đổi nó.
236+
- Làm theo một số trong số đó, và mã của bạn sẽ trở nên đầy bất ngờ.
237+
- Làm theo nhiều trong số đó, và mã của bạn sẽ thực sự là của bạn, không ai muốn thay đổi nó.
238238
- Hãy làm theo tất cả, và mã của bạn sẽ trở thành bài học quý giá cho các nhà phát triển trẻ đang tìm kiếm sự khai sáng.
239-
-

0 commit comments

Comments
 (0)