Добавлен: 28.06.2023
Просмотров: 629
Скачиваний: 15
СОДЕРЖАНИЕ
1 Назначение и область применения
1.3 Интернет-торговля в современном мире
2 Разработка программного обеспечения
2.1 Обзор и выбор языка программирования
2.3 Требования к операционной системе
2.5.2 Создание таблиц и оптимизация базы данных
2.6 Настройка и администрирование сервера
«Web workers» - это специальная технология «JavaScript», которая реализует многопоточность, которую так долго ждали. Она снимает тормоза с пользовательского интерфейса, так как некоторые задачи теперь могут выполняться в фоновом режиме в дополнительных потоках.
Кроссдокументные сообщения - эта технология позволяет работать веб-приложениям, которые обмениваются данными на стороне пользователя, с другими сайтами.
Существует множество и других полезных функций, появившихся в «HTML5». Например, это регистрация типов «MIME» и протокола обработчика, так что веб-приложения может быть зарегистрировано в качестве приложения по умолчанию для определенного типа файла или протокола; управление историей браузера, что до сих пор делалось вручную или с помощью внешних фреймворков «JavaScript»; и множество других новых элементов и атрибутов, которые облегчат жизнь разработчикам.
«CSS3» (англ. Cascading Style Sheets 3 — каскадные таблицы стилей третьего поколения) — активно разрабатываемая спецификация «CSS». Представляет собой формальный язык, реализованный с помощью языка разметки. Самая масштабная редакция по сравнению с «CSS1»,«CSS2» и «CSS2.1». Главной особенностью «CSS3» является возможность создавать анимированные элементы без использования «JS», поддержка линейных и радиальных градиентов, теней, сглаживания и многое другое.
Преимущественно используется как средство описания и оформления внешнего вида веб-страниц, написанных с помощью языков разметки «HTML» и «XHTML», но может также применяться к любым «XML-документам», например, к «»SVG«» или «XUL»[8].
«CSS3» имеет множество областей применения, и считают его одним из самых удобных и мощных инструментов.
Использование таблицы стилей:
Задолго до разработки концепции каскадных таблиц стилей «CSS3» для обозначения цвета, шрифтов, фона, границ и т.д. использовалась «HTML-разметка». Но с введением каскадных таблиц все это стало возможным задавать в отдельной таблице стилей, в результате чего пользователи получили простой и удобный инструмент. С этим связан еще один плюс «CSS3» – стало проще вносить изменения: можно изменять отдельные модули, которые после тестирования интегрируются с общей системой.
Макет нескольких колонок:
Модуль на основе нескольких колонок (Multi-Column Module) – важная функция «CSS3», позволяющая поместить текст в несколько столбцов. Преимущество для пользователей в том, что при чтении текста в нескольких колонках не нужно прокручивать вверх-вниз и вправо-влево, текст выглядит легким для чтения, в нем нет слишком коротких строк и, прежде всего, все может быть размещено на одной странице, что делает макет удобным и экономичным.
«Javascript» – Язык программирования Javascript - разработана компанией Sun Microsystems, которую со временем купила компания Oracle. Этот язык написания программ принадлежит к объектно-ориентированным языкам программирования. Приложения созданные на языке Javascript, в последствии преобразовываются в объектные байт-коды, что дает им возможность иметь универсальную совместимость, и применяться на компьютерах любой архитектуры, благодаря поддержке виртуальной Java-машины[12].
Преимущество описанного метода функционирования приложений состоит в абсолютной независимости байт-кода, и от операционных систем, и от конфигурации оборудования. Это дает возможность запустить Java-приложение на любом устройстве, имеющем соответствующую виртуальную машину. Вторая важная особенность языка Javascript заключается в гибкости системы безопасности , при которой любое выполнение программного кода полностью контролируется виртуальной машиной. Любое действие, при попытке превышения полномочий, предусмотренных программой, немедленно прерывается.
Одним из недостатков применения виртуальной машины является уменьшение производительности, однако ее можно повысить при помощи некоторых усовершенствований, которые дают возможность увеличить скорость работы Java-приложение:
- использование технологий, которые позволяют транслировать байт-код параллельно с работой программы, с сохранением версии класса в машинном коде;
- распространенное применение платформенно-ориентированных кодов в стандартной библиотеке;
- аппаратные средства, которые обеспечивают более быстрое обрабатывание байт-кодов (к примеру Jazelle, при поддержке некоторых процессоров компании ARM).
Следовательно для backend разработки необходимо рассмотреть другие решения:
Ruby on Rails является связкой которая облегчает разработку, развертывание и обслуживание веб-приложений. По сравнению с популярными средами разработки Java, PHP или .NET, – Rails работа избавляет от излишней трудоемкости. Rails-приложения выполняются с использованием архитектуры Модель-Представление-Контроллер (Model-View-Controller, MVC). Привычная Java-разработчикам среда выполнения, к примеру Tapestry или Struts, тоже основана на MVC. Время проведения разработки в Rails начинаеся уже с работающего приложения, в котором есть место для каждой части кода, и все части приложения стандартным образом взаимодействуют друг с другом. Все Rails-приложения имеют встроенное тестирование[5].
Поскольку данная связка рассчитана на более опытных разработчиков, имеющих значительный опыт в разработке сложных web-приложений, рассматриваться не будет.
Язык PHP (Personal Home Page Tools, инструменты персональных домашних страниц) - это язык сценариев с открытым исходным кодом, встраиваемых в HTML-код и выполняемых на Web-сервере. Этот язык написан Web-разработчиками и для Web-разработчиков. Язык РНР является конкурентом таких продуктов, как Microsoft Active Server Pages(ASP), Macromedia Cold Fusion и Sun Java Server Pages[10].
Язык РНР позволяет встраивать фрагменты кода непосредственно в HTML – страницы, а интерпретированный код вашей страницы отображается пользователю. Код на языке РНР можно воспринимать как расширенные теги
HTML, которые выполняются на сервере, или как маленькие программы,
Которые выполняются внутри страниц, прежде чем будут отправлены клиенту. Все, что делает код программы, незаметно для пользователя.
Язык РНР позволяет соединяться с популярными базами данных, расположенными на сервере, и обрабатывать информацию из таблиц (изменять, добавлять, удалять данные). Это делает язык очень мощным при создании корпоративного сайта, содержащего множество данных. Да и любая домашняя страница уже немыслима без централизованного хранилища данных.
Практически ни один более-менее крупный Web-сайт не может работать без хранилища данных. Для этой задачи можно использовать текстовые файлы на сервере или базы данных (второе намного удобнее при обработке) В данной работе в качестве основной будет использоваться самая распространенная разновидность БД MySQL[9].
Python – представляет собой мощный и эффективный язык программирования. Этот язык, в отличии от множества традиционных языков программирования (кроме современных типа Ruby), отличителен особой простотой в освоении. Python позволяет создавать эффективную структуру и архитектуру высокоуровневых приложений на основе простого и при этом эффективного объектно-ориентированного подхода. Код написанный на языке Python отличается простым и доступным синтаксисом, что способствует очень быстрому написанию программ в большинстве направлений информационных технологий при поддержке большого количества платформ[7].
Python так же является масштабируемым языком и позволяет унаследовать огромное количество функций и типов данных, созданных на ruby, java C, C#, или C ++.
Недостатком Python является отсутствие адекватной среды разработки приложений, а такие среды разработки как PyDev(Eclipse), PyCharm IDE и др., имеют высокую стоимость, а бесплатные их версии мало чем отличаются от обычного текстового редактора с подсветкой кода.
Что касается кода, синтаксис Python не требователен к жесткому разделению синтаксиса и пунктуации, которая характерна для С. Процедуры и функции на Python формируются за счет табулированных отступов.
В данной работе использован язык РНР
2.2 Обзор баз данных
Огромное количество разработчиков приложений и администраторов баз данных используют продукты корпорации Oracle для создания сложных систем, управляющих огромными объемами данных. Значительная часть данных продуктов основана на PL/SQL – языке программирования, представляющим собой процедурное расширение Oracle – версии языка SQL и использующимся для программирования в среде Oracle Developer.
Данный язык также применим:
– Для реализации основополагающей бизнес-логики на сервере Oracle с помощью хранимых PL/SQL – процедур и триггеров баз данных
– Для формирования и обработки XML – документов базы данных
– Для связывания веб-страниц с базой данных Oracle
– Для выполнения и автоматизации задач администрирования базы данных, начиная с реализации контроля доступа на уровне отдельных строк и заканчивая управлением сегментами в PL/SQL – программах.
MS SQL Server является всеобъемлющим, интегрированным сквозным решением, которое наделяет пользователей вашей организации безопасной, надежной, и продуктивной платформой для обработки промышленной информации и приложений, касающихся интеллектуальных ресурсов предприятия. SQL Server 2005 предоставляет мощные, знакомые инструменты для профессионалов информационных технологий так же, как и для работников информационной сферы, уменьшая сложность создания, развёртывания, управления и использования данных предприятия и аналитических приложений на платформах от мобильных устройств до информационных систем предприятия. Благодаря исчерпывающему набору функций, взаимодействию с существующими системами и автоматизации типовых задач, SQL Server 2005 предоставляет полное решение в области хранения данных предприятий всех масштабов.
MySQL является торговой маркой, которая принадлежит MySQLAB и программное обеспечение MySQL распространяется в соответствие с двойной лицензией (Dual License). Пользователю предоставлен выбор между бесплатным продуктом с открытым исходным кодом (OpenSource/FreeSoftware) на условиях GNU лицензии GeneralPublicLicense и стандартной коммерческой лицензии у MySQLAB на пользование продуктом.
База данных MySQL представляет собой структурированный набор данных. Она может хранить различную информацию в любой доступной цифровой переменной, которую можно описать двоичным кодом.
Сервер баз данных MySQL-очень быстрый, надежный и простой в эксплуатации и будет использован в данной работе.
Существует огромное количество баз данных, которые обладают рядом достоинств и недостатков. Сравнительная характеристика баз данных приведена в таблице 2.1[14]
Табл. 2.1– Сравнительная характеристика баз данных
Параметр |
MS SQL |
MS Access |
MySQL |
postgreSQL |
Архитектура |
Локальная / Клиент-серверная |
Локальная |
Клиент-серверная |
Локальная / Клиент-серверная |
Поддержка SQL |
Да |
Частичное |
Да |
Да |
Быстродействие |
Среднее |
Среднее |
Высокое |
Высокое |
Доступность |
Платный |
Требует установки MS Office |
Платный |
Бесплатный |
Для хранения данных используется кросплатформенная легковесная база данных MySQL.
Главным ее преимуществом является полная совместимость с 32-разрядными системами, что является большим плюсом для ее администрирования на рабочих станциях с минимальными системными требованиями. Данная версия является стабильной и хорошо себя зарекомендовала среди web-разработчиков.
База данных My SQL выбрана по следующим причинам:
- оптимизирована для работы под кроссплатформенный софт;
- хорошо поддерживает и быстро обрабатывает базы средних размеров
- маленькая, при небольшой нагрузке не очень требовательна к ресурсам.
- способность быстрой корректировки, как самой базы так и её структуры
- возможность построение сложных связанных запросов, при помощи конструктора.
- поддержка структурированного языка запросов SQL
2.3 Требования к операционной системе
Как правило, для реализации систем принятия решений необходимы аппаратные и программные средства. Для аппаратной реализации системы принятия решений необходимы:
– Клиент или рабочая станция
– Сервер со своим доменным именем, для предоставления хостинга.
В упрощенном виде, структурную схему можно изобразить следующим образом (Рис 2.1)
Рис 2.1– Структурная схема web - представительства
На стороне клиента (пользователя) операционная система должна обладать достаточным функционалом для обеспечения антивирусной защиты и работы приложения на стороне клиента. Это подразумевает то, что операционная система должна обеспечивать базовый набор функций с возможностью выхода в интернет.