Основы языка программирования Java
Этот курс является первой ступенькой в подготовке Java-программистов. В ходе обучения последовательно
рассматриваются ключевые слова и конструкции языка программирования Java, приемы создания простых
Java-программ, основы объектно-ориентированного программирования. Тренинг начинается с рассмотрения
основ объектно-ориентированного программирования (ООП) и концепций объектно-ориентированного
анализа и проектирования и, как уже говорилось, выше является вводным и рассчитан на студентов,
практически без опыта программирования. Курс позволит студентам получить базовые знания и практические
навыки, необходимые для успешного усвоения материала следующего тренинга – «Основы
программирования на языке Java (уровень II)».
В ходе тренинга студенты научатся:
- Анализировать предметную область задачи и находить методы ее решения
- Применять ключевые концепции объектно-ориентированного программирования
- Выявлять объекты предметной области
- Разрабатывать диаграммы классов для проблемной области
- Создавать иерархию классов, основанную на диаграммах классов
- Разрабатывать и тестировать Java-приложения
- Описывать и использовать переменные примитивных типов
- Повторно использовать однажды написанный объектно-ориентированный код
- Записывать и использовать выражения, условные операторы, циклы
- Применять инкапсуляцию, разрабатывать и вызывать методы
- Разрабатывать конструкторы для создания объектов
- Создавать и использовать одномерные и многомерные массивы
- Расширять возможности существующих классов с помощью наследования
- Люди, которые владеют базовыми математическими, логическими и аналитическими навыками решения проблем и которые хотят приступить к изучению языка программирования Java
- Технические писатели, веб-разработчики, технические руководители, а также такие технические специалисты не являющиеся программистами, как, например, системные администраторы
- Начинающие программисты и те, кто предпочитает начать изучение программирования с языка Java, либо желают вернуться к основам и систематизировать свои знания
- Специалисты с опытом объектно-ориентированного программирования, такие как C-разработчики, так же получат пользу от этого курса, поскольку он поможет им начать миграцию в мир Java
- Урок 1. Общая характеристика языка Java
- История языка Java
- Байт-код
- Виртуальная машина Java (JVM)
- Трансляция, интерпретация и компиляция
- JIT-компиляция
- JDK и его структура
- Команды JDK: javac, java, appletviewer, jar (en10)
- Их использование и параметры
- Поиск и загрузка классов
- Создание и запуск первой приложения на Java
- Выход из программы и завершения ее работы
- Использование IDE Eclipse/NetBeans/Intellij IDEA для создания и выполнения программ
- Урок 2. Типы данных и основные операции с ними
- Алфавит языка
- Комментарии
- Ключевые слова
- Простые (примитивные) типы данных
- Идентификаторы, выбор имен идентификаторов
- Переменные и константы
- Объявления и инициализация переменных
- Типы данных: простые и по ссылке
- Область видимости и время жизни переменных
- Операторы
- Операции: арифметические, присваивания, отношения и логические
- Преобразование и приведение числовых типов
- Приоритет операций
- Использование круглых скобок
- Урок 3. Поток управления
- Составной оператор (блок)
- Условный оператор и его виды
- Оператор switch
- Урок 4. Поток управления
- Циклы: for, while, do while
- Бесконечные циклы
- Прерывание потока управления, метки
- Оператор goto и причины почему его не следует применять
- Урок 5. Массивы
- Объявления и инициализация массивов, в т.ч. анонимных
- Линейные массивы
- Итерация по элементам массива
- Массивы и присвоения
- Передача и возврат массивов в/из методов
- Копирование массивов
- Класс Arrays: заполнение, сравнение элементов и их сортировка
- Поиск в массивах
- Урок 6. Массивы
- Многомерные массивы, «неравные» массивы
- Методы: аргументы переменной длины
- Параметры командной строки
- Строки
- Класс String. Неизменные объекты
- Хранение строк в памяти
- Основные операции класса String (создание, конкатенация, сравнение, поиск символов и подстрок в строках и др.). Преобразование простых типов данных
- Урок 7. Строки
- Разбивка строк: класс StringTokenizer. Переменные объекты: классы StringBuffer и StringBuilder
- Основные методы. StringBuffer vs StringBuilder
- Урок 8. Введение в ООП
- Объекты и классы
- Классы. Поля и методы (определение, синтаксис объявления)
- Урок 9. Объекты и классы
- Спецификаторы доступа public и private
- Поля классов: инициализация явная и по умолчанию, спецификатор final и константы
- Доступ к полям и методам
- Методы: параметры (ссылки и простые типы) и возвращаемые, использование set и get- методов, перезагрузки методов, правила перезагрузки
- Урок 10. Введение в UML
- Объектная модель. Основные положения: абстрагирование, инкапсуляция, модульность, иерархия
- Диаграммы классов UML.
- Объекты и классы. Объекты. Определение (с примерами). Состояние. Поведение.
- Операции. Идентичность. Инкапсуляция
- Конструкторы: конструкторы по умолчанию, вызов одного конструктора из другого
- Блоки инициализации
- Статические поля и методы: инициализация константы, статические блоки инициализации. Использование this для доступа к членам класса
- Сбор мусора и удаления объектов
- Урок 11. Отношение между объектами
- Зависимости, их разновидности
- Обобщение
- Ассоциации
- Реализации
- Связи, их множественность
- Урок 12. Наследование и полиморфизм. Пакеты
- Наследование и полиморфизм как инструмент создания ПО. Суперкласс и подклассы, отношение обобщения, наследование в Java. Вызов конструкторов суперклассов, порядок вызовов. Ключевое слово super ()
- Переопределение методов, правила переопределения. Наследование и статические поля и методы классов. Абстрактные классы и методы, – понятие, вызов конструкторов, реализация методов в субклассы
- Интерфейсы. «Множественное» наследование. Определение и реализация интерфейсов. Расширение интерфейсов. Композиция как альтернатива множественному наследованию
- Полиморфизм. Иерархия наследования
- Преобразование и приведение типов. Использование instanceof. Отказ от наследования: терминальные (final) методы и классы. Включение как альтернатива множественному наследованию
- Пакеты. Вложенность пакетов. Повторное использование кода и пакеты. Защита доступа. Импорт: классов, статических методов и полей
- Урок 13. Класс Object
- Глобальный суперкласс Object
- Методы equals (), hashCode (), toString (), finalize (), clone () и др
- Правила реализации equals () и hashCode ()
- Интерфейс Cloneable и его реализация
- Клонирование: поверхностное и глубокое
- Внутренние классы. Перечисление
- Синтаксис объявления
- Создание объектов внутренних классов
- Поля и методы внутренних классов
- Вложенность внутренних классов и доступ к членам внешних классов
- Ссылка this во внутреннем классе
- Доступ к полям и методам внешнего класса с внутреннего
- Внутренние классы и спецификаторы доступа
- Вложенные интерфейсы
- Применение внутренних классов
- Внутренние локальные классы (Method-LocalInnerClasses)
- Анонимные внутренние классы
- Вложенные (внутренние статические) классы (static nested classes)
- Создание экземпляров
- Доступ к экземпляру внешнего класса
- Компиляция программ с внутренними классами
- Перечисление. Перечисление как классы. Методы values (), valueof (), name (), ordinal (). Константы, конструкторы, методы и поля
- Перечисление и конструкция switch. Импорт членов перечислений
- Урок 14. Работа с базами данных
- Основы построения баз данных. Нормальные формы. Запросы SELECT, INSERT, UPDATE,
- DELETE
- JDBC
- Driver, Connection, Statement, ResultSet
- Урок 15. Обработка ошибок и исключения
- Подходы к обработке ошибок времени выполнения
- Понятие исключения и исключительной ситуации
- Иерархия классов исключений в Java
- Контролируемые (что проверяются) и неконтролируемые (не проверяются) исключения
- Генерация исключительной ситуации и оператор throws
- Объявления контролируемых исключений, ключевое слово throws
- Throws и перезагрузки методов
- Перехват исключений
- Перехват «всех» исключений
- Обработка исключений
- Повторная генерация исключений
- Блок finally: освобождение ресурсов
- Создание собственной иерархии исключений
- Регистрация ошибок, логирования: логеры, уровень логгер, уровень сообщений, обработчики (объекты подкласса java.util.logging.Handler)
- Пример
- Система ввода-вывода
- Потоки, иерархия классов потокового ввода-вывода: понятие потока, потоки
- ввода/вывода, механизм работы с потоками, иерархия потокового ввода-вывода
- Субклассы FilterOutputStream и FilterInputStream
- Байтовые потоки
- Символьные потоки
- Класс File. Класс RandomAccessFile
- Сериализация и десериализация объектов: понятие, назначение, реализация
- Пример
- Урок 16. Desktop-приложения
- SWING, AWT. Пример простого приложения с GUI
- Универсальные типы
- Параметризованные типы: классы и интерфейсы. Параметры типа
- Ограничения, наложенные на параметризованные типы: простые типы, инстанцирование, суперкласс, исключение. Параметризованные типы и JVM
- Классы коллекций
- Понятие абстрактного типа данных (АТД)
- Структуры данных: списки, стеки, множества, дерева, карты
- Обход коллекций: интерфейсы Iteratorта и ListIterator, цикл «foreach»
- Компараторы
- Класс Collections: поиск и сортировка элементов, заполнения, синхронизование представления, неизменные представления и др.
- Урок 17. Классы коллекций
- Понятие абстрактного типа данных (АТД)
- Структуры данных: списки, стеки, множества, дерева, карты
- Обход коллекций: интерфейсы Iteratorта и ListIterator, цикл «foreach»
- Компараторы
- Класс Collections: поиск и сортировка элементов, заполнения, синхронизование
- Представления, неизменные представления и др.
- Урок 18. Знакомство с XML
- Понятие формальной корректности и допустимости. Примеры
- Многопоточность
- Понятие потока. Особенности параллельного выполнения
- Потоки-демоны
- Приоритеты потоков. Метод yield ()
- Состояние потока: создание потоков, -runnable и -runninig – потоки
- Урок 19. Классы BigInteger и BigDecimal. Основные операции
- Документирование кода
- Включение комментариев
- Документирование пакетов
- Дескрипторы общего назначения
- Комментарии к классам, методам и полей
- Использование javadoc
- Документирование кода
- Урок 20. Универсальные типы
- Параметризованные типы: классы и интерфейсы. Параметры типа
- Ограничения, наложенные на параметризованные типы: простые типы, инстанцирование, суперкласс, исключение.
- Параметризованные типы и JVM
- Защита программного проекта
Чтобы успешно освоить материал данного тренинга, студенты должны уметь:
- Создавать и редактировать текстовые файлы, используя текстовый редактор
- Использовать веб-браузер для поиска информации
- Выполнять действия с командной строкой, запускать программы на выполнение
- Анализировать логические задачи, находить алгоритм решения задачи
- Писать простые программы с использованием произвольного языка программирования
Запись на курс
Код курса | EA-Java BAS |
---|---|
Длительность | 5д (40ч) |
Код экзамена | |
Стоимость без НДС | 16 800 грн. |
Ближайшие даты | |
|