The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Представлен Mojolicious 1.0, MVC web-фреймворк на языке Perl от создателя Catalyst

29.12.2010 22:57

Увидел свет первый стабильный релиз проекта Mojolicious, в рамках которого создан современный фреймворк для разработки web-приложений на языке Perl в соответствии с архитектурой MVC (Model-View-Controller). Фреймворк зрелый и продуманный, так как его автор, будучи создателем достаточно известного фреймворка Catalyst, учел в новом проекте накопленный опыт. С одной стороны Mojolicious достаточно прост в освоении (для незамысловатых проектов доступен упрощенный вариант Mojolicious::Lite), а с другой - построен на пике современных технологий, например, поддерживает Websockets, Ajax, асинхронный ввод/вывод, RESTful-процедуры и т.п.

По заявлению основателя проекта, Mojolicious является попыткой возродить интерес к языку Perl среди разработчиков приложений, как было во времена появления модуля CGI. Пять лет назад в ответ на появление технологии Ajax был создан фреймворк Catalyst, в нынешнее время мир стоит на пороге революции технологий HTML5. Возможности браузеров возросли и ранее реализуемая на стороне сервера логика все больше переносится на клиентскую сторону. Появилось несколько принципиально новых подходов в работе web-приложений, таких как возможность организации полноценного двунаправленного обмена данными с сервером (WebSocket API), поддержка выполнения web-приложений в offline-режиме и более тесная интеграция JavaScript.

Особенности Mojolicious:

  • Поддержка из коробки: плагинов, шаблонов с возможностью вставки perl-операторов, подписанных cookies, I18N, полная поддержка unicode;
  • Встроенные механизмы управления сессиями;
  • Доступен отдельный фреймворк для тестирования web-приложений;
  • Чистый, легко портируемый и объектно-ориентированный API;
  • Пакет является самодостаточным и не требует для своей работы каких либо зависимостей, кроме Perl 5.8.7 (тем не менее некоторые опциональные функции могут потребовать установки дополнительных модулей из CPAN);
  • Встроенная реализация клиента и сервера для HTTP 1.1 и WebSocket, с поддержкой TLS, Bonjour, IDNA, Comet (длительный пулинг), chunking и multipart;
  • Встроенный web-сервер для организации асинхронного ввода/вывода, поддерживающий epoll, kqueue и UNIX domain sockets. В простейшем случае для развертывания web-проекта на базе Mojolicious достаточно наличия интерпретатора Perl. При этом фреймворк является многоплатформенным и поддерживает не только Unix-подобные ОС, но и Windows;
  • Автоматическое определение доступности режимов CGI, FastCGI и PSGI;
  • Встроенный парсер JSON и XML/HTML5 с поддержкой CSS3 селекторов.


  1. Главная ссылка к новости (http://blog.kraih.com/mojolici...)
  2. Mojolicious на CPAN
Лицензия: CC-BY
Тип: Программы
Короткая ссылка: https://opennet.ru/29156-perl
Ключевые слова: perl, web, mvc, mojolicious
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение (31) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Anon (ok), 23:14, 29/12/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Звучит вкусно.

    >Чистый, легко портируемый и объектно-ориентированный API, не требующий для своей работы каких либо зависимостей, кроме Perl 5.8.7.

    Как API может требовать какие-то зависимости? API это лишь интерфейс. А зависимости может требовать только его реализация.

     
     
  • 2.2, sergey.wolf (?), 23:46, 29/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Видимо имеется ввиду что "эта хрень не требует никаких дополнительных либ".
    Может переводчик ошибся а может автор решил свалить 2 достоинства в одну кучу
     
     
  • 3.9, nagual (ok), 10:08, 30/12/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Видимо имеется ввиду что "эта хрень не требует никаких дополнительных либ".
    > Может переводчик ошибся а может автор решил свалить 2 достоинства в одну
    > кучу

    В отличии от POE HTTP клиента модж клиент автоматом подхватывал и перекодировал кодировки ...

     

  • 1.3, filosofem (ok), 00:34, 30/12/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Когда же на Perl 6 портировать будут? Отсутствие лишних зависимостей должно способствовать.
     
     
  • 2.4, Аноним (-), 00:47, 30/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Очевидно сразу как Perl6 станет нужен ... :)
     
  • 2.5, angra (ok), 02:12, 30/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Наверное когда rakudo сможет выполнить "push @a,$_ for 1..100" хотя бы за 3мс вместо 30с как сейчас. Пока оно абсолютно неюзабельно на практике.
     
     
  • 3.13, anonymous (??), 11:55, 30/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    #!/usr/bin/perl6
    use v6;
    my @a;
    push @a,$_ for 1..100;


    #time ./perl6.pl
    ./perl6.pl  0.88s user 0.10s system 99% cpu 0.974 total

    не вижу тут 30c, и основное время выполнения он затратил на компиляцию, так что если в скомпилить в байткод, то будет быстрее

     
     
  • 4.20, angra (ok), 00:54, 31/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    А что именно у вас используется в качестве /usr/bin/perl6 ?
     
  • 2.6, Аноним (-), 02:12, 30/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Когда мир будет готов к Perl6. Терпение, мой друг.
     
     
  • 3.7, Аноним (-), 05:38, 30/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Ну чтож ... еще 100 - для нас не проблема. :)

    Хотя ... вот 5-ка как все не орут мол труп - кому надо пользуют и пилят, обновления в CPAN'е идут ровным потоком ... А 6-ка просто никому не нужна. И не надо ля-ля про "мир не готов" - мир даже всякую инопланетную хрень типа *ML, *lisp, Haskell, Racket & что -там-еще - юзает. И сами системы развивают и либы все новые и новые и на новые платформы портирубт ...

    А вот 6-ка - того ... видимо от того что нужна аж ППЦ :)

     
  • 2.31, Pilat (ok), 13:48, 08/01/2011 [^] [^^] [^^^] [ответить]  
  • +/
    > Когда же на Perl 6 портировать будут? Отсутствие лишних зависимостей должно способствовать.

    А как писать для него расширения? Фреймворк - это только основа, логика может потребовать и модулей с CPAN

     

  • 1.8, Sugar (ok), 10:02, 30/12/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    А кто новость минусует? Упоротые питонисты, считающие, что окромя джанги ничего не нужно?
    По новости - отличный фреймворк, для тех кто программирует на Perl - попробоуйте, на сайте проекта полная документация, дополнительная инфа есть в вики на гитхабе.

    p.s. поправочка к новости автор Mokolicious не просто участвовал в разработке Catalyst, он его изобрел.

     
     
  • 2.10, nagual (ok), 10:10, 30/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > А кто новость минусует? Упоротые питонисты, считающие, что окромя джанги ничего не
    > нужно?
    > По новости - отличный фреймворк, для тех кто программирует на Perl -
    > попробоуйте, на сайте проекта полная документация, дополнительная инфа есть в вики
    > на гитхабе.
    > p.s. поправочка к новости автор Mokolicious не просто участвовал в разработке Catalyst,
    > он его изобрел.

    Не знаю как питонисты но в пыхе только только начал появляться аналог POE ... это значит что дти им до нормальных фремвеков еще очень далеко :-))

     
     
  • 3.11, Sugar (ok), 10:25, 30/12/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Щас уже активно продвигается еще более новый событийный фреймворк - AnyEvent. Между разрабами идут споры - что круче, POE или AnyEvent. =)
     
     
  • 4.16, nagual (ok), 13:02, 30/12/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Щас уже активно продвигается еще более новый событийный фреймворк - AnyEvent. Между
    > разрабами идут споры - что круче, POE или AnyEvent. =)

    Круче модж :-)) эни тоже в прошлом ...

     
  • 2.12, filosofem (ok), 11:49, 30/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >Упоротые питонисты, считающие, что

    И Раввины на рельсах, считающие, что все остальное не кошерно. Среди рабинистов есть не менее воинственные экземпляры, чем среди питонщиков. =)

     
     
  • 3.17, Аноним123 (?), 13:35, 30/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Вообще рубисты по отношению к перлу адекватны - наверное сказывается то, что оба языка нишевые. А вот у питонщиков комплекс серебрянной пули.
     
     
  • 4.19, Anonym (?), 22:53, 30/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >Вообще рубисты по отношению к перлу адекватны - наверное сказывается то,
    >что оба языка нишевые

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

    >А вот у питонщиков комплекс серебрянной пули.

    Абсолютно согласен, в этой теме можно посмотреть на экспонаты:
    https://www.opennet.ru/opennews/art.shtml?num=29124

     
     
  • 5.21, Змеевод (?), 01:51, 31/12/2010 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Сложная и гибкая семантика отлично подходит для проектов в полтора программиста.
    В проектах где 10 бойцов и более и руби и перл прочие креативные языки идут на свалку. Чем строже и беднее язык, тем проще поддерживать код. И тем меньше зависимость от людей которые его написали не любя ограничений и свалили в сторону.

    И никакого комплекса нет. В конечном итоге более серъезные вещи пишуться на java и c++. А молодежь и 7 лет назад утверждала что перл не нужен потому что есть пыха. Не надо студентов рядить в питонистов.

     
     
  • 6.22, ьгчфы (?), 07:46, 31/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >В проектах где 10 бойцов и более и руби и перл прочие креативные языки идут на свалку

    Поржал :) Если бойцы не способны освоить перл/руби и и писать внятный код то это вопросы уже к начальству - зачем таких бойцов набрали? Не лучше ли вместо 10 малограмотных взять полтора нормальных спеца? Можно и своего одного вырастить...

    >Чем строже и беднее язык, тем проще поддерживать код

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

     
     
  • 7.24, nagual (ok), 12:57, 31/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    >>В проектах где 10 бойцов и более и руби и перл прочие креативные языки идут на свалку
    > Поржал :) Если бойцы не способны освоить перл/руби и и писать внятный
    > код то это вопросы уже к начальству - зачем таких бойцов
    > набрали? Не лучше ли вместо 10 малограмотных взять полтора нормальных спеца?
    > Можно и своего одного вырастить...
    >>Чем строже и беднее язык, тем проще поддерживать код
    > Это уже не смешно, это клиника. Качество читабельности исходников зависит не от
    > языка,  от того, насколько хорошо организован процесс создания и документирования
    > оных... т.е. опять же от начальства :)

    Я раскажу вам как все было: в далеких 90-х :-)) были черные окна доса пугающие блондинок дисководы 5.25 :-)) и первые персональные компы в институтах с монохромными дисплеями и без винтов. И на этом железе народ начинал учиться прогать. Кому это удавалось тот шел работать ... а кому нет но и работать очень не хотелось тот оставался на кафедре - других учить :-))с тех пор этот порочный цикл повторился раза 3 ... И вы хотяте чтобы нынешние выпускники вузов что то умели ?

     
  • 7.32, Pilat (ok), 16:27, 08/01/2011 [^] [^^] [^^^] [ответить]  
  • +/
    >>В проектах где 10 бойцов и более и руби и перл прочие креативные языки идут на свалку
    > Поржал :) Если бойцы не способны освоить перл/руби и и писать внятный
    > код то это вопросы уже к начальству - зачем таких бойцов
    > набрали? Не лучше ли вместо 10 малограмотных взять полтора нормальных спеца?
    > Можно и своего одного вырастить...

    Вы просто не знаете перл (шутка?). Внятный код на нём можно написать разными способами, и у каждого разработчика свой взгляд на то что считать внятным. Если написать подробную инструкцию как писать, то это будет уже не перл.

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

    Устоявшихся стандартов в перлопрограммировании нет - что ещё добавляет проблем.

     
  • 6.23, Аноним123 (?), 11:18, 31/12/2010 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ребята с ebay или с Яндекса будут неприятно удивлены, узнав что столько лет используют не тот язык.

    Давайте ставить вопрос в другой плоскости: лично вы и люди, которые попадались вам были неспособны программировать на perl или ruby на должном уровне.

     
     
  • 7.25, nagual (ok), 14:52, 31/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    > Ребята с ebay или с Яндекса будут неприятно удивлены, узнав что столько
    > лет используют не тот язык.
    > Давайте ставить вопрос в другой плоскости: лично вы и люди, которые попадались
    > вам были неспособны программировать на perl или ruby на должном уровне.

    А где почитать о том как они готовят перл, какую версию и на каких системах?

     
  • 7.26, nagual (ok), 14:58, 31/12/2010 [^] [^^] [^^^] [ответить]  
  • +/
    Навено там апаче асп ...
     

  • 1.27, Antverpen (ok), 22:45, 31/12/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Классный framework, нам понравился. Недавно на нем http://check-host.net сделали.

    Кстати, у Mojolicious всего один автор и коммиты все через него проходят. И что-то протолкнуть очень трудно. Автор сам себе на уме. ;( Так что коммьюнити никакое в каком-то смысле... с этим приходится считаться.

     
  • 1.33, Pilat (ok), 22:39, 10/01/2011 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Захожу на http://mojolicio.us/ - тормозит страшно прокрутка страниц... Похоже, колоризатор  как-то неправильно работает?
     
     
  • 2.34, nagual (ok), 18:34, 11/01/2011 [^] [^^] [^^^] [ответить]  
  • +/
    > Захожу на http://mojolicio.us/ - тормозит страшно прокрутка страниц... Похоже, колоризатор
    >  как-то неправильно работает?

    В каком броузере? Комп случайно не атом ? :-))

     
     
  • 3.35, Pilat (ok), 19:31, 11/01/2011 [^] [^^] [^^^] [ответить]  
  • +/
    > В каком броузере? Комп случайно не атом ? :-))

    FireFox последний, компьютер нормальный. В IE такого эффекта нет, наверно какие-то плагины  конфликтуют с сайтом, других таких сайтов пока я не встречал.

     
     
  • 4.36, nagual (ok), 19:41, 11/01/2011 [^] [^^] [^^^] [ответить]  
  • +/
    >> В каком броузере? Комп случайно не атом ? :-))
    > FireFox последний, компьютер нормальный. В IE такого эффекта нет, наверно какие-то плагины
    >  конфликтуют с сайтом, других таких сайтов пока я не встречал.

    Это тот в котором закрытая либа от гугля встроена ?

     
     
  • 5.37, Pilat (ok), 20:08, 11/01/2011 [^] [^^] [^^^] [ответить]  
  • +/
    > Это тот в котором закрытая либа от гугля встроена ?

    Вы взломали файрфокс?

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Спонсоры:
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2021 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру