Категория:Технологии программирования (10 семестр)

Материал из Кафедра ИУ5 МГТУ им. Н.Э.Баумана, студенческое сообщество
Перейти к навигации Перейти к поиску

Технологии программирования
Преподаватель: Тарнакин А.О.
Лекций: ?
Семинаров: нет
Лабораторных работ: 3
Домашних заданий: нет
Рубежных контролей: нет
Ходить: по желанию
Что сдавать: экзамен

Технологии программирования. А конкретно - Java.

Лекции

За явкой следить не будут. Вики-конспектов не будет, потому что лекции даются не для конспектирования. Весь материал тут.

Лабораторные работы

Всего 3 лабораторных.

Выполняются на языке Java. ПО для разработки можно загрузить здесь. Необходимы JRE и JDK. В качестве IDE вполне хватит NetBeans. Сервером приложений лучше выбрать Apache Tomcat, а не GlassFish.

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

Задания умышленно не детализирую, мне интересно посмотреть на ваше творчество.

Сдача лабораторных (и курсовой) происходит по принципу "чем раньше - тем проще". В начале вообще по коду ничего отвечать не надо и нет дополнительных заданий. Но начиная где-то с мая сдать станет ощутимо сложнее.

Лабораторная работа №1

Работа с базовыми классами стандартных пакетов java.io, java.net, java.util.

Задание:

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

Ссылки по теме:

Проникнуться предметной областью поможет эта песня.

Лабораторная работа №2

Выполняется на базе ЛР №1.

Работа с БД, многопоточность, синхронизация, журналирование.

Задание:

  • программа должна быть выполнена как многопоточное приложение, использующее java.util.concurrent и позволяющее ограничивать загрузку процессора;
  • индексация каждой странички должна производиться в отдельном потоке, содержимое сохранять в БД тройками вида слово - частота упоминания на странице - страница. Найденные на страничке ссылки (href="http://...") должны обрабатываться отличным от текущего потоком;
  • программа должна выполнять поиск по словам и выводить адреса проиндексированных ранее страничек в порядке, пропорциональном частоте появления слова на страничке;
  • программа должна писать отладочные сообщения посредством стандартных механизмов SLF4J.

Ссылки по теме:

Лабораторная работа №3

Выполняется на базе ЛР №2.

Создание web-сервисов.

Задание:

  • программа должна быть выполнена в виде web-приложения, индексирующего в фоновом режиме содержимое страничек, и обрабатывать поисковые запросы посредством REST web-сервиса.

Ссылки по теме:

Если решите делать на SOAP - передумайте обратно. Тарнакин и все правильные чуваки не одобряют.

Готовые лабораторные работы

Год Вариант исполнения Работа Описание Ссылка
2013 1 ЛР №1 сбор только русских слов через RegExp
Notepad++, командная строка
загрузить
2013 1 ЛР №2 СУБД PostgreSQL (схема БД есть), настройки из config.ini
NetBeans
загрузить
2013 1 ЛР №3 СУБД PostgreSQL (схема БД из ЛР №2)
NetBeans, Apache Tomcat
загрузить
2013 2 все Описание доступно по ссылке github
2013 3 все СУБД PostgreSQL (схема БД прилагается)
NetBeans, GlassFish
загрузить

Курсовая работа

Страница курсовой работы находится здесь.

Экзамен

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

Списать легко, и Тарнакин знает, что почти все списывают. Но при ответе нужно разбираться в том, что ты списал, иначе оценка будет удручающая.

В билете два теоретических вопроса. Задач / практики нет.

Загрузки:

Литература

Эта категория в данный момент пуста.