Практикум на ЭВМ, осень 2012, 271
Новости и события
Новости и события
Требования
Требования
- В курсе нужно сдать все задания и сделать 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: проверить следующие числа
- 0.001
- 0.1e-20
- 1.0e20
- 1.0e50
- Робот
- Сортировка - общий интерфейс
- Монетки
Задание 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
Успеваемость
Успеваемость
Легенда:
- + - принято
- ? - есть серьезные вопросы (возможно, были комментарии к коммиту)
- возможно, есть проблемы с пониманием условий задачи
- S - стилистические проблемы:
- проблемы с обязательными комментариями
- проблемы с именованием
- проблемы с форматированием
- и прочие.
- T - отсутствуют тесты или тестовый набор не полон
- - - превышен допустимый срок сдачи программы, оставлена на сессию.