Целесообразно или нет отделять все общие подпрограммы в другом файле в Perl?

Я хочу разделить все общие подпрограммы в другом файле, чтобы сэкономить место и привести в порядок каждый файл. Затем просто используйте require() для вызова подпрограммы.

напр.

sub greet{
     print "Hi there\n";
}

которые я добавил и назвал в Script1.pl, Script2.pl и Script3.pl.

Каковы плюсы и минусы разделения подпрограмм в другой файл?

Прошу прощения за мою грамматику. Надеюсь, вы поможете мне понять.


person quinekxi    schedule 12.07.2012    source источник
comment
Я этого не заметил. Я изменил его.   -  person quinekxi    schedule 12.07.2012


Ответы (1)


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

Итак, чтобы ответить на ваш конкретный вопрос о плюсах и минусах переноса функциональности в библиотеку, давайте начнем с

Плюсы

  1. Because you have less duplicate code it is easier to
    • Debug your code (fewer places for bugs to exist)
    • Обновите свой код (вам не нужно редактировать один и тот же функционал в 10 местах)
  2. Это упрощает совместное использование функций вашей библиотеки с другими людьми или просто с другими проектами.
  3. Это способствует лучшему дизайну, заставляя вас мыслить модульно.
  4. Экономит место (довольно незначительный момент, с современными носителями)

Минусы

  1. Распространять ваш код сложнее — вы должны убедиться, что распространяете и все необходимые файлы.
  2. Не так просто увидеть весь код сразу — это проблема только для небольших проектов, где у вас даже есть возможность разместить весь проект на экране (или в голове) сразу.

Общее практическое правило: за исключением очень маленьких и/или автономных проектов, используйте библиотеки.

person Flimzy    schedule 12.07.2012
comment
Повторное правило: СУХОЙ - не повторяйся - person Zaid; 12.07.2012