0 added
0 removed
Original
2026-01-01
Modified
2026-03-10
1
<ul><li><a>Описание</a></li>
1
<ul><li><a>Описание</a></li>
2
<li><a>Преимущества и недостатки Перла</a><ul><li><a>Сильные стороны</a></li>
2
<li><a>Преимущества и недостатки Перла</a><ul><li><a>Сильные стороны</a></li>
3
<li><a>Слабые стороны</a></li>
3
<li><a>Слабые стороны</a></li>
4
</ul></li>
4
</ul></li>
5
<li><a>Сферы применения</a></li>
5
<li><a>Сферы применения</a></li>
6
<li><a>Вопросы востребованности</a></li>
6
<li><a>Вопросы востребованности</a></li>
7
<li><a>Синтаксис</a></li>
7
<li><a>Синтаксис</a></li>
8
<li><a>Среды реализации</a></li>
8
<li><a>Среды реализации</a></li>
9
<li><a>IDE в Perl</a><ul><li><a>Padre</a></li>
9
<li><a>IDE в Perl</a><ul><li><a>Padre</a></li>
10
<li><a>EPIC</a></li>
10
<li><a>EPIC</a></li>
11
</ul></li>
11
</ul></li>
12
<li><a>Текстовые редакторы</a></li>
12
<li><a>Текстовые редакторы</a></li>
13
</ul><p>В 1987 году появился язык Perl. Он не входит в число самых популярных средств разработки 21 века, но это не значит, что он не востребован. На этом языке пишется немало проектов. Далее предстоит разобраться с Perl более подробно.</p>
13
</ul><p>В 1987 году появился язык Perl. Он не входит в число самых популярных средств разработки 21 века, но это не значит, что он не востребован. На этом языке пишется немало проектов. Далее предстоит разобраться с Perl более подробно.</p>
14
<h2>Описание</h2>
14
<h2>Описание</h2>
15
<p>Язык Perl - это высокоуровневый интерпретируемый динамический язык программирования общего назначения. Его создал Ларри Уолл. Он представляет собой символьную систему, созданную специально для обработки и машинного кодирования текстовых документов.</p>
15
<p>Язык Perl - это высокоуровневый интерпретируемый динамический язык программирования общего назначения. Его создал Ларри Уолл. Он представляет собой символьную систему, созданную специально для обработки и машинного кодирования текстовых документов.</p>
16
<p>По мере развития Perl начал расширять свою функциональность. Он стал широко применяться в:</p>
16
<p>По мере развития Perl начал расширять свою функциональность. Он стал широко применяться в:</p>
17
<ul><li>администрировании сетей;</li>
17
<ul><li>администрировании сетей;</li>
18
<li>создании сайтов;</li>
18
<li>создании сайтов;</li>
19
<li>разработке всевозможных приложений;</li>
19
<li>разработке всевозможных приложений;</li>
20
<li>биоинформатике;</li>
20
<li>биоинформатике;</li>
21
<li>создании пользовательских графических интерфейсов.</li>
21
<li>создании пользовательских графических интерфейсов.</li>
22
</ul><p>Perl - практичный и полный язык, но его синтаксис трудно назвать элегантным. Умеет поддерживать нормы и идеи программирования, обеспечивать контроль памяти и обладает широким спектром модулей для работы с тестовыми файлами от сторонних программистов.</p>
22
</ul><p>Perl - практичный и полный язык, но его синтаксис трудно назвать элегантным. Умеет поддерживать нормы и идеи программирования, обеспечивать контроль памяти и обладает широким спектром модулей для работы с тестовыми файлами от сторонних программистов.</p>
23
<p>Perl характеризуется как язык, который заимствует компоненты других ЯП. Для маркировки тут используются ведущие знаки, явно выражающие тип переменных. Умеет работать с массивами LIST Processing Language, а также с построчным набором AWK и регулярные выражения из C-подобной скриптовой системы.</p>
23
<p>Perl характеризуется как язык, который заимствует компоненты других ЯП. Для маркировки тут используются ведущие знаки, явно выражающие тип переменных. Умеет работать с массивами LIST Processing Language, а также с построчным набором AWK и регулярные выражения из C-подобной скриптовой системы.</p>
24
<h2>Преимущества и недостатки Перла</h2>
24
<h2>Преимущества и недостатки Перла</h2>
25
<p>Язык программирования Perl - это средство быстрых операций с текстом. Он подходит для парсинга и других манипуляций. Не рекомендуется в качестве первого знакомства с программированием.</p>
25
<p>Язык программирования Perl - это средство быстрых операций с текстом. Он подходит для парсинга и других манипуляций. Не рекомендуется в качестве первого знакомства с программированием.</p>
26
<h3>Сильные стороны</h3>
26
<h3>Сильные стороны</h3>
27
<p>Перл имеет следующие преимущества:</p>
27
<p>Перл имеет следующие преимущества:</p>
28
<ul><li>встроенные инструменты, необходимые для обработки сложных структур;</li>
28
<ul><li>встроенные инструменты, необходимые для обработки сложных структур;</li>
29
<li>широкий спектр базовых (встроенных) модулей;</li>
29
<li>широкий спектр базовых (встроенных) модулей;</li>
30
<li>поддержка работы с регулярными выражениями;</li>
30
<li>поддержка работы с регулярными выражениями;</li>
31
<li>свободные наборы правил, необходимые для описания символьных комбинаций (одна и та же задача может решаться несколькими способами);</li>
31
<li>свободные наборы правил, необходимые для описания символьных комбинаций (одна и та же задача может решаться несколькими способами);</li>
32
<li>наличие простых методов обработки крупных информационных массивов;</li>
32
<li>наличие простых методов обработки крупных информационных массивов;</li>
33
<li>поддержка объектно-ориентированных стилей и функционального программирования;</li>
33
<li>поддержка объектно-ориентированных стилей и функционального программирования;</li>
34
<li>скорость работы;</li>
34
<li>скорость работы;</li>
35
<li>кроссплатформенность - используется для работы с несколькими операционными системами.</li>
35
<li>кроссплатформенность - используется для работы с несколькими операционными системами.</li>
36
</ul><p>Перл умеет обрабатывать скриптовые коды. Program на нем будут выглядеть одинаково как до, так и после RSA-шифрования. Неформально Перл называют "скотчем для интернета", потому что он соединяет веб-проекты, написанные на самых разных ЯП.</p>
36
</ul><p>Перл умеет обрабатывать скриптовые коды. Program на нем будут выглядеть одинаково как до, так и после RSA-шифрования. Неформально Перл называют "скотчем для интернета", потому что он соединяет веб-проекты, написанные на самых разных ЯП.</p>
37
<h3>Слабые стороны</h3>
37
<h3>Слабые стороны</h3>
38
<p>Язык Perl также имеет недостатки. К ним относят:</p>
38
<p>Язык Perl также имеет недостатки. К ним относят:</p>
39
<ul><li>сложности работы с модулями, особенно у новичков и в крупных проектах;</li>
39
<ul><li>сложности работы с модулями, особенно у новичков и в крупных проектах;</li>
40
<li>содержание подходов к programming, которые в 21 веке являются устаревшими;</li>
40
<li>содержание подходов к programming, которые в 21 веке являются устаревшими;</li>
41
<li>не самый простой синтаксис;</li>
41
<li>не самый простой синтаксис;</li>
42
<li>плохая поддержка;</li>
42
<li>плохая поддержка;</li>
43
<li>вольная трактовка операторов сравнения;</li>
43
<li>вольная трактовка операторов сравнения;</li>
44
<li>особо объемные комбинации специальных символов;</li>
44
<li>особо объемные комбинации специальных символов;</li>
45
<li>небольшой спрос - популярность Перл падает;</li>
45
<li>небольшой спрос - популярность Перл падает;</li>
46
<li>сложности понимания написанного кода и принципов его работы.</li>
46
<li>сложности понимания написанного кода и принципов его работы.</li>
47
</ul><p>Перл не подходит новичкам. Начинать с него изучение разработки программного обеспечения не рекомендуется. В сравнении с ним PHP является более простым и понятным. Пользоваться Perl можно уже более опытным разработчикам. Порог вхождения в соответствующий язык достаточно широк.</p>
47
</ul><p>Перл не подходит новичкам. Начинать с него изучение разработки программного обеспечения не рекомендуется. В сравнении с ним PHP является более простым и понятным. Пользоваться Perl можно уже более опытным разработчикам. Порог вхождения в соответствующий язык достаточно широк.</p>
48
<h2>Сферы применения</h2>
48
<h2>Сферы применения</h2>
49
<p>Perl - язык, который подходит для автоматизации работы устройства и преобразования данных. Это не просто programming language, а настоящий помощник администрирования компьютерных сетей и веб-приложений.</p>
49
<p>Perl - язык, который подходит для автоматизации работы устройства и преобразования данных. Это не просто programming language, а настоящий помощник администрирования компьютерных сетей и веб-приложений.</p>
50
<p>Широко применяется в самых разных областях:</p>
50
<p>Широко применяется в самых разных областях:</p>
51
<ol><li>Системное программирование. Сюда относится работа с учетными пользовательскими записями в сетях любой сложности и конфигурации. Perl помогает администрировать не только сети, но и пользователей в пределах компании. Он подойдет для автоматизации рутинных операций - налаживание резервного копирования по установленному расписанию, отправка писем с отчетами определенной периодичности, сбор и обработка, а также анализ разнообразных данных.</li>
51
<ol><li>Системное программирование. Сюда относится работа с учетными пользовательскими записями в сетях любой сложности и конфигурации. Perl помогает администрировать не только сети, но и пользователей в пределах компании. Он подойдет для автоматизации рутинных операций - налаживание резервного копирования по установленному расписанию, отправка писем с отчетами определенной периодичности, сбор и обработка, а также анализ разнообразных данных.</li>
52
<li>CGI Scripting. Perl помогает обрабатывать скрипт любой сложности, если речь идет о scripts для обмена информации в связке клиент-сервер. Для данного языка нет никакой значимости, в каком виде сведения будут входить и выходить. Перл будет проводить преобразования данных в нужный вид, а затем отправлять их из одного сервиса прямо в другой.</li>
52
<li>CGI Scripting. Perl помогает обрабатывать скрипт любой сложности, если речь идет о scripts для обмена информации в связке клиент-сервер. Для данного языка нет никакой значимости, в каком виде сведения будут входить и выходить. Перл будет проводить преобразования данных в нужный вид, а затем отправлять их из одного сервиса прямо в другой.</li>
53
<li>Объединение сервисов и приложений. Данный язык позволяет программировать для связи различного обеспечения. Пример - существуют две программы. В первом выдается готовый результат в одном формате, во втором он необходим в другом. Perl решает эту задачу через script. Разработчик пишет скрипт, который запускает первое приложение, получает оттуда ответ-информацию, преобразовывает его в желаемую форму и отправляет во второе программное обеспечение.</li>
53
<li>Объединение сервисов и приложений. Данный язык позволяет программировать для связи различного обеспечения. Пример - существуют две программы. В первом выдается готовый результат в одном формате, во втором он необходим в другом. Perl решает эту задачу через script. Разработчик пишет скрипт, который запускает первое приложение, получает оттуда ответ-информацию, преобразовывает его в желаемую форму и отправляет во второе программное обеспечение.</li>
54
<li>Поддержка веб-узлов. Узел Web - это упорядоченное пространство, в котором хранятся все HTML-страницы, представленные файлами с текстом. Они должны быть сохранены в специальном формате, распознаваемым приложениями просмотра. Perl здесь используется для того, чтобы оптимизировать обработку множества соответствующих документов. Его средства позволяют анализировать и корректировать в автоматическом режиме содержимое web-узлов, а также для их удаления из HTML.</li>
54
<li>Поддержка веб-узлов. Узел Web - это упорядоченное пространство, в котором хранятся все HTML-страницы, представленные файлами с текстом. Они должны быть сохранены в специальном формате, распознаваемым приложениями просмотра. Perl здесь используется для того, чтобы оптимизировать обработку множества соответствующих документов. Его средства позволяют анализировать и корректировать в автоматическом режиме содержимое web-узлов, а также для их удаления из HTML.</li>
55
</ol><p>Для крупных игр и развлекательного программного обеспечения данный язык не подойдет. Он больше ориентирован на системную работу и клиент-серверные модели.</p>
55
</ol><p>Для крупных игр и развлекательного программного обеспечения данный язык не подойдет. Он больше ориентирован на системную работу и клиент-серверные модели.</p>
56
<h2>Вопросы востребованности</h2>
56
<h2>Вопросы востребованности</h2>
57
<p>Perl (раньше назывался как Pearl) остается востребованным. Связано это с тем, что в мире сохранились старые коды, которые все еще необходимо поддерживать. Приложения на языке Perl работают предсказуемое и стабильно, без сбоев и неполадок. Он до сих пор применяется при работе с Интернетом. Особо любим системными разработчиками.</p>
57
<p>Perl (раньше назывался как Pearl) остается востребованным. Связано это с тем, что в мире сохранились старые коды, которые все еще необходимо поддерживать. Приложения на языке Perl работают предсказуемое и стабильно, без сбоев и неполадок. Он до сих пор применяется при работе с Интернетом. Особо любим системными разработчиками.</p>
58
<p>Perl перетерпел множество изменений и стал более функциональным и удобным по сравнению со своими первыми наработками. "Обычными" программистами изучается редко. Пригодится тем, кто планирует работать с web-пространством. Только новые компании не занимаются разработкой проектов при помощи Perl. Они поддерживают старые приложения и работают именно с ними.</p>
58
<p>Perl перетерпел множество изменений и стал более функциональным и удобным по сравнению со своими первыми наработками. "Обычными" программистами изучается редко. Пригодится тем, кто планирует работать с web-пространством. Только новые компании не занимаются разработкой проектов при помощи Perl. Они поддерживают старые приложения и работают именно с ними.</p>
59
<p>Perl не является самым популярным языком разработки. Обладает высоким порогом входа, но может быть полезен для отдельных операций. Умершим его считать нельзя.</p>
59
<p>Perl не является самым популярным языком разработки. Обладает высоким порогом входа, но может быть полезен для отдельных операций. Умершим его считать нельзя.</p>
60
<h2>Синтаксис</h2>
60
<h2>Синтаксис</h2>
61
<p>Синтаксис Перла напоминает сразу несколько языков разработки:</p>
61
<p>Синтаксис Перла напоминает сразу несколько языков разработки:</p>
62
<ol><li>C. Из СИ он получил операторы присваивания, ряд типов данных и общую структуру команд. Является таким же гибким в плане использования переменных. Как и у C, имеет точку с запятыми в программном коде.</li>
62
<ol><li>C. Из СИ он получил операторы присваивания, ряд типов данных и общую структуру команд. Является таким же гибким в плане использования переменных. Как и у C, имеет точку с запятыми в программном коде.</li>
63
<li>Bourne Shell. Такое название имеет стандартная оболочка для работы с командными строками в UNIX-системах. Оттуда взят принцип формирования командных цепочек, а также передача параметров между операторами.</li>
63
<li>Bourne Shell. Такое название имеет стандартная оболочка для работы с командными строками в UNIX-системах. Оттуда взят принцип формирования командных цепочек, а также передача параметров между операторами.</li>
64
</ol><p>Переменные здесь выражаются особым образом. Они начинаются со специальных символов:</p>
64
</ol><p>Переменные здесь выражаются особым образом. Они начинаются со специальных символов:</p>
65
<ul><li>$ - число, ссылка или строчка;</li>
65
<ul><li>$ - число, ссылка или строчка;</li>
66
<li>@ - массив из переменных;</li>
66
<li>@ - массив из переменных;</li>
67
<li>& - функция (в Perl функции тоже выступают как переменные), которая получает те или иные аргументы, а затем возвращает значения.</li>
67
<li>& - функция (в Perl функции тоже выступают как переменные), которая получает те или иные аргументы, а затем возвращает значения.</li>
68
</ul><p>Условный оператор здесь будет иметь такой вид:</p>
68
</ul><p>Условный оператор здесь будет иметь такой вид:</p>
69
<p>Он напоминает C. Также имеется unless. Он представляет собой обратное условие ЕСЛИ:</p>
69
<p>Он напоминает C. Также имеется unless. Он представляет собой обратное условие ЕСЛИ:</p>
70
<p>Циклы тоже встречаются. Они будут выражаться точно также, как и в любом другом языке разработки:</p>
70
<p>Циклы тоже встречаются. Они будут выражаться точно также, как и в любом другом языке разработки:</p>
71
<p>Еще один способ выражения цикла напоминает реализацию в PHP. Он выглядит так:</p>
71
<p>Еще один способ выражения цикла напоминает реализацию в PHP. Он выглядит так:</p>
72
<p>Циклы с пост- и предусловием в данном языке реализованы по тем же принципам, что и в Pascal. Если разработчик знает Паскаль, он с легкостью разберется с петлями на Perl.</p>
72
<p>Циклы с пост- и предусловием в данном языке реализованы по тем же принципам, что и в Pascal. Если разработчик знает Паскаль, он с легкостью разберется с петлями на Perl.</p>
73
<p>Операторы присваивания и математические операторы похожи на любые С-подобные языки. Perl использует в своем синтаксисе точно такие же команды:</p>
73
<p>Операторы присваивания и математические операторы похожи на любые С-подобные языки. Perl использует в своем синтаксисе точно такие же команды:</p>
74
<p>Это - база, без которой невозможно изучить Перл. Стоит обратить внимание на среды исполнения перед углубленным рассмотрением языка.</p>
74
<p>Это - база, без которой невозможно изучить Перл. Стоит обратить внимание на среды исполнения перед углубленным рассмотрением языка.</p>
75
<h2>Среды реализации</h2>
75
<h2>Среды реализации</h2>
76
<p>Perl официально поддерживается всеми современными ведущими платформами - от Windows до Unix. Интегрирован в MacOS и Linux. Предустановленную версию среды уточнить получится через команду:</p>
76
<p>Perl официально поддерживается всеми современными ведущими платформами - от Windows до Unix. Интегрирован в MacOS и Linux. Предустановленную версию среды уточнить получится через команду:</p>
77
<p>Perl -v.</p>
77
<p>Perl -v.</p>
78
<p>Если на компьютере установлен Windows, придется отдельно скачать интерпретатор. Рекомендуется отдать предпочтение ActivePerl. Он является наиболее распространенным вариантом.</p>
78
<p>Если на компьютере установлен Windows, придется отдельно скачать интерпретатор. Рекомендуется отдать предпочтение ActivePerl. Он является наиболее распространенным вариантом.</p>
79
<h2>IDE в Perl</h2>
79
<h2>IDE в Perl</h2>
80
<p>Сред разработки у языка Perl не очень много. Связано это с тем, что он является не самым популярным. Далее будут представлены существующие IDE. Это относительно небольшое количество специализированных инструментов.</p>
80
<p>Сред разработки у языка Perl не очень много. Связано это с тем, что он является не самым популярным. Далее будут представлены существующие IDE. Это относительно небольшое количество специализированных инструментов.</p>
81
<h3>Padre</h3>
81
<h3>Padre</h3>
82
<p>Интерпретатор Perl может работать с Padre. Эта IDE имеет:</p>
82
<p>Интерпретатор Perl может работать с Padre. Эта IDE имеет:</p>
83
<ul><li>маленький вес;</li>
83
<ul><li>маленький вес;</li>
84
<li>ориентированность непосредственно на язык;</li>
84
<li>ориентированность непосредственно на язык;</li>
85
<li>успех при изучении новичками;</li>
85
<li>успех при изучении новичками;</li>
86
<li>традиционную подсветку синтаксиса и автодополнения;</li>
86
<li>традиционную подсветку синтаксиса и автодополнения;</li>
87
<li>встроенные инструменты рефакторинга;</li>
87
<li>встроенные инструменты рефакторинга;</li>
88
<li>код, написанный на Perl 5.</li>
88
<li>код, написанный на Perl 5.</li>
89
</ul><p>Неплохой вариант для написания приложений, в котором нет ничего лишнего.</p>
89
</ul><p>Неплохой вариант для написания приложений, в котором нет ничего лишнего.</p>
90
<h3>EPIC</h3>
90
<h3>EPIC</h3>
91
<p>Среда программирования, базирующаяся на Eclipse. Она больше подходит уже опытным разработчикам - тем, кто хочет углубить в особенности Perl-программирования. Поддерживается основными платформами. Имеет более широкий функционал:</p>
91
<p>Среда программирования, базирующаяся на Eclipse. Она больше подходит уже опытным разработчикам - тем, кто хочет углубить в особенности Perl-программирования. Поддерживается основными платформами. Имеет более широкий функционал:</p>
92
<ul><li>навигация по краткой документации;</li>
92
<ul><li>навигация по краткой документации;</li>
93
<li>поддержка инспекции переменных;</li>
93
<li>поддержка инспекции переменных;</li>
94
<li>средства отладки (после инициализации специального дополнительного модуля).</li>
94
<li>средства отладки (после инициализации специального дополнительного модуля).</li>
95
</ul><p>Для успешной работы на устройстве необходимо установить Eclipse не ниже версии 3.6, а также среду реализации Java (JRE). Интерпретатор тоже потребуется. Без всего этого IDE работать не будет.</p>
95
</ul><p>Для успешной работы на устройстве необходимо установить Eclipse не ниже версии 3.6, а также среду реализации Java (JRE). Интерпретатор тоже потребуется. Без всего этого IDE работать не будет.</p>
96
<h2>Текстовые редакторы</h2>
96
<h2>Текстовые редакторы</h2>
97
<p>Perl имеет множество мультиплатформенных текстовых редакторов на выбор. Особое внимание рекомендуется уделить:</p>
97
<p>Perl имеет множество мультиплатформенных текстовых редакторов на выбор. Особое внимание рекомендуется уделить:</p>
98
<ol><li>KomodoEdit. Это урезанная версия коммерческой среды разработки Komodo IDE. Она имеет подсветку синтаксиса, автодополнение, множественные курсоры. Использует в процессе работы подсказки из документации.</li>
98
<ol><li>KomodoEdit. Это урезанная версия коммерческой среды разработки Komodo IDE. Она имеет подсветку синтаксиса, автодополнение, множественные курсоры. Использует в процессе работы подсказки из документации.</li>
99
<li>Vim - текстовый редактор, который поддерживает подсветку синтаксиса. Привычен для тех, кто использует MacOS и Unix-системы.</li>
99
<li>Vim - текстовый редактор, который поддерживает подсветку синтаксиса. Привычен для тех, кто использует MacOS и Unix-системы.</li>
100
<li>Sublime Text. Наиболее популярный инструмент редактирования исходного кода. Подсвечивает синтаксис и имеет автодополнение. Функционал здесь расширяется при помощи огромного количества плагинов.</li>
100
<li>Sublime Text. Наиболее популярный инструмент редактирования исходного кода. Подсвечивает синтаксис и имеет автодополнение. Функционал здесь расширяется при помощи огромного количества плагинов.</li>
101
<li>Notepad++. Простой и легкий текстовый редактор. Работает корректно и стабильно. Подсвечивает синтаксис. Функциональные возможности расширяются за счет плагинов, но для Perl их относительно мало.</li>
101
<li>Notepad++. Простой и легкий текстовый редактор. Работает корректно и стабильно. Подсвечивает синтаксис. Функциональные возможности расширяются за счет плагинов, но для Perl их относительно мало.</li>
102
</ol><p>Чтобы программировать на Перл и ничего не устанавливать на устройство дополнительно, можно использовать сервис CodeGround. Он предоставляет доступ к онлайн-средам разработки с базовым функционалом большинства ЯП. Perl в их число тоже входит.</p>
102
</ol><p>Чтобы программировать на Перл и ничего не устанавливать на устройство дополнительно, можно использовать сервис CodeGround. Он предоставляет доступ к онлайн-средам разработки с базовым функционалом большинства ЯП. Perl в их число тоже входит.</p>
103
<p>Интересует программирование? Обратите внимание на курсы<a><em>Otus</em></a><em>!</em> </p>
103
<p>Интересует программирование? Обратите внимание на курсы<a><em>Otus</em></a><em>!</em> </p>
104
104