Отчет по диплому (1221123), страница 3
Текст из файла (страница 3)
Так как в HTML5 требования для автором и агентов пользователей разделены, больше нет необходимости присвоения отдельным частям спецификации статуса «устаревшая».
Разрабатываемая модель
Спецификация HTML5 не будет рассматриваться завершённой до тех пор, пока не существуют, по крайней мере, две завершённые реализации этой спецификации. Этот подход отличается от предыдущих версий HTML. Его цель – гарантировать полную пригодность спецификации для дизайнеров и разработчиков.
Влияние на web-архитектуру
Предполагается, что на веб-архитектуру окажут влияние следующие области/возможности, определенные в HTML5:
-
использование DOM в качестве основы для описания языка;
-
концепция окружения браузера;
-
разделение требований к агентам пользователей и авторам HTML-документов;
-
использование обязательных определений вместо абстрактных определений с требованием эквивалента «чёрного ящика» при реализации;
-
новая концепция модели содержимого (взамен концепции строчных и блочных элементов в HTML4);
-
рассмотрение доступности как неотъемлемой концепции для создания новых возможностей (таких как атрибут hidden, элементprogress и т.п.) вместо каких-либо расширений (к примеру, атрибута alt);
-
подробное определение семантики (например, алгоритма outline, взамен его нечёткой семантики в HTML4);
-
элементы menu и command;
-
основополагающие идеи;
-
оффлайн-кеш веб-приложений;
-
определение алгоритма контекстной навигации в браузере (browsingcontext «navigation» algorithm) и связанных с ним алгоритмов просмотра истории сессий (sessionhistorytraversalalgorithms);
-
контроль типов содержимого и кодировок;
-
очень строгое и недвусмысленное описание парсера;
-
возможности contentEditable и UndoManager;
-
архитектура Drag&Drop и Copy&Past;
-
новые возможности «sandbox» («песочницы», учебно-эксперементальных сред) для iframe.
-
Язык программирования Python
Python – это свободный интерпретируемый объектно-ориентированный расширяемый встраиваемый язык программирования очень высокого уровня.
Python – язык универсальный, он широко используется во всем мире для самых разных целей – базы данных и обработка текстов, встраивание интерпретатора в игры, программирование GUI и быстрое создание прототипов (RAD). Python используется для программирования Internet и Web приложений – серверных (CGI), клиентских (роботы),Web-серверов и серверов приложений. Python обладает богатой стандартной библиотекой, и еще более богатым набором модулей, написанных третьими лицами. Python и приложения, написанные на нем, используют самые известные и крупные фирмы – IBM, Yahoo!, Google.com, HewlettPackard, Infoseek, NASA, RedHat, CBS MarketWatch, Microsoft.
На этом языке пишутся утилиты, фильтры, резидентные программы, GUI и Web-сайты. На некоторых сайтах все CGI-программы написаны на языке Python (сайт Фонда «Общественное мнение» www.fom.ru), другие используют системы публикации, написанные на языке Python (Русский Журнал, www.russ.ru). Находит использование и Zope. На нем сделаны сайты: Каталог Full.RU (www.full.ru), Банк МЕНАТЕП СПб (www.menatep.spb.ru), сайт красноярской компании Интербит (www.interbit.ru) и другие.
Python используется как в качестве основного языка программирования, так и для создания расширений и интеграции приложений, а также как сценарный язык для связи программных компонентов.Pythonимеет богатую стандартную библиотеку и обладает широким набором модулей, написанных сторонними разработчиками. В синтаксисе языка Python уделяется особое внимание читаемости кода, что позволяет писать очень компактные и удобные для чтения программы и сокращает расходы на сопровождение программных продуктов. Написанные на этом языке программы получаются структурированными по форме. И в них легко проследить логику работы. Pythonпозволяет быстро создавать программные системы и их прототипы. Он доступен практически на всех существующих платформах (как 32-битных, так и на 64-х битных)с компилятором на С и на платформе Javaнаписанные на нем программы обладают кроссплатформенностью. Pythonобладает достаточно простыми средствами для интеграции с С, С++ (и Java) как посредством встраивания интерпретатора в программы на этих языках, так и путем использования библиотек, которые написаны на этих языкахPython программах.
Возможности использования языка программирования Pythonдля webприложений оценили уже многие разработчики. Веб-приложения на Питон успешно справляются с разноплановыми задачами. А при изменении требований к результатам работы отдельных функций или программ корректировка кода будет минимальной.
Самые известные и крупные организации используют Pythonи приложения, написанные на нем – Yahoo!,IBM, Google.com, Mictosoft, NASA, HewlettPackard, RedHat, Infoseer, CBSMarketWatch.
Webразработка наPythonимеет широкую сферу применения, которую можно разбить на несколько больших категорий:
-
системное программирование;
-
графический интерфейс;
-
веб-сценарий;
-
интеграция компонентов;
-
приложения баз данных;
-
быстрое создание прототипов;
-
программирование математических и научных вычислений;
-
игры, изображения, искусственный интеллект, XML-роботы и др.
Достоинства:
-
интерпретатор Pythonадаптирован практически для всех платформ и операционных систем;
-
расширяемость языка – имеет возможность совершенствования языка всеми заинтересованными программистами;
-
наличие широкого набора подключаемых к программе модулей, которые обеспечивают различные дополнительные возможности;
-
стандартная библиотека позволяет использовать сторонние решения;
-
функционал сайтов на языке Pythonпрактически не ограничен.
Недостатки:
-
скорость выполнения Python-программ уступает скорости программ, написанных на компилирующих языках программирования, таких как С или С++.
Основные параметры, которые влияют на выбор языка программирования
-
Выбор направления. Прикладное или веб-программирование
Прикладное (системное) программирование– это программирование железа, систем на достаточно низком уровне. В этом направлении очень многое зависит от окружающей среды (ОС – операционной системы). Можно разрабатывать, начиная от ОС, драйверов до простых и сложных пользовательских программ. Другими словами, можно написать все, что захочется. В связи с тем, что зависимостей очень много, необходимо изначально продумать, под какую ОС будет разрабатываться ПО. Основные языки для системного программирования – это Assembler, С, С++, Python, Perl, Java.
-
Веб-программирование – в основном, подразумевается разработка всего, что связано с интернетом. Это сайты, блоги, скрипты, конструкторы, системы управления контентом и т.д. Здесь практически нет зависимости от ОС, но есть ряд других зависимостей связанных, например, с браузерами и другими программами. В большинстве случаев, когда речь идет о веб-программировании, используется ОС Linux, на которой выполняется код программы. Браузеры, в которых выводится результат выполненной программы, может быть любым и на любой ОС, которая сейчас существует. Таким образом, можно разработать один код, который будет работать только на одной ОС, но выполняться и использоваться любым пользователем на любой ОС.
Основные языки веб-программирования – это Python, PHP, Perl, JS, Ruby, Java.
-
Есть возможность обратиться к человеку, который уже программирует
Изучать что-либо самостоятельно очень сложно, занимает довольно много времени и, чаще всего, приводит к плачевному результату. Чтобы не забросить на этапе старта, лучше всего, когда есть рядом кто-то, кто уже изучает или знает один язык программирования. Потому что в процессе обучения появляется множество вопросов, на которые сложно найти ответ. Когда есть помощь, процесс изучения становится интересней и гораздо продуктивней.
-
Зависимость от поставленной цели
Просто учить программирование – это непонятная задача, которая вряд ли даст положительный результат. Должна быть цель, которую вы хотите реализовать. Например, это может быть программа для обработки фотографий, управлением роботом, проезжающим лабиринт, написание специфического драйвера, улучшение существующей программы, которую вы используете, создание собственного сайта. Когда вы ставите цель, вы понимаете, что хотите получить в результате. Остается выбрать инструменты для решения задачи. При этом, если вы поставили перед собой захватывающую цель, которая пробуждает интерес, ночами не даёт спать, то она будет положительно мотивировать вас на реализацию и достижение положительного результата.
-
АРХИТЕКТУРА ИНТЕРНЕТ МАГАЗИНА
Данный сайт имеет следующую структуру:
Рисунок 2 – Структура сайта
Проектирование интернет магазина подразумевает предложение товаров для покупки онлайн. Главным элементом любого подобного сайта является пункт регистрации. Что бы пользователь мог получить доступ к закрытой части сайта, а именно форме заказа товара. Таким образом устанавливается обратная связь с пользователем. В данном проекте форма регистрации имеет номинальный характер в связи с тем, что в данном случае он не обязателен. Ниже приведен пример страницы регистрации:
Как видно на рисунке 3, регистрация начинается с активации кнопки регистрации
Рисунок 3 – Начало регистрации
Затем, пользователю открывается всплывающее окно с формой регистрации (рисунок 4).
Рисунок 4 – Форма регистрации
Здесь пользователь набирает свои данные и регистрируется. Код главной странице приведен в Приложении А.
По завершении регистрации данные пользователя заносятся в базу данных, откуда в последствии и берутся для работы с зарегистрированными пользователями. Впоследствии посетитель может авторизоваться под своим именем и продолжить работу с сайтом. Как говорилось ранее, в данном примере регистрация и авторизация является не обязательным, и создано было для демонстрации обмена данными между phpстраницами и базой данных MySQL.
Вся информация по зарегистрированным пользователям попадает в базу данных, где впоследствии и хранится (рисунок 5).
Рисунок 5 – База данных пользователей
База данных создана на MySQLи имеет следующий вид
Рисунок 6 – База данных
Как видно из рисунка 6, база данных имеет поля:
-
id;
-
username;
-
fullname;
-
password;
-
email;
-
active;
-
code;
указанные выше поля имеют атрибутыVARCHARи tinyint. Данные столбцы требуются для корректной работы системы регистрации. Для защиты данных пользователь поле passwordшифруется. Для шифрации используется алгоритм шифрования md5.
MD5 (MessageDigest 5) – 128-битный алгоритм хеширования, разработанный профессором Рональдом Л. Ривестом из Массачусетского технологического института (MassachusettsInstituteofTechnology, MIT) в 1991 году. Предназначен для создания «отпечатков» или дайджестов сообщения произвольной длины и последующей проверки их подлинности. Широко применялся для проверки целостности информации и хранения паролей в закрытом виде.
Далее, пользователь проходит по страницам с товарами, выбирая себе товар. На рисунке 7 приведен пример главной страницы.
Рисунок 7 – Главная страница
При наведении на пункт меню, появляется выпадающее окно с выбором раздела являющейся ссылкой на каталог товаров выбранного раздела (рисунок 8).
Рисунок 8 – Меню сайта
Выбрав раздел сайта, пользователь переходит в каталог товаров.
Рисунок 9 – Каталог товаров
Выбрав понравившийся товар (рисунок 9), пользователь, переходит на страницу с его ценой и характеристиками (рисунок 10).
Рисунок 10 – Характеристики товара
Если посетителя устраивает данный товар, то он нажимает на кнопку заказать и совершается переход на форму заказа (рисунок 11).
















