Junior Java Developer
Изучай материалы в удобном для тебя порядке. Каждая тема содержит теорию, практические примеры и задания.
Git
Git — это система контроля версий, которая используется практически в каждом проекте разработки. Без знания Git невозможно эффективно работать в команде и управлять кодом.
После освоения ты получишь навыки:
- Работа с репозиториями и историей изменений
- Создание и слияние веток
- Работа с удаленными репозиториями (GitHub, GitLab)
- Разрешение конфликтов и откат изменений
Git
Система контроля версий. Научись работать с репозиториями, ветками, коммитами и удаленными серверами.
# Инициализация репозитория
git init
# Добавление файлов в индекс
git add .
# Создание коммита
git commit -m "Добавлена новая функция"
# Создание и переключение на ветку
git checkout -b feature/new-feature
# Слияние веток
git merge feature/new-feature
# Отправка на удаленный репозиторий
git push origin mainДля чего это нужно:
Git — обязательный инструмент для любого разработчика. Без него невозможно работать в команде, отслеживать изменения в коде и управлять версиями проекта. Знание Git требуется на 100% вакансий разработчика.
После освоения сможешь:
- Создавать и управлять репозиториями
- Работать с ветками и слиянием изменений
- Синхронизировать код с удаленными репозиториями
- Разрешать конфликты при совместной работе
- Откатывать изменения и восстанавливать код
Java
Java — один из самых популярных языков программирования для создания enterprise-приложений. Изучение Java открывает путь к разработке серверных приложений, веб-сервисов и мобильных приложений.
После освоения ты получишь навыки:
- Понимание основ программирования и синтаксиса Java
- Работа с коллекциями и структурами данных
- Объектно-ориентированное программирование
- Подготовка к изучению фреймворков (Spring, Hibernate)
Java Core
Основы языка Java: переменные, типы данных, операторы, условия, циклы, методы и основы ООП.
class Main {
public static void main(String[] args) {
// Переменные и типы
String name = "Анна";
int age = 25;
// Условия
if (age >= 18) {
System.out.println(name + " - совершеннолетний");
} else {
System.out.println(name + " - несовершеннолетний");
}
// Циклы
for (int i = 1; i <= 5; i++) {
System.out.println("Итерация: " + i);
}
// Вызов метода
greet(name);
}
static void greet(String name) {
System.out.println("Привет, " + name + "!");
}
}Для чего это нужно:
Java Core — это фундамент всего программирования на Java. Без понимания основ невозможно двигаться дальше к изучению фреймворков и созданию реальных приложений. Это база, на которой строится вся дальнейшая карьера Java-разработчика.
После освоения сможешь:
- Писать простые программы на Java
- Работать с переменными и типами данных
- Использовать условия и циклы для логики программы
- Создавать и вызывать методы
- Понимать основы объектно-ориентированного подхода
Java Collections
Коллекции в Java: List, Set, Map. Изучи структуры данных и научись эффективно работать с ними.
import java.util.*;
class CollectionsExample {
public static void main(String[] args) {
// List - упорядоченный список
List<String> names = new ArrayList<>();
names.add("Анна");
names.add("Иван");
names.add("Мария");
// Set - уникальные элементы
Set<Integer> numbers = new HashSet<>();
numbers.add(1);
numbers.add(2);
numbers.add(1); // дубликат не добавится
// Map - пары ключ-значение
Map<String, Integer> ages = new HashMap<>();
ages.put("Анна", 25);
ages.put("Иван", 30);
// Итерация по коллекциям
for (String name : names) {
System.out.println(name);
}
}
}Для чего это нужно:
Коллекции используются в 99% Java-приложений. Без понимания List, Set и Map невозможно эффективно работать с данными. Это критически важный навык для решения реальных задач в разработке.
После освоения сможешь:
- Хранить и обрабатывать списки данных (List)
- Работать с уникальными наборами данных (Set)
- Создавать пары ключ-значение (Map)
- Выбирать правильную коллекцию для задачи
- Эффективно итерироваться по данным
Java OOP
Объектно-ориентированное программирование: классы, наследование, полиморфизм, инкапсуляция, абстракция.
// Базовый класс
class Animal {
private String name; // инкапсуляция
public Animal(String name) {
this.name = name;
}
public void makeSound() {
System.out.println("Животное издает звук");
}
}
// Наследование
class Dog extends Animal {
public Dog(String name) {
super(name);
}
// Полиморфизм - переопределение метода
@Override
public void makeSound() {
System.out.println("Гав-гав!");
}
}
// Использование
Animal animal = new Dog("Бобик");
animal.makeSound(); // Гав-гав!Для чего это нужно:
ООП — это основа современной разработки на Java. Все фреймворки и библиотеки построены на принципах ООП. Без глубокого понимания классов, наследования и полиморфизма невозможно писать качественный и поддерживаемый код.
После освоения сможешь:
- Создавать классы и объекты
- Использовать наследование для переиспользования кода
- Применять полиморфизм для гибкости программ
- Инкапсулировать данные и методы
- Проектировать архитектуру приложений