Имеет ли Perl тип перечисления, который придерживается лучших практик или, что еще важнее, нуждается ли он в этом?
В проекте, в котором я работаю, все строки используются для обозначения вещей, которые обычно используют Enum на языке С#. Например, у нас есть набор телефонных номеров в массиве хэшей, каждый из которых связан с типом телефона ( "Главная", "Работа", "Мобильный" и т.д.):
$phone_number->{type} = 'Home';
Достаточно ли использовать здесь переменные только для чтения или использовать Enum? Я нашел модуль enum
в CPAN, но он, похоже, использует голые слова, которые нарушают один из Perl Best Practices. Мое мышление об использовании переменных только для чтения выглядит примерно так:
use Readonly;
Readonly my $HOME => 'Home';
Readonly my $WORK => 'Work';
Readonly my $MOBILE => 'Mobile';
$phone_number->{type} = $HOME;
Это хороший подход или есть лучший способ?