Файл: Основы алгоритмизации при разработке WEB-приложений.pdf
Добавлен: 03.07.2023
Просмотров: 242
Скачиваний: 3
СОДЕРЖАНИЕ
1. Определение целей и задач проекта
1.1 Разработка структуры сайта
1.4. Программирование и контроль качества
2. Системы поддержки процесса разработки
3. Анализ рынка web-разработки
4. Рекомендации по разработке web-приложений
5. Сравнительный анализ сред создания Web-приложений
Минусы: небольшой набор инструментов разработки, невозможность отдельного приобретения программы. Microsoft FrontPage неплохо подойдет в качестве HTML-редактора на первое время, однако с ростом потребностей его возможностей может не хватить. Есть и обратная сторона медали - сложность и громоздкость полученного кода, что естественно, сказывается на конечном размере документа. Также в дальнейшем будет весьма сложно вносить изменения в подобный документ. Но это скорее недостаток не конкретного продукта, а практически всех WYSIWYG-редакторов (What You See Is What You Get - "что видите, то и получите").
Web-компоненты работают только в том случае, если на web-сервере, который используется, присутствуют соответствующие им программы.
Microsoft Word
Не смотря на то, что Microsoft Word является текстовым редактором и по существу не считается HTML-редактором. Он имеет возможность сохранять файлы в формате HTML. В результате мы можем столкнуться со страницами которые тем или иным способом были созданы в Microsoft Word. Проблемы в HTML-коде, полученном из редактора аналогичны проблемам FrontPage: обе эти программы создают избыточный код, который не во всём соответствует HTML-стандарта. Огромное количество людей, использующих Word в своей повседневной работе, становятся потенциальными разработчиками HTML-документов.
Создать web-станицу в Word можно двумя способами: с помощью Мастера либо преобразовав существующий документ Word в формат HTML. При этом Word сам генерирует тэги HTML, хотя и не оптимальным образом. Преобразование естественно приводит к тому, что какие-то элементы оформления документа будут утрачены или изменены. При необходимости вставить на HTML-страницу собственные тэги, в Word предусмотрено непосредственное редактирование HTML-кода.
Adobe Illustrator
Предназначена для создания и редактирования иллюстраций, то есть изображений, содержащих элементы векторной графики, например шрифты, геометрические фигуры и т.д.
Web-страницы могут содержать много элементов – текст HTML, растровые изображения, векторную графику. В Illustrator можно использовать фрагменты для определения границ различных web-элементов в объекте. Web-страница делится на ячейки которые представляются в трёх типах: изображения, без изображения, HTML-текст.
При этом можно сохранить каждый фрагмент как независимый файл со своим форматом, настройками и цветовой палитрой. Блокировка фрагментов предотвращает случайные изменения позиция. Размер фрагмента привязываются содержащемуся в нем объекту. Поэтому при перемещении или изменении размера объекта границы фрагмента корректируются автоматически, но при необходимости их всегда можно откорректировать вручную.
Карты ссылок позволяют связать одну или несколько областей изображения (так называемых активных областей) с URL-адресом. Когда щелкаем по активной области, web-браузер загружает связанный с ней файл.
Основная разница между использованием карт ссылок и фрагментов для создания связей состоит в том, как объект экспортируется на web-страницу. Использование карт ссылок сохраняет объект в виде единого файла изображения, а в случае использования фрагментов объект делится на несколько отдельных файлов. Еще одна разница между картами ссылок и фрагментами состоит в том, что карты позволяют связывать многоугольные или прямоугольные области в объекте, а фрагменты – только прямоугольные [1, с. 139].
Adobe Photoshop
Самая популярная и широко распространенная программа редактирования изображений. С её помощью можно создавать высокохудожественные изображения. Она содержит всё необходимое для создания и редактирования профессиональной графики.
Photoshop — это не просто программа редактирования изображений, это самая мощная и функциональная программа в своем классе. Программа позволяет ретушировать изображение и подвергать его спецэффектам, переносить детали одного снимка на другой, вносить текст, менять соотношение цветов и даже добавлять цвет в изображения, выполненные в оттенках серого. Средства Photoshop совместимы с графическими планшетами, что дает возможность создавать вполне художественные изображения, не хуже выполненных акварелью и маслом.
При всей простоте основных инструментов Photoshop пользователь может к тому же настраивать их "под себя". А это равносильно наличию бесконечного разнообразия мелков. Поскольку программы рисования полагаются при своей работе на пиксели, они идеально подходят для работы с электронными (цифровыми) фотографиями цветных карандашей, пульверизаторов, акварельных и масляных красок и многого другого. Photoshop предоставляет полный контроль над каждым пикселем изображения. Недостаток программ рисования в ограниченном разрешении. Поскольку битовый рисунок состоит из фиксированного количества пикселей [8, 592].
CorelDraw
CorelDraw позволяет обрабатывать самую разнообразную информацию, представляемую в документе в виде векторных и растровых объектов, блоков обычного и художественного текста, а также объектов Интернета.
В программе применен современный интерфейс плоского типа, который характеризуется тем, что инструменты, находящиеся на различных панелях, отображаются в виде обычных плоских рисунков, а выделение одного из них происходит только при установке на нем указателя.
При построении векторных изображений линии и фигуры накладываются, пока не получится окончательное изображение. Каждый объект можно редактировать независимо от остальных — одно из немногочисленных преимуществ объектного подхода, тем не менее, изображение все же приходится строить поэтапно. В программе редактирования векторных рисунков линии, фигуры и текст задаются математическими выражениями, что дает возможность автоматически настраивать их на максимальное разрешение устройства вывода. Еще одно преимущество векторных рисунков состоит в том, что для них не требуется много места на диске. Объем файла векторного рисунка зависит только от количества и сложности объектов, составляющих этот рисунок, поэтому его размер, в отличие от растрового рисунка, практически не влияет на этот объем.
CorelDraw демонстрирует качества мощного визуального редактора web-страниц: пользователь получает возможность генерировать развитые HTML-документы, которые могут включать сценарии JavaScript и таблицы стилей CSS.
Обеспечивая мощные возможности для работы с графикой, текстом и средства компоновки и экспорта документов для публикации в Интернете, CorelDraw вполне может служить исходным пунктом для генерирования первых версий файла HTML.
6. Средства разработки серверных Web-приложений
Выбор архитектуры Web-сервера определяется не только параметрами производительности — немаловажными являются также факторы доступности и качества технологий разработки ПО, особенно если вы планируете вести свой бизнес с помощью Web-приложений.
Некоторые технологии разработки Web-приложений прилагаются к Web-серверу, при этом они могут быть независимы от языка программирования, как, например, технология CGI (Common Gateway Interface). Часть из них сильно зависит от доступных средств разработки, как, например, компоненты ActiveX, разрабатываемые в основном с помощью Microsoft Visual Studio.
Существует множество превосходных средств разработки Web-приложений и помимо тех, что рассматриваются в данном обзоре. Мы решили сосредоточить свое внимание на Web-серверах и связанных с ними продуктах.
Какое же средство подойдет именно вам? На этот вопрос нет однозначного ответа. Информационным системам, работающим на базе продукции Microsoft, несомненно, подойдет превосходный набор средств разработки сервера IIS, зато более независимые в своих пристрастиях программисты предпочтут бесплатный Apache Server с PHP, обладающий широчайшей поддержкой. Разработчикам, работающим на Java, трудно будет найти среду лучше Netscape (iPlanet) с ее поддержкой самых современных Java-средств.
Apache Server и PHP
В качестве средств разработки приложений мы бы предпочли выбрать Apache Server и PHP. Документация к ним имеется в изобилии, а поддержка со стороны пользователей просто феноменальная. Надежность продукта, особенно на Unix-сервере, не имеет себе равных. Средство контроля исходного кода Source Code Control может работать совместно со свободно доступными средствами CVS. Если ваш информационный центр никак не связан с IIS и Java, то вам стоит серьезно подумать о возможности использования Apache, PHP и mySQL на Linux-сервере.
Web-сервер Apache обеспечивает несколько опций разработки программного кода приложений любой степени сложности. Старомодный интерфейс CGI (Common Gateway Interface) в соединении с Perl, Си и прочими языками программирования позволяет без проблем справиться с простыми задачами для узлов с низким уровнем трафика. Все эти программы генерируются в отдельных процессах, что обычно сильно увеличивает вычислительную нагрузку на машину, где запущены Web-приложения.
Сервер Apache, как и Netscape и IIS, имеет API, позволяющий справиться с трудностями работы с CGI. При помощи Apache API программисты могут написать фрагмент программы в требуемом формате на языке Си. Этот фрагмент, называемый модулем, затем подключается к серверу Apache или же загружается динамически в момент исполнения. Используя вызовы Си-функций, программист получает прямой доступ к функциям ядра Apache. Такая же возможность доступна и для Netscape (через NSAPI) и для IIS (через ISAPI), но разработчики во всем мире чаще всего пользуются ею при работе с Apache. Если вы хотите использовать этот механизм и ваши приложения имеют дело с большими объемами данных, то, прежде чем приступать к работе, просмотрите файл mod_example.c, находящийся в каталоге текстов исходных модулей. Специальный модуль под названием mod_perl позволит вам писать собственные модули на языке Perl вместо Си.
Мы предпочитаем писать динамическое содержимое для Apache при помощи PHP — свободно распространяемого языка встраиваемых в HTML сценариев для серверной стороны. Программирование на PHP аналогично тому, что применяется и с ASP, однако обеспечиваемая им широкая поддержка баз данных дает ему преимущество перед VBScript. Язык PHP позволяет встраивать внутрь вашей HTML-страницы код, исполняемый на сервере. Таким образом, клиент никогда не видит текста PHP-программы. По синтаксису PHP напоминает язык Си, так что для программиста, имеющего опыт работы на Си и Perl, освоить его будет легко. Этот язык дает возможность пользоваться сложными структурами данных, такими, как массивы и классы, а так как он поддерживает большое число баз данных, то это позволяет разрабатывать крупные приложения при помощи одного PHP.
Кроме того, язык PHP и сам по себе достаточно прост. Написать с его помощью Web-приложение, использующее базу данных, не представляет особого труда. У такого приложения на HTML-странице имеется форма ввода данных, которая инициирует исполнение PHP-сценария; тот, в свою очередь, открывает соединение с базой данных одним оператором, задающим имена сервера и пользователя, а при необходимости и пароль. Потом такая программа может выполнить SQL-запрос и в результате получить все адреса, отвечающие заданным в форме условиям. Кроме того, при помощи PHP-цикла запускается итерационный процесс обработки извлеченного из БД набора данных. Выбранная информация с использованием встроенных функций echo() и print() печатается на итоговой HTML-странице. Необходимый для этого текст PHP-сценария состоит всего из шести строк. Конечный пользователь увидит только HTML-страницу со списком имен и адресов, так как весь программный PHP-код заранее обрабатывается на сервере.
Более сложным Web-приложениям, особенно полномасштабным Web-клиентам, которые идут на замену существующим традиционным, или “толстым” клиентам, требуется уже применение сеансов. Технология ASP уже давно определила концепцию сеанса, и в PHP4 она теперь тоже реализована. При использовании сеансов не нужно постоянно записывать и считывать специальные маркеры (cookies) для выяснения того, где побывал данный пользователь, — необходимая информация сохраняется в соответствующей переменной сеанса. Эти переменные вместе с уникальными идентификаторами сеанса позволяют писать сложные приложения, которые, выполняя запросы пользователей, одновременно отслеживают их действия.
IIS и Visual Studio фирмы Microsoft
Платформа Microsoft обладает наилучшим набором средств разработки, но и наименьшей надежностью. И тем не менее если вы работаете в организации, использующей продукцию Microsoft, а ваши клиенты и серверы работают под управлением Windows, то, вероятно, вы выберете IIS и Visual Studio. Данный тандем позволит вам разрабатывать самые сложные Web-приложения.
Крупные клиент-серверные приложения IIS, как правило, имеют трехуровневую архитектуру. Уровень представления разрабатывается с помощью HTML, Java-аплетов и JavaScript. Средний уровень строится средствами Active Server Pages (ASP) и ActiveX (Dynamic Link Libraries). А серверная СУБД, например MS SQL Server, содержит обычно таблицы, хранимые процедуры и представления. IIS силен своим средним архитектурным уровнем. Компоненты ActiveX разрабатываются с помощью поставляемого отдельно пакета Visual Studio 6.0, в который входят Visual Basic, Visual C++ и Visual J++. Средства этого крупномасштабного пакета сред разработки позволят вам разрабатывать компоненты ActiveX, которые вызываются из ASP-кода и устанавливают связь с серверной базой данных. ASP — это уже не просто язык, а скорее базовая связующая среда, позволяющая подключать любые совместимые машины сценариев серверной стороны. Так, для написания ASP-кода мы с успехом использовали машину сценариев фирмы PerlScript, но ниже мы сосредоточим свое внимание на VBScript, который встроен в IIS. Клиентский браузер никогда не видит ASP-код, так как он обрабатывается на Web-сервере (в данном случае это IIS), а результирующая Web-страница передается браузеру. ASP легко использовать для простых примеров, однако применение его в более сложных проектах уже становится трудоемким.