[LevelUP]Основы программирование на языке Java. Уровень 1
Описание:
Курс Основы программирования на Java. Уровень 1 рассчитан на слушателей не знакомых с программированием, и является введением в программирование, алгоритмизацию и структуры данных. Каждый участник на курсе получит знания и навыки, которые необходимы для старта в профессию любому начинающему разработчику.
На курсе будут рассматриваться основные алгоритмы и структуры данных, работа со средой разработки(IDE), основные понятия и концепции программирования, присущие любому объектно-ориентированному языку. Курс дает навыки программирования на примере языка Java. Разбираются основы языка, организация программного кода, основы построения объектно-ориентированных моделей и т.п.
Практика:
В течение курса на практике, а также в качестве домашнего задания, решаются академические задачи, такие как создание калькулятора, текстового редактора, игры крестики-нолики и так далее.
Данные примеры позволят слушателям изучить основы Java, применение в работе с файлами, создание графических пользовательских интерфейсов.
В итоге, участники получат все необходимые базовые знания, а также приобретут навыки разработки ПО на языке Java и навыки применения основных концепций ООП.
Очень приветствуются ваши реальные задачи, которые необходимо решить. Приносите, будем разбирать на курсе вместе!
Скрытое содержимое.
Описание:
Курс Основы программирования на Java. Уровень 1 рассчитан на слушателей не знакомых с программированием, и является введением в программирование, алгоритмизацию и структуры данных. Каждый участник на курсе получит знания и навыки, которые необходимы для старта в профессию любому начинающему разработчику.
На курсе будут рассматриваться основные алгоритмы и структуры данных, работа со средой разработки(IDE), основные понятия и концепции программирования, присущие любому объектно-ориентированному языку. Курс дает навыки программирования на примере языка Java. Разбираются основы языка, организация программного кода, основы построения объектно-ориентированных моделей и т.п.
Практика:
В течение курса на практике, а также в качестве домашнего задания, решаются академические задачи, такие как создание калькулятора, текстового редактора, игры крестики-нолики и так далее.
Данные примеры позволят слушателям изучить основы Java, применение в работе с файлами, создание графических пользовательских интерфейсов.
В итоге, участники получат все необходимые базовые знания, а также приобретут навыки разработки ПО на языке Java и навыки применения основных концепций ООП.
Очень приветствуются ваши реальные задачи, которые необходимо решить. Приносите, будем разбирать на курсе вместе!
1. Знакомство с алгоритмами и языком Java.
- Процесс создания приложения;
- Способы составления алгоритмов;
- Знакомство с виртуальной машиной Java;
- Интерпретация кода в JVM;
- Кроссплатформенность Java; версии Java (ME, SE, EE);
- Установка JDK и среды разработки Intellij IDEA;
- Знакомство с интерфейсом IDEA;
- Создание первого проекта и изучение его структуры;
- Стартовая точка программы. Приложение «Hello, World»;
- Консоль приложения и команда System.out.println();
- Создание алгоритма программы математических вычислений;
- Переменные в Java; типы данных; арифметические операторы;
- Реализация программы математических вычислений.
- Алгоритм и реализация программы решения линейного и квадратного уравнений.
- Ресурс контроля версий GitHub.
- Конструкция условного перехода if-else;
- Логические операторы;
- Реализация программы решения квадратного уравнения;
- Знакомство с классом Math;
- Вложенность конструкций и область видимости;
- Явное и неявное преобразование типов;
- Знакомство с классом String; Особенности конкатенации строк;
- Взаимосвязь типов char и String; константы.
- Пользовательский интерфейс программы решения квадратных уравнений (консоль).
- Типы данных float, char.
- Основные методы класса Math.
- Оперативная память компьютера;
- Представление массива данных в памяти;
- Объявление и инициализация массивов;
- Алгоритм программы генерации массива со случайными числами;
- Реализация программы;
- Знакомство с циклами. Цикл while;
- Сокращенная запись арифметических операций;
- Постфиксная и префиксная инкрементация/декрементация;
- Алгоритм поиска минимума/максимума в массиве;
- Реализация алгоритмов поиска; цикл for; вложенность циклов;
- Простейший алгоритм сортировки массива;
- Реализация алгоритма сортировки;
- Реализация программы сортировки массива на основе более сложного алгоритма.
- Сортировка «пузырьком», быстрая сортировка.
- Создание новых классов; структура класса;
- Понятия поля и методы;
- Знакомство с объектами; конструкторы;
- Состояние и свойства (поведение) объектов;
- Параметры и аргументы; выделение памяти;
- Жизнь и смерть объектов;
- Разница между примитивными и ссылочными переменными;
- Общение между объектами; программа имитации группового общения объектов;
- Создание гибкой структуры данных (списка) на основе массива; пошаговая реализация списка;
- Добавление методов для улучшения функциональности списка. Добавление методов сортировки.
- Классы обертки.
- Знакомство с Generics; класс Object;
- Параметризация созданного списка;
- Введение в библиотеку java.util; знакомство с документацией Java API;
- Принцип работы коллекций; типы коллекций и организация данных в них;
- Работа с ArrayList, HashMap;
- Знакомство со стеком и его необходимостью в работе компьютера;
- Организация стека, как структуры данных на основе коллекции;
- Добавление функциональности к стеку.
- Класс Stack в java.util.
- Четыре кита ООП;
- Модификаторы доступа;
- Ключевое слово static;
- Сокрытие данных или основы инкапсуляции;
- Геттеры и сеттеры;
- Ключевое слово this;
- «Хороший тон» программирования;
- Имитация получения информации из базы данных;
- Выделение общего в объектах;
- Наследование в Java;
- Применение наследования на примерах;
- Абстракция в ООП;
- Переопределение поведения при наследовании;
- Реализовать методы вывода геометрических фигур на консоль (продолжение примера с занятия).
- Двумерные массивы.
- Переопределение и перегрузка.
- Библиотека javax.swing
- Знакомство с компонентами, как с объектами;
- Основные компоненты Swing;
- Создание первого графического приложения;
- Основные и обязательные методы класса JFrame;
- Классы JButton, JLabel, JTextField и JTextArea;
- Добавление компонентов на фрейм;
- Менеджеры (диспетчеры) компоновки. BorderLayout;
- Основные геттеры и сеттеры компонентов;
- Обработчики событий;
- Внутренние классы;
- Обработка событий нажатия кнопки;
- Простейший текстовый редактор;
- Совершенствование текстового редактора. Добавление функциональности.
- Менеджеры компановки.
- Интерфейсы.
- Класс JPanel и менеджер компановки FlowLayout;
- Формирование более гибкого графического интерфейса;
- Менеджер компановки BoxLayout;
- Вложенность компонентов интерфейса;
- Менеджер компановки GridLayout;
- Создание игры крестики-нолики;
- Изменение внешнего вида компонентов;
- Классы JMenuBar, JMenu, JMenuItem;
- Реализация проверки выигрыша в игре.
- Менеджер компановки GridBagLayout;
- Прокрутка (скроллинг) в Swing;
- Создание простейшего графического калькулятора;
- Интерфейсы и их преимущество в ООП;
- Анонимные классы;
- Использование методов класса Math в калькуляторе;
- Создание компонентов интерфейса через наследование классов java.swing.
- Добавление функциональности в калькулятор.
- Добавление скроллинга в текстовый редактор.
- Множественная реализация интерфейсов.
- Библиотека java.io;
- Потоки ввода-вывода;
- Введение в исключения;
- Обработка и проброс исключений;
- Чтение и запись текстового файла;
- Добавление возможности сохранения текста в файл и загрузки из файла в текстовом редакторе;
- Добавление возможности ввода имени загружаемого и сохраняемого файлов в текстовом редакторе.
- Правильная обработка исключений.
- Файловые потоки ввода-вывода.
- Конструкция try-with-resources.
http://levelp.ru/courses/programmirovanie/basics-of-programming-in-the-java-language-level-1/