Ado
view release on metacpan or search on metacpan
public/doc/bg/intro.md view on Meta::CPAN
Ðдо[^adobg] е Ð½Ð°Ð±Ð¾Ñ Ð¾Ñ Ð±Ð¸Ð±Ð»Ð¸Ð¾Ñеки за ÑазÑабоÑка на Ñеб-пÑоекÑи, базиÑан
на [Mojolicious](http://mojolicio.us/), напиÑан на езика за пÑогÑамиÑане Perl.
РазÑабоÑкаÑа запоÑна пÑез ноемвÑи 2013. Ðдо е пÑенапиÑан пÑедиÑен пÑоекÑ
([MYDLjE](https://github.com/kberov/MYDLjE)), базиÑан на Mojolicious 1.9x.
MYDLjE беÑе ÑвÑÑде монолиÑен. Ðе беÑе вÑзможно да Ñе запоÑне ново пÑиложение
Ñ Ð¼Ð¸Ð½Ð¸Ð¼Ñм вÑзможноÑÑи, коиÑо да Ñе вклÑÑÐ²Ð°Ñ Ð¸ изклÑÑÐ²Ð°Ñ Ð¿Ñи необÑ
одимоÑÑ.
Ðдо е много по-модÑлен и гÑвкав Ð¾Ñ MYDLjE и названиеÑо Ð¼Ñ Ð½Ðµ е ÑÑкÑаÑение :).
##Ðакво е Ðдо?
ÐÑедназнаÑениеÑо на Ðдо е ÑÑÑоÑо каÑо на MYDLjE - бÑÑзо да Ñе напÑави леко пÑиложение
и/или ÑайÑ, базиÑан на Mojolicious Ñ Ð²ÑзможноÑÑ Ð´Ð° поема голÑмо наÑоваÑване, Ñ
виÑока пÑоизводиÑелноÑÑ Ð¸ да Ñе ÑазÑаÑÑва леÑно. ÐÑÑка Ðдо-ÑиÑÑема запоÑва каÑо малко пÑиложение, коеÑо може да Ñе пÑевÑÑне в ERP, CMS, CRM илÐ...
каÑо Ñамо Ñе добавÑÑ Ð¿Ð»Ñгини пÑи необÑ
одимоÑÑ, докаÑо оÑганизаÑиÑÑа, коÑÑо го ползва,
ÑаÑÑе.
##ÐгÑадени вÑзможноÑÑи
Ðдо е ÑипиÑно Mojo-пÑиложение. То идва Ñ ÐºÐ¾Ð½ÑигÑÑаÑионен Ñайл и модел[^mvcbg] - Mojolicious::Plugin::DSC. РизданиеÑо е вклÑÑена SQLite база данни. ФайлÑÑ Ðµ etc/a...
Ðдо има ÑледниÑе Ñ
аÑакÑеÑиÑÑики и ÑÑнкÑионалноÑÑи:
1. ÐонÑигÑÑаÑионен Ñайл, ÑÑдÑÑÐ¶Ð°Ñ Ð¿Ð¾Ð²ÐµÑеÑо важни наÑÑÑойки каÑо controller_class, именÑвани пÑоÑÑÑанÑÑва за Ñеб-пÑÑиÑа (routes) и команди, ÑеÑии, пÑе...
1. ÐлÑгиниÑе за Ðдо ÑабоÑÑÑ Ð¿Ð¾ ÑÑÑÐ¸Ñ Ð½Ð°Ñин каÑо Ñези на Mojolicious и ÑподелÑÑ ÑÑÑаÑа
оÑнова ÑÑез Ado::Plugin. Те обаÑе Ð¸Ð¼Ð°Ñ ÐµÐ´Ð½Ð¾ малко допÑлниÑелно ÑвойÑÑво. ÐÐ¾Ð³Ð°Ñ Ð´Ð°
Ð¿Ð¾Ð»Ð·Ð²Ð°Ñ Ñвой ÑобÑÑвен конÑигÑÑаÑионен Ñайл -
`$ENV{MOJO_HOME}/etc/plugins/plugin_name.conf`. ÐÑиложениÑ, ÑпеÑиÑиÑни за ÑазлиÑни
бизнеÑи, базиÑани на Ðдо Ñе ÑазÑабоÑÐ²Ð°Ñ ÐºÐ°Ñо набоÑи Ð¾Ñ Ðдо-плÑгини.
СледниÑе плÑгини Ñа вклÑÑени по подÑазбиÑане:
1. ÐÑиÑки Mojolicious-плÑгини коиÑо Ñа вклÑÑени по подÑазбиÑане.
2. Mojolicious::Plugin::Charset â UTF-8.
3. Mojolicious::Plugin::DSC â плÑгин койÑо инÑегÑиÑа DBIx::Simple::Class в пÑиложениеÑо. DBIx::Simple::Class е много лек ÐºÐ»Ð°Ñ Ð·Ð° обекÑно-ÑелаÑионно пÑогÑамиÑане. Той ...
да Ñе пиÑÐ°Ñ Ñложни SQL-заÑвки когаÑо е необÑ
одимо. Ðма планове да Ñе добави поддÑÑжкаÑа на аÑинÑ
Ñонни заÑвки, коиÑо нÑма да изиÑÐºÐ²Ð°Ñ Ð¿ÑомÑ...
4. Ado::Plugin::Auth е плÑгин за авÑенÑикаÑÐ¸Ñ Ð½Ð° поÑÑебиÑели в ÑиÑÑемаÑа.
ÐоÑÑебиÑелиÑе Ð¼Ð¾Ð³Ð°Ñ Ð´Ð° Ð²Ð»Ð¸Ð·Ð°Ñ Ð¸Ð·Ð¿Ð¾Ð»Ð·Ð²Ð°Ð¹ÐºÐ¸ локалниÑе Ñи име и паÑола или (TODO!)
Facebook, Google, Twitter и дÑÑги доÑÑавÑиÑи на Ñакива ÑÑлÑги.
Ðма напÑавена ÑоÑма за вÑ
од в ÑиÑÑемаÑа, коÑÑо може да Ñе ползва диÑекÑно или да
Ñе ползва каÑо пÑÐ¸Ð¼ÐµÑ Ð·Ð° ÑазÑабоÑка на ÑпеÑиÑиÑна ÑоÑма за дадено пÑиложение.
5. Ado::Plugin::MarkdownRenderer â ÑеÑе и показва Ñайлове в markdown-ÑоÑмаÑ.
С него може да Ñе напÑави лиÑен блог или вÑÑÑеÑно-ÑиÑмен wiki-ÑайÑ.
1. СледниÑе библиоÑеки за изгÑаждане на поÑÑебиÑелÑки инÑеÑÑÐµÐ¹Ñ Ñе ÑазпÑоÑÑÑанÑÐ²Ð°Ñ Ñ Ð´Ð¸ÑÑÑибÑÑиÑÑа:
1. Semantic UI â CSS и JS- библиоÑека за ÑазÑабоÑка на изгледи гоÑови за мобилни ÑÑÑÑойÑÑва. С използванеÑо Ð¼Ñ HTML-кодÑÑ Ð½Ð¸ е по-ÑиÑÑ Ð¾ÑколкоÑо ако...
2. PageDown е ваÑÐ¸Ð°Ð½Ñ Ð½Ð° Showdown Ð¾Ñ Attacklab, койÑо Ñе ползва на ÑайÑа Stack Overflow и дÑÑги ÑайÑове Ð¾Ñ Ð³ÑÑпаÑа Stack Exchange.
1. Ðдо Ð´Ð¾Ð±Ð°Ð²Ñ ÑледниÑе нови команди:
1. Ado::Command::adduser позволÑва добавÑне на поÑÑебиÑели кÑм пÑиложениеÑо пÑез ÑеÑминал. СÑÑо Ñака командаÑа позволÑва добавÑне на ÑÑÑеÑÑвÑваÑ...
2. Ado::Command::version показва инÑоÑмаÑÐ¸Ñ Ð·Ð° веÑÑииÑе на инÑÑалиÑаниÑе задÑлжиÑелни и незадÑлжиÑелни модÑли.
1. Ðе на поÑледно мÑÑÑо, кодÑÑ Ðµ добÑе покÑÐ¸Ñ Ð¾Ñ ÑеÑÑове. Ðоложени Ñа ÑпеÑиални гÑижи
да не Ñе наÑÑÑпва ÑеÑ
ниÑеÑки дÑлг, каÑо ÑеÑÑовеÑе Ñ Test::Perl::Critic Ñа наÑÑÑоени
на ниво "ÑÑÑово". Ðо Ñози наÑин изиÑкваме ÑÑилÑÑ Ð½Ð° пиÑане на код да е
поÑледоваÑелен и еднообÑазен навÑÑкÑде, и да Ñе Ð¸Ð·Ð±ÐµÐ³Ð½Ð°Ñ Ð»Ð¾ÑиÑе пÑакÑики.
ÐÑо как изглежда една ÑиÑÑема, базиÑана на Ðдо каÑо аÑÑ
иÑекÑÑÑа:

##ÐнÑÑалаÑиÑ/Разполагане
ÐаÑинÑÑ Ð½Ð° инÑÑалиÑане, койÑо ви дава най-голÑма гÑвкавоÑÑ, е на ÐºÐ¾Ð¼Ð°Ð½Ð´Ð½Ð¸Ñ Ñед.
Силно Ñе пÑепоÑÑÑва да ползваÑе оÑделна диÑÑÑибÑÑÐ¸Ñ Ð½Ð° Perl пÑедназнаÑена ÑпеÑиално за ÑелÑа - не Ñази, коÑÑо идва Ñ Ð¾Ð¿ÐµÑаÑионнаÑа ви ÑиÑÑÐ...
ActivePerl или perlbrew Ñа добÑÑ Ð¸Ð·Ð±Ð¾Ñ.
ÐÑиÑки ÑÑенаÑии опиÑани на адÑÐµÑ [Mojolicious/Guides/Cookbook#DEPLOYMENT](http://mojolicio.us/perldoc/Mojolicious/Guides/Cookbook#DEPLOYMENT)
Ñа валидни за Ðдо, каÑо може да напÑавиÑе и ваÑа ÑобÑÑвена комбинаÑиÑ.
##REST API[^restbg]
Ðдо Ñе ÑÑÑеми кÑм ÑÑÑого ÑазпÑеделение на оÑговоÑноÑÑиÑе (MVC[^mvcbg]).
Ðай-добÑиÑÑ Ð½Ð°Ñин да Ñе поÑÑигне Ñова е каÑо напÑлно Ñе оÑдели пÑогÑамниÑÑ ÐºÐ¾Ð´,
ÑабоÑÐµÑ Ð¿Ñи клиенÑа (в бÑаÑзÑÑа) Ð¾Ñ ÐºÐ¾Ð´Ð°, ÑабоÑÐµÑ Ð½Ð° ÑÑÑвÑÑа. Ðдо е идеално пÑигоден
за Ñази Ñел благодаÑение на Mojolicious. ÐÑеки ÑеÑÑÑÑ Ðµ доÑÑÑпен ÑÑез пÑогÑамниÑ
REST инÑеÑÑейÑ. Ðие Ñледим Ð¾Ñ Ð±Ð»Ð¸Ð·Ð¾ и надгÑаждаме вÑÑÑ
Ñ Ð¿ÑепоÑÑкиÑе оÑ
"ÐобÑи пÑакÑики за ÑÑлÑги, базиÑани на REST" на www.RestApiTutorial.com.
##ÐÑÑна каÑÑа
1. СÑздаване на Ado::Plugin::I18N за ÑÑобÑение, коиÑо Ñе заÑÐµÐ¶Ð´Ð°Ñ Ð¾Ñ Ð±Ð°Ð·Ð°Ñа данни
(ÑазпÑоÑÑÑанÑва Ñе Ñ Ado).
2. СÑздаване на Ado::Plugin::Vest â пÑиложение за Ñеб-базиÑани ÑÑобÑениÑ.
3. СÑздаване на Ado::Plugin::CORS â дава вÑзможноÑÑ ÐµÐ»ÐµÐ¼ÐµÐ½Ñи Ð¾Ñ Ð¿Ð¾ÑÑебиÑелÑкиÑ
инÑеÑÑÐµÐ¹Ñ Ð½Ð° Ðдо да Ñе вгÑÐ°Ð¶Ð´Ð°Ñ Ð² дÑÑги ÑайÑове.
4. СÑздаване на Ado::Plugin::Site â ÐнÑеÑÑÐµÐ¹Ñ Ð·Ð° вÑнÑни поÑÑебиÑели.
1. СÑздаване на Ado::Plugin::Signup â РегиÑÑÑаÑÐ¸Ñ Ð½Ð° поÑÑебиÑели.
2. СÑздаване на Ado::Plugin::Profile â вÑзможноÑÑ Ð·Ð° поÑÑебиÑелиÑе да ÑедакÑиÑÐ°Ñ Ð¿ÑоÑилиÑе Ñи.
5. СÑздаване на Ado::Plugin::Admin â пÑиложение за ÑпÑавление на ÑиÑÑема, базиÑана на Ðдо - "ÐонÑÑолен Ðанел".
1. СÑздаване на Ado::Plugin::Domains â конÑÑолеÑи за ÑпÑавление на ÑиÑÑема Ñ Ð¼Ð½Ð¾Ð³Ð¾ домейни в конÑÑÐ¾Ð»Ð½Ð¸Ñ Ð¿Ð°Ð½ÐµÐ».
2. СÑздаване на конÑÑолеÑи за ÑпÑавление на ÑÑÑаниÑи в ÑайÑа.
3. СÑздаване на конÑÑолеÑи за ÑпÑавление на ÑÑдÑÑжаниеÑо (ÑекÑии) в ÑÑÑаниÑиÑе.
4. СÑздаване на конÑÑолеÑи за ÑпÑавление на поÑÑебиÑели и гÑÑпи.
ÐÑаÑÐ¸Ð¼Ð¸Ñ ÐеÑов, 2014-05-06
[^adobg]: Ado - busy or delaying activity; bustle; fuss - ÑÑмаÑоÑ
а, бÑÑкоÑиÑ, ÑÑеÑнÑ.
ÐижÑе ÑÑÑо http://www.thefreedictionary.com/ado
[^mvcbg]: http://bg.wikipedia.org/wiki/MVC
[^restbg]: http://bg.wikipedia.org/wiki/REST
( run in 1.676 second using v1.01-cache-2.11-cpan-d8267643d1d )