Предисловие

Наверное, уже нет необходимости объяснять, что такое Internet или Web-технологии. Сегодня большинство компаний, будь то крупная корпорация или фирма с малым бизнесом, используют информационные технологии для автоматизации своих бизнес-процессов, где Web зачастую выступает в качестве основной технологии, а то и единственной.

Web-технология развивается исключительно быстрыми темпами, а большинство проблем решается совместными усилиями мирового компьютерного сообщества.

В чем же заключается феномен Web-технологий, с одной стороны, обусловивших столь стремительный прорыв массового пользователя к Internet, а с другой стороны, вызвавших гигантский и все нарастающий интерес мировой элиты бизнеса к новым принципам управления информацией, характерным для систем intranet? По мнению многих экспертов, причина состоит в том, что Web-технология, во-первых, опирается на наиболее естественный для человека способ потребления необходимой ему информации (доставка информации по инициативе потребителя), во-вторых, предоставляет универсальный, естественный, интуитивно ясный инструмент для доступа к информации обычного человека, и, в-третьих, является наиболее универсальным подходом к интеграции информационных ресурсов.

"Блуждая" по различным ресурсам глобальной сети Internet, мы можем только догадываться о способе формирования той или иной HTML-страницы. Это может быть как страница, время от времени обновляемая Web-мастером посредством FTP-протокола, так и страница, обновляемая динамически, т. е. непосредственно в теле страницы записывается код, выполняемый в контексте сервера. Например, на Web-сервере размещается база данных и соответствующие "интеллектуальные" страницы с указанием источника данных и включенным запросом к этим данным. На их основе клиент (Web-браузер) отображает совокупность определенной части самой страницы (шаблона) и результата запроса.

Впрочем, не исключен промежуточный вариант, когда на локальном сервере той или иной фирмы страницы создаются динамически, используя корпоративную базу данных, а затем результат отправляется по тому же FTP-протоколу в соответствии с расписанием, указанным все тем же Web-мастером. Для решения подобных задач предназначены программные инструменты, именуемые серверами Web-приложений.

На сегодняшний день существует целый ряд технологий, позволяющих выполнять программы-сценарии на сервере, получая при этом через программы-клиенты результат, отображаемый Web-браузером. Это и Microsoft Active Server Pages (ASP), и Java Server Pages (JSP), и Perl, и Personal Home Page

(PHP), и Sybase Power Dynamo и т. д.

Однако существует еще один программный продукт от корпорации Macromedia. Это ColdFusion. О чем, собственно говоря, и пойдет речь в этой книге.

Цель книги — исследование возможностей ColdFusion как одного из средств разработки Web-приложений.

Для кого предназначена эта книга?

ColdFusion ориентирован на серьезных разработчиков, которые создают приложения для Web, поддерживающие электронную коммерцию и базы данных. В программе реализовано визуальное программирование профессионального уровня, а также инструменты разработки баз данных и отладки.

Вы можете создавать сложные SQL-операторы с помощью инструментального набора Visual Database, использовать преимущество встроенного редактора каскадных таблиц стилей, а также отлаживать программы в интерактивном режиме.

Одной из сильных сторон программы является ее способность манипулировать большими проектами, в которых задействовано много разработчиков и серверов. В программу также встроен мощный серверный язык сценариев (ColdFusion Markup Language, CFML) с синтаксисом на основе тегов, который работает с HTML и XML.

ColdFusion обладает поддержкой WML (Wireless Markup Language, язык разметки для беспроводных устройств).

Если вы профессиональный Web-мастер, имеющий в своем арсенале базовые знания по ASP, PHP или Perl, то эта книга поможет вам разобраться еще с одним инструментом разработки Web-сайтов.

Если вы создаете Web-страницы с помощью JavaScript или являетесь студентом, специализирующимся в области Web-технологий, то книга также будет вам полезна.

Если вам пока не доводилось создавать серьезные Web-приложения, но при этом вы имеете некоторый опыт применения HTML, то можете использовать ColdFusion для усовершенствования собственных Web-страниц и в дальнейшем вступить в ряды обладателей почетной профессии - Web-мастер. Однако не обольщайтесь: для того чтобы действительно называться "мастером", надо немало потрудиться.

Структура книги

Посвященная Web-проектированию, эта книга раскрывает возможности полноценной, высокопроизводительной и легко расширяемой платформы Macromedia ColdFusion, предназначенной для построения крупномасштабных систем электронной коммерции.

Для упрощения восприятия большинство глав включает в себя помимо теории практический курс по использованию тегов и функций ColdFusion Markup Language (CFML) применительно к тематике данной главы.

В книге описаны основные шаги по установке и настройке праграммного продукта, начальные навыки работы в среде ColdFusion Studio, этапы проектирования Web-приложения, включающие постановку задачи, определение бизнес-правил, разработку базы данных и оформление дизайна проекта.

Также в книге рассмотрены основы языка CFML, возможности по управлению приложением с использованием конфигурационных файлов, работа с данными с предоставлением синтаксиса SQL-языка, управление файлами, организация поисковой системы по сайту.

А также в книге описано использование языка CFScript, почтового сервера, СОМ- и CORBA-объектов, WML-страниц для разработки WAP-приложений.

В конце книги приведены приложения с дополнительной справочной информацией по синтаксису функций и тегов ColdFusion.

Введение

Macromedia ColdFusion — полноценная, высокопроизводительная, легко расширяемая платформа, предназначенная для разработки Web-приложений, в т. ч. построения крупномасштабных систем электронной коммерции. Она содержит собственную среду выполнения программ, предусматривает поддержку популярных серверных технологий, предоставляет расширенные функции управления и обеспечения безопасности, к тому же на практике имеет большой спрос среди сообщества Web-разработчиков.

ColdFusion, с недавних пор ставший продуктом корпорации Macromedia, сочетает в себе как сервер Web-приложений, ColdFusion Server, так и средство разработки приложений на его платформе, ColdFusion Studio.

Из истории ColdFusion, или от Allaire к Macromedia

Джереми Эллэйр (Jeremy Allaire) с группой программистов основал свою фирму осенью 1994 года. На первом этапе в ней работало двенадцать человек: четверо разработчиков, трое занимались поддержкой пользователей, остальные представляли отделы менеджмента и продаж. К 2001 году количество сотрудников составило порядка пятисот человек.

16 января 2001 года две известные компании Allaire и Macromedia, успешно работающие на рынке программного обеспечения, ориентированного на создание платформ электронного бизнеса, Web-базируемых приложений и творческого оформления Web-сайтов, объявили о слиянии и намерении в дальнейшем вести общий бизнес.

Если быть более точными, то это объединение на самом деле является выгодным приобретением Macromedia компании Allaire. За каждую акцию Allaire Macromedia отдал 0,2 собственных акций и еще 3 доллара. Таким образом, сумма сделки составляла около 360 млн долларов. Следовательно, объединенная компания носит название Macromedia, имеет штаб-квартиру в Сан-Франциско и офис в Бостоне. Главой компании на период написания книги оставался Роб Бергесс (Rob Burgess), председатель правления СЕО Macromedia, а Джереми Аллэйр (Jeremy Allaire) занял пост технического директора (Chief Technical Officer, СТО), этот же пост он занимал и в компании Allaire.

До подписания договора о слиянии компании продолжали работать как самостоятельные структуры, независимо друг от друга. После прохождения всех формальностей оформления сделки Allaire и Macromedia объединили свои партнерские каналы и с конца второго квартала 2001 года осуществляют совместную поддержку всех своих продуктов.

Итак, в мире появилась компания, которая способна предоставить своим пользователям практически весь спектр программных решений для обеспечения жизненного цикла Web-серверов любой сложности, от простейших домашних страничек до сложнейших порталов электронной коммерции. До объединения компании Allaire и Macromedia вели достаточно тесное сотрудничество в области Web-технологий и прикладывали все возможные усилия для взаимной интеграции своих продуктов так, что дальнейшее объединение линеек программного обеспечения не должно вызвать больших трудностей. Как говорится в совместном пресс-релизе компаний, основная ставка будет сделана на такие продукты, как Allaire ColdFusion, Allaire JRun, Macromedia Dreamweaver и Macromedia Flash. В принципе, эти продукты как раз и обеспечивают все стадии разработки и поддержки Web-приложений.

Что делает ColdFusion конкурентно-способным?

Согласно различным исследованиям, ColdFusion — в США один из лидеров по продажам среди Web-серверных приложений. Однако нельзя забывать о существовании ASP, JSP, PHP, Perl и подобных конкурирующих технологиях. Тем более, что большинство из вышеперечисленных являются свободно распространяемыми. При этом большое количество людей используют ColdFusion. Можно выделить три основные причины, по которым стоит выбрать ColdFusion.

Первая причина — простота. Многие разработчики выбирают ColdFusion, исходя из простоты обучения. Большинство разработчиков с HTML-навыками находят язык ColdFusion, который часто упоминается как CFML (ColdFusion Markup Language, язык разметки ColdFusion), весьма интуитивно понятным.

Вторая причина — мощность. Несмотря на факт, что ColdFusion является простым в изучении, это также чрезвычайно мощное средство разработки. Имеется более семидесяти тегов, более двухсот сорока функций на языке CFML. Краткий обзор главных услуг, предлагаемых через CFML, таков:

Третья причина — сообщество. Одна из существенных причин для выбора ColdFusion — сообщество ColdFusion-разработчиков. Наличие открытых исходных кодов является причиной создания общин разработчиков-активистов, которые сосредотачиваются на специфическом программном продукте или инструменте. Подобная группа сформировалась и вокруг ColdFusion. От активных форумов разработчиков на страницах Macromedia&Allaire к активным ColdFusion-группам пользователей (CFUGs) во всем мире. Всегда кто-то найдется, чтобы помочь вам с решением возникшей проблемы. Активное сообщество предоставляет сотнц пользовательских тегов для ColdFusion, множества полезных примеров, различных публикаций.

Возможности ColdFusion Server

Возможности ColdFusion Studio