Введение
Perl - мощный и выразительный язык программирования, который отлично подходит для обработки текста, системного администрирования и веб-разработки.
Почему Perl?
Perl имеет несколько преимуществ:
- Гибкость - “There’s more than one way to do it” (TMTOWTDI)
- Мощная работа с текстом - встроенные регулярные выражения
- Богатая экосистема - CPAN содержит тысячи готовых модулей
- Быстрая разработка - подходит для прототипирования и скриптинга
Основы синтаксиса
Переменные
В Perl есть три основных типа переменных:
# Скаляры (числа, строки)
my $name = "Сергей";
my $age = 30;
# Массивы
my @colors = ("красный", "зеленый", "синий");
# Хеши (ассоциативные массивы)
my %person = (
name => "Сергей",
age => 30,
city => "Москва"
);
Управляющие структуры
# Условия
if ($age >= 18) {
print "Совершеннолетний\n";
} else {
print "Несовершеннолетний\n";
}
# Циклы
foreach my $color (@colors) {
print "Цвет: $color\n";
}
# While цикл
my $i = 0;
while ($i < 10) {
print "$i\n";
$i++;
}
Подпрограммы (функции)
sub greet {
my ($name) = @_;
return "Привет, $name!";
}
my $greeting = greet("Сергей");
print "$greeting\n";
Работа с регулярными выражениями
Одна из самых сильных сторон Perl - работа с регулярными выражениями:
my $text = "Мой email: mail@sklukin.ru";
# Поиск
if ($text =~ /(\w+@\w+\.\w+)/) {
print "Найден email: $1\n";
}
# Замена
$text =~ s/email/адрес электронной почты/;
print "$text\n";
Веб-разработка с Mojolicious
Perl отлично подходит для веб-разработки. Один из лучших фреймворков - Mojolicious:
use Mojolicious::Lite;
get '/' => sub {
my $c = shift;
$c->render(text => 'Привет, мир!');
};
app->start;
Полезные ресурсы
- perldoc.perl.org - официальная документация
- CPAN - архив модулей Perl
- Mojolicious - современный веб-фреймворк
Заключение
Perl - это мощный и практичный язык, который отлично подходит для множества задач. Несмотря на возраст, он остается актуальным благодаря своей выразительности и богатой экосистеме.
В следующих статьях мы более подробно рассмотрим различные аспекты Perl и веб-разработки с Mojolicious.
Вопросы? Пишите на mail@sklukin.ru
