воскресенье, 8 марта 2015 г.

CGI программирование на Perl

Прочитал недавно книжку, посвящённую разработке веб-приложений на Perl: Скотт Гулич, Шишир Гундаварам, Гюнтер Бирзнекс “CGI-программирование на Perl, 2-е издание”.



Perl в наше время не столь популярен, как PHP, Python или Ruby, поэтому новых книг по нему практически не издаётся. В основном выпускаются переиздания уже давно зарекомендовавших себя книг, которые хорошо продаются. В общем, я собрал все доступные книги по Perl, одной из которых оказалась эта книга. Кстати, эта книга - тоже дополнительный тираж книги 2001 года, выпущенный в 2013 году.

Что можно сказать о книге? Ожидать многого от книги, посвящённой веб-разработке и вышедшей в 2001 году, не приходится. Понятно, что многое из описанного в книге устарело. Книга была написана в эпоху, когда веб-приложения на Perl писались с использованием модуля CGI или с использованием Apache и mod_perl. Книга акцентирует внимание на программировании с использованием модуля CGI, довольно поверхностно и вскользь описывает преимущества FastCGI и mod_perl. В ней нет ни слова о PSGI, Plack, Catalyst, Mojolicious, Dancer и Dancer2, которые являются современными технологиями веб-разработки на Perl.

В то же время нельзя сказать и что книга совершенно бесполезна. Значительное количество текста посвящено вопросам безопасности в веб-программировании. Подробно рассматриваются возможные механизмы поддержки сеансов (сейчас общепринято использовать для этого механизм Cookie, который поддерживается всеми современными браузерами), описываются методы увеличения удобства веб-приложений за счёт использования Javascript. Особенно полезными мне показались разделы, посвящённые модулю GD для генерации картинок и использованию XML. Наконец-то хоть кто-то смог простым языком объяснить сильные стороны XML. В общем-то, после прочтения главы об XML я понял, что не имеет особого смысла использовать XML без DTD, то есть описания структуры документа, при помощи которой можно в значительной мере защититься от возможных проблем.

В отличие от большинства современных книг, посвящённых веб-разработке, эта книга практически не касается SQL. Гораздо больше внимания в ней уделяется вопросам блокировки файлов с данными для поддержания их целостности. Хранить данные в файлах может показаться старомодным чудачеством, однако, на мой взгляд, довольно часто СУБД и SQL могут оказаться избыточными, не говоря о вездесущем использовании ORM по делу и без дела! Но если в книге не упоминаются альтернативы SQL, то у новичков формируется ложный стереотип о том, что любое веб-приложение должно использовать базу данных. А у людей, начинающих веб-программирование сразу с освоения Django или Rails и вовсе может сформироваться чувство, что не бывает веб-приложений, не использующих ORM.

Комментариев нет:

Отправить комментарий