Skip to main content

Конференции

Просмотр конференции fido7.pushkin.local:

Предыдущее Следующее

Дата: 20 Apr 2020, 21:34:44
От: Sergey Poziturin @ 2:5020/2141.1
Кому: alexander koryagin
Тема: О свободном софте


Hi, alexander!

20 апр 20 14:53, alexander koryagin -> Gennadij Pastuhov:

 ak>>> запутаются. А для слишком талантливых программистов особый
 ak>>> порядок не нужен - им и так все ясно, даже где остальные сломают
 ak>>> ноги и руки.

 GP>> Мне лет 10 назад так вправил мозги тогдашний заказчик-начальник
 GP>> (я как бы у него числился, но работал удалённо и проектно). В
 GP>> одной из софтин я написал подпрограмму, которая принимала штук 10
 GP>> параметров, пережёвывала их и что-то потом дальше делала. И мне
 GP>> нужна была аналогичная, но в одном случае работавшая чуть иначе.
 GP>> Я добавил ещё параметр и условие в её тело. И этот начальник
 GP>> сказал работу передалать, потому что: - это сейчас понятно, что
 GP>> это за параметр и зачем он и как им пользоваться, но не факт, что
 GP>> через год об этом будут помнить - эти две ветки выполнения будет
 GP>> совершенно различными и лучше написать 2 независимых куска кода,
 GP>> чтобы возможные изменения в одном никак не повлияли на второй -
 GP>> совершенно насрать на размер кода, пусть хоть в 10 раз он будет
 GP>> больше, если это уменьшит связность частей программы и повысит
 GP>> надёжность её работы

 GP>> Т. е., говорил он, скорее всего, что-то другое, но смысл был
 GP>> такой. В-общем, сейчас я стараюсь именно так всё и писать и это
 GP>> избавляет от процентов 80-90 самых хитрых ошибок.

 ak> Мне кажется, что функции со слишком большим числом параметров как-то
 ak> не очень. В конце концов можно сгруппировать переменные во входную
 ak> структуру. Если без структуры, то перед важной функцией можно
 ak> комментировать назначение входных параметров и что возвращается. Hо в
 ak> общем IMHO правильно, что сование всего в одну функцию не должно быть
 ak> самоцелью, тем более что правильные названия мелких функций привносят
 ak> ясность в код.

После того, как у Фаулера вышла книга "Рефаторинг", мир узнал, что параметров вообще должно быть мало.
Вкратце тут:
https://habr.com/ru/post/169139/

Подробнее тут:
https://refactoring.guru/smells/long-parameter-list

--
[ vbane72@yandex.ru ] [2:5020/2141] [ Hotdogs 4ever ]
http://vp.propush.ru

--- binkd/1.1a-94/Darwin | hpt/mac 1.9.0-cur | GoldED+/OSX 1.1.5-b20170303
Origin: Somewhere on Mac (2:5020/2141.1)

Предыдущее Следующее

К списку сообщений
К списку конференций