Фреймворк или фришард?

Фреймворк или фришард?

В последнее время появляется множество заявок на freelance, где заказчики ставят задачи по типу: создание интернет-магазина Laravel или создание платформы для автогенерации на yii2 и тп. Но есть одна проблема - большинство этих людей просто ужасаются от цен на разработку веб-приложений, использующих фреймы, зачастую вовсе отказываясь от данной мысли.

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

В сегодняшней статье мы разберем тему: в чем разница между разработкой приложения на фреймворке или фришарде. А также постараемся объяснить в чем разница между фреймворком и фришардом.

В чем разница между фреймворком и фришардом?

Начнем с разницы между технологиями. Если вникнуть в задачу веб-разработки, то можно не увидеть разницы между фришкой и фреймом. Везде тот же самый сервер (apache, nginx) + логика, описывающая действия и ответ на действия пользователя (стек php + js + html + css). На самом деле так и есть. Везде одни и те же технологии (имеется ввиду стандартные задачи. Безусловно стек может отличаться в сторону python или даже C++, java).

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

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

А обычному пользователю необходимо немного разобраться. Давайте вернемся к тому заказчику о котором мы говорили в начале.

Услышав или прочитав где-то, что реализовать задуманный нами проект намного легче и проще. Мы с эйфорией в голове находим фриланс биржу и смотрим среднюю статистику по ценам на подобного типа проекты. Допустим у нас интернет-магазин Comfy. Смотрим, что в среднем за интернет-магазин базовая ставка 5000 грн. И конечно же, так как легче сделать на фрейме (он и быстрее будет работать чем у этих что на фришках делают) мы конечно же ставим 4500 грн!

И какое же будет наше удивление, когда вместо тысячи заявок на проект, сыпется множество приятностей по типу «заниженный бюджет». И почему-то сразу возникают мысли по типу «Жадные фрилансеры которые только и знают как драть с нас деньги!». Мы забываем о проекте, сохранив на всякий случай свое 15 листовое ТЗ на создание (ну а вдруг).

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

Сколько стоит разработка приложения на фреймворке или фришарде?

Ключевое это конечно же сложность сайта.

Отличие в цене за сайт-визитку построенный на вордпрессе и сайт-визитку, построенный на фрейме, будет отличаться только в том случае если необходимо реализовать backend (админку). Для «программиста», работающего на WP, основной задачей будет установить готовое приложение, которое автоматом ему создаст frontend+backend. Дальше будет задача интегрировать верстку (визуальное отображение) и реализовать функционал. Обычно последний момент реализуется установкой уже готовых решений (плагинов) которые фиг знает каким боком оптимизированы, если вообще оптимизированы.

А какая разница нашему «программисту»? Ключевое это получение денег. А получаем в итоге неоптимизированное приложение(сайт) который если не в данный момент лагает, то в ближайшем будущем при попытке какого-то расширения будет критически лагать. Казалось бы, цели мы достигли: красивая тема (обложка) и админ часть, которая позволяет управлять данной обложкой. Но стоит только заглянуть заказчику за обложку и сразу все становится ясным – с него просто содрали деньги!

В общем наша с Вами задача сейчас не рассмотреть все судьбы «программиста», который уже 5 лет как работает с WordPress-ом (опыт же (сарказм)). Наша задача разобраться в разнице между приложениями и сделать каждому свой выбор. А для этого необходимо рассмотреть другую сторону медали – фреймворки.

В чем разница между разработкой приложения на фреймворке или фришарде

В случае фреймворка, при установке, мы получаем самый обычный набор библиотек и простую веб страничку. В ней нет взаимодействия с сервером. Есть только готовые решения из библиотеки для реализации абсолютного любого функционала. Но в ней есть основное что необходимо для качественной реализации любого проекта и последующего его расширения. Это принципы ООП! Вам будет интересно прочитать эту статью: что такое ООП?

Хоть вордпресс и позволяет использовать принципы автоматизации. То есть простой пользователь может установить и накидать плагинов. Но данные фреймворки порождают динозавров-программистов, которые не вникают в принципы взаимодействия на уровне байт-кода с машиной (сервером). И просто лепят что попало. Хотя бы минимально осознавали, что вордпресс — это для блога!!! Кодировка для БД, оптимизация на уровне запросов к БД и так далее – все это построено из логики, что на движке будет запущен блог. Это просто ряд статей, рубрик и комментариев. И всё!

В итоге вышло что именно wordpress дал развитие такому языку как php. Но, сам оказался в пропасти. Выпуская сейчас такие плагины, как woocommerce разработчики прекрасно понимают о своей беде. Оптимизации и никакого ООП. Да есть, конечно, сайты, да и в логике самой фришки есть принципы ООП. Но программисты, которые работают с ним данных принципов не используют. Из-за этого у горе-программистов получаются тонны кода, который в последствии требует больше ресурса от сервера. Таким образом и рождается царь бала – лаг. 

А фреймворк не позволит отклониться от принципов ООП. Вернее, это возможно. Можно такие же конструкции с операторами использовать на стороне шаблонов. Но, данные конструкции не позволят в дальнейшем расширять данный проект, и горе-программиста очень быстро вычислят. Таким образом мы видим, что для работы с фреймворками программисту необходимо повысить свои навыки – выучить основные принципы, а именно ООП. А там, где основные принципы там и расширение, рост как специалиста. Авось доберутся до документации apache.

Вывод:

Таким образом у нас выходит формирование цены на разработку:

  1. Wordpress – подойдет для реализации блога. Не имеет возможности расширения до уровня качественного приложения. Плюсом честь то, что с реализацией простых приложений справится большинство фрилансеров. Из-за этого большая конкуренция и демпинг цен.
  2. Yii2, angular, laraver (и т.д) – фрейм подойдет для тяжелых веб-приложений, корпоративной и коммерческой сферы. Уровень приложения полностью зависит от знаний программиста. Чем лучше, тем больше возможностей для расширения. Необходимо базовое понимание ООП, синтаксиса и конструкций языков программирования.

Осталось уяснить только одно: чем больше логики и функционала в вашем приложении, которое требует прямого взаимодействия с пользователями (фильтры, формы, генераторы), тем оно сложнее. Да, основываясь на принципах ООП его реализовать будет проще (логика выше), но потребуется качественная поддержка и множество знаний.

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

Вам будет интересно прочитать статью: Зачем использовать фреймворк в разработке?

Нет комментариев

Добавить комментарий