Описание разделов.
Разработка интерактивной системы
При выборе дисциплины к изначальной странице с помощью методов AJAX добавляются темы данного уровня. На рисунке показан пример выбора дисциплины математический анализ: Перейдем в задачу под названием «multiplication». Нам открывается страница, на которой расположено задание по дифференцированию двух перемноженных функции: При правильном решении задачи пользователь видит свой ответ, надпись… Читать ещё >
Описание разделов. Разработка интерактивной системы (реферат, курсовая, диплом, контрольная)
Описание разделов является основным при написании web-приложения. Именно благодаря им — пользователь знакомится с проектом и может активно его использовать в своих нуждах. При описании разделов надо учитывать то, что они должны быть «friendly», то есть легкими для понимания пользователя. Основную идею разделов «Дифференциальные уравнения» и «Теорию пределов» я уже изложил в введении. Сейчас я покажу на практике их структуру и возможность.
При входе на страницу с разделами мы видим сначала разделы верхнего уровня — дисциплины. Разница между дисциплинами и темами только в том, что у дисциплин нет связи родитель — потомок с другой темой. Также на первом уровне нельзя добавить задачу.
При выборе дисциплины к изначальной странице с помощью методов AJAX добавляются темы данного уровня. На рисунке показан пример выбора дисциплины математический анализ:
Рис. 14. Выбор дисциплины
Под дисциплинами мы видим кнопку «Edit», через нее пользователь попадает в редактор и может добавлять новые темы, дисциплины и задачи. Про редактирование мы поговорим позже.
Допустим теперь нам надо перейти в тему «Дифференциальное исчисление», там находятся подтемы, внутри которых задачи. На рисунке представлен переход в одну из таких подтем:
Рис. 15. Переход в подтему «Уровень 2»
Нажимая на задачу пользователь переходит на новую страницу и может начать заниматься изучением данной темы. Теперь мы вплотную подошли к очень важной части web-приложения — задачам.
Описания задач При написании задачи используется язык описании задач SmallTask, разработанный Ильей Турунтаевым.
Перейдем в задачу под названием «multiplication». Нам открывается страница, на которой расположено задание по дифференцированию двух перемноженных функции:
Рис. 16. Multiplication
Первое на что следует обратить внимание — это постановка задачи и сама формула. Данные обо всех задачах хранятся в таблице Task базы данных, эта таблица была создана с помощью класса Task из модели.
Внизу под постановкой задачи пользователь должен написать свой ответ. При написании ответа мы можем использовать таблицу формул. Для принятия решения пользователь должен написать ответ и нажать кнопку «check». Дальнейшее поведение приложения зависит от правильности решения. Допустим, мы не смогли ответить на задачу правильно, тогда мы переходим на следующую страницу:
Рис. 17. Неправильный ответ в multiplication
Тут расположена формулировка данной задачи, ее решение, ответ на задачу и ответ пользователя. Решение задачи может быть написано как на языке SmallTask, так и при помощи TeX. Ниже ответа пользователя расположена кнопка «Try again», позволяющая пользователю переместиться на страницу с подобной задачей. И начать выполнять задание с новым условием.
При правильном решении задачи пользователь видит свой ответ, надпись «Success!» и кнопку, позволяющую попробовать опять решить подобную задачу.