Основы языка программирования 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ч)
Код экзамена
Стоимость без НДС6 700 000 UZS
spinner-it

На жаль, у звязку з війною ІТЕА завершила свою діяльності в Україні.

This will close in 20 seconds