Полный видео курс доступен по ссылке
Всем привет. Меня зовут Петр. Я - Java разработчик с опытом работы более 6 лет. На своем опыте я знаю, как сложно освоить новый язык или технологию. Когда человек начинает изучать Java, первое, с чем он сталкивается, - это огромное количество технологий, фрейворков и библиотек. Человек теряется, что же ему учить. Создается впечатление, что порог вхождения в Java программисты очень высок. Данным курсом я хочу показать обратное. За пару месяцев интенсивного обучение по курсу вы овлаедете достаточными знаниями для устройтва на работу, прохождения собеседоавния и выполнения требуемых задач на работе. Особо хотел бы отметить, что это практический курс, поэтому важную роль играет выполнение всех заданиий в каждом занятии. Только тогда будет положительный результат.
В настоящий момент я занимаюсь разработкой книги к данному курсу, в которой будет собран полный код всех решений к заданиям с подробными комментариями, изложены наиболее оптимальные подходы в программировании, шаблоны проектирования и антипаттерны. Она будет содержать исходные коды и все необходимые учебные материалы курса.
Стоимость данной книги 690 рублей.
Планируемый срок окончания книги август 2015. Каждый подавший заявку на приобретение книги до 01.08.2015 получит скидку в размере 50%.
Заявку на приобретение книги отправляйте мне на почту parsentev@yandex.ru.
Программа курса.
- Понятия JVM. Типы данных
- Синтаксис языка. Классы. Объекты. Условия. Циклы. Массивы
- Наследование. Инкапсуляция. Полиморфизм
- Коллекции. List, Set, Map, Tree
- Инструменты сборки. Хранения кода. Maven, Git
- Базовые понятия клиент-серверных приложений. Протоколы передачи
- Обработка http запросов в Java. Servlets. JSP
- Базовые понятие по HTML, CSS, JSьти а
- Реализация MVC через Servlets. JSP
- Работа с базой данных. JDBC
- Базовый синтаксис SQL
- Использование POJO в работе с базами. ORM.
- Hibernate, Mapping
- Hibernate, CrUD
- HQL
- Spring IoC
- Spring Template + Hibernate
- Spring MVC
Задания
- Какой Вы хотите добиться целью изучения языка Java?
- Как Вы можете проверить что цель достигнута?
- Какой срок реализации Вашей цели?
- JDK 1.7 http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
- Maven https://maven.apache.org/download.cgi?Preferred=ftp://mirror.reverse.net/pub/apache/
- Tomcat https://tomcat.apache.org/download-70.cgi
- MsysGit https://msysgit.github.io/
- PostgreSQL http://www.postgresql.org/download/
- IDEA https://www.jetbrains.com/idea/
Задания
- Установить все пакеты на своем компьюере.
- Прописать необходимые переменные окружения.
- Проверить работоспособность каждого элемента из списка.
Детальное описание https://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html
Задания
- Создать класс Calculate.
- Добавить арифметические вычисления + - * / ^
- Сделать его адаптивным для типов int, short, long, float, double.
Дополнительная информация
- http://docs.oracle.com/javase/tutorial/java/nutsandbolts/while.html
- http://docs.oracle.com/javase/tutorial/java/nutsandbolts/if.html
Задания
- Создать класс Calculator.
- Добавить два класс клиента ArgRunner, InteractRunner.
- ArgRunner - данные получает из параметров запуска программы.
- InteractRunner - данные вводит пользователь.
- Добавить возможность выборка операции. Валидацию. Повторное использование результат вычисления.
Детальное описание
Задания
- Проверить весь проект по пунктам из занятия.
- Поправить нарушения этих правил.
Дополнительная информация
- https://docs.oracle.com/javase/tutorial/java/IandI/subclasses.html
- https://docs.oracle.com/javase/tutorial/java/IandI/polymorphism.html
Задания
- Создать программу для обслуживания клиники домашних питомцев.
- Должна быть возможно добавлять клиентов.
- Указывать какой питомец есть у клиента.
- Возможность искать по кличке питомца, по имени клиента.
- Редактировать имя клиента, имя питомца.
- Удалять клиента, питомца.
- Возможность валидации.
Дополнительная информация
- http://maven.apache.org/guides/getting-started/maven-in-five-minutes.html
- https://www.jetbrains.com/idea/features/ant_maven.html
- http://junit.org/
- http://en.wikipedia.org/wiki/Black-box_testing
Задания
- Добавить maven для проекта Клиника. Калькулятор.
- Добавить тесты в эти проекты.
Дополнительная информация
Задания
- Заменить сообщения о нарушении логики в приложении на пробрасывания исключительных ситуаций.
- Добавить тесты, которые проверяют эти исключения.
Дополнительная инфармация https://maven.apache.org/plugins/maven-jar-plugin/examples/manifest-customization.html https://docs.oracle.com/javase/tutorial/deployment/jar/manifestindex.html Задания
- Сделать прогрумму клиники исполняемой.
- Добавить файл README.md и описать в нем заначение программы, возможности.
- Попросить своих друзей попробовать использовать программу.
- Получить впечатление, отзывы от друзей. Провести работу по исправлению.
дополнительная информация ftp://ftp.fixme.ch/free_for_all/Ebook/IT%20eBooks/Software%20Engineering/System%20&%20Scientific/Java/Java%20Generics%20and%20Collections/Java%20Generics%20and%20Collections.pdf
Задания
- Создать свою реализацию коллекций ArrayList - на базе массива.
- Создать свою реализацию LinkedList - на базе связанных списков.
- Заменить массивы в проекте клиника на вашу реализацию.
Дополнительная информация http://uet.vnu.edu.vn/~chauttm/e-books/java/Effective.Java.2nd.Edition.May.2008.3000th.Release.pdf
Задания
- Создать класс пользователь.
- Провести эксперимент с коллекциями ArrayList, HashSet, HashMap
- Перекрыть equals, hashCode.
- Перекрыть только equals
- Перекрыть только hashCode
- Не перекрывать
- Объяснить результаты работы коллекций. Метолов contains, add, size, put
Дополнительная информация https://docs.oracle.com/javase/tutorial/essential/concurrency/index.html
Задания
- Реализовать эммуляцию клиентов и администратора в проекте клинила для домашних питомцев.
Дополнительная информация http://docs.oracle.com/javase/tutorial/uiswing/
Задания
- Завершить игру сапер реализованную на основе Swing
Дополнительная информация http://en.wikipedia.org/wiki/Client%E2%80%93server_model http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol
Задания
- Расширить модель User.
- Сделать возможность поиска.
Дополнительная информация http://www.oracle.com/technetwork/articles/java/servlets-jsp-140445.html
Задания
- Реализовать проект клинику домашних животных в Web приложение
Дополнительная информация https://code.google.com/p/mockito/
Задания
- Добавить тестирование сервлетов.
- Добиться пплощади покрытия больше 80%
Видео http://www.w3schools.com/html/
Задания
- Добавить стили.
- Добавить валидацию за счет js.
- Добавить разнообразные формы.
Задания
Задания
Задания
Задания
Задания
Задания
Задания
Задания
Задания