Какой язык/фреймворк выбрать?

Друзья, добрый день. Начал углубленно изучать веб-разработку, и, как и любой новичок, напоролся на обилие инструментов и полное непонимание, что для чего нужно.
У меня возник ряд вопросов.
Чем отличается сайт, написанный на Laravel и Django? Понимаю, что это php и python, но раз это разные языки, значит, у каждого есть свое предназначение, но пока я полагаю, что любую задачу можно решить как в одном, так и в другом фреймворке. Это я еще не вдавался в ruby :( А ведь есть еще node.js, который позволяет вести бэкэнд разработку. Хочется услышать простыми словами, что для чего, для каких задач и какие ограничения вытекают из того или иного решения.

Далее - фронтэнд. Не могу догнать, почему vue.js позиционируется как уникальный инструмент для разработки интерфейсов. Что он дает такого, чего нет в ванильном js? Или angular?

Какая связка наиболее эффективна? Django+vue? Laravel+angular? :)

В общем, в начале пути очень хочется избрать наиболее универсальный путь, но и эффективный прм этом. Цель - разрабатывать веб-приложения, воплощать собственные идеи в жизнь, но чтобы при этом быть востребованным специалистом и иметь возможность решать и какие-то тривиальные задачи. Одна из идей - сервис для построения диаграмм гантта. На чем лучше реализовать такое, и почему?
  • Вопрос задан
  • 2732 просмотра
Решения вопроса 1
neatsoft
@neatsoft
Life is too short for bad software
Фреймворки нужны для упрощения и ускорения разработки - избавления от бойлерплейта и защиты от типичных ошибок. Можно ли всё тоже самое сделать вручную? Можно, но не нужно - большая часть времени уйдет на изобретение велосипедов, некоторые из которых будут медленными или небезопасными.

По моему опыту, Django позволяет реализовывать типичные задачи вдвое быстрее, чем Laravel (использовал оба). Во многом это заслуга Python и сложившейся вокруг него экосистемы. Здесь выбор очевиден.

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

p.s. Вне зависимости от выбора, не стоит заниматься веб-разработкой под windows. Стандартные среды - Ubuntu 18.04 (либо любой другой, но не слишком маргинальный дистрибутив) и MacOS.
Ответ написан
Пригласить эксперта
Ответы на вопрос 5
longclaps
@longclaps
Единственный действительно универсальный подход состоит в том, чтобы не изучать ничего.
В таком случае твои познания в любой области будут равно глубоки.
Всё остальные неизбежно ведёт к специализации.
Ну, ты понял.
Ответ написан
sim3x
@sim3x
Для выбора используйте монетку или кубик

Не учите скопом бек и фронт - выберите что-то одно

Можно сделать исследование спроса на инструменты в своем регионе и выбирать с умом
Но никто так не делает, естественно.
Ответ написан
1) Python + Django = у нас используется в больших компаниях по типу Яндекса, маил.ру, Рамблера, варгейминга - так как позволяет экономить на самой концепции кода (его легче писать, есть строгий гайдлайнс). Плюс используется для стартапов, где надо работать с Датой (трейдинговые сервисы, всякие социальные трекеры итд). У буржуев Python используется активнее, чем у нас.

2) Php/Laveral/Symfony - главный веб-язык в рф. Используется от маленьких сайтов, до огромных сервисов. Почему его юзают? Так сложилось, что в свое время учили именно его большинство разработчиков, поэтому сейчас идет по наитию.

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

Также есть .net/java - но там уже специализация банки, логистические компании, заводы и прочее.

Что касаетcя ruby/node.js - то вакансий не так много, смысла их учить особо нет, если ты идешь в бек.
____

И пойми, что цель изучения программирование - это открытие своего проекта, либо работа за хорошие деньги. Практика показывает, что в рф проще всего это сделать на php/java/.net. - все остальное уже более экзотические варианты.
Ответ написан
Комментировать
customtema
@customtema
arint.ru
Python/Django правильнее, но дороже.

Laravel/angular дешевле.

Offtopic. В Америке вон до сих пор сайты на вордпрессе делают. Но это вовсе не означает, что он там рулит. Просто у них бюджеты на поддержку другие. Не два доллара в месяц, далеко.
Ответ написан
Комментировать
@kuftachev
Простыми словами, как уже написали, нужно выбирать только по одному критерию, местному рынку труда.

Можно сделать поправку на знакомых, если есть кто-то кто поможет устроиться на первую работу.

По сути вопроса, все веб фреймворки решают одну и ту же задачу, поэтому абсолютно одно и тоже можно сделать на:
- Ruby on Rails
- Codeigniter
- Yii2
- Laravel
- Django
- Symfony

И ещё многих других, хотя всё-таки, не считая Java и C# - эти +/- самые популярные. Конечно между ними есть большая разница, но это как огурец и помидор, кому-то может нравиться что-то больше, но по сути, и то, и другое овощ. Поэтому, для первого лучший критерий - это местный рынок труда. Потом за месяц можно нормально освоить какой-то другой, если будет потребность.

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

Разница между тремя основными в том, что React - это каша, которая основывается на хайпе. Vue имеет свою хорошую инфраструктуру, и в отличии от React, там обычно для всего есть 1-2 стандартных хороших решений, вместо сотен плохих у React, у которого четко только с Redux, но у Vue есть свой Vuex.
Angular, как мне кажется, лучше для больших проектов с логикой, а не просто CRUD, так как у него структура заложена в архитектуру.

Удачи с выбором!
Ответ написан
Ваш ответ на вопрос

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

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