Выпускная квалификационная работа (1218777), страница 3
Текст из файла (страница 3)
Такой версией является PHP 5.6.0 от 2014 года.Это следует учесть для интеграции функционала на различных веб-хостингах.Требования к создаваемому функционалу индивидуальны. К схожим аналогам можно отнести реализацию отправки пользователем письма под средством формы обратной связи. Но данная реализация не подходит реализацииконверсии в предприятиях, нацеленных на продажу продукции являющаясямногоэтапным процессом ввиду дороговизны продуктов или услуг и сложности доставки.Недостатком формы обратной связи является у пользователя не остаетсякопии отправленного письма. Также подвержена атаки спам-сообщениями,которая может осуществляться через отправку сообщения через форму.В качестве языка программирования, используемый для создания серверной части функционала, будет использоваться PHP 5.6.0, так как данная версияявляется стабильной в работе и поддерживается большинством веб-хостингов.Панелью управления веб-хостингом для тестирования функционала будет использоваться продукт ISPmanager обладающий всеми необходимыми инструментариями и достаточной документацией.
Реляционной системой управления базами данных будет использоваться MySQL, так как на используемомвеб-хостинге используется веб-интерфейс администрирования PHPMyAdmin.Рассмотрим серверный язык PHP более подробно, исследуя:– назначение языка;– функциональные возможности объектно-ориентированного подхода;– сравнение с другими серверными языками;131.2.2 Назначение языка PHP и его возможностиPHP – скриптовый язык общего назначения, интенсивно применяемый дляразработки веб-приложений.
В настоящее время поддерживается подавляющим большинством хостинг-провайдерами и является одним из лидеров средиязыков, применяющихся в веб-разработках.Первая версия языка была выпущена в 1995 году Расмус Лердорф, и сразуже вызвал интерес у других энтузиастов, что с того момента вызвало небывалый взлет популярности. Для реализации доработок и дополнений был использован язык программирования С.
Она имела синтаксис и способ именованияпеременных в стиле языка Perl, автоматическую интерпретацию форм, интеграцию с базами данных (в основном с MySQL) и возможность встраиванияPHP операторов в html-код страницы. Преобладало высокое быстродействие,так как PHP прикомпилировался к веб-серверу Apache. При этом главной особенность была возможность расширения ядра, что привлекло к работе над PHPмножество сторонних разработчиков, создающих специализированные модули.
Их наличие дало PHP возможность работать с огромным количество базданных, протоколов, поддерживать большое число API [8].Язык РНР позволяет соединяться с популярными базами данных, расположенными на сервере, и обрабатывать информацию из таблиц (изменять, добавлять, удалять данные). Это делает язык очень мощным при создании серверных приложений и функционалов, содержащего множество данных. Язык является интерпретируемым, что означает выполнение происходит мгновенно,без необходимости компиляции.Главным образом, область применения сфокусирована на написаниескриптов, работающих на стороне сервера; таким образом, способен выполнять обработку данных форм, генерировать динамические страницы, отсылатьи принимать фрагменты данных, отправленных веб-сервером. Но PHP способен выполнять и множество других задач.141.2.3 Функциональные возможности объектно-ориентированного подходаОдним из основных преимуществ объектно-ориентированного подхода (ООП) является простота преобразования бизнес-требований предметнойобласти в отдельные программные модули.
Поскольку ООП позволяет моделировать приложение в терминах объектов реального мира, то всегда можновыявить взаимосвязь людей, предметов и понятий с соответствующими программными классами. Эти классы обладают теми же свойствами и поведением, что и понятия из реального мира, которые они представляют. Поэтомуне составит никакого труда определить, как должны быть реализованы и какдолжны взаимодействовать различные компоненты приложения [9].Второе преимущество объектно-ориентированного подхода заключается ввозможности повторного использования кода. Зачастую в разных частях приложений нужно использовать одни и те же типы данных.Еще одно преимущество ООП заключается в модульной природе классов.Если в классе была обнаружена ошибка или в его программный код потребовалось внести изменения, то все изменения достаточно внести в одном месте,поскольку вся функциональность класса определена в одном файле.
При этомвнесенные изменения коснутся всех компонентов приложения, в которых используется данный класс. Эта возможность позволяет значительно упроститьпоиск ошибок и добавление новых свойств.Объектно-ориентированный подход позволяет уделять особое вниманиеструктуре кода, для того чтобы ее изучение новыми разработчиками значительно упрощалось. Кроме того, в этом случае гораздо проще определить томесто, куда нужно добавить новую функциональность.Разработка функционала с учетом принципов объектно-ориентированныйподхода позволяет не только уменьшить время его разработки, но и существенно снизить количество ошибок и, следовательно, ускорить сам процессего отладки.15Рассмотрим основные термины и возможности принципов объектно-ориентированный подхода:– классы представляют собой каркас для создания объектов.
В классах содержится реальный программный код, который определяет атрибуты и методы, обеспечивающие функционирование приложения;– объекты являются экземплярами классов и содержат в себе все необходимые данные и информацию о состоянии, которые требуются для функционирования приложения;– наследование – это механизм определения новых классов определенноготипа, которые являются подтипом (разновидностью) другого класса;– инкапсуляция обеспечивает защищенность внутренних данных объектов [10].В следующем разделе применим данные принципы объектно-ориентированного подхода в проектировании разрабатываемого функционала.1.3 Обоснование выбора используемых выбора используемыхтехнологий в разработке1.3.1 Обоснование выбора панели управления хостингом ISPmanagerПанелью управления хостингом называется программный инструмент,позволяющий через графический интерфейс управлять веб-сервером и размещенными на нем сайтами.
C помощью панели управления можно выполнятьтакие операции, как управление почтовыми сервисами, FTP-аккаунтами, базами данных, добавление и удаление доменов и подменов, загрузка файлов,просмотр статистики по трафику, настройка предустановленных скриптов идругие.Как отдельный продукт панели управления хостингом стали широко использоваться в конце 1990 годов. За прошедшее с тех пор время они очень изменились и усовершенствовались.
Сегодня на рынке представлено огромноеколичество решений для управления хостингом.16В веб-студии для разработки различных проектов используют панельуправления хостингом ISP Manager.В таблице 1 дан сравнительный анализ наиболее распространенных нарынке панелей управления веб-хостингами [11].Таблица 1 – Сравнение панелей управления хостингомХарактеристикаISP ManagerPleskПоддерживаемыеCentOS, Debian,FreeBSD,UbuntuCentOS, RHEL,ОСCentOS, Debian,FreeBSD, CloudLinux,Windows.ПоддерживаемыеApache,По умолчаниюПо умолчанию Apacheвеб-серверыApache + Nginx,Apache + Nginx+ NginxBindBindBind, MyDNS, NSDУправление доме-Полное управлениеВыбор сервера:Выбор сервера: Bind,намизонами через BindBind, NSD,MyDNS, NSDWHM/CPanelCloudLinuxNginx + PHP-fpmПоддерживаемыеDNS-серверыPowerDNSНастройка и ад-PHPMyAdminPHPMyAdminPHPMyAdminНастройки без-Встроенное управле-Fail2ban, антиви- mod_security (возмож-опасностиние файерволлом, ан-рус Касперского, ность подробнойтиспам (белые/чёрныеантиспам (белыенастройки), защита отсписки)и чёрныебрутфорсаминистрированиеБДсписки)Из данных таблицы можно сделать вывод, что ценовая стоимость условияиспользования панелью управления, поддержка большинства операционныхсистем, в том числе Windows, доля мирового рынка операционных систем которого составляет 90% по состоянию на конец октября 2015 года.
Поддерживание передовых веб-серверов и среднее качество обеспечения безопасности17делает обоснованным выбор в сторону использования панели управления ISPManager [12].Основные назначения и функции ISPmanager являются:– управление учетными записями пользователей;– управление сайтами;– управление базами данных;– управление почтовыми ящиками.Данные функции необходимы и достаточны для развертывания функционала на данной панели управления.1.3.2 Обоснование использования реляционной СУБД MySQLВзаимодействие с базой данных происходит при помощи Системы Управления Базой Данных (СУБД) – совокупность программных и лингвистическихсредств общего или специального назначения, обеспечивающих управлениесозданием и использованием баз данных.В реляционных базах данных данные собраны в таблицы, которые в своюочередь состоят из столбцов и строк, на пересечении которых расположеныячейки.
Запросы к таким базам данных возвращает таблицу, которая повторноможет участвовать в следующем запросе. Данные в одних таблицах, как правило, связаны с данными других таблиц.Эти модели характеризуются простотой структуры данных, удобным дляпользователя табличным представлением и возможностью использованияформального аппарата алгебры отношений и реляционного исчисления для обработки данных.Работа функционала заключается в том, что программа взаимодействует сСУБД посредством совокупности функций. Именно такой подход наиболееподходит при взаимодействии PHP и MySQL [13].18Рассмотрим в таблице 2 анализ основных версия MySQL.Таблица 2 – Анализ основных версий MySQLВерсииВозможности3.23Добавлен механизм базы данных MyISAM. Эффективно обрабатывающийбольшие объемы данных. Дебютировал механизм базы данных InnoDB длябезопасного выполнения транзакций и поддержки внешних ключей.














