Bookvve
@Bookvve

Подойдет ли Java для бекенд-разработки? Можно ли для начала его учить?

Решил заняться web-разработкой. Хотел учить первым Java, но задумался, подойдет ли он для начала и годится ли он для бекенд-разработки. Хочу спросить мнение уже практикующих и что-то в этом понимающих людей)
  • Вопрос задан
  • 1019 просмотров
Пригласить эксперта
Ответы на вопрос 8
@Vovan1995
Весь бэк у грандов, типа амазона на джаве ) + самый высокооплачеваемый язык, строгая типизация выровняет руки и отучит писать говно код + свой конвеншен )) Вообщем учи не сомневайся
Ответ написан
Snapdrawler
@Snapdrawler
Только с языка на язык не прыгайте и все получится.
Ответ написан
sim3x
@sim3x
Годится, если у вас уже есть пару лет опыта на чистой джава
Сразу лезть в веб с джавой - не стоит
Ответ написан
@rustacean137
Занимаюсь веб разработкой 4+ лет.

Java - для заработки нормально.

Думаю стоит изучать в таком порядке:

  1. Основа: структуры данных и алгоритмы. Книга sicp. Книга небольшая, и читается легко. В интернете есть лекции на его основе, как на английском(из MIT) так и на русском.

  2. Основы java, ООП и шаблоны проектирования.

  3. java/spring boot.
    Я бы начал попробовать сделать что то простое.
    Например, вывод списка продуктов из базы данных, тут хватить документации hibrenate/spring.

  4. Затем, можно изучать глубже, что происходить в запросе, стоит углубляться в сети(OSI,безопасность и особенности протокола http), и реляционных БД.
    Думаю именно на таком минимальном проекте изучать будет проще, т.к. у вас будет работающее приложение, и вам остается его разбирать и изучать по частям.

  5. Напишите хотя бы юнит тестов для вашего приложения. Это даст хороший плюс к пониманию процесса.

  6. Можно немного изменить проект и вернуться к пункту 4.
    Например:
    • Приложения теперь должен иметь регистрацию и авторизацию, и авторизованные пользователи могут создавать "Магазинов" и продукты в нем. Т.е. user -> shops -> products.
    • Добавим возможность заказывать.
    • Хорошо бы отделить оплату заказов в микросервис, чтобы критическим функционалом занимался доверенный сотрудник... (Отделим оплату заказов в микросервис, который общается с основным сервисом, например через rabbitmq)
    • Далее, стоит обнаружить узкие места и оптимизировать их. Некоторые вещи лучше в очередь отправить, к примеру если отправка почты занимает много времени, или происходить ошибки во время отправки, то письмо можно отправить в очередь и обработать в другом месте, чтобы отправка почты не влияло на время ответа.

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


Также попробуйте rust, есть отличная книга(а не тысячи книг), который охватывает всех возможностей языка. -> rustbook

Есть дружелюбный чат на русском:
Для новичков: https://gitter.im/ruRust/easy
И для опытных: https://gitter.im/ruRust/general

Это язык общего назначения, в котором можно и веб сервисы написать(https://rocket.rs/, https://actix.rs/).
Для изучение отлично подходить, поскольку стандартный инструментарий идёт в комплекте с официальной книгой, и примерами. В книге каждая строчка подробно объясняется. (Выше дал ссылку на русский перевод)


P/s Если хотите бэкендом заниматься, лучше займитесь только им, пока не чувствуете себя уверенно в нем. Поэтому лучше делайте АПИ, а не полноценное приложение с UI, так проще будет, если всё же хочется UI, то рекомендую брать angular, как наиболее простое решение, с точки зрения бэкенда.
Ответ написан
Если зарабатывать - учи Java. Кривой, костыльный, но какой есть.
Как выучишь - будешь изучать фреймворки типа Spring, повозишься с сервлетами, вот тогда хлебнёшь горя, нервов и слёз. Помяни мои слова - ты скажешь "какой идиот это придумал" еще не раз.

Если же хочешь тоже самое, но без лишних нервов - выбирай Python.
Ответ написан
@goblinboom
Java,HTML,CSS,Bootstrap
Я думаю с него не стоит.
Есть слухи что Python проще с этим справляется)
Ответ написан
@ivorobioff
Software Engineer
Да подойдет, посоветовал бы также в сторону Spring Boot, Spring MVC смотреть
Ответ написан
@Sizar
Что за вопросы у новичков... Только Java и стоит учить. Она везде, она со строгой типизацией (что обязательно для первого языка), она самая востребованная и самая высокооплачиваемая. Как новичку рекомендую начать с курса ITVDN, полный курс есть на торрентах. И да, только не прыгай с языка на язык, а то вообще ничего знать не будешь и бросишь все.
Ответ написан
Ваш ответ на вопрос

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

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