
JVA-084-SELF Java-разработчик: от первого кода до успешного релиза
Начало: В любое время
Длительность: 1 неделя
СертификатОнлайн
Описание курса
Освойте Java с нуля, дойдите до первого успешного релиза. Комплексный курс от теории до практики, включая разработку полностью законченного консольного приложения.
- Понятие переменной и области ее действия.
- Структура Java-класса.
- Создание исполняемых Java-приложений с методом main().
- Запуск Java-программы с командной строки, включая вывод в консоль.
- Настройка компиляции и режима работы JVM.
- Платформенная независимость, процедурный подход и объектная ориентация в Java, принцип инкапсуляции.
- Импорт Java-пакетов.
- Объявление и инициализация, в т.ч. приведение примитива.
- Дифференциация между ссылочными и примитивными переменными.
- Стек и динамическая память (heap).
- Чтение и запись объектных полей.
- Жизненный цикл объекта (создание, переброс ссылки, сборка мусора).
- Разработка кода, использующего классы-оболочки (Double, Integer и т.д.).
- Тест по итогам модуля.
- Применение операторов, включая переопределение приоритета.
- Проверка идентичности строковых и других объектов с использованием оператора == и метода equals().
- Конструкции if и if-else, а также тернарный оператор.
- Применение оператора switch.
- Тест по итогам модуля.
- Объявление, инстанциация и применение одномерных и многомерных массивов.
- Создание и применение циклов while, for (в т.ч. for-each) и do-while.
- Сравнение циклических конструкций.
- Применение операторов break и continue.
- Тест по итогам модуля.
- Создание методов, которые принимают аргументы и возвращают значения, в т.ч. перегрузка методов.
- Применение ключевого слова static к методам и полям.
- Создание и перегрузка конструкторов, включая влияние на дефолтный конструктор.
- Применение модификаторов доступа.
- Реализация принципов инкапсуляции в классе.
- Поведение объектных ссылок и примитивных переменных, передаваемых в методы.
- Тест по итогам модуля.
- Наследование и его преимущества.
- Разработка кода, демонстрирующего полиморфизм, включая переопределение методов и противопоставление объектного типа ссылочному.
- Необходимость в приведении типов.
- Применение ключевых слов super и this для доступа к объектам и конструкторам.
- Применение абстрактных классов и интерфейсов.
- Тест по итогам модуля.
- Противопоставление контролируемых исключений неконтролируемым, в т.ч. ошибкам.
- Создание блока try-catch и влияние исключений на штатный алгоритм работы программы.
- Преимущества обработки исключений.
- Создание и вызов метода, возбуждающего исключение.
- Работа с типичными классами исключений.
- Тест по итогам модуля.
- Манипуляция данными посредством класса StringBuilder и его методов.
- Создание и манипуляция String-объектами.
- Создание и манипуляция календарными датами посредством классов из пакета java.time.
- Объявление и применение коллекций ArrayList заданного типа.
- Составление простого лямбда-выражения, которое потребляет Predicate.
- Тест по итогам модуля.
- Общее представление о TDD (Test-Driven Development).
- Знакомство с модульными тестами и фреймворком JUnit.
- Общее представление о целях и приемах рефакторинга.
- Знакомство с Git.
- Введение в Maven.
- Тест по итогам модуля.
- Двухстабильная логика, булева алгебра, таблицы истинности.
- КМОП-структура, инвертор, NAND-вентиль.
- АЛУ, регистры, микропроцессорные команды.
- Двоичное представление, в т.ч. отрицательных и вещественных чисел (2’C).
- Практика: разработка NOR-вентиля и RS-защелки.
- Разработка консольного приложения (игра Blackjack Solitaire).