Главная » Просмотр файлов » Пояснительная записка

Пояснительная записка (1231610), страница 3

Файл №1231610 Пояснительная записка (Система для проведения соревнований по программированию с модулем подведения итогов) 3 страницаПояснительная записка (1231610) страница 32020-10-06СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 3)

В настоящее время web-сайты имеют четкую структуру: за клиентскую и серверную части отвечают отдельные взаимодействующие между собой модули [18].

При разработке клиентской части используются следующие средства:

– HTML – для разметки web-страниц;

– CSS – для оформления web-страниц;

– JavaScript – для динамического изменения web-страницы на стороне клиента.

При реализации серверной части используют:

– PHP – для функционирования сервера и его взаимодействия с базами данных;

– MySQL – для настройки сервера с базой данных.

2.2.1 Hyper Text Markup Language

HTML (от англ. Hyper Text Markup Language – «язык гипертекстовой разметки») – стандартный язык разметки документов в сети Интернет [19]. Большинство web-страниц содержат описание разметки на языке HTML. Язык HTML интерпретируется браузерами; полученный в результате интерпретации форматированный текст отображается на экране мониторе компьютера или мобильного устройства.

Язык HTML является приложением SGML (стандартного обобщённого языка разметки) и соответствует международному стандарту ISO 8879.

В сети Интернет HTML-страницы, как правило, передаются браузерам от сервера по протоколам HTTP или HTTPS, в виде простого текста или с использованием шифрования.

Изначально язык HTML был задуман и создан как средство структурирования и форматирования документов без их привязки к средствам воспроизведения (отображения). В идеале, текст с разметкой HTML должен был без стилистических и структурных искажений воспроизводиться на оборудовании с различной технической оснащённостью (цветной экран современного компьютера, монохромный экран органайзера, ограниченный по размерам экран мобильного телефона или устройства и программы голосового воспроизведения текстов). Однако современное применение HTML очень далеко от его изначальной задачи. Например, тег <TABLE> предназначен для создания в документах таблиц, но часто используется и для оформления размещения элементов на странице. С течением времени основная идея платформо-независимости языка HTML была забыта в связи с современными потребностями в мультимедийном и графическом оформлении.

2.2.2 Cascading Style Sheets

CSS (от англ. Cascading Style Sheets – каскадные таблицы стилей) – формальный язык описания внешнего вида документа, написанного с использованием языка разметки [21].

Преимущественно используется как средство описания, оформления внешнего вида web-страниц, написанных с помощью языков разметки HTML и XHTML, но может также применяться к любым XML-документам.

CSS используется создателями web-страниц для задания цветов, шрифтов, расположения отдельных блоков и других аспектов представления внешнего вида этих web-страниц. Основной целью разработки CSS являлось разделение описания логической структуры web-страницы от описания внешнего вида этой web-страницы. Такое разделение может предоставить большую гибкость и возможность управления его представлением, а также уменьшить сложность и избыточность в структурном содержимом.

Кроме того, CSS позволяет представлять один и тот же документ в различных стилях или методах вывода, таких как экранное представление, печатное представление, чтение голосом (специальным голосовым браузером или программой чтения с экрана), или при выводе устройствами, использующими шрифт Брайля.

Таблицы стилей содержат в себе правила CSS [22]. Эти таблицы стилей могут располагаться как в самом web-документе, внешний вид которого они описывают, так и в отдельных файлах, имеющих формат CSS. По сути, формат CSS – это обычный текстовый файл. В файле .css не содержится ничего, кроме перечня правил CSS и комментариев к ним.

2.2.3 JavaScript

JavaScript (аббр. JS) – прототипно-ориентированный сценарный язык программирования [23].

JavaScript обычно используется как встраиваемый язык для программного доступа к объектам приложений. Наиболее широкое применение он находит в браузерах, как язык сценариев, позволяющий создавать интерактивные web-страницы.

Основные архитектурные черты JavaScript:

– динамическая типизация;

– слабая типизация;

– автоматическое управление памятью;

– прототипное программирование.

JavaScript является объектно-ориентированным языком, но используемое в языке прототипирование обуславливает отличия в работе с объектами, по сравнению с традиционными класс-ориентированными языками.

В языке отсутствуют такие полезные вещи, как [24]:

– модульная система: JavaScript не предоставляет возможности управлять зависимостями и изоляцией областей видимости;

– стандартная библиотека: в частности, отсутствует интерфейс программирования приложений по работе с файловой системой, управлению потоками ввода-вывода, базовых типов для бинарных данных;

– стандартные интерфейсы к web-серверам и базам данных;

– система управления пакетами, которая бы отслеживала зависимости и автоматически устанавливала их.

При рассмотрении JavaScript следует обратить внимание на библиотеку jQuery и технологию AJAX.

Библиотека jQuery

jQuery – библиотека JavaScript, фокусирующаяся на взаимодействии JavaScript и HTML [25]. Библиотека jQuery помогает легко получать доступ к любому элементу DOM, обращаться к атрибутам и содержимому элементов DOM, манипулировать ими. Также библиотека jQuery предоставляет удобный API для работы с AJAX. Сейчас разработка jQuery ведётся командой jQuery во главе с Джоном Резигом.

Возможности jQuery:

– переход по дереву DOM, включая поддержку XPath как плагина;

– события;

– визуальные эффекты;

– AJAX-дополнения;

– JavaScript-плагины.

Точно так же, как CSS отделяет визуализацию от структуры HTML, jQuery отделяет поведение от структуры HTML [26]. Например, вместо прямого указания на обработчик события нажатия кнопки, управление передаётся jQuery, которая идентифицирует нажатие и затем преобразует его в обработчик события клика. Такое разделение поведения и структуры также называется принципом ненавязчивого JavaScript.

Библиотека jQuery содержит функционал полезный для широкого круга задач. Тем не менее, разработчиками библиотеки не ставилась задача совмещения в jQuery максимально универсальных функций, поскольку это привело бы к избыточности кода. Поэтому была реализована архитектура компактного универсального ядра библиотеки и плагинов.

Технология Asynchronous JavaScript and XML

AJAX (от англ. Asynchronous Javascript and XML – «асинхронный JavaScript и XML») – подход к построению интерактивных пользовательских интерфейсов web-приложений, заключающийся в «фоновом» обмене данными браузера с web-сервером [27]. В результате, при обновлении данных web-страница не перезагружается полностью, увеличивается скорость работы web-приложений.

Без использования AJAX web-приложения работают следующим образом:

– пользователь заходит на web-страницу и нажимает на какой-нибудь её элемент;

– браузер формирует и отправляет запрос серверу, для обработки данного события;

– в ответ сервер генерирует совершенно новую web-страницу и отправляет её браузеру и т.д. После чего браузер полностью перезагружает всю страницу.

При использовании AJAX алгоритм работы web-приложения изменяется следующим образом [28]:

– пользователь заходит на web-страницу и нажимает на какой-нибудь её элемент;

– скрипт (на языке JavaScript) определяет, какая информация необходима для обновления страницы;

– браузер отправляет соответствующий запрос на сервер;

– сервер возвращает только ту часть документа, на которую пришёл запрос;

– скрипт вносит изменения с учётом полученной информации (без полной перезагрузки страницы).

AJAX – не самостоятельная технология, а концепция использования нескольких смежных технологий.

2.2.4 PHP: Hypertext Preprocessor

PHP (от англ. PHP: Hypertext Preprocessor – «PHP: препроцессор гипертекста») – скриптовый язык общего назначения, интенсивно применяемый для разработки web-приложений [29]. В настоящее время поддерживается подавляющим большинством хостинг-провайдеров и является одним из лидеров среди языков, применяющихся для создания динамических web-сайтов.

В области web-программирования, в частности серверной части, PHP – один из популярных сценарных языков.

Популярность в области построения web-сайтов определяется наличием большого набора встроенных средств для разработки web-приложений. Основные из них:

– автоматическое извлечение POST и GET-параметров, а также переменных окружения web-сервера в предопределённые массивы;

– взаимодействие с большим количеством различных систем управления базами данных, например, MySQL;

– автоматизированная отправка HTTP-заголовков;

– работа с HTTP-авторизацией;

– работа с cookies и сессиями;

– работа с локальными и удалёнными файлами, сокетами;

– обработка файлов, загружаемых на сервер;

– работа с XForms.

PHP-скрипты обычно обрабатываются интерпретатором в порядке, обеспечивающем кроссплатформенность разработанного приложения [30]:

– лексический анализ исходного кода и генерация лексем;

– синтаксический анализ полученных лексем;

– генерация байт-кода;

– выполнение байт-кода интерпретатором (без создания исполняемого файла).

Для увеличения быстродействия приложений возможно использование специального программного обеспечения – так называемых акселераторов. Принцип их работы заключается в кэшировании однажды сгенерированного байт-кода в памяти и/или на диске. Таким образом, из процесса работы приложения исключаются этапы 1-3, что в общем случае ведёт к значительному ускорению работы.

Важной особенностью PHP является отсутствие необходимости заботиться о распределении и освобождении памяти. Ядро PHP реализует средства для автоматического управления памятью; вся выделенная память возвращается системе после завершения работы сценария.

2.2.5 Система управления базами данных MySQL

MySQL – свободная реляционная система управления базами данных [31]. Обычно MySQL используется в качестве сервера, к которому обращаются локальные или удалённые клиенты, однако в дистрибутив входит библиотека внутреннего сервера, позволяющая включать MySQL в автономные программы.

Гибкость СУБД MySQL обеспечивается поддержкой большого количества типов таблиц. Более того, СУБД MySQL поставляется со специальным типом таблиц EXAMPLE, демонстрирующим принципы создания новых типов таблиц.

Обращение к СУБД MySQL из сторонних программ осуществляется посредством языка SQL.

SQL (от англ. structured query language – «язык структурированных запросов») – формальный непроцедурный язык программирования, применяемый для создания, модификации и управления данными в произвольной реляционной базе данных, управляемой соответствующей СУБД [32].

С развитием лексический состав SQL усложняется посредством добавления новых конструкций, управляемых объектов (например, индексов, представлений, триггеров и хранимых процедур) – приобретает черты, свойственные языкам программирования.

При всех своих изменениях SQL остаётся единственным механизмом связи между прикладным программным обеспечением и базой данных. В то же время современные СУБД, а также информационные системы, использующие СУБД, предоставляют пользователю развитые средства визуального построения запросов.

Использование SQL сводится к формированию всевозможных выборок строк и совершению операций над всеми записями, входящими в выбранный набор.

Выводы по разделу

Для разработки модуля подведения итогов соревнований по программированию выбраны описанные выше средства, так как их взаимодействие на текущий момент достигло очень высокого уровня.

Модуль, реализованный средствами PHP, взаимодействует с базой данных на MySQL сервере, в то время как пользователь через web-интерфейс, реализованный средствами HTML и CSS, взаимодействует с сервером, посредством JavaScript, jQuery и AJAX.

Иные средства разработки так же способны обеспечить подобное взаимодействие, но с некоторыми недостатки, например, низким быстродействием системы или ограниченностью возможных функций.

2.3 Требования, предъявляемые к модулю подведения итогов

Исходя из рассмотренных ранее технологий для создания web-сайтов, отображать модуль подведения итогов можно посредством одной web-страницы, содержащей таблицу с результатами и меню настроек.

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

Меню настроек должно включать в себя следующий перечень функций:

Характеристики

Список файлов ВКР

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6531
Авторов
на СтудИзбе
301
Средний доход
с одного платного файла
Обучение Подробнее