Этот репозиторий содержит мои учебные проекты и примеры кода, которые я создал, проходя курс "Java tutorial for beginners" от Mosh на YouTube.
Вот перечень тем, которые я уже прошел, и тех, что еще предстоит изучить:
- Introduction / Введение
- Installing Java / Установка Java
- Anatomy of a Java Program / Анатомия Java-программы
- Main.javaYour First Java Program / Ваша первая Java-программа
- Cheat Sheet / Шпаргалка
- How Java Code Gets Executed / Как выполняется Java-код
- Course Structure / Структура курса
- Types / Типы данных
- F001_Variables.java / Переменные
- F002_PrimitiveTypes.java / Примитивные типы
- F003_ReferenceTypes.java / Ссылочные типы
- Primitive Types vs F003_ReferenceTypes.java / Сравнение примитивных и ссылочных типов
- F004_Strings.java / Строки
- F005_EscapeSequences.java / Escape-последовательности
- F006_Arrays.java / Массивы
- F007_MultiDimensionalArrays.java / Многомерные массивы
- F008_Constants.java / Константы
- F009_ArithmeticExpressions.java / Арифметические выражения
- F010_OrderOfOperations.java / Порядок операций
- F011_Casting.java / Приведение типов
- F012_TheMathClass.java / Класс Math
- F013_FormattingNumbers.java / Форматирование чисел
- F014_ReadingInput.java / Чтение ввода
- F015_ProjectMortgageCalculator.java / Проект: Калькулятор ипотеки
- F016_SolutionMortgageCalculator.java / Решение: Калькулятор ипотеки
- F017_TypesSummary.java / Сводка по типам данных
- F018_ControlFlow.java / Управление потоком
- F019_ComparisonOperators.java / Операторы сравнения
- F020_LogicalOperators.java / Логические операторы
- F021_IfStatements.java / Условные операторы if
- F022_SimplifyingIfStatements.java / Упрощение условных операторов if
- F023_TheTernaryOperator.java / Тернарный оператор
- F024_SwitchStatements.java / Операторы switch
- F025_ExerciseFizzBuzz.java / Упражнение: FizzBuzz
- F026_ForLoops.java / Циклы for
- F027_WhileLoops.java / Циклы while
- F028_DoWhileLoops.java / Циклы do...while
- F029_BreakAndContinue.java / Break и Continue
- F030_ForEachLoop.java / Цикл for-each
- F031_ProjectMortgageCalculator.java / Проект: Калькулятор ипотеки
- F032_SolutionMortgageCalculator.java / Решение: Калькулятор ипотеки
- Control Flow Summary / Сводка по управлению потоком
- Clean Code / Чистый код
Я также активно изучаю Java на платформе JavaRush и Курс "Основы Java и практикум решения задач на Java" Stepik, что помогает мне укрепить и расширить мои знания и навыки программирования.
Этот репозиторий содержит материалы в рамках прохождения курса "Основы Java и практикум решения задач на Java" на Stepik. В курсе узнаем основы программирования на языке Java и освоим ключевые концепции и навыки. Курс состоит из 11 модулей, каждый из которых покрывает разные аспекты программирования на Java.
-
1. Основы работы с языком Java
- В данном модуле описываются принципы языка Java и его отличия от других языков программирования, дается помощь с правильной установкой Java на компьютер для удобного дальнейшего использования и разбирается базовый синтаксис программы на Java.
- 1.1 Что такое Java и зачем она нужна
- 1.2 Среда разработки, установка Java
- 1.3
Перваяпрограмма на Java. Hello, World! Main.java
-
2. Типы данных и операции над ними
- В этом модуле мы научимся определять переменные, разберем какие типы данных есть в Java и какими особенностями они обладают. Также рассматриваем ввод-вывод данных и простейшие операции над разными типами данных.
- 2.1 Типы данных и переменные
- 2.2 Ввод-вывод данных
- 2.3 Символьные и логические типы данных
- 2.4 Числовые типы данных
-
3. Логические выражения и условный оператор
- Рассматриваем логические операторы и их применение с разными типами данных. Изучаем условный оператор и все удобства его использования.
- 3.1 Логические операции
- 3.2 Логические выражения if/else
- 3.3 Вложенность логических выражений. switch/case
-
4. Циклы
- В этом модуле посмотрим что такое циклы, зачем они нужны, какими особенностями обладают циклы Java.
- 4.1 Циклы while/do while
- 4.2 Цикл for
- 4.3 Вложенные циклы
-
5. Массивы
- Здесь мы узнаем, что такое массивы, какие массивы бывают, в каких ситуациях какие массивы лучше использовать. Кроме того, посмотрим на двумерные массивы и на работу с ними.
- 5.1 Статический массив
- 5.2 Методы работы с массивом
- 5.3 Двумерный массив
-
6. Методы
- Здесь мы разберем, что такое метод, из чего состоит метод, как создать свой метод, а также научимся импортировать готовые методы и посмотрим на применение наиболее полезных из них. Рассмотрим рекурсию.*
- 6.1 Введение в методы
- 6.2 Область видимости переменной
- 6.3 Рекурсия
-
7. ООП (Объектно-ориентированное программирование)
- Узнаем что такое ООП, какие особенности имеет ООП в Java. Познакомимся с понятием объекта. Рассмотрим классы и их взаимодействие друг с другом. Углубимся в использование сторонних библиотек. Будем создавать свои классы.
- 7.1 Классы и объекты
- 7.2 Конструктор класса, статические поля и методы
- 7.3 Наследование и полиморфизм
- 7.4 Абстрактные классы и интерфейсы
- 7.5 Внутренние и анонимные классы
-
8. Collections
- Мы разберем, что такое Collections и какие структуры данных предоставляются в стандартной библиотеке Java для удобного хранения и обработки данных.
- 8.1 Что такое Collections
- 8.2 ArrayList и LinkedList
- 8.3 Множества и словари
- 8.4 Очередь и стек
-
9. Ошибки и исключения
- Рассмотрим, что такое исключения и как обрабатывать ошибки в Java.
- 9.1 Исключения и работа с ними
-
10. Заключение
- Подведение итогов и рекомендации по дальнейшему обучению.
-
11. Задачи
- Подготовка к вступительным испытаниям в Высшую школу экономики.
- 11.1 Задание 1
- 11.2 Задание 2
- 11.3 Задание 3
- 11.4 Задание 4
- 11.5 Задание 5
Каждый модуль включает в себя теоретический материал и множество практических задач для закрепления навыков.
В этом репозитории вы найдете мои черновики и примеры кода, которые я использую для укрепления знаний, полученных в ходе обучения. Все примеры синхронизированы с моим локальным окружением и регулярно обновляются.
Если у вас есть предложения или замечания по улучшению кода, пожалуйста, не стесняйтесь оставлять их в разделе Issues этого репозитория.
Этот проект является открытым и доступен для всех желающих учиться программированию на Java.
Создано с ❤️ и усердием в процессе обучения Java.