Должен ли я изучать Perl в качестве веб-разработчика?

Возможные дубликаты:
Должен ли я изучать Perl и почему?
Когда я должен использовать Perl CGI вместо PHP (или наоборот)?

Фон

В настоящее время я работаю веб-разработчиком и имею знания HTML, CSS, PHP, MySQL, JavaScript (главным образом через jQuery) и Ajax.

Недавно я вошел в мир Flash и ActionScript и наткнулся на какой-то Perl, который контролировал систему табло, редактируя текстовый файл.

Мой коллега также использовал Perl для записи script для резервного копирования наших баз данных MySQL каждый день и хранения их в Интернете. Он перешел, и мне было поручено поддерживать script. Таким образом, мне нужно будет изучить Perl.

Вопрос

Как веб-разработчик, используя вышеупомянутые языки и методы, Perl будет полезным дополнением к моей пресловутой панели инструментов, или есть ли более подходящий язык, чтобы узнать, что было бы более выгодным?

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

Ответ 1

Perl стоит изучать. Он не отстает от последних слов, за исключением того факта, что они не получают широкой рекламы за пределами сообщества Perl. Например, Catalyst Web Framework поддерживает свои темпы среди других доступных веб-фреймворков. Он имеет дополнительное преимущество в том, что модули Perl из CPAN могут использоваться. Лично я использовал Catalyst некоторое время, и мне это очень нравится.

Для изучения Perl существует множество онлайн-ресурсов. Вот несколько:

Изучение Perl - хорошая книга для начала.

Ответ 2

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

Похоже, у вас есть практическая потребность в "некоторых" Perl для улучшения этой резервной копии базы данных script. Я бы сделал ставку на ваш существующий фон, копию O'Reilly Perl в двух словах, и пару бесплатных вечеров вы могли бы выработать что он делает и как его улучшить. Если вам нравится, как Perl чувствует после этого, начните решать некоторые из ваших других проблем с помощью Perl. Использование этого немного каждый день - самый верный способ его изучения. Это займет время, хотя - не удивляйтесь, если вы все еще обнаруживаете "новые" способы сделать что-то годами позже.

Что касается вопроса "Является ли Perl полезным?". Множество людей используют его - я пишу это в лаборатории Bioinformatics, где Perl является языком выбора для хруста через горы генетических данных и построения веб-визуализации результатов.

Ваш вопрос привлек внимание к одному из предметов Джоэла по изучению новых навыков, которые стоит прочитать, если вы его раньше не видели: http://www.joelonsoftware.com/articles/LordPalmerston.html

Ответ 3

Подъем Moose, Catalyst и DBIx:: Class дают прекрасное время для входа в Perl.

Ответ 4

Да, каждый должен изучать Perl.

Будет ли Perl напрямую влиять на вашу работу в качестве веб-разработчика? Возможно нет. Является Perl идеальным языком для веб-приложений? Возможно нет. И я говорю это как профессиональный разработчик Perl.

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

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

Perl далеко не бесполезен. Даже окунание ног в нее принесет большую пользу, просто потому, что Perl подобен (удобный, мощный и т.д.).

Ответ 5

Вы должны узнать что-нибудь новое, если думаете, что это поможет вам в ваших проектах или работе. Даже если вы касаетесь только небольшой части Perl, это, вероятно, поможет вам стать лучше. Я не говорю, что вы должны все узнать, но обучение - это хорошо. Это гораздо полезнее, чем смотреть телевизор:)

Ответ 6

Вы просто не можете победить perl, когда дело доходит до сценариев обслуживания, и с небольшим знакомством, которое он разделяет с Php (Php был сильно вдохновлен perl в раннем детстве) не должно быть неудобно учиться.

Без проблем, если вы серьезно относитесь к веб-разработке, мое мнение (хотя бы для части обслуживания).

Ответ 7

Perl - еще один инструмент для выполнения работы. Если вам нужно понять кого-то perl script, вам, очевидно, нужно будет изучить его.

Кроме того, трудно сказать, нужен ли вам это как веб-разработчик, так как существует множество инструментов для веб-разработки. Perl имеет так много применений, и веб-разработка - это всего лишь одно. Решение использовать это субъективно, если в этом нет необходимости.

Лично я бы не стал слишком тонким, пытаясь изучить все возможные инструменты веб-разработки, хотя приблизительное знание скриптов Perl может быть особенно полезно в Unix, поскольку вы столкнетесь с ними за пределами простой веб-разработки.

Ответ 8

нет.

Сортировка шуток - действительно, вы должны - но ИМХО, вы не должны придавать ей никакого приоритета. Ответ прост: Perl в настоящее время невелик в использовании Интернета из-за мотива: синтаксис (очень) богатый и много способов выразить что-то делает приложения Perl очень трудно поддерживать. Это означает, что даже через некоторое время можно прочитать один собственный код.

Итак, для создания долгосрочных поддерживаемых приложений вы должны сосредоточиться на языке, который делает то же самое: с нетерпением ожидайте поддерживаемые приложения. Мое личное предпочтение - Python, в котором явно говорится о его принципах "Чтение счетчиков". Он обладает богатой библиотечной средой, такой как Perl, и достаточно выразителен, чтобы предоставить вам любые текстовые преобразования или трюки, которые можно выполнить в загадочном выражении Perl в 2 или 3 очень читаемых строках кода.

Я не хочу плавать здесь, не стесняйтесь менять "Python" выше для любого языка, который уделяет приоритетное внимание выполнению, сохраняя удобочитаемость.

Тем не менее, теперь мотивы для Perl: есть много устаревшего кода, который вы могли бы извлечь из того, что сможете читать и повторно использовать. Приятно взломать встроенные тэки преобразования текста, чтобы ваш код казался волшебным. И способ мышления в Perl может добавить к вашим навыкам и идеям кода даже для производства на других языках.

Итак, изучите HTML, CSS, JavaScript, а затем язык производства для своих приложений: Python, PHP, Ruby, Java и т.д., затем, как второй (третий, четвертый) язык, изучите Perl, чтобы иметь возможность развивать некоторые трюки и "учиться с прошлым"

Ответ 9

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

Если бы я выбирал без какого-либо проектного смещения, моим личным выбором был бы Python; это проще, для меня.

Perl будет хорошо служить вам. Учиться.: -)

Ответ 10

Да, вы должны изучить Perl по одной причине: mod_perl. mod_perl предоставляет весь API apache для perl, позволяя вам делать сумасшедшие вещи на любом уровне внутренних компонентов Apache. Если вы действительно хотите контролировать то, что происходит на веб-сервере, ваши параметры mod_perl или кодирование непосредственно на C. Никакая другая веб-технология действительно не сравнивается.

Если вы действительно не хотите, чтобы это близко к веб-серверу, тогда ответ по-прежнему да, но гораздо более сдержанный да; Вы должны изучить столько языков, сколько сможете, чтобы вы могли работать в любой среде. Ключевым элементом веб-разработки является понимание базовых веб-технологий: HTTP, HTML, CSS и Javascript. На каком языке вы генерируете свой результат, почти бессмысленно. Так изучите Perl; Также изучите Python, Ruby, Visual Basic.Net, С#, классический ASP, Java...

Ответ 11

Я очень уважаю Perl и считаю это полезным инструментом и хорошим языком для изучения. Тем не менее, я хотел бы добавить свою точку зрения: я был веб-разработчиком уже семь лет, с реальными задачами администрирования сервера (хотя и не назвав себя экспертом или администратором Linux), я не говорю о Perl, и мне никогда не нужно было Это. Под этим я подразумеваю, что я никогда не мог выполнить задачу - будь то в разработке или обслуживании - из-за моего незнания Perl.

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

Является ли это вообще полезным дополнением к каждому веб-инструменту разработчика? Почему, абсолютно. Я хочу, чтобы это произошло в один прекрасный день.

Ответ 12

почему бы и нет?

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

  • Ruby - у меня есть только поверхностные знания Perl, но на основе сравнений, которые я могу сделать, я бы сказал, что Ruby - гораздо более радикальный, гибкий и волшебный язык. Это способствует объектной ориентации, в отличие от любого другого языка, который я когда-либо использовал (это говорит о том, что вы, возможно, захотите узнать малое, по крайней мере, мой план для будущего будущего). Там действительно классное введение в язык > здесь < (вы действительно можете прочитать предисловие). За исключением фанкового синтаксиса, Perl мало что может предложить, Ruby еще нет, но Ruby on Rails, вероятно, является одной из самых продуктивных серверных фреймворков.
  • haXe - глядя на то, что вы сделали до сих пор, это должно быть ваше оружие выбора. Я мог бы объяснить подробно, но я бы порекомендовал вас, чтобы просто дать ему шанс. Если вы действительно хотите иметь некоторые причины для его использования, вы должны посмотреть > здесь <. Единственная причина, по которой я могу вам помочь, - это то, что haXe был разработан, чтобы быть выразительным и эффективным языком, и создатели и сопровождающие лица - все люди, которые его используют и продвигают вперед в удивительном темпе. Все приведенные причины, почему haXe настолько велика, могут показаться неуместными, но вы действительно будете благодарны, если вы изучите язык. Мне потребовалось 2-3 месяца, чтобы устроиться с ним (я исхожу из фонового рисунка), но теперь я бы не переключился даже на деньги.
  • go - возможно, главная причина: он поддерживается гигантом. И если такая компания, как google, создает язык, я полагаю, что он очень подходит для развития серверов. Это определенно в моем списке.

Ответ 13

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

В Perl были незначительные отличия, которые я не видел на других языках (контекст списка). Некоторые функции, такие как inline regex (похожие на ActionScript/JS), были более приятными (краткими), чем подход PHP. С другой стороны, некоторые вещи чувствовали себя как cludge, например передавая аргументы массива по ссылке, поэтому его можно изменить в своей подпрограмме.

Мне нужно согласиться с jsbueno, хотя для меня у Perl слишком много способов выполнить ту же задачу. Повторное использование собственного кода, не говоря уже о наследовании других разработчиков, может немного поцарапать вашу голову, пока вы акклиматизируете их стиль. Python больше обращается к тем же причинам, что и jsbueno.

Ответ 14

Вместо этого я бы рассмотрел Python. Его легко учиться и имеет огромную стандартную библиотеку. Он также поддерживается в Google App Engine. Python также является хорошим "обучающим" языком из-за его чистого и удобочитаемого кода.