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

Основные идеи фремворков - убрать лишний код и сосредоточиться на самой задаче-разработке полезного веб приложения, а так же стандартизировать подходы к построению программы.

Когда ты делаешь не один сайт в месяц, то начинаешь понимать, что многие элементы повторяются и приходится их писать снова, немного модифицируя. К тому же, со временем, приходит и понимание, что многое сделано не так, не стандартно. Так я пришел к идеям фреймворков.

Изначально я увлекся Django - фреймворк, написанный на Python и для Python. Прелесть этого фреймворка для сайтостроителей в том, что при написании Django сайта, админка делается автоматически. Очень важной особенностью данного фреймворка является его архитектура, основанная на MVC («Модель-вид-контроллер»). Т.е. вся архитектура разбита на три независимых состаляющих: модель-отвечает за хранение данных, вид-за представление, а контроллер-за «бизнес-логику». И всем то этот фреймворк хорош: имеет много поклонников в сети (знаю что Яндекс активно использует Django), отличные функциональные возможности и скоростные показатели, язык Python - сам по себе является изюменкой для программиста, не любящего много строк кода. Но есть и недостатки: среди главных - недостаточная поддержка хостинг-копаний, знаю только в Екатеринбурге Django - хостинг предоставляют Билайн и NetAngels. Так же смущает и отсутствие адекватного российского комьюнити.

Далее я заинтересовался фрейморком уже на менее экзотическом языке PHP, а именно, Zend Framework. Ну тут конечно все более родное для PHP - программиста, но идея архитектуры та же MVC. Большим его плюсом является то что он Zend, т.е. фимы, которой принадлежит авторство PHP. Куча всего что может понадобиться обычному программисту здесь уже давно есть и сложно найти то что было бы нужно, и здесь небыло. Минусом для себя, слишком громоздкая и менее гибкая вещь по сравнению с Django, так же довольно прожорливый и тормознутый.

В конце для меня стало очевидно, использование того что есть хорошо, но не отвечает моим потребностям-легкое прстое и гибкое решение для написание любых веб сайтов. Вооружившись идеей MVC и духом Django я стал создавать свой фреймворк. Что из этого получилось!? Все сайты написанные нашей студией за последний год. :)

P.s. В этом посте я довольно поверхностно пробежался по очень интересным темам, как то язык Python, Django, MVC, а так же не затронул других интересных и перспективных фреймворков, таких как Ruby on Rails. В дальнейшем планирую рассказать об этом.


Теги: , , , , , , , , , , ,

Комментарии (14) на запись “Выбираем фреймворк или пишем свой”

  1. ad-null.livejournal.com/ пишет:

    Про хостинг: Есть еще diphost.ru со спецтарифом для Python-приложений, использующих деплой через WSGI (django, trac, moin-moin, pylons и т.д.)

    [Ответить]

    Евгений Шестаков Reply:

    Спасибо, это радует, возможно со временем Python станет столь же популярным как и PHP, по крайней мере я на это надеюсь :)

    [Ответить]

  2. Printer пишет:

    Очень, очень интересно Вы пишете. Только не может быть всё так просто.

    [Ответить]

  3. Unitart пишет:

    Спасибо, много полезного почерпнул.

    [Ответить]

  4. BigSten пишет:

    Автор молодец

    [Ответить]

  5. bw пишет:

    > недостаточная поддержка хостинг-копаний
    Тоже не вижу проблем. Использую VDS, если не требуется много ресурсов, если проектов много и/или они не "влазят" в VDS, можно и на нормальный сервер разориться.

    > Так же смущает и отсутствие адекватного российского комьюнити.
    Как раз с этим всё впорядке, хуже дела обстоят у TurboGears, Pylons и поклонников "голого" WSGI-приложения.

    ..bw

    [Ответить]

    Евгений Шестаков Reply:

    1. Вот только зачем платить за VDS с питоном в месяц от 600 рублей, если можно платить за вирт хостинг со станартным пхп от 100 ?

    2. Ну скажем так, хотя я бы очень хотел развития python и django,но php сейчас гораздо популярнее. А многие даже не знают о сужествовании не только Django, но и языка python

    [Ответить]

  6. bw пишет:

    1. От 150, а не от 600. Ни у одного из моих заказчиков не возникало проблем с оплатой от 1000 за сервер, да, виртуальный, но всё же полноценный, свой, с гарантированными ресурсами по CPU, мозгу и каналу. Это не то же самое, что хоститься на сервере с еще 100 или 200 ресурсов.

    2. Ну мы же не альбомы Бринти Спирс продаем. Мне, для успешной работы с Python, не нужно, что бы каждый месяц появлялось по 1000 новых разработчиков. (Особенно предпочитающих спрашивать по пустякам, получать готовое до мельчайших деталей, а не пытающихся разобраться самим, вникнуть в суть проблемы.)

    [Ответить]

    Евгений Шестаков Reply:

    1. где вы такой дешевый VDS нашли, поделитесь секретом!? ;)
    2. Да конечно, для питон разработчиков невыгодно появление новых разработчиков в том плане, что у них появляется "конкуренция в сегменте", но мне кажется тут есть и большой плюс-это популяризация питона в глазах заказчиков, тк не секрет что многие заказчики спрашивают сайт именно на пхп.

    [Ответить]

  7. bw пишет:

    1. firstvds
    2. Невыгодно по др. причине. К Python, и это акцентировано, обращаются за качеством. Если предлогать свои услуги в массовом и дешевом порядке будут так же часто как и в PHP, Python потеряет свои преимущества. Тут неважны преимущества самого языка, это просто бизнес ;-).

    [Ответить]

    Евгений Шестаков Reply:

    спасибо за хостинг! :)

    А про Python, думаю это единичный спрос среди "очень осведомленных" заказчиков, по крайней мере у нас в Екатеринбурге, не знаю ни одну студию, которая бы открыто завляла что делает сайты на Django, Zope или просто на Python. Есть конечно отдельные проекты - но это исключение нежели практика.

    Про качество это кончено здорово ;) , а где, если не секрет вы берете таких заказчиков ? :)

    [Ответить]

  8. bw пишет:

    Конечно секрент ;-). Weblancer/Freelancer и т.п. Чаще это постоянные клиенты.

    ..bw

    [Ответить]

  9. Вилла пишет:

    Интересные решения.:-)

    [Ответить]

  10. Evraziatur пишет:

    Огромное спасибо автору, за невероятно полезную и познавательную информацию! Занес ваш сайт к себе в букмарки!

    [Ответить]

Оставить комментарий