Skip to content

Sync 2-1 from ru to uk #160

@tshemsedinov

Description

@tshemsedinov

Here is latest update of 2-1 section:

Есть разные конвенции (договоренности) о именовании, традиции языков и парадигм, но во всех них имена должны быть _консистентные_ (однотипные) и _понятные_ даже для тех, кто код этот не писал. Примеры хороших имен идентификаторов:
- Глобальные переменные: `MAX_PURCHASE`, `REQUEST_TIMEOUT`, `ERROR_CODES`
- Коллекции: `prices`, `goods`, `boughtItems`
- Отдельные значения: `amount`, `groupName`, `total`
- Функции: `calculateSubtotal`, `calculateTotal`, `validateExpenses`
Примеры плохих имен рассмотрим подробнее:
- Глобальная константа `Maximum` - не понятно, максимум чего, без второго слова константа не может быть глобальной; нарушены конвенции использования строчных и заглавных букв, вместо `camelCase` тут использован `PascalCase` и такую константу сложно заметить при чтении кода;
- Таймаут запросов `request_timeout` - нарушены конвенции;
- Коды ошибок `ERCODE` - сложно читается; не понятно, что это коллекция кодов, а не один код;
- Массив цен `numbers` - не нужно называть массивы именами типов данных, которые в них находятся, из этого названия очень сложно понять, что там цены;
- Массив товаров `arrayOfGoods` - не добавляйте названия структур данных в имена переменных;
- Слишком длинное имя для коллекции товаров: `orderItemsInShopBasket`;
- Неочевидное сокращение `amt`;
- Кроме явного нарушения концепций `grp_N` еще и вводит в заблуждение, это плохое сокращение, не нужно экономить на буквах до такой степени;
- Не называйте переменные транслитом, как `itogo2` и не используйте цифры для именования переменных с похожим смыслом, попробуйте учесть оттенки смысла, например: `total` и `subtotal`;
- Если структура содержит два значения, как `tolalAndSubtotal`, то нужно назвать ее таким словом, которое обобщает их, например `order`;
- Кроме нарушения конвенций `BuyerCalculations` еще и очень не точный, не понятно, какие именно вычисления;
- Короткие сокращения типа `VE` - совершенно неприемлимы в качестве имен, если только это не общепринятые `i` и `j` для циклов или, `x` и `y` для координат и еще несколько подобных случаев.

Metadata

Metadata

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions

    pFad - Phonifier reborn

    Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

    Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


    Alternative Proxies:

    Alternative Proxy

    pFad Proxy

    pFad v3 Proxy

    pFad v4 Proxy