Разработка веб-приложения для информационного обеспечения учебного процесса (видеокасты)

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование



ть (?>). Если код имеет правильный синтаксис, он исполняется в точности так, как указал программист. PHP язык, который может быть встроен непосредственно в HTML-код страниц, которые, в свою очередь будут корректно обрабатываться PHP-интерпретатором. Большое разнообразие функций PHP избавят вас от написания многострочных пользовательских функций. В то же время существует больше количество фреймворков и CMS, написанных как разработчиками-одиночками, так и большими сообществами программистов;

  • эффективностью важное преимущество PHP заключается в том, что он не нуждается в компиляторе, и позволяет обрабатывать iенарии непосредственно на сервере. По некоторым оценкам, большинство PHP-iенариев (особенно не очень больших размеров) обрабатываются быстрее аналогичных им программ, написанных на других ЯП. Однако, чтобы не делали разработчики PHP, откомпилированные исполняемые файлы будут работать значительно быстрее в десятки, а иногда и в сотни раз, поскольку откомпилированные программы по сути являются уже инструкциями в машинном коде, в то время как интерпретатор PHP лишь построчно исполняет инструкции, описанные программистом. В то же время, производительность PHP вполне достаточна для создания вполне объемных и многофункциональных веб-приложений;
  • безопасностью РНР предоставляет в распоряжение разработчиков и администраторов гибкие и эффективные средства безопасности, такие как, например, механизмы безопасности, находящиеся под управлением администраторов; при правильной настройке РНР это обеспечивает максимальную свободу действий и безопасность. Например, можно ограничить максимальное время выполнения и использование памяти (неконтролируемый расход памяти отрицательно влияет на быстродействие сервера) или устанавливать ограничения на каталоги, в которых пользователь может просматривать и исполнять iенарии РНР, а также использовать iенарии РНР для просмотра конфиденциальной информации на сервере. В стандартный набор функций РНР входит также ряд надежных механизмов шифрования. Другое преимущество заключается в том, что исходный текст iенариев РНР нельзя просмотреть в браузере, поскольку iенарий интерпретируется до его отправки по запросу пользователя. Реализация РНР на стороне сервера предотвращает похищение нетривиальных iенариев;
  • гибкостью поскольку РНР является встраиваемым языком, он отличается исключительной гибкостью по отношению к потребностям разработчика. Хотя РНР обычно рекомендуется использовать в сочетании с HTML, он с таким же успехом интегрируется и в JavaScript, XML и другие языки. Нет проблем и с зависимостью от браузеров, поскольку PHP является серверным ЯП и никак не связан с браузерами. В сущности, iенарии РНР могут передаваться любым устройствам с браузерами, включая сотовые телефоны, электронные записные книжки, пейджеры и портативные компьютеры, не говоря уже о традиционных ПК. РНР в целом является платформенно-независимым языком, поскольку он не содержит кода, ориентированного на конкретный веб-сервер. Благодаря этим возможностям РНР занимает достойное место среди современных технологий и обеспечивает масштабирование проектов до необходимых пределов;
  • бесплатным распространением важным фактором в развитии проекта РНР оказалась поддержка пользователей со всего мира. Бесплатное распространение исходных текстов РНР оказало неоценимую услугу пользователям. Вдобавок, отзывчивое сообщество пользователей РНР является своего рода коллективной службой поддержки, и в популярных электронных конференциях можно найти ответы даже на самые сложные вопросы.
  • В качестве клиентского фреймворка был выбран jquery из-за его большей распространенности и лучшей документации [16]. Также, были просмотрены результаты тестов сравнения данных фреймворков по скорости в браузерах Safari/Webkit (рисунок 15), Firefox/Gecko (рисунок 16) и Explorer8/Trident (рисунок 17):

    Рисунок 15 сравнение скорости Javascript-фреймворков в Safari/Webkit

    Рисунок 16 сравнение скорости Javascript-фреймворков в Firefox/Gecko

    Рисунок 17 сравнение скорости Javascript-фреймворков в Explorer8/Trident

    На данных тестах видно, что jquery обгоняет по скорости prototype. В то же время несколько некорректно было включать в тесты extjs, поскольку он используется для иных целей. Этот тест в то же время доказывает, что jquery использует нативные возможности javascript (например, замыкания) для ускорения работы, в то время как prototype является надстройкой над языком. Соответственно для реализации функций на клиентской стороне в дипломной работе используется javascript-фреймворк jQuery.

    5 Описание интерфейсов системы

    5.1 Интерфейс суперпользователя

    Суперпользователь в системе выделенная пользовательская единица. Поскольку в данном проекте используется CMF OpenHazel, то суперпользователь обладает всеми правами, которые заложены в CMF, а именно: может просматривать, изменять и удалять страницы сайта, изменять настройки страниц, модулей, а также настройки доступа к ним, редактировать список возможных модулей, добавлять/изменять/удалять пользователей и пользовательские группы на сайте, просматривать ошибки, появившиеся в процессе функционирования сайта, редактировать шаблоны, каскадные таблицы стилей, а также клиентские джаваскрипты. Также суперпользователь может работать с анонсами на сайте (например, с меню) и управлять содержанием динамических страниц (например, видеокастов).

    Р