Size: a a a

2021 April 13

a

allter in Modern::Perl
Меня вот смущает использование "синглтонов" в Perl. Крайний раз, как я это видел, это добавило кучи проблем вместо улучшения.

Если тебе нужно сделать класс Y, который стучится внутрь ABC - так и сделай аналогично, классовыми методами.
источник

sA

saintserge Andreev in Modern::Perl
Мне наооборот.
источник

sA

saintserge Andreev in Modern::Perl
Но я уже решил задачу.
источник

И

Игорь in Modern::Perl
Кстати, раз уж заговорили про паттерны, никто не натыкался на какую-нибудь репку с реализацией всех популярных паттернов на чистом perl без  всякого сахара в виде Moo?
источник

И

Игорь in Modern::Perl
Что-то типа вот этого, только без moo:
https://github.com/manwar/design-patterns
источник

IB

Ivan Bessarabov in Modern::Perl
Мне кажется, паттерны не особо популярны в перле
источник

IB

Ivan Bessarabov in Modern::Perl
вот в java — там да
источник

И

Игорь in Modern::Perl
Ну в любом случае интересно было бы глянуть, но в свое время нашел только то, что выше написал.
источник

И

Игорь in Modern::Perl
Плюс, в свое время, меня по паттернам поспрашивали на собеседовании, после этого мой интерес на эту тему резко вырос😁
источник

a

allter in Modern::Perl
Собственно, большинство паттернов придумано, для того что бы побороть специфические ограничения тогдашней Java (отсутствие параметрического полиморфизма, например).
источник

a

allter in Modern::Perl
Соответственно, знать их полезно (и лучше смотреть, как они делают в той же Java), а применять вместо этого родные перловые практики...
источник

DF

Denis F in Modern::Perl
Но..но..но ведь паттерны не зависят от языка программирования...
источник

МИ

Михаил Иванов... in Modern::Perl
ну а реализация зависит
источник

DF

Denis F in Modern::Perl
Ну это несомненно, но привязывать паттерны к жабе как минимум странно
источник

МИ

Михаил Иванов... in Modern::Perl
ну если чуваки там заморочились и выработали толковые решения — чего бы не посмотреть для вдохновения?
источник

a

allter in Modern::Perl
Да, но вот например вот так в Perl обычно никто не пишет.
https://github.com/manwar/design-patterns/blob/1b6196fcc95cbab8d0e5c31e875473c20cb94648/14-iterator/lib/IteratorPattern.pm#L17

Такое разделение на get_next и next в Java нужно, т.к. типы Boolean и тип значения явно отличаются. А вот в Perl для подобного обычно используется undef...
источник

R

Roman in Modern::Perl
Если undef является допустимым значением, то has_next вполне годен. Ну или из next возвращать список: значение и признак конца
источник

DF

Denis F in Modern::Perl
Ну это уже конкретные издержки реализации. Принцип работы итератора от этого не меняется.
источник

a

allter in Modern::Perl
Да, но например из-за этого ни разу в проде не видел итератора с таким look-ahead. Это уже существенный нюанс
источник

R

Roman in Modern::Perl
if (exists $hash{$key}) {
 my $val = $hash{$key};

чем не пример
источник