Поиск

Сеть полного архива Perl (CPAN)

С целью еще большего расширения среды разработки в Perl предусмотрены дополнительные модули, которые содержатся в CPAN (Comprehensive Perl Archive Network).

Что это такое?

Сеть полного архива Perl (Comprehensive Perl Archive Network— CPAN) — это большая коллекция программного обеспечения и документации к Perl. Это программное обеспечение — плод совместных усилий добровольцев, которые захотели внести свой вклад в работу сообщества Perl и написали различные модули, программы и документацию.

Список модулей, имеющихся в CPAN, очень обширный. На момент написания этой книги сеть CPAN существовала, приблизительно четыре года и в ней имелось свыше 3500 готовых к инсталляции модулей. Эти модули охватывают широкий диапазон программистских задач. В табл. 16.2 приведен краткий список данных модулей, который даст вам представление о том, что имеется в CPAN.

Нужно иметь в виду самое важное — для большинства задач уже есть модули, позволяющие решить их хотя бы частично. Эти решения, имеющиеся в CPAN, были запрограммированы и протестированы; многие программисты проверяли эти коды и оценивали степень их полноты и корректности.

На все модули, имеющиеся в CPAN, распространяются авторские права их авторов. Поэтому следует прочитать файл КЕЙСМЦ который есть в каждом модуле, чтобы узнать, на каких условиях можно использовать данный модуль. Чаще всего эти модули распространяются на таких же условиях, каки сам Perl, по лицензии Artistic License или GNU General Public License.

CPAN — это также имя стандартного модуля, который используется как вспомогательный при инсталляции дополнительных модулей в имеющуюся версию Perl. Этот модуль CPAN описан в приложении к этой книге "Инсталляция модулей в Perl".

Почему люди вносят свой вклад в работу сообщества Perl?

За последние полвека, когда родилась и начала бурно развиваться компьютерная индустрия, программисты снова и снова решали одни и те же задачи. Поиск, сортировка, передача информации, чтение, запись — эти задачи мало чем изменились с 50-х годов XX столетия. Некоторые книги по теории компьютерного программирования и управления даже спустя 20 или 30 лет по-прежнему актуальны.

Решение одних и тех же проблем снова и снова не всегда интересно и часто приводит к менее удачным решениям; это называется "изобретать велосипед". И, в конце концов, программистами движет стремление решать интересные задачи.

Очень типичной является ситуация, когда программист тратит много времени и сил на решение сложной задачи только для того, чтобы впоследствии обнаружить, что давно существует гораздо более простое и изящное решение. Пережив подобное разочарование, программисты начинают искать способы обмена программами друг с другом. Система совместного использования программ имеет интересный побочный эффект — качество программ повышается, поскольку другие программисты могут найти в вашей программе недостатки, которые вы не заметили.

CPAN — это попытка сообщества Perl избежать ненужней работы. Модули, находящиеся здесь, должны уберечь вас от разочарования, неизбежно возникающего при повторном изобретении чьего-то "велосипеда".

Качество большинства этих модулей также очень высокое, потому что они, как и Perl, разрабатывались на условиях модели открытого кода. Когда вы устанавливаете модуль на своем компьютере, то автоматически получаете его исходный код. Вы сами можете изучить его и — на основе лицензии — использовать фрагменты исходного кода в своих программах, модифицировать исходный код и даже связаться с автором, если захотите предложить ему внести какие-либо изменения.

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