Рубрики
Без рубрики

Джанго – это каркас с полным стеком?

Название этого поста «Является ли Джанго полной структуры стека?» Это вопрос, который я часто получаю от новых мы … Tagged с Django, Python, новичками.

Название этого поста «Является ли Джанго полной структуры стека?» это вопрос, который я часто получаю от новых веб -разработчиков. Это очень обоснованный вопрос, поэтому я хотел обратиться к нему здесь, а не повторять себя в отдельных электронных письмах.

Веб-сайты могут быть разбиты на два основных компонента: «Бэк-Энд» и «Фронт-Энд». Бэк-энд-это то, где живет основная база данных и любая связанная логика, в то время как передняя часть-HTML, CSS и JavaScript, который контролирует, как смотрят эти данные на веб-странице.

Например, на веб-сайте блога бэк-энд будет базой данных, содержащей отдельные сообщения в блоге и, возможно, также комментарии пользователей. Фронт-энд будет HTML, CSS и, возможно, JavaScript, который отображает контент.

Джанго был впервые освобожден еще в 2005 году, когда передние знания были относительно простыми. Не было никаких специальных фронтальных фронтовых рамок JavaScript, таких как React, Angular, Vue, Ember и остальные.

В результате Django поставляется с намеренно основным Язык шаблона Это может выполнять основную логику, такую как петли и фильтры. И, к его чести, Джанго сопротивлялся искушению добавить здесь сложность; Язык шаблона Django по-прежнему остается очень обнаженным в функциональности.

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

В наши дни одинаково распространенная настройка-использовать Django Rest Framework Чтобы преобразовать веб-сайт Django в внутренний API, который затем может быть использован специальной фронтальной структурой JavaScript.

Конечным результатом для зрителя по-прежнему является один веб-сайт, но под капюшоном Django Back-End отправляет HTTP-запросы и ответы на отдельный фронт JavaScript. С этим подходом большой сайт, такой как Instagram, который использует Django, может поддерживать несколько фронтальных веществ (Web, iOS, Android) из одного бэк-конца. Это также известно как развитие «API First» и становится все более популярным.

На практике почти ни один разработчик не является «полным стеком» в наши дни; Там просто слишком много, чтобы узнать с Python, JavaScript и связанными с ними фреймворками. Могут ли разработчики использовать оба хорошо? Да. Но они всегда будут где-то в спектре, например, 70/30 Back-end против Front-Tond или The Inverse.

Так Джанго-это каркас с полным стеком? Да, я бы сказал. Вы можете построить мощный веб-сайт только с традиционным Django, но, вообще говоря, если кто-то говорит «полный стек», он говорит о внутреннем API, который взаимодействует с отдельным, часто сложным, фронтальным, основанным на рамках JavaScript.

Оригинал: “https://dev.to/wsvincent/is-django-a-full-stack-framework-2ibh”