Писать код могут многие, но лишь некоторые могут потом его читать. А программист - это скорее читатель, чем писатель,большую часть своего полезного времени он анализирует свой или чужой код. На тему того, как писать хороший код написано очень много всего, проведено много хуливаров и много копий сломано. Но говнокодеров от этого меньше почему - то не становится. А жаль. И так, покопавшись в мудрых книгах и в бескрайних просторах интернета, я решил кратко сформулировать основные принципы написания кода. Говокодерам рекомендуется к прочтению!
Немного об именовании и наболевшем.
- Всегда пишем по-английски. Всегда! Даже если работаем на быдлоконторе, занимающейся разработкой автоматизации бухгалтерии для колхоза "Закат" из Мухосранска, всё равно пишем на ненавистном буржуйском. Нужно на всю жизнь запомнить что язык IT - это скудный и нудный англобуржуйский.
- Избегаем аббревиатур. Представьте, что класс называется Juugptm. Прямо скажем, без ста грамм тяжело понять, что это журнал учёта учебных групп (пример из реальной практики)!
- Избегайте тяжело произносимых названий, в них всегда будут путаться ваши товарищи, да и вы сами через некоторое время будете чесать репу и вспоминать, что такое rtcTypesTerrUn или bttnDGVDublDocs.
- Всегда используйте говорящие названия. Прежде, чем назвать класс или метод, подумайте, что он делает, какие данные хранит. Например: getAddress(), CreditCalculator.
- Избегайте слишком длинных названий. Даже названия столбцов в базах данных не должны быть длиннее 15 символов! `ref_tax_codes_reasons_reg_property_unchanged` - Это уже больше походит на сочинение ученика второго класса, чем на название столбца таблицы базы данных.
- Пишите название констант в верхнем регистре.
- Не используйте числа в именах переменных для идентификации. Например, вместо name1, name2, name3 лучше написать firstName, middleName, surName.
Пара слов о форматировании.
- Пишите код в том стиле, в котором принято писать на данном языке программирования. Это касается как форматирования кода, так и применимых к нему различных нотаций.
- Помните, что форматирование кода должно раскрывать его логическую структуру.
- При отступах не используйте пробелы, отступ блока кода - это один Tab. При описании заголовка метода, производится один Tab от тела класса, при описании тела метода, производится 2 Tab'a от тела класса.
- Используйте пустую строку для отделения тела метода от его заголовка.
- Параметры функции или метода не отделяются от скобок пробелами, а пишутся слитно с ними.
- Параметры метода или функции отделяются друг от друга посредством запятой и пробела после неё.
Немного об ООП.
- Класс должен скрывать детали своей реализации. Прежде чем кодить, почитайте про инкапсуляцию. Всё, что не является частью пользовательского интерфейса класса, должно быть объявлено c модификатором доступа private.
- Никогда не оставляйте поля класса как public. Для доступа используйте свойства и методы.
- Избегайте использования protected - полей в классах наследниках.
Продолжение следует!
Комментариев нет:
Отправить комментарий