@@ -9,7 +9,7 @@ Original Repository: [ryanmcdermott/clean-code-javascript](https://github.com/ry
9
9
4 . [ Đối tượng và Cấu trúc dữ liệu] ( #đối-tượng-và-cấu-trúc-dữ-liệu )
10
10
5 . [ Classes] ( #classes )
11
11
6 . [ Testing] ( #testing )
12
- 7 . [ Concurrency ] ( #concurrency )
12
+ 7 . [ Xử lí đồng thời ] ( #xử-lí-đồng-thời )
13
13
8 . [ Xử lí lỗi] ( #xử-lí-lỗi )
14
14
9 . [ Định dạng] ( #định-dạng )
15
15
10 . [ Viết chú thích] ( #viết-chú-thích )
@@ -1767,12 +1767,12 @@ describe('MakeMomentJSGreatAgain', () => {
1767
1767
```
1768
1768
** [ ⬆ về đầu trang] ( #mục-lục ) **
1769
1769
1770
- ## ** Concurrency **
1771
- ### Use Promises, not callbacks
1772
- Callbacks aren't clean, and they cause excessive amounts of nesting. With ES2015/ES6,
1773
- Promises are a built-in global type. Use them !
1770
+ ## ** Xử lí đồng thời **
1771
+ ### Hãy dùng Promise, đừng dùng callback
1772
+ Callback thì không được 'sạch sẽ' cho lắm, chúng gây ra quá nhiều đoạn code lồng nhau
1773
+ (callback hell). Từ ES2015/ES6, Promise đã được đưa vào Javascript. Hãy sử dụng chúng !
1774
1774
1775
- ** Bad :**
1775
+ ** Không tốt :**
1776
1776
``` javascript
1777
1777
require (' request' ).get (' https://en.wikipedia.org/wiki/Robert_Cecil_Martin' , (requestErr , response ) => {
1778
1778
if (requestErr) {
@@ -1790,7 +1790,7 @@ require('request').get('https://en.wikipedia.org/wiki/Robert_Cecil_Martin', (req
1790
1790
1791
1791
```
1792
1792
1793
- ** Good :**
1793
+ ** Tốt :**
1794
1794
``` javascript
1795
1795
require (' request-promise' ).get (' https://en.wikipedia.org/wiki/Robert_Cecil_Martin' )
1796
1796
.then ((response ) => {
@@ -1804,16 +1804,16 @@ require('request-promise').get('https://en.wikipedia.org/wiki/Robert_Cecil_Marti
1804
1804
});
1805
1805
1806
1806
```
1807
- ** [ ⬆ back to top ] ( #mục-lục ) **
1807
+ ** [ ⬆ về đầu trang ] ( #mục-lục ) **
1808
1808
1809
- ### Async/Await are even cleaner than Promises
1810
- Promises are a very clean alternative to callbacks, but ES2017/ES8 brings async and await
1811
- which offer an even cleaner solution. All you need is a function that is prefixed
1812
- in an ` async ` keyword, and then you can write your logic imperatively without
1813
- a ` then ` chain of functions. Use this if you can take advantage of ES2017/ES8 features
1814
- today !
1809
+ ### Async/Await thì 'sạch sẽ' hơn Promise
1810
+ Promise là một sự thay thế 'sạch sẽ' cho callback, nhưng ES2017/ES8 giới thiệu
1811
+ async và await, đó thậm chí còn là một giải pháp tốt hơn Promise nữa. Những gì
1812
+ bạn cần phải làm là một hàm có tiếp đầu ngữ là từ khoá ` async ` , và bạn có thể viết
1813
+ các lệnh logic mà không cần một chuỗi ` then ` của các hàm. Hãy sử dụng điều này nếu
1814
+ bạn có thể tận dụng các tính năng của ES2017/ES8 ngay hôm nay !
1815
1815
1816
- ** Bad :**
1816
+ ** Không tốt :**
1817
1817
``` javascript
1818
1818
require (' request-promise' ).get (' https://en.wikipedia.org/wiki/Robert_Cecil_Martin' )
1819
1819
.then ((response ) => {
@@ -1828,7 +1828,7 @@ require('request-promise').get('https://en.wikipedia.org/wiki/Robert_Cecil_Marti
1828
1828
1829
1829
```
1830
1830
1831
- ** Good :**
1831
+ ** Tốt :**
1832
1832
``` javascript
1833
1833
async function getCleanCodeArticle () {
1834
1834
try {
@@ -1840,7 +1840,7 @@ async function getCleanCodeArticle() {
1840
1840
}
1841
1841
}
1842
1842
```
1843
- ** [ ⬆ back to top ] ( #mục-lục ) **
1843
+ ** [ ⬆ về đầu trang ] ( #mục-lục ) **
1844
1844
1845
1845
1846
1846
## ** Xử lí lỗi**
@@ -1971,7 +1971,7 @@ file. Lí tưởng là, hãy giữ cho hàm gọi ở trên hàm được gọi.
1971
1971
đọc code từ trên xuống, giống như đọc báo vậy. Do đó, hãy làm cho code của chúng
1972
1972
ta cũng được đọc theo cách đó.
1973
1973
1974
- ** Bad :**
1974
+ ** Không tốt :**
1975
1975
``` javascript
1976
1976
class PerformanceReview {
1977
1977
constructor (employee ) {
@@ -2010,7 +2010,7 @@ const review = new PerformanceReview(user);
2010
2010
review .perfReview ();
2011
2011
```
2012
2012
2013
- ** Good :**
2013
+ ** Tốt :**
2014
2014
``` javascript
2015
2015
class PerformanceReview {
2016
2016
constructor (employee ) {
@@ -2049,7 +2049,7 @@ const review = new PerformanceReview(employee);
2049
2049
review .perfReview ();
2050
2050
```
2051
2051
2052
- ** [ ⬆ về trang chủ ] ( #mục-lục ) **
2052
+ ** [ ⬆ về đầu trang ] ( #mục-lục ) **
2053
2053
2054
2054
## ** Viết chú thích**
2055
2055
### Chỉ nên viết chú thích cho những thứ có logic phức tạp.
0 commit comments