Книга знаний

Инф. технологии

Признаки плохого программирования

Рассмотрены признаки плохого программированияАвтор статьи: Гений 1С | Редакторы: Волшебник, Fynjy, Лёвыч, EmK, Stillcat,
Последняя редакция №3 от 09.07.06 | История
URL: http://kb.mista.ru/article.php?id=273

Ключевые слова: программирование, стиль


Функции с большим числом параметров


К сожалению, в 1С нет возможности обращаться к параметрам по имени, поэтому нужно стараться избегать по возможности функций с большим числом параметров и использовать вместо списка параметров структуры.
1. Можно перепутать позицию параметра.
2. Если изменяется число параметров, например добавляется новый параметр, приходится переписывать все вызовы функции.

Пример плохого стиля:
ПеретаскиваниеВНовуюОбластьДанных(Элемент, ПараметрыПеретаскивания, СтандартнаяОбработка, Строка, Колонка, ПраваДоступаПользователей, МодифицированностьФормы)


Использование в коде программы конкретных данных


Пример плохого стиля:
Если ИмяПользователя="Иванов_С" Тогда ... КонецЕсли

Представьте потом, что если пользователь уволится, нужно будет найти все случаи, где встречается Иванов_С и сделать замену на нового сотрудника.
Пример плохого стиля:
Если Справочник.Код=17 Тогда ... КонецЕсли

Конфигурация должна быть написана так, чтобы можно было наложить ее на пустую базу и она была работоспособна. А в данном случае, если в базе нет элемента с кодом 17, или нужный элемент будет под другим кодом, программа будет работать неверно.

Использование глобальных переменных


Такой прием, хоть и часто используется, но снижает возможности повтороного использования кода.
Если функция не использует глобальных данных, а оперирует только переданными в нее данными, ее легче контролировать, изолировать и повторно использовать в другом коде.

Дублирование кода


Весь дублирующийся функционал нужно выносить в процедуры и функции:
Сравните:
А=Макс(Х,-Х);
Б=Мин(Y,-Y);

Против:
А=Модуль(Х);
Б=-Модуль(Y);


Замена индекса массива кодом


В коде начинающих программистов часто встречаются конструкции вида:
А1=0;
А2=0;
А3=0;
А4=0;
А5=0;

Против:
Для Каждого Эл из А Цикл
    Эл=0;
КонецЦикла;

На самом деле примеры бывают ужаснее (по 100, 200 элементов), просто нет под рукой ссылок.

Прочее


Напишите здесь ваши мысли.

Описание | Рубрикатор | Поиск | ТелепатБот | Захваченные статьи | Установки | Форум
© Станислав Митичкин (Волшебник), 2005-2025 | Mista.ru

Яндекс.Метрика