Решение задачи: либо полное переопределение класса System (вместе с out и т д.), либо делается static блок инициализации, где на консоли печатается другое и выполняется System exit()


Скачать 338.52 Kb.
НазваниеРешение задачи: либо полное переопределение класса System (вместе с out и т д.), либо делается static блок инициализации, где на консоли печатается другое и выполняется System exit()
страница6/8
ТипРешение
filling-form.ru > Туризм > Решение
1   2   3   4   5   6   7   8

3.4Лабораторная работа 1.4. Планировщик задач


Краткое описание

Написать программу, которая выполняет основные функции планировщика задач. Взаимодействие с пользователем осуществляется через консоль, либо через простенький графический интерфейс (если студент знает, как такой интерфейс реализуется).

Детальное описание

Планировщик задач состоит из журнала задач, пользовательского интерфейса для добавления и удаления задачи, а также системы оповещения пользователя о каком-то событии, т.е. в назаначенное в планировщике время должно происходить нечто, говорящее пользователю о том, что у него запланирована некоторая задача (см. ниже).

Журнал задач должен храниться на диске и загружаться при запуске программы, а также сохраняться при выходе. Формат файла может быть произвольный, по желанию можно использовать XML.

В качестве пользовательского интерфейса может выступать консоль или графический интерфейс. Определенными командами пользователь может удалять запланированные задачи, добавлять новые с указанием необходимых параметров (см. пункт ниже).

Система оповещения может иметь различную функциональность. В качестве базовой предлагается следующая система. В назначенное в планировщике время на экране должно появляться окошко, в котором сообщается название задачи и ее описание (можно также добавить пару кнопочек: «отложить задачу» и «завершить задачу»). По согласованию с куратором можно использовать и другую систему оповещения.

Параметры планируемой задачи:

- название

- описание

- время (дата) оповещения

- контакты

Реализация планировщика должна быть выполнена по следующим принципам. Функционал, реализующий работу с журналом задач, пользовательским интерфейсом и системой оповещения а также сам журнал задач, должен находиться в различных классах. Т.е. пользовательский интерфейс в отдельном классе, работа с журналом задач в отдельном, сам журнал тоже в отдельном и система оповещения в отдельном. Эти классы могут общаться между собой через интерфейсы, но при этом ни один из них не должен реализовывать логику другого.

Требования

(* помечены обязательные требования)

  1. Реализация Планировщика задач должна соответствовать указанным выше принципам.*(6)

  2. Интуитивно понятный интерфейс работы с пользователем.*(4)

  3. Наличие функций добавления и удаления задач с сохранением их в общий журнал задач на диск.*(4, +4 за использование формата XML)

  4. Система оповещения пользователя.* (3, +3 за использование Swing, +2 за доп. функциональность с «завершить» или «отложить» задачу)

  5. Возможность программы сворачиваться в системный трей (с использованием systray4j). (4)

  6. Программный код должен удовлетворять Code Conventions(4) и снабжен JavaDoc (2).

Модификации задания

  1. Использование различных систем оповещения (базовая, звуковой сигнал + вывод в консоль, запуск другой программы, написанной на Java).

  2. Графический/текстовый интерфейс.

  3. Формат хранения журнала задач на диске: текстовый файл, сериализованные объекты, XML, сжатый текстовый файл (zip).

Итого за задачу: 36 баллов

4Лабораторные работы №2 по курсу «Язык программирования Java»

4.1Лабораторная работа 2.1. Instant Messenger


Краткое описание

Создать клиент-серверное приложение для обмена сообщениями в реальном времени.

Детальное описание

Клиентская часть должна быть реализована в графическом варианте. После запуска клиент пытается установить соединение с сервером, получает список всех доступных для общения пользователей, которым может отправлять/получать сообщения. Необходимо оповещать клиента об изменение в доступном списке контактов.

Серверная часть может быть выполнена в как графическом варианте, так и в консольном.

Протокол общения между клиентом и сервером и, возможно, сервером и сервером предлагается разработать самостоятельно. Рекомендуется для этих целей использовать XML.

Требования

Звездочками * отмечены обязательные требования, в скобках – количество баллов (может быть уменьшено, если требование реализовано не полностью, с ошибками, с замечаниями и т.п.).

Клиент

  1. графическая реализация пользовательского интерфейса (внешний вид на ваше усмотрение), требования по дизайну минимальные (6) *

  2. дополнительные возможности UI (на усмотрение куратора, за основу можно брать любые популярные im) (3)

  3. поддержка режимов диалога с конкретным пользователем (2) *, группой (2) и чата (2)

  4. сохранение настроек клиента в реестре (с использованием JNI) (7)

  5. поддержка динамически подгружаемых по Reflection plug-in'ов (4)

  6. реализация клиента на J2ME (20)

Сервер

  1. передача сообщений между клиентами (3) *

  2. поддержка авторизации (3) *

  3. поддержка безопасного соединения с помощью JCA/JCE (8)

  4. ведение логов/истории сообщений и т.д. (2)

  5. модерирование, фильтры (5)

  6. поддержка настоек с использованием графического интерфейса и/или конфигурационного файла (список запрещенных пользователей, номер ожидающего подключения порта, ведение логов (да/нет) и т.д.), рекомендуется для хранения использовать XML (5)

  7. организация пула, потоков, для обслуживания клиентов, т.е. когда новый клиент подсоединяется к серверу, для его обслуживания поток создается не с нуля, а берется из пула, где находятся уже заранее проинициализированные потоки, готовые к обслуживанию (4)

Поддержка нескольких серверов (для клиентов это должно быть абсолютно прозрачно, т.е. клиентское приложение ничего не должно знать о структуре сервера):

  1. поддержка кластерной конфигурации, т.е. каждый сервер при запуске пытается установить соединения с соседними серверами, которые указываются в конфигурационном файле (8)

  2. баланс нагрузки, на каждом сервере должно быть приблизительно равное число клиентов (12)

  3. в случае выхода из строя одного сервера, клиенты должны распределиться между оставшимися серверами, возможны два варианта работы серверов или как равноправные ноды (12) или с менеджером кластера (10)



Общие требования:

  1. внутренний протокол клиент/сервер: архитектура, документация (7) *

  2. внутренний протокол сервер/сервер: архитектура, документация (4)

  3. архитектура, code style, java doc и прочие вещи на усмотрение куратора (6)



1   2   3   4   5   6   7   8

Похожие:

Решение задачи: либо полное переопределение класса System (вместе с out и т д.), либо делается static блок инициализации, где на консоли печатается другое и выполняется System exit() iconТиповая форма договора банковского вклада с неснижаемым остатком в рублях «Премиальный»
Года), с одной стороны, и "Вкладчик" (либо "Вноситель" в случае внесения вклада на имя третьего лица), с другой стороны, вместе либо...

Решение задачи: либо полное переопределение класса System (вместе с out и т д.), либо делается static блок инициализации, где на консоли печатается другое и выполняется System exit() iconКонтрольная работа по термодинамике выполняется либо в отдельной...
Изучение дисциплины базируется на знании материала дисциплин: «Физика», «Химия», «Математика», «Гидравлика», «Инженерная графика»,...

Решение задачи: либо полное переопределение класса System (вместе с out и т д.), либо делается static блок инициализации, где на консоли печатается другое и выполняется System exit() iconR/3 System Release 46B 30. 10. 2000
Разработка с использованием abap-инструментальных средств (упражнения) 28

Решение задачи: либо полное переопределение класса System (вместе с out и т д.), либо делается static блок инициализации, где на консоли печатается другое и выполняется System exit() iconPhone Conversation”
В его основе лежит решение какой-либо задачи, проблемы (от греческого problema- «задача, задание»)

Решение задачи: либо полное переопределение класса System (вместе с out и т д.), либо делается static блок инициализации, где на консоли печатается другое и выполняется System exit() icon1 общая характеристика гостиничного бизнеса 6
Характеристики компьютерных программ бронирования (на примере Fidelio Hotel Management System) 52

Решение задачи: либо полное переопределение класса System (вместе с out и т д.), либо делается static блок инициализации, где на консоли печатается другое и выполняется System exit() iconПро gps
«Global Positioning System», которое дословно можно перевести, как «глобальная система позиционирования»

Решение задачи: либо полное переопределение класса System (вместе с out и т д.), либо делается static блок инициализации, где на консоли печатается другое и выполняется System exit() iconDiasoft System Architect
Перед началом работы с системой описания бизнес-объектов необходимо проверить у себя на машине

Решение задачи: либо полное переопределение класса System (вместе с out и т д.), либо делается static блок инициализации, где на консоли печатается другое и выполняется System exit() iconРешение задач (с показом алгоритма решения)
Эссе — (фр essai – попытка, проба), небольшое прозаическое сочинение свободной композиции, выражающее впечатления автора от чего...

Решение задачи: либо полное переопределение класса System (вместе с out и т д.), либо делается static блок инициализации, где на консоли печатается другое и выполняется System exit() iconРекомендации ООН st/SG/AC. 10/30 «Globally Harmonized System of Classification...
Оон st/SG/AC. 10/30 «Globally Harmonized System of Classification and Labelling of Chemicals (Согласованная на глобальном уровне...

Решение задачи: либо полное переопределение класса System (вместе с out и т д.), либо делается static блок инициализации, где на консоли печатается другое и выполняется System exit() iconДокументация об открытом запросе предложений
Работы по техническому обслуживанию программного комплекса интегрированной диспетчерской службы на базе модуля pi-system

Вы можете разместить ссылку на наш сайт:


Все бланки и формы на filling-form.ru




При копировании материала укажите ссылку © 2019
контакты
filling-form.ru

Поиск