[Moscow.pm] refactoring

Ilya Chesnokov chesnokov.ilya на gmail.com
Чт Окт 15 11:04:59 PDT 2015


15 октября 2015 г., 18:34 пользователь PEF Secure
<pef-secure на yandex.ru> написал:
> On Thursday, October 15, 2015 18:18:04 Nikolay Mishin wrote:
>> Это да, сам код может и не соответствовать этим правилам
>
> А вообще, какая цель рефакторинга _этого_ модуля? Он, как я понимаю, не
> основная функция приложения, поэтому написан в рамках тех структур данных,
> которыми располагает.

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

>  Код, в общем, понятный, добиться там чего-то кардинально
> лучшего не получится. Имело бы смысл смотреть на основную функциональность
> сначала. А так, мелочёвка какая то:
>
> push @person_row, ($person->get_name()->get_title(),
>       $person->get_name()->get_prefix(), $person->get_name()->get_first_name(),
>       $person->get_name()->get_mid_name(),
>       $person->get_name()->get_last_name(), $person->get_name()->get_suffix(),
>       $person->get_name()->get_nickname())
>
> можно свести к
>
> push @person_row, map { my $m="get_$_"; $person->get_name->$m } qw(title prefix
> first_name mid_name last_name suffix nickname);
>
> но, глобально, это не играет значения.
> --
> PEF Developer
> --
> Moscow.pm mailing list
> moscow-pm на pm.org | http://moscow.pm.org



-- 
Best regards,
Ilya Chesnokov


Подробная информация о списке рассылки Moscow-pm