Электронные таблицы в браузере (проект)

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



Контактная информация

Канал в Telegram для объявлений: @hse_cs_projects_15x_yacovlev

Нужно создать приватный репозиторий в BitBucket или GitHub, и добавить в collaborators ментора:

- BitBucket: victor_yacovlev
- GitHub: victor-yacovlev

После этого - заполнить форму https://goo.gl/forms/lzoRPbyyWJskFc2j2, в которой нужно указать ссылку на страницу с репозиторием.

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

Реализовать онлайн вариант программы для работы с электронными таблицами (упрощенный аналог Google Spreadsheets или Microsoft Excel Online).

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

1. Проектированию и разработке клиентской части веб-приложений

2. Основам синтаксического анализа

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

1. Знание современных технологий HTML5 (WebSocket, Canvas и т.д.)

2. Уверенное знание языка JavaScript

3. Опыт работы с одним из клиентских веб-фреймворков (Polymer, Angular, React и др.)

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

1. Преимущественно JavaScript и любой frontend-фреймворк на усмотрение студента

2. Django для реализации серверной части

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

1. Введение в задачу

2. Практические аспекты формальных грамматик

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

Возможна реализация веб-приложения, функционально эквивалентного Google Spreadsheets.

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

4 балла - реализовано отображение и редактирование электронной таблицы размер которой не превышает 26x255 ячеек. Данные электронной таблицы сохраняются на сервере и могут быть с него восстановлены.

5 баллов - реализованы базовые операции форматирования ячеек (шрифт, цвет).

6 баллов - возможность работы с таблицами больших размеров (до 36#ZZ столбцов, не менее 1000 строк) без заметного замедления работы на обычном ноутбуке.

7 баллов - возможность закрепления пользователем определенного количества столбцов или строк для постоянного отображения на экране вне зависимости от положения прокрутки.

8 баллов - вычисление выражений в ячейках.

9 баллов - вычисляемые выражения в ячейках могут содержать ссылки на другие ячейки.

10 баллов - при вычислении выражений в ячейках, пользователь в принципе не может выполнить произвольный JavaScript код, то есть вычисление выражений реализовано самостоятельно, без использования функции eval.

Внимание: критерий на больший балл подразумевает выполнение всех предшествующих ему критериев с меньшим баллом.

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

По договоренности.