- В курсе нужно сдать все задания и сделать 2-3 доклада
- Доклады с презентацией.
- Оформление кода
- Язык программирования - Java
- Все домашние задния должны быть выложены в собственный публичный репозиторий на github.com
- Форматирование - Java style
- Шапка файла - описание, ФИО, (c) год
- Разумные комментарии
- Юнит-тесты - Junit
Задание 1
- Дописать проверку, является ли строка палиндромом. См. git репозиторий в комп.классах \\fs\vpolozov\12_71.git
- Объекты - создать объектную модель придуманного мира, учитывая следующие формальные требования
- Иерархия классов с наследованием
- Не менее 6 классов в иерархии
- Глубина иерархии не менее 3
- Ширина иерархии не менее 3
- Хэш-таблица
- Реализовать класс хэш-таблицы:
- описать и реализовать методы для работы структуры данных
- ключ - строка, значение - object
- придумать свою хэш-функцию (для ключей-строк)
- Реализовать пример использования
Задание 2 - срок 05.10
- Проверка email адреса на валидность с помощью библиотеки RegExp.
- Hint: проверить следующие адреса
- Определяются ли как правильные:
- a@b.cc
- victor.polozov@mail.ru
- my@domain.info
- _.1@mail.com
- coins@hermitage.museum
- Определяются ли как неправильные:
- a@b.c
- a..b@mail.ru
- .a@mail.ru
- yo@domain.domain
- 1@mail.ru
- Скобки - (), [], xml
- Корень числа в double.
- Убедиться что результат считается с хорошей точностью для маленьких чисел и завершается для больших.
- Hint: проверить следующие числа
- Робот
- Сортировка - общий интерфейс
- Монетки
Задание 3 - Калькулятор
Калькулятор с арифметическими выражениями и переменными на основе хэш-таблицы.
Задание 4 - Многопоточное программирование.
Многопоточная реализация умножения матриц.
Задание 5 - Интерпретатор
Задание 6 - тренинг по юнит-тестам (16.11 - 20.11)
Смотри задание.
- Василий Калитеевский - хэш функции (MD5, SHA1) - переделать доклад
- Богдан Клепач - криптография с открытым ключом (05.10) - доделать презентацию
- Антон Онищук - swing (09.10)
- Дмитрий Копытов - параллельное программирование на Java (12.10)
- Павел Русинов - Java Bytecode (12.10)
- Дмитрий Чернов - сборка мусора в HotSpot (16.10)
- Abstract Factory - уже было рассказано
- Factory Method
- Prototype
- Singleton
- Adapter
- Bridge
- Composite
- Facade
- Flyweight
- Proxy
- Command
- Interpreter
- Iterator
- Mediator
- Memento
- Observer
- State
- Template