Skip to content

sh-vasily/java-basics

Repository files navigation

Материалы по курсу "Основы языка и платформы Java для анализа данных"

Тема 1. Основы языка

Тема 2. Типы данных

Задание 1:

Дан следующий код, необходимо реализовать метод split.

public class NumberSample {

    public static void main(String[] args) {
      // вызов split - проверка работы
    }

    public static BigDecimal[] split(BigDecimal amount, int n) {
        // разделить amount на n частей
        // если остается остаток, прибавить его к первому числу
        return null;
    }
}

Тема 3. Объектно ориентированное программирование

Задание 2:

По примеру класса Money реализовать класс Quantity:

  • с поддержкой единиц измерения
  • арифметических операций: add, subtract, multiply, divide
  • реализовать операцию деления на N равных частей с добавлением остатка к первому значению (см. предыдущее задание)
  • для проверки работы реализовать функцию main() или Unit-test по примеру
  • Место для реализации
  • Тесты для проверки

Тема 4. Коллекции

Задание 3:

  • Реализовать интерфейс Library в LibraryImpl с использованием Java Collections
  • Для проверки работы реализовать Unit-test
/* Институтская библиотека */
public interface Library {
    /* Регистрация новой книги */
    void addNewBook(Book book);
    /* Студент берет книгу */
    void borrowBook(Book book, String student);
    /* Студент возвращает книгу */
    void returnBook(Book book, String student);
    /* Получить список свободных книг */
    List<Book> findAvailableBooks();
}

Тема 5. Stream API

Тема 6. Maven

Тема 7. Ввод-вывод в Java

Задание 4:

  1. Реализовать интерфейс Library (из задания 3), сохраняющий и читающий данные в/из таблиц базы данных
  2. Реализовать загрузку данных о книгах из CSV файла в таблицу
  3. Реализовать выгрузку списка доступных книг в CSV файл

Тема 8. Взаимодействие с базами данных в Java

Порядок сдачи заданий

  1. Сделать fork этого репозитория к себе в аккаунт img/img.png
  2. Клонировать репозиторий(именно из своего аккаунта) на свою машину(инструкция по интеграция гита с intellij размещена ниже) img/img_1.png
  3. Выполнить задание(ссылки и постанока задачи размещены выше)
  4. Сделать коммит и пуш img/img_2.png
  5. Создать pull request в основной репозиторий курса(https://github.com/sh-vasily/java-basics) img/img_3.png При этом необходимо, чтобы тесты для задания, которое вы сдаете успешно прошли в github actions. img/img_4.png К примеру, если это задание по коллекциям, рядом с collections должен быть зеленый кружок.

Софт

Книги по Java

  • Брюс Эккель - Философия Java
  • Head First Java, Кэти Сиерра и Берт Бейтс
  • Кей Хорстманн «Java. Библиотека профессионала» (Core Java)

Курсы по Java

Курсы по git

Курсы по алгоритмам

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages