Веб-приложение: (проект)

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск
Ментор Яковлев Виктор Вадимович
Учебный семестр Весна 2016
Учебный курс 1-й курс
Максимальное количество студентов, выбравших проект: 5



Что это за проект?

Страницы UNIX‑руководства (Man Pages) – это набор текстов документации по системе команд (группы 1, 6, 8), системным вызовам ядра (группа 2), стандартной библиотеке Си и POSIX (группы 3 и 3p), форматам файлов (группа 5). В UNIX-подобных системах отображение страницы выполняется с помощью команды

               man [номер_группы] имя_руководства; 

результат отображается в терминале, из которого запущена команда. Физически man-страницы реализованы в виде обычного текста (как правило, сжатого с помощью gzip), который содержит специальные теги, которые описывают его структуру (заголовок, разделы, выделения цветом и шрифтом и т. д.). Веб приложение – это программа, пользовательский интерфейс которой реализуется использованием веб-браузера. В отличии от набора обычных веб-страниц, приложения, как правило, реализуются с использованием одной страницы (Single Page Application).

Требуется реализовать веб-приложение, реализующее каталогизированный справочник, состоящий из статей Man Pages. Приложение должно быть полностью реализовано средствами HTML, CSS и JavaScript (либо одним из других языков программирования, транслируемым в JavaScript), и для его работы не должны использоваться возможности веб-сервера, отличные от выдачи статического контента или генерации индекса каталога. В качестве файлов данных необходимо использовать файлы из поставки Unix-подобной системы (формат groff, сжатый gzip) без предварительной модификации.

Чему вы научитесь?

  • Разработка одностраничных веб-приложений
  • Обработка текстовых данных

Какие начальные требования?

  • Знание технического английского языка для чтения документации
  • Знание основ языка разметки HTML
  • Знание концепций процедурного и объектно-ориентированного программирования

Какие будут использоваться технологии?

  • Веб-фреймворк Polymer [1]
  • Язык JavaScript, TypeScript [2] или Dart [3] на усмотрение исполнителя

Темы вводных занятий

  • Введение в HTML/CSS/JavaScript, настройка рабочего окружения на базе WebStorm.
  • Компоненты в Polymer, создание с их помощью пользовательского интерфейса.

Направления развития

Реализация поддержки других форматов справочной документации.

Критерии оценки

4 балла. Реализовано веб-приложение, отображающее каталог с содержимым, и содержание man-страниц в виде их исходного текста

6 баллов. Реализовано преобразование текста из groff в HTML

8 баллов. Реализована поддержка сжатых gzip страниц

+1 балл. Интерфейс реализован в соответствии с требованиями концепции Google Material Design [4]

+1 балл. Реализован поиск по содержимому справочника

+1 балл. Реализована корректная работа навигации средствами браузера (кнопка “Назад” работает правильно)

Ориентировочное расписание занятий

В зависимости от расписания