Простите, что за автора отвечаю. > <[email protected]> написал: >> On Thursday, October 15, 2015 18:18:04 Nikolay Mishin wrote: >>> Это да, сам код может и не соответствовать этим правилам >> >> А вообще, какая цель рефакторинга _этого_ модуля? Он, как я понимаю, не >> основная функция приложения, поэтому написан в рамках тех структур данных, >> которыми располагает. >
В первом письме автор ясно обозначил цель: "Существует ли какой-либо сбособ сделать более читаемым такой код?" С моей точки зрения читаемость кода, это очень важное свойство в подавляющем большинстве проектов. И улучшение читаемости - хорошая цель. > Это да, там в-основном рендеринг данных в Excel. А рендеринг - это по > определению куча костылей - большинство из них стоит упрощать только в > том случае, если они встречаются не единожды. > 1. Код рендеринга ничем принципиально не отличается от остального кода, он так же подвержен изменениям. Более того, скорее та куча костылей в коде рендеринга, экспортеров и т.п. которая для вас присутствует "по определению", это следствие того, что именно этот код меняется наиболее часто. И с моей точки зрения, именно его и нужно писать максимально простым и понятным. 2. Если вы посмотрите на проект автора, то увидите, что там уже два практически идентичных модуля с огромным дублированием кода. Уже сейчас при небольшом изменении структуры модели, придется вносить одинаковые изменения в оба. Тут две проблемы. Одна из них дублирование кода, просто придется больше писать, больше тестировать, больше читать. Вторая - читаемость, читаемость меньше, больше времени потребуется чтоб разобраться в текущем функционале, а потом ещё раз разобраться (см. первую проблему). -- Vladimir Timofeev <[email protected]> -- Moscow.pm mailing list [email protected] | http://moscow.pm.org
