Задание на расчетно-графическую работу по дисциплине
"Программирование на языке Java".
Цель работы
Расчетно-графическая работа (РГР) по дисциплине "Программирование на языке Java" имеет своей целью систематизацию, закрепление и расширение теоретических знаний, углубленное изучение методов разработки программ различного назначения на языке Java.
Задание на РГР
Разработать приложение на языке Java, в соответствии с вариантом задания.
Требования к РГР
  1. приложение должно быть разработано на языке Java версии 1.4 или вышe;
  2. текст программы должен быть оформлен в соответствии с соглашениями, принятыми для языка Java (отступы, наименования и пр.);
  3. для всех элементов программы (классы, методы, атрибуты и пр.) должны быть представлены комментарии разработчика /** */;
  4. к тексту программы должна прилагаться документация, сформированная по комментариям разработчика (Javadoc);
  5. приложения, для которых предусматривается пользовательский интерфейс, должны быть выполнены с использованием графических библиотек AWT или Swing (кроме J2EE приложений);
  6. работа выполняется индивидуально.
Варианты исполнения работы
Разработанная программа может быть представлена в одном из следующих вариантов:
  1. приложение J2SE (простое приложение или апплет);
  2. серверное приложение J2EE (сервлет, проверка на сервере Apache Tomcat);
  3. J2ME (мидлет, проверка на эмуляторе или на телефоне).
Комплектность РГР
При защите лабораторной работы должны быть представлены:
  1. исходные тексты программы (в электронном виде);
  2. откомпилированное приложение;
  3. документация Javadoc;
  4. пояснительная записка;
  5. документация по работе с приложением.
 
Пояснительная записка должна содержать:
  1. титульный лист (в заголовке указать кафедру ИТиС);
  2. содержание;
  3. цель работы;
  4. задание;
  5. основная часть;
  6. библиографический список.
 
В общем случае основная часть должна содержать следующие разделы:
  1. введение;
  2. анализ задания;
  3. выбор наилучшего метода решения поставленной задачи;
  4. разработка текстов программы;
  5. тестирование программы;
  6. заключение.
По согласованию с преподавателем некоторые разделы могут быть объединены, либо один раздел может быть разделен на несколько.
 
Текст программы предоставляется в электронном виде, однако, при необходимости, некоторые блоки исходных текстов могут быть приведены в пояснительной записке.
Варианты заданий
Вариант задания выбирается каждым студентом самостоятельно. Один и тот же вариант задания не могут выполнять более двух студентов.
 
По согласованию с преподавателем возможно выполнение задания, не указанного в списке.
 
Примечание: часть заданий, в зависимости от сложности, имеет бонус. В случае успешного выполнения задания, бонус добавляется к баллам за РГР.
 
Сетевые приложения:
 
 
Задание
Комментарий
Бонус
1
HTTP-сервер
Должен быть реализован веб-сервер, предоставляющий доступ к статическим HTML-документам, изображениям и архивным файлам. Проверка работоспособности - при помощи браузера Mozilla и Internet Explorer.
3
2
HTTP-сервер с поддержкой SSI
То же, но должна быть реализована поддержка директив SSI (минимум - #include)
5
3
FTP-сервер
Сервер должен предоставлять возможность просмотра каталога файлов, скачивания и закачивания файлов по стандартному протоколу FTP. Проверка работоспособности - любой FTP-клиент (FAR, MC, и пр.)
5
4
Веб-браузер (только текст и ссылки, без форматирования)
Реализуется в виде графического приложения. Должен отображать HTML-страницы с указанного сервера. Поддержка перехода по ссылкам.
3
5
Веб-браузер (с изображениями)
То же, но с отображением графических изображений.
5
6
FTP-клиент
Консольное приложение, команды open, ls, cd, get, close, bye. Должен подключаться к любому стандартному ftp-серверу.
2
7
Графический FTP-клиент
То же, но с графическим интерфейсом и возможностью докачки файлов.
5
8
Чат
Чат-клиент с возможностью обмена информацией с таким же клиентом без сервера.
Графический интерфейс, произвольный протокол. Возможность поиска клиентов в локальной сети.
2
9
HTTP-прокси с возможностями файрвола
Поддержка протокола HTTP, возможность ограничивать набор доступных портов, набор доступных серверов. Все обращения к серверу должны записываться в журнал. Проверка - при помощи браузера Mozilla или Internet Explorer.
4
10
ICQ-клиент
Графический интерфейс получение списка контактов, отправление и получение сообщений. Проверка на произвольном аккаунте ICQ.
4
11
IRC-клиент
Аналогично ICQ-клиенту, проверка на произвольном IRC-сервере.
4
 
Игры:
 
12
Крестики-нолики 3х3
Стандартное поле 3х3, возможность игры с компьютером.
-
13
Крестики-нолики 5х5
Размер поля задается пользователем. Необходимо выставить 5 крестиков или ноликов в ряд. Возможность игры с компьютером.
2
14
Тетрис
Стандартные фигуры, размер стакана задается. Таблица рекордов.
-
15
Игра «Змейка»
Разные уровни сложности, лабиринты и пр.
-
16
Морской бой
Стандартные фигуры, возможность игры с компьютером.
2
17
Реверси
Возможность игры с компьютером.
4
18
Шашки
Возможность игры с компьютером.
4
 
Прикладные программы:
 
19
Калькулятор
Аналог calc.exe в Windows
-
20
Калькулятор со скобками
Вычисление произвольных выражений со скобками. Пример: 10+20*(5-3/(8+2))
2
21
Построение графиков
Построение графика произвольной функции. Поддержка тригонометрических функций. Пример:
y=10*sin(2*x+1)
3
22
Текстовый редактор
Аналог "Блокнота".
-
23
Текстовый редактор RTF
Поддержка RTF
3
24
Просмотрщик графических файлов
Поддержка JPG, GIF, PNG, TIFF, BMP
3
 
J2EE приложения:
 
25
Гостевая книга
Возможность добавления и редактирования записей
3
26
Гостевая книга с оформлением
То же + возможность создания шаблона страницы с использованием XSL.
5
27
Фотогалерея
Возможность просмотра и добавления изображений. Создание альбомов.
5
28
Интернет-магазин
Ведение каталога товаров, обслуживание покупателей
5
29
Система голосования
Создание Интернет-голосований, ведение статистики
5
30
Система тестирования
Создание тестов, проведение тестов, статистика по пользователям.
5