Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
«Сравнительный анализ современных подходов к разработке веб-приложений»
Студент: Богданович А. А.
Москва
2012
СОДЕРЖАНИЕ
ВВЕДЕНИЕ........................................................................................................................................... 4
I. ТЕОРЕТИЧЕСКИЕ ОСНОВЫ РАЗРАБОТКИ WEB-ПРИЛОЖЕНИЙ....................................... 6
1. Понятие и классификация web-технологий....................................................................... 6
2. Требования к Web-приложениям........................................................................................ 8
1. Области применения языков программирования для разработки Web-приложений.... 9
1. HTML.......................................................................................................................... 9
2. PHP............................................................................................................................. 9
3. Ajax............................................................................................................................. 10
4. JavaScript................................................................................................................... 10
5. VBScript...................................................................................................................... 11
6. Perl.............................................................................................................................. 12
2. Сравнительный анализ сред создания Web-приложений................................................. 12
2.1. Macromedia Dreamweaver..................................................................................... 12
2.2. Macromedia Fireworks............................................................................................ 13
2.3. Macromedia FreeHand............................................................................................ 14
2.4. Macromedia FLASH................................................................................................ 15
2.5. Macromedia HomeSite............................................................................................. 16
2.6. Microsoft FrontPage................................................................................................ 16
2.7. Microsoft Word........................................................................................................ 18
2.8. Adobe Illustrator...................................................................................................... 18
2.9. Adobe Photoshop..................................................................................................... 19
2.10. CorelDraw............................................................................................................. 20
III. ПОДРОБНЕЕ ПРО AJAX.............................................................................................................. 22
1. Определение Ajax................................................................................................................. 22
2. В чем отличие Ajax............................................................................................................... 24
3. Кто использует Ajax............................................................................................................. 26
IV. ASP.NET.......................................................................................................................................... 27
1. Описание................................................................................................................................ 27
2. Объектная модель ASP.NET................................................................................................ 28
3. Нестандартные web-элементы управления........................................................................ 28
V. ОЦЕНКА ЭФФЕКТИВНОСТИ МЕТОДОВ РАЗРАБОТКИ....................................................... 30
ЗАКЛЮЧЕНИЕ..................................................................................................................................... 36
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ........................................................................... 38
ВВЕДЕНИЕ
Влияние глобальной компьютерной сети Internet на современный мир не имеет исторических аналогов. Его сегодняшний день это начало эпохи электронного проникновения во все сферы человеческой жизни, это нечто большее, чем просто маркетинговая кампания, это основа новой философии и новой деловой стратегии.
Вполне логично предположить, что и с точки зрения рекламы продукции или услуги Интернет наиболее значимый ресурс. Большинство современных людей пользуются Интернетом, как наиболее доступным источником информации.
Web-технология полностью перевернула представления о работе с информацией, да и с компьютером вообще. Оказалось, что традиционные параметры развития вычислительной техники производительность, пропускная способность, емкость запоминающих устройств не учитывали главного "узкого места" системы интерфейса с человеком. Устаревший механизм взаимодействия человека с информационной системой сдерживал внедрение новых технологий и уменьшал выгоду от их применения. И только когда интерфейс между человеком и компьютером был упрощен до естественности восприятия обычным человеком, последовал беспрецедентный взрыв интереса к возможностям вычислительной техники.
Создание Web-сайтов является одной из важнейших технологий разработки ресурсов Internet. Хороший сайт, вбирая в себя всю полезную информацию, является лучшей визитной карточкой и коммерческой фирмы и образовательного учреждения, работая на них в любое время суток.
Проведя анализ нескольких сайтов обеспечивающих информационную поддержку предприятий малого бизнеса на предмет соответствия их поставленным целям, психофизиологическим требованиям и информативности, а так же корректности выбора средств разработки можно выделить следующие характерные недостатки:
Таким образом, определение функциональных возможностей средств и языков для разработки сайта, а так же психофизиологических требований предъявляемых к текстовой и графической информации представленной на экране монитора представляется актуальной задачей.
К тому же сейчас, когда число онлайновых пользователей оценивается более чем в 800 миллионов человек (причем это число растет со скоростью приблизительно 7% в месяц), приходится искать пути использования новых технологий, которые могли бы оказать содействие в привлечении и удержании внимания пользователей, путешествующих по безбрежным просторам Web.
Поэтому, целью данной работы будет рассмотрение способов и механизмов разработки web-приложений на сегодняшний день. Для достижения поставленной цели необходимо решить ряд задач:
I. ТЕОРЕТИЧЕСКИЕ ОСНОВЫ РАЗРАБОТКИ WEB-ПРИЛОЖЕНИЙ
1. Понятие и классификация web-технологий
Развитие современной компьютерной техники и внедрение новейших технологий положили начало нового направления жизни на Земле. За довольно короткий промежуток времени развития микроэлектроники и кибернетики произошло много изменений.
Прогрессивное развитие техники вызвало появление новых программных продуктов. С каждым годом внедряется все большее и большее количество языков программирования. Все они ориентированы, прежде всего, на целевую аудиторию.
Развиваются не только компьютеры, но и сети. Если еще несколько десятков лет назад Интернет представлял собой небольшую частную сеть, то теперь это гигантская система взаимосвязанных компьютеров, без которой, возможно, мы не сможем представить себе жизнь.
Интернет это не только "прохладный бассейн", в котором так комфортно чувствуют себя весьма "перегревшиеся" люди, но и место, где можно "потрогать" практически любую горячую тему, не опасаясь при этом обжечься.
Web-технология полностью перевернула представления о работе с информацией, да и с компьютером вообще. Оказалось, что традиционные параметры развития вычислительной техники производительность, пропускная способность, емкость запоминающих устройств не учитывали главного "узкого места" системы интерфейса с человеком. Устаревший механизм взаимодействия человека с информационной системой сдерживал внедрение новых технологий и уменьшал выгоду от их применения. И только когда интерфейс между человеком и компьютером был упрощен до естественности восприятия обычным человеком, последовал беспрецедентный взрыв интереса к возможностям вычислительной техники.
Информация, доступная пользователям Internet, располагается на компьютерах (Web-серверах), на которых установлено специальное программное обеспечение. Значительная часть этой информации организована в виде Web-сайтов. Каждый из них имеет свое имя (адрес) в Internet. Web-сайт это информация, представленная в определенном виде, которая располагается на Web-сервере и имеет свое имя. Для просмотра Web-сайтов на компьютере пользователя используются специальные программы, которые называются браузерами.
Web-сайт состоит из связанных между собой Web-страниц. Web-страница представляет собой текстовый файл с расширением *.htm, который содержит текстовую информацию и специальные команды HTML-коды, определяющие в каком виде эта информация будет отображаться в окне браузера. Вся графическая, аудио и видео информация непосредственно в Web-страницу не входит и представляет собой отдельные файлы.
Современные web-приложения это, в основном, порталы, предоставляющие услуги, которыми нельзя воспользоваться откуда-либо еще, Одно из неудобств подобных сервисов сложность обмена информацией между компаниями. В частности, даже контактную и другую личную информацию приходится на каждом таком сайте вводить заново.
В настоящее время с точки зрения назначения различают три основных типа порталов:
Другие наиболее распространённые web-приложения:
2. Требования к Web-приложениям
Отправной точкой в web-проекте является анализ целей сайта и функций, которые будут предложены пользователю.
Вторым этапом будет построение информационной архитектуры сайта.
После того как будут известны все материалы сайта и его структура, можно перейти к дизайну навигации и самих страниц.
1. Области применения языков программирования для разработки Web-приложений
1.1. HTML
Язык разметки гипертекста (Hypertext Markup Language), или, как его чаще называют, HTML, это компьютерный язык, лежащий в основе World Wide Web (Всемирной Паутины). Благодаря языку HTML любой текст можно разметить, преобразовав его в гипертекст с последующей публикацией в Web.
Язык HTML имеет собственный набор символов, с помощью которых Web-браузеры отображают страницу. Эти символы, называемые дескрипторами, включают в себя элементы, необходимые для создания гиперссылок.
Одной из отличительных особенностей HTML-документов является то, что сам документ содержит только текст, а все остальные объекты встраиваются в документ в момент его отображения Браузером с помощью специальных тэгов и хранятся отдельно. При сохранении HTML-файла в месте размещения документа создается папка, в которую помещаются сопутствующие ему графические элементы оформления.
1.2. PHP
В первую очередь PHP используется для создания скриптов, работающих на стороне сервера, для этого его, собственно, и придумали. PHP способен решать те же задачи, что и любые другие CGI-скрипты, в том числе обрабатывать данные html-форм, динамически генерировать html страницы и тому подобное. Но есть и другие области, где может использоваться PHP.
Вторая область это создание скриптов, выполняющихся в командной строке. То есть с помощью PHP можно создавать такие скрипты, которые будут исполняться, вне зависимости от web-сервера и браузера, на конкретной машине.
И последняя область это создание GUI-приложений (графических интерфейсов), выполняющихся на стороне клиента.
1.3. Ajax
Ajax расшифровывается как Asynchronous Javascript And XML (Асинхронные Javascript и XML) и технологией в строгом смысле слова не является. Если в стандартном web-приложении обработкой всей информации занимается сервер, тогда как браузер отвечает только за взаимодействие с пользователем, передачу запросов и вывод поступившего HTML, то в Ajax-приложении между пользователем и сервером появляется еще один посредник - двигатель Ajax. Он определяет, какие запросы можно обработать "на месте", а за какими необходимо обращаться на сервер.
Поведение сервера тоже изменилось. Если раньше на каждый запрос сервер выдавал новую страницу, то теперь он отсылает лишь те данные, которые нужны клиенту, а HTML из них прямо в браузере формирует движок Ajax.
Асинхронность проявляется в том, что далеко не каждый клик пользователя доходит до сервера, причем обратное тоже справедливо - далеко не каждая реакция сервера обусловлена запросом пользователя. Большую часть запросов формирует движок Ajax, причем его можно написать так, что он будет загружать информацию, предугадывая действия пользователя.
Где стоит использовать Ajax:
1.4. JavaScript
Язык программирования JavaScript разработан фирмой Netscape для создания интерактивных HTML-документов. Это объектно-ориентированный язык разработки встраиваемых приложений, выполняющихся как на стороне клиента, так и на стороне сервера. Синтаксис языка очень похож на синтаксис Java поэтому его называют Java-подобным.
Основные области применения JavaScript делятся на следующие категории:
1.5. VBScript
Язык создания сценариев VBScript разработан фирмой Microsoft, является подмножеством достаточно распространенного в среде программистов языка Visual Basic разработки прикладных программ Windows-приложений. Как и его родитель, язык VBScript достаточно прост и лёгок в изучении.
Преимуществом его применения для создания сценариев является возможность использования, с небольшими корректировками, ранее написанных процедур на языках Visual Basic и Visual Basic for Application.
Функциональные возможности сценариев, написанных на VBScript, ничем не отличаются от возможностей сценариев JavaScript: динамические создание документа или его частей, перехват и обработка событий и так далее.
VBScript используется для написания сценариев клиента (в этом случае браузер должен иметь встроенный интерпретатор этого языка), а также для написания сценариев на сервере (в этом случае сервер должен поддерживать язык VBScript).
Для создания сценариев клиента используется набор объектов, аналогичный набору JavaScript. Объекты клиента и сервера отличаются друг от друга, но существует общая часть (ядро) объектов, используемых при разработке как сценариев клиент, так и сценариев сервера.
1.6. Perl
Наиболее широко Perl используется для разработки инструментов системного администрирования, однако в последнее время он получил огромную популярность в области разработки Интернет-приложений: CGI-сценариев, систем автоматической обработки электронной почты и поддержки узлов Web.
Вот некоторые примеры задач, которые можно решать с помощью Perl:
2. Сравнительный анализ сред создания Web-приложений
В настоящее время во всемирной паутине размещено несколько миллионов Web-сайтов и их число постоянно растет. У каждого есть возможность не только просмотреть любой из них и извлечь полезную для себя информацию, но и принять активное участие в их создании. Большое значение при этом имеет среда, в которой будет происходить разработка.
2.1. Macromedia Dreamweaver
Компания Macromedia продолжает делать Dreamweaver интуитивно понятной и простой в использовании программой. Мощные средства с одной стороны и простота в использовании с другой, делают продукты Macromedia идеальными программным пакетом, как для профессиональных web-дизайнеров, так и для новичков. Продукты, входящие в пакет Macromedia, такие как: Flash, Firework, Dreamweaver - сделают работу более продуктивной, и при этом могут заменять друг друга (так, например, в любой из них можно создать кнопки). Такие продукты как: Sitespring, FreeHand добавит эффективности при работе с клиентом.
У Dreamweaver множество плюсов:
Программа Dreamweaver поддерживает "чистый" HTML код, а также последние расширения DHTML и CSS.
Содержит прекрасные средства автоматического управления связями, то есть при любом перемещении файлов в среде, все связи восстанавливаются автоматически. Предусмотрена блокировка разделов страницы для их защиты от неумышленной порчи.
Позволяет отменить изменения, сделанные несколько шагов назад (однако после сохранения страницы отменить изменения будет невозможно).
Применяется "Динамическая проверка для различных браузеров".
Поддерживает расширения, как сторонних разработчиков, так и самой Macromedia (более 500).
С Dreamweaver поставляется библиотека элементов, которые можно применять на WEB-страницах, например панель навигации, дескриптор авторского права и др.
Применяется для добавления мультимедийных средств на web-страницы и различных типов файлов от Flash и Java до RealAudio, интерактивных элементов, таких как поисковые системы, форумы, системы электронной коммерции.
Программа Dreamweaver не имеет собственных средств создания изображений. В ней представлены лишь простейшие инструменты редактирования, поэтому для создания и редактирования изображений нам понадобятся специальные графические редакторы.
Dreamweaver позволяет убрать лишний код из приложений Microsoft, после чего страницы станут быстрее грузиться и лучше отображаться в разных браузерах.
2.2. Macromedia Fireworks
Fireworks это редактор графики с возможностью её дальнейшей оптимизации и размещения в сети. Используя большое разнообразие инструментальных средств, мы можем создавать и редактировать как векторную, так и растровую графику в пределах одного файла вместо того, чтобы переходить из одной программы в другую. Fireworks генерирует HTML - код и JavaScript и может легко создавать динамические меню и навигационные панели для наших интернет страниц. Эффективная оптимизация графических файлов позволяет максимально уменьшить их размер без потери качества.
Кроме этого имеется возможность редактировать макеты WEB-страниц. Например, в Fireworks 8 можно открыть графический файл на всю ширину будущего сайта, нарисовать необходимое графическое оформление, а затем разрезать его инструментом Slice Tool так, как должна выглядеть будущая таблица HTML-документа. После этого можно начинать доработку отдельных графических элементов и, в том числе, создавать активную графику, реагирующую на курсор, совсем не зная языка программирования (JavaScript).
2.3. Macromedia FreeHand
Один из трех профессиональных графических редакторов, ведущих с переменным успехом борьбу за первенство в работе с векторной графикой. FreeHand гораздо быстрее и проще своих конкурентов - CorelDraw и Adobe Illustrator. FreeHand прекрасно подходит для создания логотипов, рекламы, Web-графики и анимации.
Изготовители программы приложили немало усилий, чтобы максимально облегчить жизнь пользователям: интерфейс программы прост и нагляден, имеется множество "примочек", позволяющих быстро и легко выполнять сложные преобразования объектов или достичь самых разных художественных эффектов. FreeHand умеет экспортировать и импортировать файлы практически во всех широко распространенных форматах. Более того, в его состав входят настройки "горячих клавиш", эмулирующие другие распространенные программы (Adobe Illustrator, CorelDraw). Так что не надо переучиваться, переходя на FreeHand.
Интересной и важной особенностью FreeHand при работе над большими проектами является возможность глобальных изменений документа, как для текста, так и всех графических объектов. Механизм глобальной замены очень гибок. Кроме замены, он позволяет выделить объекты с заданными свойствами для последующего преобразования. Основными свойствами, по которым ведется поиск и замена или выделение объектов, являются цвет, толщина контура, шрифт, угол поворота.
Документы FreeHand легко превращаются в web-страницы. Конечно, FreeHand - не HTML-редактор, но поддерживает базовые элементы HTML. С помощью FreeHand WEB-страницы легко снабдить Flash-анимацией. В анимационный клип вставляются текстовые блоки, группы объектов, а также объекты с контурами. Небольшой клип из объектов FreeHand создается буквально одной командой - остается лишь проследить за некоторыми настройками. Каждый кадр клипа помещается на отдельный слой; анимационный эффект достигается последовательным воспроизведением содержимого отдельных слоев. Но средства FreeHand не заменят редактор Macromedia Flash.
2.4. Macromedia FLASH
Создаёт привлекательные интерактивные мультимедийные презентации, для WEB-сайтов. Для Flash характерна векторная графика и анимация, хотя эта программа может быть также использована для манипулирования или отображения растровой графики, монтажа видеоматериала и даже для манипулирования звуковыми файлами.
Flаsh-содержимое публикуется в компактных файлах формата SWF для последующего показа на самых разных платформах с помощью Flаsh-проигрывателя. Во время воспроизведения файла формата SWF в оперативном режиме в него можно динамически загружать такое содержимое, как звуковые файлы формата МР3, Flash-видео и изображения формата JPEG. Flash-проигрыватель позволяет подключаться к источникам данных, чтобы объединить их с базой данных, XML или web-службами. Благодаря всем этим возможностям привлекательные фрагменты анимации и эффекты могут быть введены в приложения, управляемые данными. Flash имеет поддержку антиалайсинг (сглаживание контуров с помощью смешения соседних цветов). Так как этот формат файла основан на векторной графике, объект сохраняет качество изображения при любом разрешении и идеален для создания кадров анимации.
Мощный событийно-управляемый язык. Применяемый язык ActionScript - это почти полноценный язык программирования, с поддержкой условий, циклов, массивов, функций и классов, которые можно наследовать.
В пользу Flash маленький размер получающихся файлов и использование векторного формата изображений, и сжатие растровых и звуковых файлов, что очень положительно влияет на уменьшение размера страницы и время ее скачивания.
2.5. Macromedia HomeSite
Эта программа очень дружественно относится к пользователю. В ней множество готовых тегов, шаблонов.
Гибкость интерфейса - это одна из сильнейших сторон продукта. Любой пользователь с легкостью сможет настроить интерфейс HomeSite в соответствии со своими предпочтениями и потребностями.
В процессе работы пользователь может видеть рабочую область с двумя вкладками - Browse и Edit. То есть программирование происходит во вкладке Edit, а результат можно увидеть, если выбрать вкладку Browse. При создании новой страницы на поле редактирования автоматически появляются некоторые теги вроде HTML и BODY. Это шаблон, загружаемый при создании новой страницы. Его содержание можно менять.
В HomeSite очень легко строить архитектуру сайта. Этому способствует панель Quick Bar с системой вкладок с готовыми тегами. Теги в этих вкладках самые разные - от простых вроде параграфа до java-скриптов. Можно вообще оставить одну вкладку, добавив в нее все необходимые теги через меню Customize. Также можно самому создавать теги или их комбинации. При нажатии на кнопку с определенным тегом появляется окно, где можно настроить опции тега и указать его атрибуты. Поддерживает режим WYSIWYG со всеми его плюсами и минусами.
Для скорости работы здесь имеется множество средств редактирования тегов. Это, например, такие функции, как Tag Completion, Tag Editors и Tag Insight. Они существенно облегчают редактирование тегов и их атрибутов. Так же есть заготовки кода (Code Snippets).
HomeSite легко интегрируется со средствами управления исходным кодом и системами управления проектами, а также предлагает широкие возможности работы с протоколом FTP, благодаря чему мы сможем быстро выполнить развертывание сайта и организовать его эффективное обслуживание [9, с. 185-279].
2.6. Microsoft FrontPage
Является наиболее популярным HTML-редактором на рынке, главным образом за счёт популярности пакета Microsoft Office. В программе предлагаются мощные функции и привлекательный пакет программ, включая Image Composer, который предназначен для создания изображений (Приложение В). Во FrontPage также содержатся WEB-компоненты, необходимые для добавления интерактивных свойств web-узлу. Microsoft FrontPage является классическим WYSIWYG-редактором, в котором, однако, присутствует возможность ручной правки кода.
В программе имеется три режима работы с документом: Normal, HTML и Preview.
В режиме Normal, web-страницы представляют собой обычный текстовый файл с возможностью редактирования всех элементов - от текста до картинок.
В режиме HTML осуществляется подсветка синтаксиса, однако довольно посредственную - дескрипторы выделены, синим цветом, все остальное - черного цвета.
В режиме Preview можно посмотреть, как будет выглядеть ваша страница в окне браузера.
FrontPage имеет конструктор таблиц, существенно облегчающий их создание. Одним из основных преимуществ программы является большое количество имеющихся шаблонов, позволяющих пользователю не ломать голову над дизайном своего проекта. Выбрав необходимый шаблон, можем приступать непосредственно к наполнению страницы контентом. Вот тут то и ощущается вся прелесть FrontPage: процесс создания HTML-страницы ничем не отличается от создания обычного текстового документа в Microsoft Word. Нам доступны те же средства для редактирования текста, смены его форматирования, создания и редактирования таблиц, вставки различных объектов и изображений и всё это без знания HTML. FrontPage делит рабочую область на несколько блоков, содержащих определенные элементы страницы - рисунки, текст, заголовки и проч. Для каждого блока можно назначить свои параметры форматирования и расположения его относительно страницы.
Минусы: небольшой набор инструментов разработки, невозможность отдельного приобретения программы. Microsoft FrontPage неплохо подойдет в качестве HTML-редактора на первое время, однако с ростом потребностей его возможностей может не хватить. Есть и обратная сторона медали - сложность и громоздкость полученного кода, что естественно, сказывается на конечном размере документа. Также в дальнейшем будет весьма сложно вносить изменения в подобный документ. Но это скорее недостаток не конкретного продукта, а практически всех WYSIWYG-редакторов (What You See Is What You Get - "что видите, то и получите").
Web-компоненты работают только в том случае, если на web-сервере, который используется, присутствуют соответствующие им программы.
2.7. Microsoft Word
Не смотря на то, что Microsoft Word является текстовым редактором и по существу не считается HTML-редактором. Он имеет возможность сохранять файлы в формате HTML. В результате мы можем столкнуться со страницами которые тем или иным способом были созданы в Microsoft Word. Проблемы в HTML-коде, полученном из редактора аналогичны проблемам FrontPage: обе эти программы создают избыточный код, который не во всём соответствует HTML-стандарта. Огромное количество людей, использующих Word в своей повседневной работе, становятся потенциальными разработчиками HTML-документов.
Создать web-станицу в Word можно двумя способами: с помощью Мастера либо преобразовав существующий документ Word в формат HTML. При этом Word сам генерирует тэги HTML, хотя и не оптимальным образом. Преобразование естественно приводит к тому, что какие-то элементы оформления документа будут утрачены или изменены. При необходимости вставить на HTML-страницу собственные тэги, в Word предусмотрено непосредственное редактирование HTML-кода.
2.8. Adobe Illustrator
Предназначена для создания и редактирования иллюстраций, то есть изображений, содержащих элементы векторной графики, например шрифты, геометрические фигуры и т.д.
Web-страницы могут содержать много элементов текст HTML, растровые изображения, векторную графику. В Illustrator можно использовать фрагменты для определения границ различных web-элементов в объекте. Web-страница делится на ячейки которые представляются в трёх типах: изображения, без изображения, HTML-текст.
При этом можно сохранить каждый фрагмент как независимый файл со своим форматом, настройками и цветовой палитрой. Блокировка фрагментов предотвращает случайные изменения позиция. Размер фрагмента привязываются содержащемуся в нем объекту. Поэтому при перемещении или изменении размера объекта границы фрагмента корректируются автоматически, но при необходимости их всегда можно откорректировать вручную.
Карты ссылок позволяют связать одну или несколько областей изображения (так называемых активных областей) с URL-адресом. Когда щелкаем по активной области, web-браузер загружает связанный с ней файл.
Основная разница между использованием карт ссылок и фрагментов для создания связей состоит в том, как объект экспортируется на web-страницу. Использование карт ссылок сохраняет объект в виде единого файла изображения, а в случае использования фрагментов объект делится на несколько отдельных файлов. Еще одна разница между картами ссылок и фрагментами состоит в том, что карты позволяют связывать многоугольные или прямоугольные области в объекте, а фрагменты только прямоугольные.
2.9. Adobe Photoshop
Самая популярная и широко распространенная программа редактирования изображений. С её помощью можно создавать высокохудожественные изображения. Она содержит всё необходимое для создания и редактирования профессиональной графики.
Photoshop это не просто программа редактирования изображений, это самая мощная и функциональная программа в своем классе. Программа позволяет ретушировать изображение и подвергать его спецэффектам, переносить детали одного снимка на другой, вносить текст, менять соотношение цветов и даже добавлять цвет в изображения, выполненные в оттенках серого. Средства Photoshop совместимы с графическими планшетами, что дает возможность создавать вполне художественные изображения, не хуже выполненных акварелью и маслом.
При всей простоте основных инструментов Photoshop пользователь может к тому же настраивать их "под себя". А это равносильно наличию бесконечного разнообразия мелков. Поскольку программы рисования полагаются при своей работе на пиксели, они идеально подходят для работы с электронными (цифровыми) фотографиями цветных карандашей, пульверизаторов, акварельных и масляных красок и многого другого. Photoshop предоставляет полный контроль над каждым пикселем изображения. Недостаток программ рисования в ограниченном разрешении. Поскольку битовый рисунок состоит из фиксированного количества пикселей.
2.10. CorelDraw
CorelDraw позволяет обрабатывать самую разнообразную информацию, представляемую в документе в виде векторных и растровых объектов, блоков обычного и художественного текста, а также объектов Интернета.
В программе применен современный интерфейс плоского типа, который характеризуется тем, что инструменты, находящиеся на различных панелях, отображаются в виде обычных плоских рисунков, а выделение одного из них происходит только при установке на нем указателя.
При построении векторных изображений линии и фигуры накладываются, пока не получится окончательное изображение. Каждый объект можно редактировать независимо от остальных одно из немногочисленных преимуществ объектного подхода, тем не менее, изображение все же приходится строить поэтапно. В программе редактирования векторных рисунков линии, фигуры и текст задаются математическими выражениями, что дает возможность автоматически настраивать их на максимальное разрешение устройства вывода. Еще одно преимущество векторных рисунков состоит в том, что для них не требуется много места на диске. Объем файла векторного рисунка зависит только от количества и сложности объектов, составляющих этот рисунок, поэтому его размер, в отличие от растрового рисунка, практически не влияет на этот объем.
CorelDraw демонстрирует качества мощного визуального редактора web-страниц: пользователь получает возможность генерировать развитые HTML-документы, которые могут включать сценарии JavaScript и таблицы стилей CSS.
Обеспечивая мощные возможности для работы с графикой, текстом и средства компоновки и экспорта документов для публикации в Интернете, CorelDraw вполне может служить исходным пунктом для генерирования первых версий файла HTML.
При размещении изображений на странице одна из наиболее важных задач - оптимизация размера файлов изображений. Рекомендуемый "потолок" общего размера страницы от 100 до 150 кбайт. Уменьшение размера файлов изображений выполняется сжатием файлов и уменьшением количества цветов. Эти задачи доступны для любой из графических программ, перечисленных выше.
III. ПОДРОБНЕЕ ПРО AJAX
Разработчики веб-интерфейсов иногда испытывают зависть к разработчикам оконных приложений. Оконные приложения обладают более богатыми возможностями и отзывчивостью при взаимодействии с пользователем, что как кажется не достижимо для Веб-приложений. Та же самая простота, которая способствовала быстрому распространению Веб-а, создаёт непреодолимое расстояние между тем, что мы можем предложить пользователям Веб-приложений, и тем, что пользователь получает при использовании оконных приложений.
Но это расстояние сокращается. Примером тому является Google Suggest. Он почти моментально выдает вам подсказки. А также Google Maps. Увеличьте масштаб карты, используйте курсор для того, чтобы перемещаться по карте. И вновь всё происходит почти мгновенно, без утомительного ожидания перезагрузки страницы.
Google Suggest и Google Maps - это два примера нового направления в разработке веб-приложений, которое называется Ajax. Это название является сокращением от Asynchronous JavaScript + XML (Асинхронный JavaScript и XML) и представляет собой фундаментальный сдвиг в сторону увеличения возможностей Веб-приложений.
Ajax не является технологией. В сущности, это объединение нескольких самостоятельных технологий, которые могут быть эффективно использованы вместе. Ajax включает в себя:
Классическое Веб-приложение работает примерно следующим образом: большинство действий пользователя вызывает обращение к серверу. Сервер занимается обработкой запроса - принимает данные, складывает числа, учитывает прихоти всех устаревших подсистем и, в конце-концов, возвращает пользователю некоторую HTML страницу. Подобный подход изначально разрабатывался для того, чтобы использовать Веб как хранилище гипертекстовых документов, однако, фанаты книги "The Elements of User Experience" знают: то, что делает Веб хорошим для хранения гипертекстовых документов, не обязательно делает его хорошим для создания веб-приложений.
Изображение 1: Сравнение традиционной модели Веб-приложения с моделью Ajax приложений
Подобный подход удобен для разработки, но не для использования. Что делает пользователь, пока сервер выполняет свою работу? Правильно, он ждет. И, с выполнением каждой следующей операции, он ждёт ещё и ещё.
Очевидно, что если бы нам пришлось разрабатывать концепцию Веб с нуля, то мы бы избавились от необходимости заставлять пользователя часто ожидать перезагрузки страницы. Если весь интерфейс уже загрузился, почему взаимодействие пользователя с программой должно прерываться, как только программе понадобились некоторые данные с сервера? В действительности, почему пользователь вообще должен видеть, что приложение обращается к серверу?
Ajax приложения позволяют избавиться от прерывистого процесса взаимодействия с веб-приложением благодаря промежуточному слою между пользователем и сервером - движку Ajax. Казалось бы, добавление нового слоя замедлит взаимодействие между пользователем и программой, но на самом деле эффект обратный.
Вместо того, чтобы загружать страницу в начале работы приложения, браузер загружает Ajax двигатель, который написан на JavaScript и обычно спрятан в невидимом фрейме. Этот движок отвечает за отображение веб страницы и за взаимодействие приложение с сервером. Ajax двигатель позволяет пользователю осуществлять взаимодействие с сервером асинхронно, то есть не зависимо от обращения к серверу. Таким образом, пользователю не необходимости наблюдать чистую страницу в браузере или иконку песочных часов, в ожидании когда сервер что-нибудь сделает.
Изображение 2: Схема синхронного взаимодействия традиционного веб приложения(на верху) в сравнении с асинхронной схемой Ajax приложения(внизу)
Каждое производимое действие, которое в обычном случае бы потребовало HTTP-запроса, таким образом осуществляется посредством JavaScript запроса к Ajax движку. Любой ответ на действия пользователя, которое не требует обращения к серверу, такое как простая проверка данных, редактирование данных в памяти и даже иногда навигация, осуществляется Ajax движком самостоятельно. Если же движку понадобилось обратиться к серверу, для того чтобы запросить некоторые данные, загрузить дополнительную часть интерфейса или положить некоторые данные на сервер, то движок осуществляет это асинхронно и обычно посредством обмена XML данными, без задержек для пользователя.
Google вкладывает большие деньги в разработку Ajax подхода. Все продукты Google, появившиеся в недавнее время - Orkut, Gmail, Google Groups, Google Sugest and Google maps - это Ajax приложения.
Эти проекты демонстрируют, что Ajax - это не просто технологическая идея, Ajax подход уже используется в реальной жизни. Это не очередная технология, которая работает только в лаборатории. При этом Ajax приложение может быть любого размера: от простого Google suggest до очень сложного, такого, как Google Maps.
IV. ASP.NET
Одним из лидеров в области создания и внедрения web-приложений является платформа .NET («дот нет»), которой будет посвящена отдельная глава данной работы.
1. Описание
Microsoft.NET Framework это платформа для создания, развертывания и запуска web-сервисов и приложений, состоящая из трех основных частей общеязыковой среды выполнения (common language runtime), иерархического множества унифицированных библиотек классов и компонентной версии Active Server Pages (ASP).
Основная идея ASP заключается в создании Web-страниц с внедренными в них фрагментами кода на скриптовых языках.
Новейшей версией технологии ASP является ASP.NET, ключевая в архитектуре Microsoft .NET Framework. Основное отличие этой технологии от ASP с точки зрения архитектуры приложений заключается в том, что код, присутствующий на web-странице, не интерпретируется, а компилируется и кэшируется, что, естественно, способствует повышению производительности приложений.
В основу ASP.NET положена работа в среде CLR, что позволяет создавать Web-приложения на любом языке, поддерживаемом платформой .NET, например, таких как Visual Basic, JavaScript или С#. Это немаловажное преимущество, так как теперь возможности одного языка могут использоваться в другом языке без необходимости написания дополнительного кода. Таким образом, достигается высокая степень повторного использования кода. Независимо от языка программирования, использованного при создании приложения ASP, его код компилируется в код на промежуточном языке IL.
Во время компиляции проверяется синтаксическая корректность исходного текста. Скомпилированный в промежуточный язык код выполняется быстрее, и он будет таким же независимо от языка, который мы используем. Компиляция происходит на сервере в момент первого обращения пользователя к странице. Если программист изменил текст страницы, программа перекомпилируется автоматически.
2. Объектная модель ASP.NET
ASP.NET является объектно-ориентированной моделью разработки Web-приложений. Сами ASP.NET-страницы являются объектами классов. Можно создавать программный код с возможностью его повторного использования классами. Эти классы можно использовать для создания экземпляров объектов.
Объектная модель это иерархия объектов, предоставляющих разработчикам определенные возможности. В ASP.NET используется новая структура Web-страниц, которая отличается от структуры ASP-страниц и обеспечивает поддержку объектной модели для сохранения содержимого ASP.NET-страницы. Добавлен новый класс элементов управления серверные элементы управления. Можно добавлять собственные комментарии и связывать эти данные с серверными элементами управления. Для оформления Web-страниц имеются наборы директив, которые предназначены для установки параметров. Например, параметры TraceContext и isEnabled позволяют, соответственно, включить и отключить механизм отслеживания Web-запросов.
3. Нестандартные web-элементы управления
Набор встроенных элементов управления ASP.NET достаточно обширен и разнообразен, чтобы с его помощью можно было реализовать любую необходимую функциональность Web-приложения. В их основе лежит компонентная модель ASP.NET, существенно упрощающая применение общих принципов объектно-ориентированного программирования.
Функции существующих элементов управления можно расширять. Можно также создавать новые элементы управления путем объединения нескольких существующих элементов такие составные элементы управления называются пользовательскими (user). Кроме того, в ASP.NET определен небольшой набор базовых классов, на основе которых можно создавать совершенно новые, так называемые специализированные (custom) элементы управления.
Для отображения нестандартных элементов, входящих в состав web-страниц, браузеры используют специальные встроенные приложения. При этом для браузера Netscape эти приложения реализуются в виде динамических библиотек (.DLL), а в программе Internet Explorer, Mozila и Opera в виде элементов управления ActiveX.
Нестандартные элементы управления расширяют инструментарий Web-разработчика. Они инкапсулируют ключевые элементы интерфейса и программной логики, благодаря чему их можно многократно использовать не только в одном приложении, но и в других проектах.
Рассмотрим 3 типа нестандартных элементов управления:
Пользовательский элемент управления хранится в файле, копию которого необходимо включать в каждый проект, использующий этот элемент управления;
V. ОЦЕНКА ЭФФЕКТИВНОСТИ МЕТОДОВ РАЗРАБОТКИ
Благодаря повсеместному развитию Интернета, предприятиям и организациям предоставляется удобная возможность информировать потенциальных клиентов о своих товарах и услугах высокоскоростным и экономичным способом, организовав собственный web-сайт. Но так как возможности Интернет-технологии постоянно растут, то в настоящий момент необходимо строить гибкий, управляемый данными и мгновенно реагирующий на изменяющиеся нужды посетителей web-сайт.
Рынок программ для создания web-приложений постоянно растет, и часто при создании сайта разработчик приходит в затруднение, выбирая из этого набора необходимое ему средство.
Первые средства разработки динамических сайтов, такие как Microsoft Active Server Pages (ASP), PHP (Perl Hypertext Preprocessor, первоначально именовавшийся Personal Home Pages) и Perl, удовлетворяли всем необходимым по тем временам требованиям. Но со временем разработчики web-приложений стали обнаруживать, что многие элементы их web-проекта невозможно реализовать существующими средствами без расширения их функциональных возможностей другими языками программирования путем подключения пользовательских библиотек на C++, VisualBasic и т.д. В результате этого разработчику приходится изучать как минимум два-три языка программирования для реализаций своих идей. Чтобы этого избежать, многие разработчики создают собственные средства разработки web-приложений, специализированные для конкретного web-проекта. В результате этого появились средства разработки web-приложений нового поколения, такие как Cold Fusion фирмы Allaire Corporation, Jagg фирмы BulletProof, LiveWire фирмы Netscape и прочие. Они являются более гибкими и обладают широкими возможностями в построении web-сайтов. Большинство из этих средств работают согласно схеме “маленькая CGI-программа, большой процесс-партнер”. Такой механизм уменьшает накладные расходы, связанные с загрузкой CGI-программы, и позволяет обеспечить высокий уровень переносимости между различными web-серверами. Результаты качественного сравнения наиболее популярных средств разработки web-приложений нового поколения (Cold Fusion, dbWeb, LiveWire, DataRamp) позволили сделать ряд выводов.
Но для оценки эффективности средств разработки web-приложений качественного сравнения недостаточно, поэтому необходимо провести количественную оценку функциональных возможностей данных средств.
Проведем оценку по следующим характеристикам: операционная система; совместимость с web-серверами; обучение; программируемость; эффективность; поддержка динамического интерфейса (дизайна) разрабатываемых приложений; безопасность; обработка ошибок; средства отладки; сookies; профиль пользователя; возможность работать с ранее созданными локальными приложениями в Интернете; стандартные сервисы; поддержка управления транзакциями.
Для оценки были выбраны наиболее популярные средства разработки web-приложений: Cold Fusion, dbWeb, LiveWire и авторская разработка Д.И. Ивашкина с базовым названием FUAD.
FUAD это средство, созданное по технологии разработки унифицированных приложений TUAD (Technology for unified applications development). FUAD предоставляет следующие возможности.
Так как сравниваемые средства позволяют создавать различные виды web-приложений, то для определенных задач некоторые из ранее выбранных характеристик количественной оценки функциональных возможностей играют важную роль, а для других задач они менее важны или в них вообще нет необходимости. Поэтому следует выделить группу задач, решением которых чаще всего приходится заниматься разработчикам, и в зависимости от типа задачи пронормировать функциональные характеристики по степени важности.
Для оценки эффективности средства разработки web-приложений используется следующая целевая функция:
, при j = 1 .. N (1)
где k задача; j оцениваемое средство; i индекс функциональной характеристики оценки; M количество функциональных характеристик для оценки; N количество оцениваемых средств; весовой коэффициент важности i-й функциональной характеристики для k-й задачи; wij оценка полезности j-го средства относительно i-й функциональной характеристики; общая эффективность j-го средства для k-й задачи с функциональными характеристиками i = 1..M.
Расстановка весовых коэффициентов, характеризующих оценку полезности j-го средства относительно i-й функциональной характеристики ()
В качестве весовых коэффициентов возьмем пятибалльную систему оценки полезности данного средства относительно указанной характеристики, где: 0 неприемлемо, то есть средство не располагает такой характеристикой; 1 плохо; 2 приемлемо; 3 хорошо; 4 очень хорошо; 5 отлично.
Таблица 3 представляет собой совокупность функциональных характеристик, определяющих возможности сравниваемых средств и соответствующие баллы с кратким описанием, которые показывают степень полезности этих средств.
Сделав общую оценку всех функциональных характеристик сравниваемых средств, перейдем к частным задачам, расставив для каждой характеристики свой весовой коэффициент в зависимости от степени его важности при решении рассматриваемой задачи.
В качестве весовых коэффициентов будем использовать двухбалльную систему оценки значимости i-й характеристики для k-й задачи, где: 0 необязательная функциональная характеристика; 1 желательно, чтобы присутствовала; 2 важная функциональная характеристика.
Сегодня наиболее популярной задачей webпрограммирования является задача создания центра электронной коммерции. Как правило, при решении этой задачи большое внимание уделяют безопасности web-приложения (чтобы клиент не пострадал материально), скорости обработки запросов (так как приходится работать с большими наборами данных) и динамически меняющемуся контенту (содержимое html-страницы) пользователя. Работа с ранее созданными локальным приложениями в сетях Интранет и Интернет. Так как Интернет имеет клиент/серверную архитектуру, он очень удобен для публикации БД. А благодаря тому что клиентская сторона представляет собой браузер, который прост в использовании и независимо от операционной системы (ОС) обладает одинаковым для всех своих версий интерфейсом, он фактически является универсальным клиентом для клиент/серверных приложений. И поэтому организации очень часто внедряют у себя сети Интранет (локальная сеть, использующая протоколы TCP/IP и предоставляющая те же услуги, что и Интернет). Но существующие у них программные продукты, которые они используют для ведения своих дел (например, бухгалтерские приложения), как правило, не обладают возможностью
функционировать в Интернете. Поэтому их требуется либо переписывать заново, используя необходимое средство разработки web-приложений, либо прибегать к каким-нибудь другим хитростям. Надо отметить, что при решении такого рода задач требуется учитывать вопросы безопасности, так как приходится работать с конфиденциальной информацией (бухгалтерия и т.д.), рассмотреть вопросы управления транзакциями, контроль ввода и прочие. В таблице 3 перечислены функциональные характеристики с весовыми коэффициентами для текущей задачи и соответствующие оценки полезности относительно этих характеристик.
Повышение эффективности работы разработчиков с инструментами web. Для любой организации важным фактором является то, насколько эффективно работают ее сотрудники. Если говорить о разработчиках программных продуктов, то от них требуется высокая скорость и качественное создание необходимых приложений. Поэтому очень важным фактором является то, какие возможности для удобства разработчиков предоставляют сравниваемые средства.
Весовые коэффициенты () и оценка полезности инструментов web (wij) для текущей задачи представлены в таблице 4.
Применительно к оценке эффективности четырех типов инструментов web мы рассмотрели три задачи, для каждой из которых существует свой набор функциональных характеристик с соответствующими весовыми коэффициентами из таблиц. Результаты оценки эффективности этих средств по формуле представлены в таблице 5.
Из таблицы 5 следует, что наиболее эффективными являются средства разработки web-приложений FUAD и Cold Fusion. Из этих средств наиболее предпочтительное FUAD.
Если задача, решаемая разработчиком, отличается от рассмотренных выше, то у него имеется возможность самостоятельно задать набор функциональных характеристик и расставить необходимые весовые коэффициенты в соответствии с его задачей. Подставив данные, он сможет выбрать наиболее эффективное для решения его задачи средство разработки web-приложений.
ЗАКЛЮЧЕНИЕ
С появлением web-технологии компьютер начинают использовать совершенно новые слои населения Земли. Можно выделить две наиболее характерные группы, находящиеся на разных социальных полюсах, которые были стремительно вовлечены в новую технологию, возможно, даже помимо их собственного желания. С одной стороны, это были представители элитарных групп общества руководители крупных организаций, президенты банков, топ - менеджеры, влиятельные государственные чиновники. С другой стороны, это были представители широчайших слоев населения домохозяйки, пенсионеры, дети.
Спектр социальных групп, подключающихся к сети Интернет и ищущих информацию в WWW, все время расширяется за счет пользователей, не относящихся к категории специалистов в области информационных технологий. Это врачи, строители, историки, юристы, финансисты, спортсмены, путешественники, священнослужители, артисты, писатели, художники. Список можно продолжать бесконечно. Любой, кто ощутил полезность и незаменимость Сети для своей профессиональной деятельности или увлечений, присоединяется к огромной армии потребителей информации во "Всемирной Паутине".
С развитием технологий гипертекстовой разметки в Интернете стало появляться всё больше сайтов, тематика которых была совершенно различной от сайтов крупных компаний, повествующих об успехах компании и её провалах, до сайтов маленьких фирм, предлагающих посетить их офисы в пределах одного города.
Развитие Интернет-технологий послужило толчком к появлению новой ветки в Интернете Интернет - форумов. Стали появляться сайты, и даже целые порталы, на которых люди со всех уголков планеты могут общаться, получать ответы на любые вопросы и, даже, заключать деловые сделки.
Создание сайта представляет собой маркетинговый шаг, направленный на создание информационного ресурса, который предоставит возможность для компании как удержать старых клиентов, так и привлечь новых.
Создание и разработка сайтов включает:
Существует множество средств для создания web-сайтов, но лишь некоторые из них способны предоставить разработчикам инструменты для решения подавляющего большинства стоящих перед ним задач. При разработке web-сайта из всех современные web-технологий, позволяющих создавать интерактивные web-страницы, необходимо выбрать наиболее подходящие для выполнения поставленных на первоначальном этапе задач.
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ