Angular +
Java/Spring +
Hibernate

Новый видеокурс (изучаете в любое время), где вы создадите большой fullstack проект Angular вместе с серверными технологиями (frontend + backend). Является продолжением первого курса (основы Angular).


Длительность: ~ 10 часов, 49 уроков
Время на изучение: ~ 2 недели
Исходный код: май 2020 г.

(Версии: Angular 9, Java 8, SpringBoot 2, Hibernate 5)


Чем этот курс
отличается от других?


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


Поэтому я решил закрыть этот пробел и создал большой обучающий блок Angular на русском языке, состоящий из нескольких курсов (первая часть находится тут). Это вторая часть, продолжение.


У вас есть возможность получить все в одном месте и создать красивое большое приложение, которое можно использовать на собеседованиях как портфолио (будет большим плюсом вам) - c использованием всех современных технологий: Angular, TypeScript, Java, Spring, Hibernate, RESTful, JSON и др.

Объективно, на данный момент я пока не видел аналогичных курсов во всем интернете (возможно плохо искал, но я "перелопатил" почти все, прошел около 10 самых популярных тренингов - везде либо создавали независимые участки кода, либо проект был маленьким).


Отличия от базового курса

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

Основное отличие - в данном видеокурсе вы продолжаете проект базового курса и уже все связываете с сервером. Здесь не будет изучение основ Angular, RxJS и пр. - у вас уже должны быть фундаментальные знания.


Что такое Angular?


Это cовременный и популярный фреймворк, созданный в Google  и основанный на языке JavaScript/TypeScript. Входит в топ по запросам в интернете (наряду с React).


Скорее всего вы слышите это название постоянно, теперь самое время научиться на нем разрабатывать. Здесь можно посмотреть примеры сайтов на Angular. В этой статье я подробно описал в каких случаях пользуюсь Angular и как он может связываться, например, с Java или другими технологиями.


TypeScript + Java

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

В связке TypeScript+Java Вы можете создавать независимые приложения для любых клиентов (веб, мобильные, десктоп).

RESTful и JSON

Еще один универсальный способ "общаться" любым приложениям между собой. В данном курсе вы будете создавать frontend на Angular, который будет выполнять RESTful запросы в формате JSON и получать все необходимые данные от сервера. Очень много черновой работы возьмет на себя Spring.

SpringBoot

Эта библиотека сильно упростит вам жизнь и вы сможете создавать backend в 10 раз быстрее. В курсе применяется SpringBoot для упрощения работы - всю "грязную" работу вы делегируете библиотеке. Один попробовав - скорее всего вы всегда будете создавать приложения на SpringBoot.

Hibernate

Для ускорения разработки backend вы будете использовать JPA/Hibernate - это специальная прослойка между базой данных и вашим кодом. Hibernate отлично работает в связке со Spring, вам не нужно будет заниматься лишними настройками, которые сильно отвлекают. Упор будет на бизнес процессы и получение данных из БД.

Зарплаты fullstack специалистов

Зарплата от 90 000 рублей и выше

В данный момент на рынке труда больше ценятся fullstack разработчики, которые умеют создавать приложения как на frontend, так и на backend. У них выше зарплата и возможности.

Если у вас к тому же будет портфолио из приложений (одно из них вы создадите в данном курсе) - то на собеседованиях у вас будет преимущество перед остальными.

Что нужно знать
для изучения курса

Чтобы материалы усваивались легче,
желательно иметь базовые знания

01.

Angular

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

02.

Java

Серверный код будем создавать на Java, поэтому его знания тоже обязательны, особенно ООП абстракция-реализация, универсальный код и другие важные аспекты. Для получения проф. основ пройдите: Курс по ООП в Java

03.

Базы данных

Понимание как создавать и связывать таблицы, внешние и первичные ключи и другие основы создания БД. Сильные знания не нужны, только небольшой опыт. Для получения базовых основ пройдите: Курс БД в Java

Angular + Java/Spring

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

Какое приложение вы создадите?

Вы создадите собственную версию приложения "Планировщик дел" (Todo), в котором по шагам реализуете основные функции:

1) Интерактивное отображение задач
2) Добавление/удаление/редактирование задач
3) Добавление/удаление/редактирование категорий
4) Добавление/удаление/редактирование приоритетов
5) Отображение цвета приоритетов
6) Статистика по всем задачам
7) Поиск и фильтрация задач
8) Количество задач для каждой категории
9) Боковое слайд-меню
10) Настройки приложения
11) Справочное интро при первом запуске
12) Работа с календарем для установки даты
13) Добавление дизайн-шаблона в проект
14) Добавление material-компонентов
15) Мобильная версия приложения
16) И многое другое...

Видеодемонстрация приложения
(нажмите Play и разверните на весь экран)

Какие технологии
будете использовать

Angular

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

TypeScript

Язык разработки, основанный на Java Script, но более строгий и типизированный. Будете изучать сразу по ходу создания приложения на практике

RESTful

Веб сервисы для доступа к данным по HTTP. Самый популярный способ на данный момент, используется в большинстве приложений.

JSON

Формат передачи данных, который чаще всего используют в RESTful сервисах. Наиболее популярный на данный момент.

RxJS

Реактивный стиль создания кода, который поддерживается в Angular сразу "из коробки" - асинхронные вызовы, уменьшение кода. 

Git/GitHub

Хранение версий кода/проекта в локальном и удаленном репозиториях, связывание со средой IntelliJ IDEA Ultimate

Java

Язык разработки backend - типизированный и с поддержкой ООП. Вы будете создавать на нем весь серверный код.

Spring

Самый популярный Java фреймворк, который умеет практически все: доступ к данным, обработка запросов, внедрение объектов и пр.

Hibernate

Промежуточный слой между вашим кодом и базой данных. Нужен для того, чтобы работать с таблицами БД как с объектами, а не создавать вручную SQL запросы.

1. Введение

Настройка и установка окружения,
общие сведения

1. Общая схема взаимодействия backend и frontend

3 мин

Какие технологии и как будете их связывать внутри приложения.
Общая концепция и подходы.

2. Обновление Angular до последней версии

15 мин

Как правильно обновить локальный и глобальный Angular,
какие изменения нужно внести в проекты

2. Создание backend

Серверный код для обработки
запросов и доступа к БД

1. Создание базы данных в MySQL

16 мин

Структуры таблиц БД, связывание, типы данных, тестовые записи,
внешний ключи, триггеры, индексы

2. Триггеры для обновления данных

23 мин

Алгоритм работы триггеров для обновления статистики задач,
исключение лишних SQL запросов в БД

3. Индексы таблиц

6 мин

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

4. Создание приложения SpringBoot

16 мин

Пошаговое создание SpringBoot приложения в IntelliJ IDEA,
загрузка зависимостей, библиотек с помощью Gradle

5. Создание Entity

23 мин

Генерация классов Java на основе таблиц БД, аннотации Hibernate,
оптимизация связей между полями

6. Создание репозиториев

21 мин

Доступ к данным и формирование основных SQL запросов,
использование готовых интерфейсов Spring Data JPA

7. Добавление объектов

20 мин

Проверка работы приложения с помощью контроллеров,
добавление новых записей в БД

8. Проверка параметров

23 мин

Работа с параметрами в методах контроллера, отправка клиенту
ошибок и статусов HTTP

9. Получение объекта по id

14 мин

Получение одиночных объектов из БД по его id,
поиск и добавление в коллекцию

10. Сортировка

12 мин

Вывод данных в упорядоченном виде с помощью
готовых объектов Spring Data JPA

11. Поиск с помощью JPQL

20 мин

Реализация собственных SQL запросов помимо стандартных,
описание на языке JPQL

12. Вывод SQL запросов

11 мин

Логирование на сервере в нужном формате,
компоновка запросов

13. Работа с задачами

26 мин

Полный цикл работы над объектами задач,
связывание с другими объектами через аннотации

14. Постраничность и сортировка

21 мин

Одновременное применение постраничности и сортировки,
динамическая реализация с переданными параметрами

15. Сервисы

7 мин

Реализация уровня сервисов для правильной архитектуры
и разделения приложения на слои

3. Создание frontend

Клиентский код для создания внешнего вида
и обработки действий пользователя

1. Исходный проект

9 мин

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

2. Доработка шаблона DAO

26 мин

Применение шаблонов DAJ для правильной организации
доступа к данным на клиенте

3. Сервисы и DAO

15 мин

Обхединение сервисов и DAO интерфейсов
для создания абстрактного и конкретного уровней

4. Применение ООП

6 мин

Рефакторинг кода, оптимизация и удаление дублирующегося кода,
применение наследования и других возможностей ООП

5. Очистка проекта

10 мин

Запуск проекта без данных для последующего
пошагового добавления функционала

6. Категории

21 мин

Работа с категориями, отображение, загрузка по HTTP
в формате JSON и формирование коллекций

7. Поиск категорий

15 мин

Поиск категорий с помощью RESTful запросов
и получение коллекций из БД

8. Редактирование категорий

15 мин

CRUD операции с использованием RESTful сервисов,
отправка клиенту статусов HTTP

9. Отображение задач

8 мин

Цикл разработки для отображения задач
с внутренними объектами

10. Постраничный вывод данных

14 мин

Формирование на клиенте компонентов для постраничного
вывода данных в таблице задач

11. Поиск задач

23 мин

Поиск задач с возможностью
постраничного вывода данных

12. Редактирование задач

17 мин

CRUD операции для задач - с учетом
ссылок на внутренние объекты

13. Общая статистика

18 мин

Показ статистики по всем задачам,
процентная реализация

14. Работа с приоритетами

19 мин

Настройки приоритетов и цветов,
обновление задач

4. Бонусные уроки

Дополнительные уроки,
входят не во все комплекты

1. Мобильная верстка

10 мин

Проверка работы мобильной версии,
основные моменты верстки

2. Сохранение состояния приложения

14 мин

Сохранение и восстановление состояния приложения
(и всех его компонентов)

3. Индикатор загрузки

10 мин

Отображение пользователю индикатора загрузки
для всех HTTP запросов

4. Просмотр SQL в режиме реального времени

13 мин

Как правильно вести логирование SQL запросов на сервере MySQL,
чтобы видеть все операции, не только вашего проекта

5. Отладка (debug) TypeScript кода в IntelliJ IDEA

11 мин

Настройка и запуск клиентского кода на TypeScript,
чтобы можно было отслеживать изменения построчно

6. Отладка (debug) кода JavaScript в браузере

10 мин

Отладка JavaScript в браузере, чтобы можно было найти
причину практически любой ошибки в проекте

Что содержится в уроках

Если просто изучать теорию (читать документацию, статьи) - без практики выветрится около 80% информации.

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

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

Видео - лекция


Изучаете основные темы урока по видео - сначала без создания кода, чтобы просто усвоить информацию

Исходный код лекции


Смотрите готовый исходный код из урока-лекции - желательно его переписывать с нуля самостоятельно

Домашнее задание


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

Исходный код решения домашнего задания


Получаете готовый проект-решение домашнего задания, для сравнения со своим вариантом

Видео - объяснение решения


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

PDF презентация урока-лекции


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

Каждый проект содержит большое количество комментариев по коду. Это нужно для того, чтобы даже новичок мог разобраться в происходящем.

Вы сможете идти по коду и смотреть пошагово что происходит в данный момент.

Комментарии есть как в исходных кодах-лекциях, так и в решениях дом. заданий.

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

Как проходит обучение

После оплаты у вас будет открыт доступ к материалам в личном кабинете сайта GetCourse - это специальный сервис для онлайн-обучения. Нужно будет пройти регистрацию, если ранее еще не проходили.

Уроки доступны только онлайн, поэтому доступ к интернету обязателен.

Материалы можно изучать в любое время без ограничений.

Об авторе

Батыршинов Тимур, 34 года: основатель обучающего центра «JavaBegin». Главный тренер.

За 9 лет обучил более 78000 человек (онлайн и оффлайн).

Опыт разработки — более 15 лет.

Автор более 70 курсов по разным направлениям Java: основы, веб, Android, Spring, Angular и многие другие.

Вопросы

Доступ к материалам и поддержке - неограничен. Можете изучать и возвращаться к урокам в любое время.

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

Примерно 2-3 недели - это время, чтобы получить главный фундамент Angular и далее его развивать. За 2-3 недели вы создадите свое крупное приложение и сможете показывать его на собеседованиях.

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

Все исходные коды есть, по каждому уроку можно будет открывать в IntelliJ IDEA. Но я рекомендую все равно набирать весь код вручную, чтобы лучше запомнить его.

Вам нужно выбрать комплект курса, нажать кнопку покупки и ввести свои данные. На последнем шаге вы сможете выбрать любой удобный способ оплаты, в том числе из Украины.

Можно, но это будет стоить дороже (примерно на 30%), чем если бы вы сразу купили нужный комплект. Особенно, если покупаете курс в дни скидок.

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

Если оплачиваете наличными (через банкомат или терминал) - нужно выполнить конвертацию самостоятельно. Подробная инструкция находится в способах оплаты.

Да. Периодически выходят различные дополнения, связанные с решением недочетов или ошибок, обновляется исходный код. Вся информация будет приходить вам на email.

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

Отзывы

Посмотрите отзывы учеников по различным курсам и тренингам,
какие они получили результаты.

Где можно задавать вопросы?

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

Где можно задавать вопросы:

1) В закрытой телеграм группе

2) В комментариях под каждым уроком

3) На закрытом форуме

Стоимость

Минимум

Кто хочет изучать самостоятельно

  2900
рублей

Стандарт

Кто хочет изучать сам
+ доп. уроки

  3400
рублей

Расширенный

Поддержка по вопросам, общение в группе

3900
рублей

Премиум

+ индивидуальная
поддержка

  7900
рублей

Важное примечание!

(IntelliJ IDEA Ultimate 2020, Angular 9, Java 8, SpringBoot 2, Hibernate 5, MysQL 8)

Disclaimer

Как уже упоминалось ранее - в этом курсе не будет полного разбора с нуля как создавался Angular проект, т.к. это все было в первом базовом курсе. Вы сразу начнете использовать и дорабатывать готовый проект, подключать к нему backend, настраивать сервисы и пр.

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

Способы оплаты

Выбирайте любой удобный способ оплаты
(можно изменять в любое время по ссылке из письма)

Картой VISA, MasterCard

(онлайн оплата)

Платежная система Webmoney

(онлайн оплата)

Платежная система Яндекс.Деньги

(онлайн оплата)

Платежная система QIWI

(онлайн оплата или через любой терминал)

Платежная система PayPal

(онлайн оплата)

"Сбербанк Онлайн" или "Тинькофф Кредитные системы"

(онлайн оплата)

Приват24 (Украина)

(онлайн оплата)

Для жителей Казахстана

(Казком или Kaspi - homebank, банкоматы, кассы, терминалы)

Безналичный расчет для физ. и юр.лиц

(через банк)


Денежные переводы из любой страны

(наличными через банк)

Салоны сотовой связи

(наличными)

Любой банкомат "Сбербанка"

(наличными)


P.S. Не нашли подходящий способ оплаты? Напишите нам

ИП Батыршинов Тимур
Сырымгалиевич

ИИН 851110300087