Как писать "чистый" код. Правила написания кода. Для начинающих и не только...
- admin
- Администратор
- Сообщения: 1103
- Зарегистрирован: 18 янв 2012, 01:25
- Откуда: Екатеринбург
- Контактная информация:
Как писать "чистый" код. Правила написания кода. Для начинающих и не только...
Тут
Ниже - основные правила из видео
Ниже - основные правила из видео
- admin
- Администратор
- Сообщения: 1103
- Зарегистрирован: 18 янв 2012, 01:25
- Откуда: Екатеринбург
- Контактная информация:
Как писать "чистый" код. Правила написания кода. Для начинающих и не только...
Имена переменных.
Имена переменных должны отражать их суть, смысл, для чего она предназначена, что будет в себе содержать. Желательно (а лучше обязательно, сразу привыкать) на английском. Правильно названная переменная - не требует комментария и "читается" по всей программе, не имеет цифр (в очень редких случаях, когда цифры есть в названии объекта которому присваивается переменная - например протокол RS485)
Задача.
Есть некий магазин в котором продаются яблоки-5шт, груши-4шт, бананы-3шт. Задача посчитать общее количество яблок, груш, бананов.
Неправильное объявление переменных:
Правильное объявление переменных:
Не думайте, что придется писать больше символов в названии переменной и это увеличит время написания кода, все современные редакторы поддерживают автоввод. Комментарии тоже можно оставить, хуже не будет). Сокращать имена переменных (пропускать гласные и пр.) не надо. Код из кучи сокращенных имен переменных очень плохо читается, так как в последствии держишь код голове и "расшифровка" переменных сбивает и занимает очень много времени.
Имена переменных должны отражать их суть, смысл, для чего она предназначена, что будет в себе содержать. Желательно (а лучше обязательно, сразу привыкать) на английском. Правильно названная переменная - не требует комментария и "читается" по всей программе, не имеет цифр (в очень редких случаях, когда цифры есть в названии объекта которому присваивается переменная - например протокол RS485)
Задача.
Есть некий магазин в котором продаются яблоки-5шт, груши-4шт, бананы-3шт. Задача посчитать общее количество яблок, груш, бананов.
Неправильное объявление переменных:
Код: Выделить всё
x = 5 //яблоки
y = 4 //груши
z = 3 //бананы
x1 = 0 //сумма
Код: Выделить всё
apples = 5
pears = 4
bananas = 3
sum = 0
- admin
- Администратор
- Сообщения: 1103
- Зарегистрирован: 18 янв 2012, 01:25
- Откуда: Екатеринбург
- Контактная информация:
Как писать "чистый" код. Правила написания кода. Для начинающих и не только...
Умный, хитрый код. Комментарии
Те строчки (функции) кода, которые вызвали у Вас сложности при написании программы от 10 мин и более - ЗАКОММЕНТИРУЙТЕ вдоль и поперек). Пройдет время, будете разбираться со своим же кодом, встанете на этих строчках, возможно и более 10 мин. Если кокой-то код требует большого количества комментария, то выделите его в метод с названием комментария.
Если начинающий - комментируй каждую строку, так как вы начинающий, все операторы и синтаксис сразу выучить невозможно.
Про комментарии
Не пытайтесь усложнить код, по возможности используйте стандартные, часто используемые операторы, функции, библиотеки и пр.
Те строчки (функции) кода, которые вызвали у Вас сложности при написании программы от 10 мин и более - ЗАКОММЕНТИРУЙТЕ вдоль и поперек). Пройдет время, будете разбираться со своим же кодом, встанете на этих строчках, возможно и более 10 мин. Если кокой-то код требует большого количества комментария, то выделите его в метод с названием комментария.
Если начинающий - комментируй каждую строку, так как вы начинающий, все операторы и синтаксис сразу выучить невозможно.
Про комментарии
Не пытайтесь усложнить код, по возможности используйте стандартные, часто используемые операторы, функции, библиотеки и пр.
- admin
- Администратор
- Сообщения: 1103
- Зарегистрирован: 18 янв 2012, 01:25
- Откуда: Екатеринбург
- Контактная информация:
Re: Как писать "чистый" код. Правила написания кода. Для начинающих и не только...
Функции, методы
Имена функций/методов должны отражать их суть, смысл, для чего она предназначена, для какого действия (глагол). Имена функций/методов должны отвечать на вопрос - "что делает функция/метод."
Функции/методы должны делать только одно действие.
Например:
Выборка, удаление, обновление, редактирование, поиск, прием, передача, проверка приема и пр - лучше разбить на разные функции/методы.
Аргументов у функций должно быть не более 3. Если вам необходимо передать много аргументов, то объедините их в объект, список, структуру и пр. и передавайте в функцию. ТЫЦ
Не возвращать из метода принятый аргумент. Создайте новый объект с которым будете работать в методе, его и возвращайте.
Если в методе есть условия (IF и пр), то при входе в метод определить требуется ли выполнять логику метода, если нет то return. А потом пишем логику. ТЫЦ
Имена функций/методов должны отражать их суть, смысл, для чего она предназначена, для какого действия (глагол). Имена функций/методов должны отвечать на вопрос - "что делает функция/метод."
Функции/методы должны делать только одно действие.
Например:
Выборка, удаление, обновление, редактирование, поиск, прием, передача, проверка приема и пр - лучше разбить на разные функции/методы.
Аргументов у функций должно быть не более 3. Если вам необходимо передать много аргументов, то объедините их в объект, список, структуру и пр. и передавайте в функцию. ТЫЦ
Не возвращать из метода принятый аргумент. Создайте новый объект с которым будете работать в методе, его и возвращайте.
Если в методе есть условия (IF и пр), то при входе в метод определить требуется ли выполнять логику метода, если нет то return. А потом пишем логику. ТЫЦ
- admin
- Администратор
- Сообщения: 1103
- Зарегистрирован: 18 янв 2012, 01:25
- Откуда: Екатеринбург
- Контактная информация:
Re: Как писать "чистый" код. Правила написания кода. Для начинающих и не только...
SWITCH CASE BREAK
Данную конструкцию лучше не использовать, так как много вопросов вызывает отсутствие BREAK в CASE. Либо так задумано, либо забыл написать BREAK. Используйте IF ELSE - более "читабильно" и однозначно, хотя код смотрится загроможденнее.
Нежелательная конструкция
Желательная конструкция
Данную конструкцию лучше не использовать, так как много вопросов вызывает отсутствие BREAK в CASE. Либо так задумано, либо забыл написать BREAK. Используйте IF ELSE - более "читабильно" и однозначно, хотя код смотрится загроможденнее.
Нежелательная конструкция
Код: Выделить всё
switch () {
case 1:
...;
break;
case 2:
...;
case 3:
...;
break;
case 4:
...;
break;
default:
...;
break;
}
Код: Выделить всё
if ( )
{
...;
}
else if ( )
{
...;
}
else if ( )
{
...;
}
else if ( )
{
...;
}
else
{
...;
}
- admin
- Администратор
- Сообщения: 1103
- Зарегистрирован: 18 янв 2012, 01:25
- Откуда: Екатеринбург
- Контактная информация:
Re: Как писать "чистый" код. Правила написания кода. Для начинающих и не только...
чистый код
Роберт Мартин: Чистый код. Создание анализ и рефакторинг
С.Макконнелл: Совершенный код практическое руководство по разработке програмного обеспечения
Роберт Мартин: Чистый код. Создание анализ и рефакторинг
С.Макконнелл: Совершенный код практическое руководство по разработке програмного обеспечения