Модераторы: korob2001, ginnie

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Кто нибудь использует на продакшене Moose 
:(
    Опции темы
 
Устраивает вас ООП в перле?
да [ 5 ]  [45.45%]
нет [ 6 ]  [54.55%]
что такое ООП [ 0 ]  [0.00%]
Всего проголосовавших: 11
В этом опросе возможен один вариант ответа
Гости не могут голосовать 
DaemonSuw
Дата 19.5.2009, 16:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 155
Регистрация: 11.3.2008

Репутация: 3
Всего: 3



Заинтересовался модулем под названием Moose
http://habrahabr.ru/blogs/perl/59512/ - небольшой блог на русском
А кто нибудь из тут присутствующих использует его в своих проектах (тест, продакшен), на первый взгляд - вещь то стоящая - полноценное ООП на перл ;)...
и ваше мнение? стоит юзать?
скорость тут:
http://pichis-blog.blogspot.com/2009/02/ho...w-is-moose.html

Это сообщение отредактировал(а) DaemonSuw - 19.5.2009, 16:23
PM MAIL ICQ   Вверх
xoma
Дата 20.5.2009, 09:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 86
Регистрация: 4.4.2007

Репутация: нет
Всего: нет



Сейчас ставил последнюю версию Catalyst (с ним пока не работал), так вот, в качестве одной из зависимостей он тянет как раз Moose. Так что наверное каталист уже использует или планирует в ближайшее время перейти на Moose.
PM MAIL WWW   Вверх
KSURi
Дата 20.5.2009, 11:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 887
Регистрация: 8.6.2006
Где: Russia

Репутация: 20
Всего: 27



Для проектов "с нуля" использовать можно, возможно, даже нужно.
По идее, таким же образом можно "обернуть" legacy-код, чтобы придать ему свежести) Но что-то мне подсказывает, что себе дороже получится.


--------------------
Died at Life.pl line 21
PM Jabber   Вверх
DaemonSuw
Дата 20.5.2009, 12:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 155
Регистрация: 11.3.2008

Репутация: 3
Всего: 3



xoma, да вы правы новая версия каталиста заточена под Moose... я думаю не спроста)))

delta list ;)
Цитата

Consequences of the Moose back end

    * Components are fully compatible with Moose, and all Moose features, such as method modifiers, attributes, roles, BUILD and BUILDARGS methods are fully supported and may be used in components and applications.
    * Many reusable extensions which would previously have been plugins or base classes are better implemented as Moose roles.
    * MooseX::MethodAttributes::Inheritable is used to contain action attributes. This means that attributes are represented in the MOP, and decouples action creation from attributes.
    * There is a reasonable API in Catalyst::Controller for working with and registering actions, allowing a controller sub-class to replace subroutine attributes for action declarations with an alternate syntax.
    * Refactored capturing of $app from Catalyst::Controller into Catalyst::Component::ApplicationAttribute for easier reuse in other components.
    * Your application class is forced to become immutable at the end of compilation.



KSURi, опыта большого нету, но рискну спросить, - а что мешает продолжать писать уже с помощью Moose ;0)... ведь обратная совместимость есть, то есть все методы мы отнаследуем, а дальше юзать и писать по полной ооп парадигме... и потихоньку рефакторить тяжелое наследство системы... Конечно у системы появится 2 стиля кодирования так сказать до и после)... но это ведь в конце пропадет, если заставлять себя рефакторить старые классы...

Это сообщение отредактировал(а) DaemonSuw - 20.5.2009, 12:30
PM MAIL ICQ   Вверх
gcc
Дата 29.7.2009, 03:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Агент алкомафии
****


Профиль
Группа: Участник
Сообщений: 2691
Регистрация: 25.4.2008
Где: %&й

Репутация: 1
Всего: 17



тоже интересно, а в чем приемущество?

что не хвататет в обычном ООП + Ассессоры и т.д. чтобы его использовать? 
там есть еще много други модулей и mooseX, но оно как-то на обычный php похоже, только по другому сделано...

Это сообщение отредактировал(а) gcc - 29.7.2009, 03:16
PM WWW ICQ Skype GTalk Jabber   Вверх
chorny
Дата 29.7.2009, 03:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 27.7.2009
Где: Молдавия

Репутация: нет
Всего: нет



Цитата(gcc @ 29.7.2009,  03:05)
тоже интересно, а в чем приемущество?

Преимущество в простоте и читабильности. Также Class::MOP даёт возможность полноценной интроспекции.

Я использовал в работе упрощённый вариант - Mouse.

Кстати роли есть ещё только в Perl 6 и Smalltalk.

PM MAIL WWW   Вверх
gcc
Дата 29.7.2009, 04:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Агент алкомафии
****


Профиль
Группа: Участник
Сообщений: 2691
Регистрация: 25.4.2008
Где: %&й

Репутация: 1
Всего: 17



понятно, а есть ли где-то реальная программа с moose чтобы ее скачать и посмотреть исходники?


PM WWW ICQ Skype GTalk Jabber   Вверх
KSURi
Дата 29.7.2009, 13:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 887
Регистрация: 8.6.2006
Где: Russia

Репутация: 20
Всего: 27



gcc, тонны кода есть в блогах учавствующих в Iron Man.

chorny, роли - это ведь по сути mixin. Так что можно сказать, что и в они Python есть, и в Ruby.


--------------------
Died at Life.pl line 21
PM Jabber   Вверх
gcc
Дата 21.9.2009, 21:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Агент алкомафии
****


Профиль
Группа: Участник
Сообщений: 2691
Регистрация: 25.4.2008
Где: %&й

Репутация: 1
Всего: 17



KSURi

http://www.google.com.ua/#hl=uk&source...f607cbc1d1ce7ba
1) где это? дайте ссылку? хотел исходники посмотреть

2) и кто видел на каталисте среднюю или большую программу? я нашел только одну...

3) еще хотел спросить где есть дискусии англоязычные там где много народа, никто не участвует в таких?


Это сообщение отредактировал(а) gcc - 21.9.2009, 21:46
PM WWW ICQ Skype GTalk Jabber   Вверх
chorny
Дата 21.9.2009, 22:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 27.7.2009
Где: Молдавия

Репутация: нет
Всего: нет



Цитата(KSURi @ 29.7.2009,  13:06)
chorny, роли - это ведь по сути mixin. Так что можно сказать, что и в они Python есть, и в Ruby.

А mixin по сути - это множественное наследование. Но разный подход: роли позволяют делать более строгую проверку и переименование. Кроме того их можно применять динамически.
PM MAIL WWW   Вверх
KSURi
Дата 21.9.2009, 22:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 887
Регистрация: 8.6.2006
Где: Russia

Репутация: 20
Всего: 27



Цитата(gcc @  21.9.2009,  21:42 Найти цитируемый пост)
1) где это? дайте ссылку? хотел исходники посмотреть

гуглить на iron man challenge+perl

Цитата(gcc @  21.9.2009,  21:42 Найти цитируемый пост)
2) и кто видел на каталисте среднюю или большую программу? я нашел только одну...

http://dev.catalystframework.org/wiki/cata...poweredsoftware

Цитата(gcc @  21.9.2009,  21:42 Найти цитируемый пост)
3) еще хотел спросить где есть дискусии англоязычные там где много народа, никто не участвует в таких?

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


--------------------
Died at Life.pl line 21
PM Jabber   Вверх
chorny
Дата 21.9.2009, 22:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 27.7.2009
Где: Молдавия

Репутация: нет
Всего: нет



Цитата(gcc @  21.9.2009,  21:42 Найти цитируемый пост)
еще хотел спросить где есть дискусии англоязычные там где много народа, никто не участвует в таких?


perlmonks, stackoverflow, use.perl.org, irc://irc.perl.org , irc://irc.freenode.net/#perl , списки рассылки модулей и проектов CPAN и др., news://nntp.perl.org и много других мест
PM MAIL WWW   Вверх
gcc
Дата 21.9.2009, 23:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Агент алкомафии
****


Профиль
Группа: Участник
Сообщений: 2691
Регистрация: 25.4.2008
Где: %&й

Репутация: 1
Всего: 17



Цитата(KSURi @ 21.9.2009,  22:43)
гуглить на iron man challenge+perl

понятно по гуглил нашел блоги, я имел ввиду средние или большие программы на moose....

на catalyst нашел несколько, но мало, несколько ссылок не работают

Добавлено через 45 секунд
chorny, я не люблю это IRC или рассылки, обычных форумов нету?
PM WWW ICQ Skype GTalk Jabber   Вверх
mvsgt
Дата 21.9.2009, 23:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 209
Регистрация: 27.3.2009

Репутация: 1
Всего: 1



У меня довольно ответственная система в продакшне на Moose (кроме автогенерируемых файлов - 82 .pm, >400 килобайт кода с комментариями). Но я не очень им доволен, хотя если сравнить голый перл и Moose - это земля и небо.

DBIx::Class на Moose, кстати. И некоторые другие на него переходят.

Потери в производительности посчитать трудно, так как многим вещам аналогов при обычном подходе нет. Например, проверка параметров функций - Param::Validate превратился в гораздо более мощный инструмент

Код

sub updateRate {
    my $self = shift;
    my ($imonum) = pos_validated_list( \@_, { isa => 'IMOnum_Type', optional => 0, }, );
...
}


Плюс контроль за переменными класса - кто знает, сколько из-за его отсутствия остаётся спящих ошибок. А вообще вся предесть Moose проявится только в MooseX : : Declare и подобных модулях, но они, скорее всего, никогда в продакшн не выйдут.


Это сообщение отредактировал(а) mvsgt - 21.9.2009, 23:59
PM MAIL   Вверх
gcc
Дата 21.9.2009, 23:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Агент алкомафии
****


Профиль
Группа: Участник
Сообщений: 2691
Регистрация: 25.4.2008
Где: %&й

Репутация: 1
Всего: 17



да надо попробовать... я только что посмтрел программу на moose, но ничего особенного там не увидел...

интересно бы на реальных примерах увидеть преимущество...



Это сообщение отредактировал(а) gcc - 21.9.2009, 23:58
PM WWW ICQ Skype GTalk Jabber   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl"
korob2001
sharq
  • В этом разделе обсуждаются общие вопросы по языку Perl
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Если ваш вопрос относится к CGI программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", можно скачать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0883 ]   [ Использовано запросов: 23 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.