Главная

СИСТЕМНОЕ ОБУЧЕНИЕ С НУЛЯ
Полная fullstack web разработка
для новичков и опытных

Большой обучающий проект, на котором вы пройдете все современные технологии.

Удобно для новичков: можно стартовать с самого нуля без начальных знаний.

Системное, а не обрывочное обучение - разложите все по полочкам.

Java/Kotlin, Spring, PostgreSQL, микросервисы, DevOps, Docker, Git, React/Angular

Учеников: 97316

app

КАК СТАТЬ ПРОФИ

Основная проблема всех новичков в том, что они изучают НЕ ТО и НЕ В ТОЙ последовательности (решают задачи на синтаксис, пытаются сразу начать использовать сложные технологии без фундамента и пр.) - это часто приводит к завершению карьеры.

Обязательно следуйте этим пунктам:

- Сначала у вас должно сформироваться "мышление программиста" - как создавать и планировать любые проекты в стиле ООП и SOLID/GRASP. Это главный фундамент для любых проектов.

- Вы должны иметь не только денежный ("в IT хорошие зарплаты"), но и неподдельный интерес к самому процессу программированию - иначе быстро "сдуетесь"

- Вы должны иметь каждый день хотя бы 2-3 свободных часа, иначе не сможете набрать 1-ю космическую скорость и выйти на орбиту - чтобы преодолеть начальный порог всех новичков

- Нужна правильная последовательность изучения, чтобы не было каши в голове - вы можете пройти всю цепочку курсов fullstack в нужном порядке (описан план с нуля). Тогда у вас будут системные и комплексные знания, а не обрывочные

ПОДРОБНЫЙ ПЛАН

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

Ниже представлен правильный план, основанный на обучении примерно 10000 учеников. Просто идете вперед каждый день небольшими шагами. За вас уже все продумано.

Если захотите  - вы можете получить бесплатную консультацию по вашему плану обучения - лично у ментора через телеграмм. Он оценит ваш текущий уровень и даст рекомендации.

  • 1) и 2) Профессиональное мышление при создании проектов (Java/Kotlin)

    ЗАЧЕМ: в первую очередь вам нужно разложить по полочкам основы ООП (+GRASP/SOLID) с применением одного из языков Java/Kotlin (на выбор). Тогда ваши знания будут НЕ обрывочные, а системные. Нужно сразу заложить в голове "мышление программиста" и вы любой проект будете создавать профессионально (а не просто "лишь бы работало").

    СПОСОБ: понять всю теорию и порешать задачи с применением ООП, SOLID, GRASP. Уровень задач будет повышаться по мере изучения тем. Нужно не просто набивать руку на синтаксисе, а сразу делать это с "правильным мышлением"

    ЕСЛИ ПРОПУСТИТЬ: Многие думают, что хорошо знают эти темы (хотя по факту знают процентов 50-60) и сразу "прыгают" дальше. Это большая ошибка, вам придется вернуться обратно и снова потратить время.

    Java Kotlin GRASP SOLID ООП

    1-2

    28 бесплатных уроков

    Мышление в ООП-стиле на языках Java/Kotlin с учетом принципов GRASP/SOLID

    ОТКРЫТЬ КУРС JAVA

    ОТКРЫТЬ КУРС KOTLIN

    Сначала желательно выучить Java, а потом (если нужен) - Kotlin
  • 3) Базы данных, проектирование таблиц, SQL, оптимизация

    ЗАЧЕМ: В любом приложении используются данные и вы должны уметь создавать структуру на какой-либо СУБД (PostgreSQL, MySQL и пр.) - работа с таблицами, планирование связей, загрузки тестовых данных и многое другое. Также должны уметь оптимизировать и анализировать "узкие места", из-за чего БД может работать медленно.

    СПОСОБ: С нуля создадите структуру таблиц, связи, триггеры, ключи, SQL запросы и многое другое. Если БД сразу делать правильно - то и проект (код) будет работать верно.

    ЕСЛИ ПРОПУСТИТЬ: Не сможете работать с БД и будете способны создавать только простые приложения (например, консольные, без SQL запросов)

    PostgreSQL Triggers SQL Analyze/Explain

    3

    25 бесплатных уроков

    Построение структуры таблиц с нуля на PostgreSQL, анализ запросов SQL

    Правильная структура БД позволит допустить меньше ошибок в приложении
  • 4) Основы работы с ORM Hibernate

    ЗАЧЕМ: чтобы автоматизировать запросы в БД и обработку результатов. Hibernate - один из самых популярных Java - фреймворков. На протяжении многих лет его используют почти во всех веб проектах. Сегодня его должен знать любой новичок.

    СПОСОБ: Желательно изучать Hibernate отдельно от всего остального. А потом уже совмещать с другими технологиями (Spring и др). Поэтому вы примените Hibernate на "голой" Java - это проще для новичков.

    ЕСЛИ ПРОПУСТИТЬ: Сможете создавать большие приложения только с применением чистого SQL, а это сильно снизит скорость разработки. Почти все большие проекты используют ORM Hibernate

    Hibernate JPA ORM HQL JPQL Entity Mapping

    4

    25 бесплатных уроков

    Выполнение запросов в БД и обработка результатов с помощью JPA/Hibernate

    Сможете быстрее разрабатывать приложения и сфокусироваться на бизнес-процессах, а не SQL запросах
  • 5) Быстрое создание веб сервисов на SpringBoot

    ЗАЧЕМ: современные приложения чаще всего предоставляют веб сервисы (backend), которые используются любыми клиентами. Spring - самый популярный Java фреймворк - он помогает создавать RESTful сервисы (API) быстро и без ошибок, по защищенному каналу HTTPS

    СПОСОБ: создадите с нуля RESTful сервисы на SpringBoot, которые будут обращаться к БД и реализовывать функционал "Планировщик задач" (эту БД вы делали в пред. пунктах)

    ЕСЛИ ПРОПУСТИТЬ: не сможете двигаться дальше в сторону микросервисов и всего самого интересного, ведь новые технологии основаны на SpringBoot RESTful

    Spring DataJPA RESTful JSON Postman

    5

    24 бесплатных урока

    Быстрое создание API приложения через RESTful сервисы с запросами в БД


    Применение Spring технологий для ускорения разработки backend приложения
  • 6) Микросервисная архитектура приложений (не "монолит")

    ЗАЧЕМ: сейчас все приложения переходят от монолита к микросервисам - так легче масштабироваться, обновлять ПО и т.д. Для этого в Spring Cloud существуют готовые библиотеки и решения. Вам нужно лишь правильно их использовать

    СПОСОБ: На основе RESTful сервисов для "Планировщика задач" (монолит) - будете делить его на микросвервисы c применением всех технологий.

    ЕСЛИ ПРОПУСТИТЬ: это по сути самая главная часть для backend приложений. Если пропустите - не сможете создавать современные распределенные приложения

    Spring Cloud Gateway Config Actuator Feign AMQP RabbitMQ Kafka

    6

    20 бесплатных уроков

    Современная микросервисная архитектура крупных приложений


    Готовые инструменты из Spring, которые облегчают создание микросервисов
  • 7) Добавление безопасности и работа с пользователями

    ЗАЧЕМ: Чтобы с вашими микросервисами могли работать только "правильные" клиенты, кто прошел аутенитфикацию/авторизацию - можно использовать готовые решения. Сможете хранить пользователей, их роли и многое другое.

    СПОСОБ: Создадите свой сервер авторизации Keycloak и проведете интеграцию с микросервисами - чтобы запросы выполнялись от конкретных пользователей.

    ЕСЛИ ПРОПУСТИТЬ: не сможете обезопасить свое приложение и запросы смогут выполнять кто угодно.

    OAuth2 SpringSecurity OpenID JWT Keycloak

    7

    Выход: апрель 2022

    Авторизация через OAuth2/OpenID/сервер Keycloak


    Добавление сервера для работы с пользователя, ролями, авторизацией
  • 8) и 9) Клиентские JS приложения (React.js, Angular)

    ЗАЧЕМ: Чтобы создавать современные интерактивные приложения на готовых JavaScript-фреймворках - которые будут авторизовываться и вызывать защищенные микросервисы

    СПОСОБ: Создадите несколько реализаций клиентского приложения (Планировщик задач) - на JS фреймворках

    ЕСЛИ ПРОПУСТИТЬ: приложение останется без UI - не будет кнопок, окон и пр. - можно будет вызывать только RESTful сервисы напрямую

    TypeScript Angular React.js Reactive Ajax

    8-9

    36 бесплатных уроков

    Клиентское визуальное приложение на JS фреймворках


    Создание красивых интерактивных веб приложений с Ajax запросами
  • 10) Упаковка и распространение через контейнеры

    ЗАЧЕМ: Мало создать приложение - нужно еще правильно его упаковать и доставить до конечного потребителя. Для этого существует механизм "контейнеров". Так работают все современные компании.

    СПОСОБ: Научитесь упаковывать предыдущие приложения - чтобы они разворачивались сразу с БД, настройками и пр.

    ЕСЛИ ПРОПУСТИТЬ: не сможете по-правильному доставлять приложения, сможете только "по-старинке" - вручную настраивать все по-отдельности

    Docker Jenkins Kubernetes GitHub

    10

    Выход: июнь 2022

    Контейнеры Docker/Kubernetes - упаковка и деплой приложения


    Как правильно упаковывать приложение и другое ПО - для доставки клиенту
  • 11) Правильное и быстрое обновление функционала

    ЗАЧЕМ: Чтобы клиенты не ждали ваших обновлений "по полгода" и вы могли автоматически обновлять части приложения каждый день хоть по несколько раз - причем делать это быстро и прозрачно.

    СПОСОБ: Механизмы для DevOps и принципов CI/CD, Jenkins, GitHub Actions и многое другое.

    ЕСЛИ ПРОПУСТИТЬ: придется обновлять все вручную, а это занимает много времени и неэффективно.

    CI/CD DevOps Docker GiHub Kubernetes

    11

    Выход: июль 2022

    DevOps – конвейерная разработка и обновление ПО


    Современный способ обновления приложений через CI/CD, DevOps
  • 12) Основы работы в Git/GitHub - командная разработка

    ЗАЧЕМ: Чтобы быстро и легко освоиться в крупной компании - вы должны уметь работать в Git и выполнять совместные действия в команде, знать весь цикл разработки.

    СПОСОБ: Сможете участвовать в команде над простыми и сложными проектами (с другими читателями и клиентами) - чтобы затем работать в компании. Тимлид будет давать вам обратную связь и добавлять задачи в GitHub

    ЕСЛИ ПРОПУСТИТЬ: не узнаете как правильно работать в команде - сможете разрабатывать только сольные проекты без хранения версионности.

    Slack Git GitHub

    12

    Выход: август 2022

    Версионность и командная разработка на Git/GitHub


    Научитесь программировать как профессионалы - хранить версии кода и работать в команде

Вы можете купить все перечисленные выше курсы сразу (12 шт)
в одном комплекте - со скидкой и поддержкой

Какой у вас будет результат?

Если пройдете весь цикл fullstack (или недостающие части) - сможете с бОльшей вероятностью устроиться в крупную компанию, т.к. у вас будет хороший опыт именно ПОЛНОГО цикла разработки.

Также будете иметь навыки работы в команде - это очень высоко ценится на собеседованиях.

68111919-13fe4280-fea5-11e9-9fd3-8d95f573bb0b

Сквозной проект

» ТЕОРИЯ

» ПРОЕКТ

» ЗАКРЕПЛЕНИЕ

» ДОП.ЗАДАЧИ

В отличие от других обучающих центров - тут вы будете проходить связанные, а не разрозненные курсы.

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

Дополнительно будете решать разные задачи (легкие, средние, сложные), чтобы закреплять материалы.

Практика

Закрепляйте на практике всю теорию - по шагам, от простого к сложному. 

Задачи

Создавайте задачи с нуля - с помощью преподавателя или самостоятельно. 

Решения

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

Актуальность

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

Поддержка

Для всех материалов действует поддержка преподавателя (телеграм, форум, вебинары)

Портфолио

Собирайте все свои проекты в хранилище GitHub, чтобы показывать работодателям.

Отзывы учеников

Scroll Up