4 декабря 2016 г., 22:47 пользователь Akzhan Abdulin via Moscow-pm <[email protected]> написал: > Может пригодиться > > ---------- Пересылаемое сообщение ---------- > От кого: Sergei Mozhaisky <[email protected]> > Дата: 4 декабря 2016 г., 21:27 > Тема: [Kiev-pm] Perl::Analyzer - статический анализатор кода на Perl > Кому: "Kiev.pm group" <[email protected]> > > > Всем привет! > > В моем последнем проекте на Перле была весьма сложная структура классов - > многоуровневое наследование, переопределение методов, в общем, все прелести > ООП. Зачастую во время отладки приходилось выяснять "откуда же наследуется > этот метод, который валится с ошибкой, и кто его мог переопределить". В один
а чего, нельзя было просто от ООП отказаться ?) > прекрасный момент мне это надоело, и я стал искать утилиты для статического > анализа кода. Но, к сожалению, у них у всех был один фатальный недостаток > (с) - они не делали то, что было нужно мне. Вот так, из модуля > Module::Dependency, палок и веревок появился Perl::Analyzer: > > http://technix.github.io/Perl-Analyzer/ > > Что он может: > > 1. Сделать диаграмму классов и наследования: > http://technix.github.io/Perl-Analyzer/images/packages.png > Но это не очень интересно, да и работать с ней не очень удобно > > 2. Сделать анализ кода и представить результат в виде HTML-файлов: > http://technix.github.io/Perl-Analyzer/perl-analyzer/DBIx-Class-Schema-Versioned.html > Здесь можно увидеть: > - сколько в пакете строк, методов и зависимостей > - как выглядит дерево зависимостей пакета > - список всех пакетов, от которых наследуется наш пакет > - список пакетов которые подключены через use или require > - список методов, определенных в пакете (и какие методы они переопределяют) > - унаследованные методы - откуда они наследуются и где "по дороге" > переопределены > - какие методы других классов явно используются в этом пакете > > Вот здесь можно посмотреть, как выглядят результаты анализа модуля > DBIx::Class: > http://technix.github.io/Perl-Analyzer/perl-analyzer/index.html > > Надеюсь, кому-нибудь это пригодится :) > С радостью приму фичареквесты и багрепорты. > > -- > Sergei Mozhaisky > http://technix.in.ua/ > > _______________________________________________ > Kiev-pm mailing list > [email protected] > http://mail.pm.org/mailman/listinfo/kiev-pm > > > > -- > Moscow.pm mailing list > [email protected] | http://moscow.pm.org > -- Moscow.pm mailing list [email protected] | http://moscow.pm.org
