Интернет-сервис – фотогалерея
Анализ существующих технологий для визуального редактирования документов и поддержки структуры статических Web-сайтов. Фотогалерея как популярный сервис Интернета. Структура динамического сайта. Операционные системы, Web-сервера и языки программирования.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | контрольная работа |
Язык | русский |
Дата добавления | 12.01.2012 |
Размер файла | 514,9 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
ВВЕДЕНИЕ
Появление глобальной сети Internet ознаменовало новый этап в развитии человечества. С этого момента наш век действительно стал информационным, так как Internet позволил осуществлять быстрый обмен информацией между людьми, находящимися в различных местах земного шара, предоставляя свои многочисленные сервисы - электронную почту, телеконференции, передачу файлов (FTP), доступ в режиме удаленного терминала и др. Но все же основным шагом к открытию Internet для массового пользователя стало появление технологии World Wide Web, которая полностью перевернула представления о работе с информацией. Существовавший до этого целый набор средств для передачи данных из одной компьютерной системы в другую не учитывал одного из главных моментов - интерфейса взаимодействия человека с информационной системой. Web-технология, опираясь на наиболее естественный для человека способ потребления необходимой ему информации, предоставляет универсальный, интуитивно ясный инструмент для доступа к данным и является наиболее универсальным подходом к интеграции информационных ресурсов.
В настоящий момент в мире существует масса информационных источников, доминирующим средством хранения которых являются системы управления базами данных. Но открытость информации во многих базах данных отнюдь не означает легкость доступа к данным для непрофессионального пользователя, так как для этого необходим не только физический доступ к соответствующей СУБД, но также и знания об используемой модели данных, схемы базы данных, умения пользоваться языком запросов. Поэтому сегодня данная проблема предоставления удобного доступа к имеющимся в наличии базам данных остается очень актуальной для многих организаций, компаний, научных учреждений, и решение ее видится только в свете применения Web-технологии. [1]
Целью данного дипломного проекта является реализация с использованием Web-технологий клиент-серверной системы хранения, поиска, ввода и отображения графической информации в Интернет, реализующей популярный на сегодняшний день Интернет-сервис - фотогалерею.
Этот сервис предназначен для предоставления пользователю тематического ресурса, содержащего графическую (фотографии) и текстовую информацию. Используя сервис фотогалереи, многие предприятия и организации пытаются сформировать общественное мнение, публикуя информацию о различных мероприятиях (выставки, форумы, семинары), о своих сотрудниках (ФИО, должность, специализация, деловые навыки, опыт работы и др.)
Существует большое количество таких Интернет-ресурсов. Основным недостатком существующих ресурсов является невозможность их повторного использования для других Интернет-проектов т.е. не являются универсальными, а также недостаточное количество реализованных функций. Отсутствие универсальности связано, прежде всего с тем, что большинство из ресурсов разрабатывалось специально для нужд и целей определенного проекта. Отсюда и все ограничения на повторное использование: для изменения дизайна или добавления функциональных возможностей часто приходится переделывать весь сайт. На многих подобных сайтах не реализованы такие функциональные возможности как удаленное администрирование, каталогизация и разделение информации на темы, поиск информации по темам и ключевым словам и др.
Таким образом, возникает задача создания универсального программного средства, реализующего Интенет-сервис фотогалерею. Универсальность системы должна быть обеспечена легкой переносимостью на различные платформы семейств Windows и Unix, т.е. должна быть кросс-платформенной, легко интегрироваться с готовыми ресурсами как по дизайну, так по использованию программных средств (сервер, база данных, язык программирования). Функционально система должна обеспечивать отображение информации в виде иерархии тем, предварительный просмотр изображений, поиск по темам и ключевым словам и должна иметь следующие возможности администрирования: редактирование(добавление, удаление, изменение) тематической информации с любого компьютера, подключенного к сети Интернет. Для реализации последних функций необходимо предусмотреть возможность разграничения доступа на основе парольной защиты и назначением владельцев тем.
В дипломном проекте проведен анализ существующих технологий построения интернет ресурсов:
статические сайты;
динамические сайты;
системы Web-паблишинга.
Проанализированы их достоинства и недостатки. Обоснован выбор технологии построения динамических сайтов для реализации поставленной задачи.
В дипломной работе необходимо проработать вопросы охраны труда (ОТ) в помещении информационного отдела. Провести анализ системы «Человек-Машина-Среда» с целью выявления опасных и вредных производственных факторов. Проработать вопросы техники безопасности в помещении, а также вопросы санитарно-гигиенических условий труда и пожарной безопасности.
В экономической части данного дипломного проекта произведена разработка и составление Бизнес-плана для программного продукта «Фотогалерея», дана его краткая характеристика, описана система сервиса, произведено исследования рынка сбыта, сегментация рынка, рассчитаны затраты на производство программного продукта, рассчитана прибыль от реализации программного продукта, построен график достижения безубыточности, построена таблица доходов и затрат, произведена разработка стратегии маркетинга.
1. АНАЛИЗ ПРОБЛЕМНОЙ ОБЛАСТИ И ПОСТАНОВКА ЗАДАЧИ
По мере развития сети Интернет и объединения все большего числа, как отдельных лиц, так и различных фирм, предприятий, организаций растет количество людей, в прямые служебные обязанности которых входит публикация информации в Сети. Для этого разработчиками информационных ресурсов использовался язык разметки (HTML) для форматирования документов и файловую структуру -- для их размещения.
С увеличением количества лиц, занимающихся созданием и публикацией таких ресурсов, появились системы для визуального редактирования документов и поддержки структуры статических (представляющих собой набор HTML-страниц) Web-сайтов: FrontPage, DreamWeaver, PageMill, HomeSite и др. С помощью этих систем можно легко создавать и модифицировать такие сайты, не обладая специальной квалификацией и не вдаваясь в тонкости HTML.
Но сейчас подобные системы по целому ряду причин перестают удовлетворять растущие потребности, и на сцену выходит новое поколение систем -- так называемые системы Web-паблишинга, или управления Web-контентом. Далее будет дан обзор таких технологий, их назначение, достоинства и недостатки.
1.1 Анализ существующих технологий
1.1.1 Статические сайты
Как уже отмечалось выше, статические сайты в принципе не могут удовлетворить все потребности пользователей, да и стоимость владения ими слишком высока.
Это обусловлено несколькими факторами, которые имеет смысл рассмотреть подробнее:
1) Смешение дизайна и контента.
Дело в том, что язык HTML, являющийся сегодня общепринятым стандартом и технологическим базисом сети, приспособлен для описания внешнего вида документов. А страницы статических сайтов «живут» именно в виде HTML-документов. И, как правило, каждая страница кроме содержательной информации включает некоторое обрамление -- шапку данного сайта, меню, служебные ссылки для удобной навигации и др.
Поэтому на страницах, отображающих конкретные документы, вперемешку идут контент (смысловое наполнение) и дизайн, причем как дизайн самого документа, так и сайта в целом.
Это влечет за собой целый ряд негативных последствий. В первую очередь можно назвать трудоемкость публикации новых и редактирования существующих документов -- они должны оформляться надлежащим образом с учетом стилевых особенностей и включением стандартного обрамления.
Обычно на современных сайтах на каждый содержательный документ имеется более чем одна ссылка: в тематическом разделе, в общем хронологическом индексе и, наконец, пока документ свежий, на первой странице (новость). Поэтому публикация документа -- это не только добавление страницы, но и изменение трех-четырех других страниц, что в несколько раз увеличивает трудоемкость и риск испортить дизайн. [2]
2) Изменение структуры или дизайна сайта.
Изменение структуры или дизайна сайта становится серьезной проблемой, требующей переработки всех опубликованных страниц.
Кроме того, существует ряд требований к функциональности сайтов, в частности тех из них, которые обеспечивают такой популярный сервис Интернет как фотогалерея.
Это:
регистрация и аутентификация - сайт должен предоставлять механизмы учета и «узнавания» посетителей;
деление пользователей на разные группы с разными правами доступа к информации (например, случайные посетители, клиенты, сотрудники, администратор);
персонализация (кастомизация) -- возможность выбора и хранения настроек, влияющих на внешний вид сайта и отражающих индивидуальные предпочтения;
возможность прямого общения как внутри сообщества, так и с владельцами сайта -- форумы, гостевые книги, чаты, опросы и др.;
интеграция с электронной почтой -- подписка на новости и т.п. [3]
Все эти функции в принципе неосуществимы в технологии статических сайтов, и здесь не обойтись без программирования. Включение отдельных скриптов, «оживляющих» статический в своей основе сайт, решает далеко не все проблемы, резко усложняет его реализацию и повышает требования к квалификации разработчика.
Процесс реализации ресурса сложнее, чем цепочка «подготовка в офлайновом режиме -- публикация», характерная для статических сайтов. В процессе подготовки документ должен проходить несколько стадий обработки, выполняемой разными людьми, прежде чем достичь своего окончательного состояния.
Все это привело к пониманию того, что современные профессиональные сайты должны быть динамическими.
1.1.2 Динамические сайты
Контент динамических сайтов хранится обычно в базе данных, а на некоторых языках программирования пишутся программы, «на лету» генерирующие из содержимого таких баз HTML-странички, которые и показываются пользователю. Существует несколько общепризнанных языков и систем программирования для разработки этих сайтов -- ASP, PHP, разные варианты Perl и др. (рис.1.1).
Рисунок 1.1 - Структура динамического сайта
Таким путем может быть создан сколь угодно сложный, гибкий и «разумно» ведущий себя сайт (запрограммировать можно все), но как только начинается программирование, порог сложности задачи сразу возрастает.
В технологической цепочке разработки сайта появляется новый персонаж -- программист, резко усложняется процесс постановки задачи и увеличивается цена ошибок постановки. То есть могут появиться следующие проблемы: несогласованность требований, затяжка сроков и др. Однако, решением этих проблем может служить детальное продумывание и проектирование системы с расчетом на постоянно изменяющиеся требования заказчика.
Подобный подход позволяет разделить дизайн и функциональные возможности, путем применения шаблонов, поэтому изменение дизайна не является проблемой. Поэтому не требует совместной работы дизайнера и программиста.
Создания сайтов, реализующих поддержку бизнес-процессов и других крупных ресурсов, -- довольно сложная программистская задача, решение которой связано с затратами значительного времени и средств. И позволить это себе могут только крупные Web-студии, имеющие обширный набор повторно используемых заготовок. Для решения таких сверхсложных задач разрабатываются системы третьего поколения. [3]
1.1.3 Системы Web-паблишинга
Стоимость и трудоемкость создания статических сайтов достаточно низки по сравнению с динамическими, но трудоемки и дороги в сопровождении. Кроме того, у них отсутствует целый ряд необходимых функций. Заказные динамические сайты сложны и дороги в разработке, но при удачной постановке задачи могут быть сделаны достаточно дешевыми в сопровождении.
Системы управления Web-контентом, или системы Web- паблишинга, как раз и предлагают компромисс между этими двумя крайностями. За счет ограничений, накладываемых на логическую структуру контента, внешний вид (дизайн) и функциональные возможности создаваемых динамических сайтов, такие системы позволяют радикально снизить трудоемкость разработки и поддержки.
Все системы управления контентом представляют собой некоторое программное обеспечение, устанавливаемое на Web-сервере и предназначаемое для создания и обслуживания динамических Web-сайтов. Все они в том или ином объеме предполагают отделение контента от дизайна и минимизацию программистских усилий при разработке сайтов. Все хранят контент в базах данных и управляют как контентом, так и дизайном через Web-интерфейс (рис.1.2). [3]
Большинство подобных систем способны функционировать в режиме хостинга, т.е. сервис-провайдер может размещать систему управления контентом на своем сервере, предоставляя клиентам возможность создавать там свои персональные сайты за сравнительно (со стоимостью приобретения программного обеспечения) небольшие деньги.
И в то же время между рассматриваемыми системами имеются существенные различия -- как по используемым технологиям и подходам, так и по областям применения и квалификационным требованиям к пользователям. Данная модель предусматривает следующие существенные аспекты:
контент-модель (как представлено информационное наполнение сайта);
способы описания и механизмы управления дизайном;
механизмы авторизации и поддержки сообществ пользователей;
механизмы управления контентом (публикация и редактирование материалов, управление структурой сайта);
механизмы поддержки бизнес-процессов.
Рисунок 1.2 - Система управления контентом
1.1.4 Выбор технологии
Для разработки клиент-серверной системы хранения, поиска и представления графической информации в Интернет наиболее подходящей является технология создания динамических сайтов. Выбор этой технологии обусловлен прежде всего тем, что ее использование позволяет в полной мере реализовать все функции разрабатываемой системы. Учитывая перечисленные выше достоинства и недостатки, выбор является оптимальным. Далее проведем анализ существующих средств разработки в рамках выбранной технологии.
1.2 Технологические аспекты построения динамических Интернет-
ресурсов
Проанализируем технологические аспекты создания динамических Интернет-ресурсов. Для этого необходимо подобрать соответствующее программное и аппаратное обеспечение.
Программное обеспечение можно подразделить на следующие системы:
операционные системы;
Web-сервера;
базы данных;
языки программирования.
1.2.1 Операционные системы
Сейчас на рынке операционных систем для Web-серверов однозначно преобладают Unix-системы и их клоны, а также системы построенные на Windows - платформе.
Считается, что Unix система имеет ряд преимуществ перед Windows:
программное обеспечение для Unix в основном бесплатное;
Unix - операционная система с открытым исходным кодом, что обеспечивает большую гибкость настроек;
по безопасности превосходит Windows системы;
для Unix систем разработано большое количество специфического программного обеспечения. [1]
1.2.2 Web сервера
На сегодняшний момент наиболее популярными Web-cерверами являются:
Apache для ОС Unix;
Netscape Enterprise Server 4.0;
Microsoft Internet Information Server 4.0(5.0) для Windows NT 4.0 Server(Windows 2000 Server);
Lotus Domino Server. [4]
Enterprise Server 4.0 (iPlanet Enterprise Server), фирмы Netscape Communications, простой в использовании, управлении и конфигурировании. Он поддерживает ОС Solaris и Windows NT и в силу этого совместим с большинством оборудования масштаба предприятия, предлагаемого сейчас на рынке. Кроме того, он очень надежен в работе. По производительности Enterprise Server не отличается от IIS при работе на платформе Intel и существенно превосходил Apache при выполнении тестов на динамическую генерацию HTML-страниц.
С Netscape в отличие от IIS не приходится перезагружать машину при изменении конфигурации. Этот сервер является платным и стоит порядка 5000$.
Internet Information Server 4.0 фирмы Microsoft.
Благодаря своей превосходной по всем параметрам производительности IIS практически всегда быстрее, чем серверы Enterprise Server или Apache Server, доставляет Web-страницы.
У этого Web-сервера имеются два недостатка: он часто требует перезагрузки и ему не хватает поддержки платформ, отличных от Windows. Достоинствами же IIS являются его зрелая платформа разработки Web-приложений и превосходная производительность.
Управление IIS осуществляется с помощью подключаемого модуля (plug-in) консоли Microsoft Management Console (MMC). Пользоваться этой консолью довольно просто. По сравнению со своим же собственным интерфейсом WUI и интерфейсом сервера Enterprise Server пользовательский интерфейс консоли MMC выглядит как идеальное средство управления.
Привязка приложений выполнена на корневом уровне дерева документов и соответствующим образом влияет на все файлы узла. Однако в отличие от Apache Server здесь практически невозможно отключить доступ к отдельным каталогам Web-содержимого в зависимости от типа приложений.
Apache Server фирмы Apache Software Foundation.
Сервер Apache Server, согласно данным исследования Web-серверов, проведенным фирмой NetCraft, способен надежно обслуживать содержимое большинства ныне существующих Web-узлов. Успех сервера легко объяснить: свободно распространяясь через Интернет, Apache Server заслужил репутацию самого надежного из предлагающихся на данный момент Web-серверов. К сожалению, за свою надежность он требует от пользователей некоторых жертв: управление Apache Server осуществляется посредством редактирования текстовых файлов, при этом предоставляется всего несколько полезных Web-страниц, содержащих информацию о его текущем состоянии.
Большой вклад в расширение возможностей Web-сервера “открытого кода” Apache Server в форме общедоступных серверных модулей внесли его пользователи. Возможно, его главными преимуществами и являются широчайшая поддержка со стороны конечных пользователей, практически универсальная поддержка платформ, быстрота исправления ошибок и короткий цикл разработки конечного Web-приложения. Хотя по мощности и богатству средств Apache Server не может сравниться с продуктами фирм Netscape и Microsoft, но в большом числе конфигураций он удовлетворяет все требования пользователей и при этом поставляется бесплатно.
Для расширения функциональности базового HTTP-сервера Apache Server использует серверные модули, которые могут загружаться динамически во время исполнения или заранее статически компилироваться в двоичный код. Минимальное число серверных модулей:
mod_log_config -- регистрация пользователей;
mod_mime -- поддержка почтовых MIME-сообщений и SSI;
mod_cgi -- поддержка CGI-сценариев;
mod_perl -- поддержка языка Perl;
mod_include -- для SSI;
mod_env -- тоже для SSI. [5]
В целом производительность Apache Server чуть ниже, чем у серверов фирм Netscape и Microsoft, особенно при SSI. [3]
Конфигурирование и управление Apache Server практически полностью осуществляется посредством командной строки или через текстовый редактор. Настоящий графический интерфейс для Apache Server на большинстве поддерживаемых платформ, в том числе Solaris, Win32 и Linux, обеспечивают дополнительные утилиты, такие, как Comanche Project.
Главное преимущество использования Apache Server в качестве промышленного Web-сервера состоит в том, что разработчики обеспечивают его техническую поддержку в интерактивном режиме.
В Apache Module версии 1.3 и более поздних используется новый метод пакетного конфигурирования (batch configuration), называемый APACI (Apache Autoconf-style Interface), значительно упрощающий процедуру инсталляции и конфигурирования. [5]
По результатам исследований российских доменов сервер Apache является наиболее популярным web-сервером. Всего зарегистрировано 20 тыс. доменов, из которых около 14,2 тыс. - http-серверы. Результаты исследований: Apache -- 78% (10982 установки), серверы Microsoft -- 19% (2720), доля каждого из оставшихся не превышает 1%. Доля установок Apache с прошлого года увеличилась, а Microsoft -- уменьшилась (в прошлом году она была равна 21%). Фактически это означает, что владельцы новых серверов предпочитают использовать Apache. [3]
Следует отметить, что сервер Apache обладает открытой архитектурой и любой разработчик может дописать к нему свой модуль. В некоторых случаях сервер сообщает об используемых им модулях. Рассмотрим, как технологии применяются вместе с Apache. Из 9929 серверов под управлением операционной системы Unix работают 8557, под Windows/Windows NT -- 102, а под OS/2 -- 11 серверов. Большая часть серверов -- 7665 -- русифицировано. Наиболее популярными дополнениями к Apache являются PHP (3680 установок), FrontPage (1275 установок) и mod_perl (709 установок). Также популярен у российских владельцев серверов ряд средств обеспечения безопасности соединения по протоколу SSL. Наиболее востребованы следующие четыре реализации SSL: mod_ssl (329), OpenSSL (289), Ben-SSL (53) и SSLeay (40). [3]
1.2.3 Системы управления базами данных
Среди баз данных, используемых в Интернете выделяют следующие:
mSQL или MySQL - системы управления базами данных, рассчитанные на задачи среднего уровня сложности, в этих СУБД нет специально разработанного языка SQL, нет защиты на уровне управления СУБД. Эти СУБД распространяются бесплатно и работают на ОС UNIX(в настоящее время появились версии, работающие на ОС Windows 98/NT);
PostgreSQL - это бесплатный и вместе с тем достаточно быстрый и мощный SQL сервер. Распостраняется по лицензии General Public License (GPL) версии 2, т.е. предоставляются исходные тексты программы;
Oracle - промышленная СУБД, в нее встроен специализированный процедурный язык SQL (PL/SQL), есть защита на уровне управления СУБД, разграничения доступа к базам, таблицам, встроенные оптимизаторы и т.д.;
MS SQL - промышленная СУБД, в нее встроен специализированный язык SQL (Transact SQL), есть защита на уровне управления СУБД, разграничения доступа к базам, таблицам, системы отслеживания доступа и т.д.
Заметим, что СУБД MySQL и PostgreSQL входят в состав стандартных пакетов для Unix-подобных ОС, так как Linux (RedHat, Debian, Mandrake), FreeBSD и др.
По результатам тестов проводимых для журнала ComputerWorld, PostgreSQL значительно уступает по производительности СУБД MySQL. [3] Рассмотрим подробнее СУБД MySQL.
MySQL - небольшой, компактный многопоточный сервер баз данных. MySQL характеризуется большой скоростью, устойчивостью и легкостью в использовании.
MySQL был разработан компанией TcX для внутренних нужд, которые заключались в быстрой обработке очень больших баз данных. Компания утверждает, что использует MySQL с 1996 года на сервере с более чем 40 БД, которые содержат 10,000 таблиц, из которых более чем 500 имеют более 7 миллионов строк. [6]
MySQL является идеальным решением для малых и средних приложений. Исходные тексты сервера компилируются на множестве платформ. Наиболее полно возможности сервера проявляются на Unix-серверах, где есть поддержка многопоточности, что дает значительный прирост производительности. В варианте под Windows, MySQL может запускаться как сервис Windows NT или как обычный процесс на Windows 95/98. [6]
На текущий момент MySQL все еще в стадии разработки, хотя версии 3.23 полностью работоспособны.
MySQL поддерживает язык запросов SQL в стандарте ANSI 92, и кроме этого имеет множество расширений к этому стандарту, которых нет ни в одной другой СУБД. [6]
Краткий перечень возможностей MySQL:
Поддерживается неограниченное количество пользователей, одновременно работающих с базой данных.
Количество строк в таблицах может достигать 50 млн.
Быстрое выполнение команд. Возможно MySQL самый быстрый сервер из существующих.
Простая и эффективная система безопасности.
MySQL действительно очень быстрый сервер, но для достижения этого разработчикам пришлось пожертвовать некоторыми требованиями к реляционным СУБД. В MySQL 3.23 отсутствуют:
Поддержка вложенных запросов, типа SELECT * FROM table1 WHERE id IN (SELECT id FROM table2).
Не реализована поддержка транзакций. Взамен предлагается использовать LOCK/UNLOCK TABLE.
Нет поддержки внешних (foreign) ключей.
Нет поддержки триггеров и хранимых процедур.
Нет поддержки представлений (VIEW). В версии 3.23 планируется возможность создавать представления.
По словам создателей именно пункты 2-4 дали возможность достичь высокого быстродействия. Их реализация существенно снижает скорость сервера. Эти возможности не являются критичными при создании Web-приложений, что в сочетании с высоким быстродействием и малой ценой позволяет серверу приобрести большую популярность.
Однако в новой версии MySQL 4, тестовые версии, которой уже выпущены, ограничения, описанные в пунктах 1-4 реализованы.
1.2.4 Языки программирования
При разработке динамических web-сайтов используются языки программирования для создания как серверной так и клиентской части. Ниже приведен обзор таких языков программирования, серверные, а затем, клиентские.
Прикладное программирование для Web начиналось с обработки запросов пользователя, передаваемых через формы и динамической генерации страниц на стороне сервера. По этому же принципу работают языки программирования вставок (SSI) в HTML документы. [2]
Технология создания активных документов SSI+ - Server Side Includes - предложена фирмой Questar Microsystems. Эту технологию поддерживают такие WWW сервера как Apache, Netscape, Spry Web и Microsoft Internet Information Server (MS IIS). [4]
Поддержка этой технологии связана со специальной конфигурацией WWW сервера и протокола HTTP.
Технология Server side includes (SSI) позволяет использовать в HTML документах такие возможности как: опрос текущего времени и даты, условного выполнения форматирования в зависимости от логических сравнений, формировать запросы или модифицировать базы данных, посылать электронную почту, вызывать программы или CGI scripts.
Возможности технологии SSI+ задают механизм совместного использования языка HTML и программ CGI Script. Различные сервера (например, Apache или MS IIS) немного по- разному интерпретируют команды SSI.
Отметим, что, используя SSI+ можно вставлять в документ и активные ресурсы (динамические страницы), обрабатываемые WWW сервером, например, PHP скрипты или те же shtml файлы, при этом перед вставкой (в отличие от ASP скриптов сервера MS IIS) сервер произведет обработку этих ресурсов.
Технология SSI+ является родоначальником таких современных языков программирования стороны сервера как Perl, PHP, ASP. [4] По своим функциональным возможностям эти языки практически не уступают друг другу. В то время как Perl и PHP поддерживаются практически всеми web-серверами на платформах Windows и Unix, поддержка технологии ASP ограничена только Windows-платформой.
PERL (Practical Extraction and Report Language) -- язык, который был разработан главным образом для синтаксической обработки текста. Однако в последние несколько лет благодаря новым и модулям расширения, он применяется не только как текстовый обработчик, но и как мощный инструмент разработки Интернет/Интранет-приложений и Web-роботов. Интерпретатор Perl поставляется, как правило, вместе с исходными кодами, которые могут быть скомпилированы практически на любой платформе -- DOS, OS/2, UNIX или Windows. [7]
Синтаксис языка Perl значительно сложнее, чем PHP. Если сравнивать версии PHP3 и Perl5, то последний значительно выигрывает по скорости. Однако с появлением PHP4 его производительность увеличилась в несколько раз. Благодаря этому скорость выполнения небольших PHP-сценариев стала сравнима с откомпилированными программами, написанными, например на языке С.
По субъективным причинам, а именно легкость освоения языка PHP благодаря простоте синтаксиса в отличие от Perl, для разработки программы в рамках дипломного проекта язык PHP4 является оптимальным выбором.
Рассмотрим подробнее язык PHP. Интерес к этому языку вызван в первую очередь тем, что PHP - это простой в использовании.
PHP - Hypertext Preprocessor (гипертекстовый препроцессор) или Personal Home Page - это встраиваемый в HTML скриптовый язык. [8] Синтаксис языка заимствован у C, Java и Perl, а так же добавлены некоторые уникальные специфичные для PHP элементы. [9] Главное преимущество этого языка состоит в том, что он дает возможность быстро создавать динамически генерируемые страницы. Некоторые особенности языка:
создание и манипулирование изображениями;
HTTP - аутентификация;
поддержка cookies;
обработка закачки файлов на сервер;
использование файлов размещенных на разных узлах сети;
обработка соединений с сервером;
поддержка перманентных соединений с базой данных;
математические функции для работы с числами произвольной точности;
поддержка COM-объектов Windows;
поддержка классов/объектов;
поддержка объектной модели XML документа;
IMAP, POP3, NNTP, FTP, HTTP функции;
мощный механизм обработки строк с помощью регулярных выражений;
обработка данных полученных из форм (элемента FORM html-документа);
поддержка сессий. [8]
Кроме того, в PHP встроена поддержка самых популярных баз данных (таблица 1.1), что делает написание Web-приложений с использованием БД достаточно простым. [6]
Таблица 1.1 - Краткий перечень поддерживаемых БД
Adabas D |
InterBase |
Solid |
|
Dbase |
MSQL |
Sybase |
|
Empress |
MySQL |
Velocis |
|
FilePro |
Oracle |
Unix dbm |
|
Informix |
PostgreSQL |
ODBC |
Еще одним преимуществом PHP является его бесплатность. Cвязка PHP-MySQL является кросс платформенной. А связка PHP-MySQL и Apache Web Server - самый популярный сервер Интернет. [4]
К недостаткам PHP можно отнести его относительно низкую производительность - на 5-10% ниже, чем у аналогичных модулей, реализованных на языке С. Однако при написании небольших программ, что присуще проектам на PHP, когда весь проект состоит из многих небольших страниц с кодом, вступают в силу накладные расходы на загрузку в память и вызов CGI-программы, написанной на С.
1.3 Постановка задачи
Необходимо разработать интерфейсную подсистему доступа к данным и их отображения в системе хранения, поиска, ввода и отображения графической информации в Интернет. Система должна быть кросс-платформенной, т.е. не использовать функций операционной системы, на которой установлена.
Подсистема должна реализовывать интерфейсы к следующим модулям системы:
а) отображение текстовой и графической информации (модуль просмотра фотографий и информации о них);
б) поиск фотографий по ключевой информации;
в) модуль администрирования системы.
Подсистема должна реализовывать интерфейс к серверной СУБД MySQL.
Разработать подсистему управления и администрирования базы данных в системе хранения, поиска, ввода и отображения графической информации в Интернет. Система должна быть кросс платформенной, т.е. не использовать функций операционной системы, на которой установлена.
Система должна быть легко интегрируемой с готовыми ресурсами.
Для реализации системы необходимо использовать технологию создания динамических сайтов. Выбор этой технологии обусловлен тем, что статические сайты не позволяют реализовать все необходимые функции, а описанная выше технология Web-паблишинга является слишком дорогостоящей и ее применение не целесообразно для решения поставленной задачи. Применение технологии Web-паблишинг является оправданным при решении сложных задач, связанных с автоматизацией бизнес-процессов.
Для разработки системы использовать web-сервер Apache, СУБД MySQL 2.23, язык программирования PHP 4. Данные средства разработки были выбраны благодаря множеству, описанных выше, преимуществ при разработке динамических web-сайтов, а именно:
легкая интегрируемость, связка PHP-MySQL и Apache Web Server - самый популярный сервер Интернет - что позволяет подключить разработанный сервис как модуль к уже готовым ресурсам; кроме того, связка является кросс-платформенной;
язык PHP прост в освоении, благодаря простоте синтаксиса;
встроенная в PHP поддержка СУБД MySQL позволяет реализовать механизм управления базой данных, выборки и обновления информации;
высокая производительность и устойчивость такой связки;
средства MySQL и PHP позволяют организовать необходимое разграничение прав доступа.
1.3.1 Требования к аппаратным ресурсам
Серверная часть: требования к аппаратным ресурсам определяются типом конкретного сервера, его функциональностью и требованиями установленной на нем операционной системы.
Минимальные требования: Intel Pentium II 266 MГц, 64МБ ОЗУ, 150 МБ свободного дискового пространства.
Клиентская часть: требования определяются операционной системой клиента.
Минимальные требования: i486DX 100МГц, 16 Мб ОЗУ, 10 Мб свободного дискового пространства.
1.3.2 Требования к программному обеспечению
Серверная часть:
серверная ОС семейства Windows или UNIX;
сервер с поддержкой PHP4 (Apache Web Server, Microsoft Personal Web Server, Microsoft Internet Information Server, Falcon Web Server, Sambar Web Server, Xitami, HTTPS);
интерпретатор PHP4;
серверная СУБД MySQL версии не ниже 3.23.18.
Клиентская часть:
любая операционная система, под управлением которой может функционировать WEB-браузер с поддержкой JavaScript. Например: ОС Windows 98, браузер Internet Explorer 4.0 или ОС RedHat Linux 6.1, браузер Mozilla.
сайт фотогалерея интернет программирование
ПЕРЕЧЕНЬ ССЫЛОК
1. Материалы Центра Информационных Технологий - http:// www.citforum.ru
2. http://www.webscript.ru/webtech/ - Аналитические обзоры современных web-технологий
3. http://www.osp.ru - Обзоры издательства «Открытые системы»
4. http//www.webclub.ru - Сервер аналитической информации для разработки web-приложений
5. http://www.apache.net - Официальный сайт разработчиков web-сервера Apache
6. http://www.mysql.org - Официальный сайт разработчиков СУБД MySQL
7. http://www.webscript.ru/perl/ - Материалы разработчиков web-проектов на языке Perl
8. http://www.php.net - Официальный сайт разработчиков PHP
9. http://www.webscript.ru/php/ - Материалы разработчиков web-проектов на языке PHP
10. http://www.phpwizard.net/projects/phpMyAdmin/ - Официальный сайт разработчиков программы PHPMyAdmin
11. М. Мэтьюс, Э. Полсен Frontpage 98: Полное руководство: Пер. с англ.- К.:Издательская группа BHV, 1999.-672с.
12. Алекс Хоумер, Крис Улмен Dynamic HTML: справочник: Пер. с англ. - СПб: Издательство Питер, 2000.-512с.: ил.
13. ДСТУ 3008-95 "Документація. Звіти в сфері науки і техніки. Структура і правила оформлення" - Державний стандарт України
14. Методические указания к выполнению раздела “Охрана труда” в дипломных проектах (работах) для студентов всех форм обучения специальности 6.0804 “Компьютерные науки”. В.А. Айвазов, Б.В. Дзюндзюк, О.И. Хяйнекяйнен. Харьков: ХТУРЭ, 1999. - 28с.
15. Кнорринг Г.М. Справочник для проектирования электрического освещения. - Л.: Энергия, 1976.- 391 с.
16. ГОСТ 12.0.003 - 74. ССБТ. Опасные и вредные производственные факторы. Классификация.
17. Правила устройства электроустановок. ПУЭ-85.
18. ГОСТ 12.1.030-81. ССБТ. Электробезопасность. Защитное заземление. Зануление.
19. ГОСТ 12.1.005-88. ССБТ. Общие санитарно-гигиенические требования к воздуху рабочей зоны.
20. ГОСТ 12.1.003-83. ССБТ. Шум. Общие требования безопасности.
21. СНиП II-4-79. Нормы проектирования. Естественное и искусственное освещение.
22. ДНАОП 0.00-1.31-99. Правила охорони праці під час експлуатації електронно-обчислювальних машин.
23. СНиП 2.09.02-85. Производственные здания промышленных предприятий. Нормы проектирования.
24. ГОСТ 12.1.004-91. ССБТ. Пожарная безопасность. Общие требования.
25. СНиП 2.01.02-85. Противопожарные нормы проектирования предприятий и сооружений.
26. ДНАОП 0.04-4.12-94. Типові положення про навчання, інструктаж та перевірку знань з питань охорони праці.
27. ГОСТ 12.2.03-78. ССБТ. Рабочее место при выполнении работ сидя. Общие эргономические требования.
Размещено на Allbest.ru
Подобные документы
История развития информационных технологий. Появление Интернета, браузеры. Основы web-программирования: классификация сайтов, языки программирования. Создание сайта для кафедры высшего учебного заведения: технология создания и руководство пользователя.
дипломная работа [471,5 K], добавлен 23.04.2015Понятие Web-сайта и его типы, основы классификации. Достоинства и недостатки сайтов динамического наполнения. Языки программирования серверного выполнения, которые используются для их создания. Проектирование динамического сайта со справочным материалом.
курсовая работа [959,8 K], добавлен 05.03.2014Разработка интернет-сервиса для создания визуального интерфейса системных служб хостинг-компании. Критерии оценки интерфейса и направления разработки. Рабочий стол GlideOS. Выбор архитектуры сервиса, языка программирования и коммуникационных методов.
дипломная работа [3,1 M], добавлен 19.11.2013История развития Интернета и принципы его работы. Сквозные протоколы и шлюзы. Логическая и физическая структура сайта. Основы HTML и форматирование текста. Списки, таблицы, гиперссылки. Мультимедиа на web–странице. Формат задания фреймовой структуры.
курсовая работа [1,2 M], добавлен 27.03.2009Основные технологии разработки ресурсов Интернет. Процесс разработки веб-сайта. Понятие Web-сайта и классификация Web-сайтов. Основные этапы разработки Web-сайта. Использование HTML, CSS, JavaScript, FLASH, PHP и реляционной базы данных MySQL.
презентация [1,3 M], добавлен 28.11.2015История появления Интернета. Сервисы для хранения мультимедийных ресурсов. Социальные поисковые системы. Сервисы, позволяющие пользователю вести записи, редактировать текст сайта. Персональные рекомендательные сервисы. Общение в трехмерной реальности.
реферат [34,3 K], добавлен 12.10.2014Основные факты из истории появления интернета, ключевые принципы и перспективы дальнейшего развития. Языковые сферы Интернета, русскоязычная среда всемирной сети (Рунет). Виды браузеров для просмотра интернет-страниц. Спектры сервисов и услуг Интернета.
контрольная работа [34,3 K], добавлен 25.02.2012Критерии и аспекты создания web-сайтов. Правовые акты, регулирующие применение интернет-технологий в государственном и муниципальном управлении. Оценивание сайта ОГБУ Центр социальной поддержки населения Советского района Томска, оптимизация его работы.
дипломная работа [1,0 M], добавлен 24.06.2013Страницы сайтов как набор текстовых файлов, размеченных на языке HTML. Виды сайтов, их классификация. Характеристика сайта: статический или динамический. Проблема безопасности web-сайта. Исследование программного обеспечения и языков программирования.
дипломная работа [850,3 K], добавлен 11.01.2015Системные службы хостинг-компании как целевая аудитория сервиса, общие требования к ним. Критерии оценки интерфейса и направления разработки. Проектирование интернет-сервиса, схема его функционирования и принципы реализации, оценка эффективности.
дипломная работа [2,5 M], добавлен 18.11.2013