Skip to content

Commit 6bca1c7

Browse files
committed
feat(1-02-01-hello-world): Fix language mistakes in 03-comments
1 parent 8392e40 commit 6bca1c7

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

1-js/03-code-quality/03-comments/article.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ function showPrimes(n) {
4343
}
4444
```
4545

46-
Кращим варінтом було б помістити код в окрему функцію `isPrime`:
46+
Кращим варіантом було б помістити код в окрему функцію `isPrime`:
4747

4848

4949
```js
@@ -90,7 +90,7 @@ for(let t = 0; t < 3; t++) {
9090
// ...
9191
```
9292

93-
Тоді кращим варінтом буде замінити його на окремі функції:
93+
Тоді кращим варіантом буде замінити його на окремі функції:
9494

9595
```js
9696
addWhiskey(glass);
@@ -113,14 +113,14 @@ function addJuice(container) {
113113

114114
Знову ж таки, ім'я функцій самі описують, що в них відбувається. Немає потреби коментувати такий код. Також кращою є структура коду, коли він розподілений. Стає зрозумілим, що функція робить, що вона приймає і що повертає.
115115

116-
Насправді, ми не можемо уникнути повністю "пояснювальних" коментарів. Є складні алгоритми. Також існують деякі "прийоми" для оптимізації. Проте, як правило, ми повинні намагатись залишати код простим та самоописним.
116+
Насправді ми не можемо уникнути повністю "пояснювальних" коментарів. Є складні алгоритми. Також існують деякі "прийоми" для оптимізації. Проте, як правило, ми повинні намагатись залишати код простим та самоописним.
117117

118118
## Хороші коментарі
119119

120120
Тож, пояснювальні коментарі зазвичай погані. Які ж тоді хороші?
121121

122122
Описуйте архітектуру
123-
: Додавайте опис компонентів висого рівня, як вони взаємодіють, який потік управління мають у різних обставинах... Якщо коротко - огляд коду з висоту пташиного польоту. Є спеціальна мова [UML](https://uk.wikipedia.org/wiki/Unified_Modeling_Language) для побудови діаграм високорівневої архітектури коду. Її однозначно варто вчити.
123+
: Додавайте опис компонентів вищого рівня, як вони взаємодіють, який потік управління мають у різних обставинах... Якщо коротко - огляд коду з висоту пташиного польоту. Є спеціальна мова [UML](https://uk.wikipedia.org/wiki/Unified_Modeling_Language) для побудови діаграм високорівневої архітектури коду. Її однозначно варто вчити.
124124

125125
Документуйте параметри функції та її використання
126126
: Існує спеціальний синтаксис [JSDoc](https://uk.wikipedia.org/wiki/JSDoc) для документації функції: її використання, параметри, значення, що повертає.
@@ -148,12 +148,12 @@ function pow(x, n) {
148148
Чому завдання було вирішено у такий спосіб?
149149
: Те, що написано є дуже важливим. Проте, те, що *не* написано може бути ще більш важливим, щоб зрозуміти, що саме відбувається. Чому завдання було вирішено саме у такий спосіб? Код не дає відповідь на це питання.
150150

151-
Якщо існує декілька способів вирішення завдання, чому саме цей? Особливо, якщо цей спосіб не самий очевидний.
151+
Якщо існує декілька способів вирішення завдання, чому саме цей? Особливо, якщо цей спосіб не найбільш очевидний.
152152

153153
Без таких коментарів можлива наступна ситуація:
154154
1. Ви (або ваш колега) відкриває код, написаний колись раніше, і бачить, що він "неоптимальний".
155155
2. Ви думаєте: "Який я був недосвідчений, і наскільки розумнішим я став зараз", і переписуєте код використовуючи "більш очевидний і правильний" варіант.
156-
3. ...Бажання переписати код було хорошим. Але в процесі ви помічаєте, що "більш очевидне" рішення не є оптимальним. Ви навіть смутно пригадуєте чому воно так, тому що колись давно вже намаглись спробувати такий варіант. Ви вертаєте правильне рішення, проте час було витрачено даремно.
156+
3. ...Бажання переписати код було хорошим. Але в процесі ви помічаєте, що "більш очевидне" рішення не є оптимальним. Ви навіть смутно пригадуєте чому воно так, тому що колись давно вже намагались спробувати такий варіант. Ви вертаєте правильне рішення, проте час було витрачено даремно.
157157

158158
Коментарі, які пояснюють рішення є дуже важливими. Вони допомагають продовжувати розробку правильним шляхом.
159159

@@ -177,4 +177,4 @@ function pow(x, n) {
177177
- Які описують, як код працює і що він робить.
178178
- Пишіть їх тільки у тому випадку, коли не має змоги написати простий та самоописний код, якому пояснення не потрібні.
179179

180-
Коментарі також використовуються інструментами для автоматичної генерації документації, наприклад JSDoc3 - вони читають їх та генерують HTML-документи (або документи у іншому форматі).
180+
Коментарі також використовуються інструментами для автоматичної генерації документації, наприклад JSDoc3 - вони читають їх та генерують HTML-документи (або документи в іншому форматі).

0 commit comments

Comments
 (0)