В чем недостатки сайта на чистом php?

Многие говорят, что для разработки нормального сайта(а я хочу сделать многостраничный сайт с авторизацией, комментированием, админкой итд.) нужно использовать какой-нибудь фреймворк, например yii2. В чем преимущества и недостатки сайта на обычном php без использования фреймворков? Просто я могу написать что-то толковое на php, а вот опыта работы с фреймворками у меня нет. Стоит ли тратить время на изучение того же yii или можно все писать просто на php?
  • Вопрос задан
  • 3319 просмотров
Решения вопроса 2
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Многие говорят, что для разработки нормального сайта(а я хочу сделать многостраничный сайт с авторизацией, комментированием, админкой итд.) нужно использовать какой-нибудь фреймворк, например yii2.
Это те, кто считает, что лучше, чем сделали они - вряд ли кто-нибудь сделает.
Это обычное продвижение проекта через "своих" евангелистов.

Пока сами не напишите - так и будете вечно надеяться на "пряморукость" фреймворкеров (ну там ежедневные патчи и исправления безопасности, слышали наверное :) и Ваш прогресс, как профессионала в PHP, остановится.
Мой совет: учитесь - на исходном коде фреймворков (архитектура, модульность, проверка данных, защита от SQL-инъекций, кэширование и прочее), а пишите - сами.

PS: Если нужно сделать быстро - берёте популярную CMS (я обычно работаю с CMS Joomla!), учите пару строк фреймворка и "запиливаете" функционал.
Ответ написан
webinar
@webinar Куратор тега PHP
Учим yii: https://youtu.be/-WRMlGHLgRg
Стоит ли тратить время на изучение того же yii или можно все писать просто на php?

Стоит 100%, к тому же если Вы знаете хорошо php уйдет на это минимум времени. Думаю, что изучение yii2 и написание на нем Вашего не сложного проекта в сумме займет меньше времени, чем написание на голом php. Я конечно не беру во внимание случай если Вы решили забить на безопасность и планируете написать 4 php файла, которые пишут в базу все подряд, не используют кеш и т.д.

В чем преимущества сайта на обычном php без использования фреймворков?

Единственное преимущество - теоретически меньшая ресурсоемкость. Теоретически, потому что все зависит от кривости рук программиста и его желании делать хорошо и правильно.

В чем недостатки сайта на обычном php без использования фреймворков?

можно долго перечислять, но основное скорость разработки. Зачем писать то что уже написано?
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 7
Pinsky
@Pinsky
Кофеиноникотиновая смесь в backend-код
Есть разница между чистым PHP и спагетти кодом.

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

Возможно, Вам стоит задуматься о использовании компонентов Symphony, если Вам так критично уменьшить число прослоек.

Если же, тут дело в том, что просто не знаете фреймворк - рекомендую освоить. Очень многое может разложить по полочкам в голове и ускорить в последующем разработку приложений.
Ответ написан
@vashaaa
Юх с горы
Если хотите писать свое родное.С самого начала нужно наработать алгоритмическую базу, что бы при уходе вашей любимой технологии или фреймворка в небытие, вы не были выгнаны на мороз с голой жопой. А уже потом брать сначала язык программирования (притворимся что вы взяли не php) и напилить костылей своих с велосипедами, по общим задачкам (строки, данные, графы, хэш таблицы и т.д.), пробуете сортировать без встроенных функций. Вы спросите, а нафиг оно мне нужно? Я крутой прогер хочу сайты клепать, а не ваши алгоритмы учить. Сделано это для того что бы быть программистом а не кодером , и при надобности скакать по технологиям которые вам нужны (как по пикам, или что там вам по душе) с минимальными затратами на изучение. После этого вы пишите своего франкенштейна с руками из сфинктора и глазами на них же(свой MVC фреймворк) костылям позавидует трвмпунк, потом смотрите на чужие костыли в виде фреймворков(в отличии от ваших костылей, эти отлажаны как нужно и протестированы не одну сотню раз, а так же признаны и используються в широком кругу) и допилить свои костыли до вменяемого состояния. Но не советую, используйте отлажаные и протестированые костыли. Время на изучение, с лихвой окупятся и не только временем но и деньгами.
Ответ написан
Комментировать
saboteur_kiev
@saboteur_kiev Куратор тега Веб-разработка
software engineer
Изучать что-то новое - необходимо и полезно.
Если есть работа, которая требует здесь и сейчас - пишите как можете.
Если есть работа, занимаясь которой можно парралельно изучить новое - изучайте обязательно.

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

Ну а писать на чистом PHP конечно можно, в этом есть и свои преимущества.
Ответ написан
RozMakc
@RozMakc
сам пищу сайты на php но понимаю что надо изучать что то новое расти так сказать ) решил изучить laravel, но позже, доделаю проект и потом...а может еще один и потом... :)

насколько я понимаю, фреймворк сокращает время на написание кода в разы, да и приложения быстрей работают наверное, вот только на изучение кучу времени нужно потратить, так что откладываю все время...
Ответ написан
Комментировать
@mik222
Сегодня мода больше на библиотеки чем на фреймворки.
Например, я использую в работе( на Go) net/http, mustache, и sqlx для типичных сайтов.
Админку можно поставить отдельно, например https://github.com/simov/express-admin
Фреймворк это солянка из сторонних библиотек плюс тараканы авторов(которые тоже нужно учить).
==========
UPD. Да, согласен, мой ответ провокативный.
Тем не менее, что вам нужно для сайта:
  1. Роутер (библиотека)
  2. ORM (библиотека)
  3. Template Engine (библиотека)
  4. Система аутентификации (библиотека)
  5. Админка(библиотека)
  6. Система миграций(библиотека)

Что я упустил? (Не троллинг, я действительно не знаю зачем в данной ситуации нужен фреймворк, что он дает?)
По моему знакомству с Django там ровно тоже самое только собранное вместе заранее.
Ответ написан
trevoga_su
@trevoga_su
В чем преимущества и недостатки сайта на обычном php без использования фреймворков?
никаких преимуществ, если ты знаешь как писать программы так, что бы они оставались расширяемые, с четкой архитектурой.

фреймворки = это мода. кто бы что не говорил. веб-макаки все как один повторяют тенденции с запада. на самом деле написать свой хороший код - не такая и сложная задача. она лишь затратная по временным рамкам, ибо для этого нужен ОПЫТ в разработке и понимание основных методологий программирования на конкретном языке.
Ответ написан
@zzzmaikzzz
Junior-web
Берите MODx
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы