Модули классны, особенно когда они поставляются с версией. Вы можете определить минимальную версию модуля, чтобы предотвратить утечку методов, которые вы хотите использовать. Но с каждой стороны света появляется темная сторона, которая означает Perl TIMTOWTDI.
Спустя почти семь лет в качестве разработчика Perl я видел и писал объявления объявлений разными способами. Некоторые из них легко указывают на то, что плохо, а некоторые нет. Поскольку никто не может полностью знать язык, я хотел бы спросить вас, каковы плюсы и минусы следующего версирования программного обеспечения в Perl.
Пожалуйста, не стесняйтесь комментировать больше способов определения версии, если вы обнаружите утечку;)
Пожалуйста, уважайте:
- странное требование/использование модуля, который может вызвать проблемы с обнаружением версии модуля (компиляция и время выполнения)
- Разбор PAUSE/CPAN (и другие общие службы)
- читаемость для конечных пользователей
- поддержка для разработчиков
Каковы преимущества и недостатки объявления методов версии пакета в Perl?
Способ 1
package PackageName;
BEGIN {
use version 0.77; our $VERSION = version->new('v0.0_1');
}
Способ 2
package PackageName;
BEGIN {
our $VERSION = 0.000_01;
}
Способ 3
package PackageName;
BEGIN {
our $VERSION = 0.0.1;
}
Метод 4
package PackageName;
use version 0.77; our $VERSION = version->new('v0.0_1');
Метод 5
package PackageName;
our $VERSION = 0.000_01;
Метод 6
package PackageName;
our $VERSION = 0.0.1;