My tasks for the course javarush.ru
План курса:
01 Знакомство с Java: вывод на экран, типы String и int.
02 Знакомство с Java: переменные, методы, классы
03 Первая программа: ввод с клавиатуры, работа в IDE
04 Знакомство с ветвлениями и циклами
05 Знакомство с классами: написание своих классов, конструкторы
06 Знакомство с объектами: написание своих объектов, время жизни, статические переменные
07 Массивы и списки: Array, ArrayList. знакомство с Generics
08 Коллекции: LinkedList, HashSet. HashMap. Date - дата.
09 Знакомство с исключениями: try. catch, throws, multy-catch.
10 Приведение примитивных типов: расширение и сужение.
11 Основы ООП: основные принципы, наследование, инкапсуляция.
12 Основы ООП: перегрузка, полиморфизм, абстракция, интерфейсы.
13 Интерфейсы: сравнение с абстрактным классом, множественное наследование.
14 Приведение типов, instanceof. Большая задача на интерфейсы.
15 Перегрузка методов, особенность вызова конструкторов
16 Знакомство с нитями: Thread. Runnable, start, join, interrupt, sleep
17 Знакомство с нитями: synchronized, volatile, yield
18 Знакомство с потоками: InputStream OutputStream. FilelnputStream. FileOutputStream
19 Знакомство с потоками: Reader/Writer. FileReader. File Writer
20 Сериализация
21 Устройство объекта Object: equals. hashCode. clone, wait, notify. toStringQ,...
22 String: mutable, immutable, format. StringTokenizer. StringBuilder. StringBuffer
23 Внутренние классы, примеры: Map.Entry
24 Внутренние классы, особенности реализации
25 Создание и остановка нитей: start, interrupt, sleep, yield.
26 Совместный доступ к монопольным данным: synchronized, volatile
27 DeadLock. Wait, notify. notifyAll
28 ThreadGroup. ThreadLocal. Executor. ExecutorService. Callable
29 Autoboxing, особенности реализации
30 Операторы: числовые, логические и бинарные
31 Работа с файлами и архивами
32 RMI и динамический прокси
33 JSON. JavaScript
34 Рекурсия. Сборка мусора и типы ссылок в Java. Дотирование
35 Создаем первое веб приложение. Работа с Tomcat и Idea
36 Основные паттерны для создания веб приложений. Углубленное изучение коллекций
37 Паттерны проектирования. Утилитные классы Arrays. Collections
38 Методологии разработки. Аннотации в Java. Иерархия исключений
39 Системы контроля версий: Git и SVN. Generics
40 URL URL. REST сервисы. Создаем свое клиент-серверное приложение.