Занятие 1. Платформы разработки
(Продолжительность занятия 100 минут)
Компания Microsoft предлагает широкий спектр средств разработки решении. В настоящее время наиболее популярны две среды разработки: Microsoft Visual Studio и Microsoft Office.
Visual Studio 97 — многопрофильное семейство визуальных средств создания многоуровневых клиент-серверных приложений и приложений для Интернета.
Microsoft Office позволяет быстро создавать, модифицировать и развертывать полнофункциональные решения.
На этом занятии Вы познакомитесь с компонентами Visual Studio и стратегией выбора подходящего средства разработки. Здесь также описаны компоненты семейства Microsoft Office и то, как с помощью Visual Basic for Applications настроить решения на основе Office для работы в конкретных условиях.
Microsoft Visual Studio
Microsoft Visual Studio — многофункциональный комплекс визуальных средств разработки для создания открытых и масштабируемых клиент-серверных и Интернет-приложений (рис. 4.1). Средства проектирования и создания приложений, входящие в это семейство, адресованы корпоративным отделам информационного обеспечения, поставщикам программного обеспечения и независимым разработчикам.
Рис. 4.1 Семейство Visual Studio
В состав Visual Studio входят следующие средства разработки:
Кроме того, в Visual Studio включены специальные, ориентированные на разработчиков, версии Microsoft Transaction Server и SQL Server.
Microsoft Visual Basic
Microsoft Visual Basic — самый простой метод разработки приложений для Microsoft Windows. Он включает полный набор средств быстрого создания приложений (Rapid Application Development, RAD) как для опытных профессионалов, так и для тех, кто только начинает программировать для Windows.
Слово «Visual» в названии пакета отражает метод создания графического пользовательского интерфейса (GUI). Теперь Вы избавлены от утомительного программирования описаний внешнего вида и положения элементов интерфейса вручную: Visual Basic позволяет скомпоновать диалоговое окно или другой элемент из готовых объектов методом «перетащить и отпустить», а затем сам генерирует необходимый код. Basic — это язык программирования, лежащий в основе Visual Basic. Теперь он содержит несколько сотен операторов, функций и ключевых слов, большинство которых относятся непосредственно к графическим интерфейсам Windows. Новички, изучив лишь несколько ключевых слов, могут приступить к созданию приложений, однако Visual Basic далеко не примитивен. Мощные средства позволяют ему успешно конкурировать с другими языками программирования для Windows: например, с его помощью можно создавать повторно используемые ActiveX-компоненты. Visual Basic позволяет:
Преимущества Visual Basic
Microsoft Visual C++
Хотя C++ можно использовать и как процедурный язык, объектно-ориентированный подход Visual C++ обеспечивает программистам доступ ко всем возможностям этого языка программирования. Средства Visual C++ и объектно-ориентированный подход уменьшают затраты на разработку за счет повторного использования созданных объектов.
Microsoft Visual C++ — современная среда для объектно-ориентированной разработки приложений, которая поддерживает:
Преимущества Microsoft Visual C++
Microsoft Visual C++ позволяет:
Microsoft Visual InterDev
Это интегрированная визуальная среда для коллективной разработки Web-проектов (рис. 4.2). Visual InterDev автоматически публикует разработанные компоненты на Web-сервере, а также позволяет управлять этим узлом. В его состав включены визуальные средства проектирования баз данных для создания Web-узлов, работающих с БД. Вот некоторые компоненты, включенные в состав Visual InterDev:
Рис. 4.2 Компоненты Visual InterDev
Преимущества Visual InterDev
> Создание Web-страницы в Visual InterDev
В этом упражнении Вы средствами Microsoft Visual InterDev создадите Web-страницу и добавите к кнопкам сценарии на языках JavaScript и VBScript.
Вы увидите, что приведенная ниже строка кода подсвечена.
<!- Insert HTML here ->
<form>
<input type = "button" value = "Test JavaScript"
name = "cmdJavaCode" OnClick="bln=JavaCode()">
<input type = "button" value = "Test VBScript"
name = "cmdVBCode">
</form>
<script language="javascript">
var bln = false
function JavaCode() {
alert("Hello from JavaScript!")
return true
} </script>
<script language="VBScript">
Sub cmdVBCode_OnClick
MsgBox "Hello from VBScript!"
End Sub
</script>
> Предварительный просмотр созданной Web-страницы
Web-страница откроется в программе просмотра, зарегистрированной в Visual InterDev в качестве программы просмотра по умолчанию.
> Проверка нового Web-узла
http://localhost/MyWebProject/MyFirstPage.htm
Microsoft Visual J++
Visual J++ — визуальная объектно-ориентированная среда разработки программ на языке Java. В ней используется тот же пользовательский интерфейс, что и в Microsoft Visual C++. Программировать на Visual J++ можно только на компьютерах под управлением Windows 95 и Windows NT 4.0, однако созданный код работает на любой платформе, поддерживающей виртуальную Java-машину.
Виртуальная Java-машина
Она необходима для выполнения Java-программ. Виртуальная машина — это эмулируемый программным способом процессор байт-кода Java. Она преобразует байт-коды в инструкции операционной системы, под управлением которой работает виртуальная машина, аналогично тому, как Visual C++ переводит исходный код в команды для конкретной платформы (рис. 4.3). В результате Java-код выполняется на любой платформе, где есть виртуальная Java-машина.
Рис. 4.3 Выполнение Java-программ
Преимущества Visual J++
Visual J++ позволяет:
Microsoft Visual FoxPro
Microsoft Visual FoxPro — объектно-ориентированная среда для проектирования баз данных и разработки приложений. Ее средствами можно создавать объекты и классы, обладающие истинными свойствами наследования, инкапсуляции и другими отличительными особенностями объектно-ориентированного проектирования.
В состав Visual FoxPro входят все необходимые инструменты для создания таблиц, выполнения запросов, построения интегрированных систем управления реляционными базами данных и приложений для управления данными. Основа Visual FoxPro — полноценное ядро сервера реляционной БД, оптимизированное для работы с большими наборами данных. Благодаря Microsoft Visual FoxPro, семейство Visual Tools пополнилось:
Visual FoxPro, подобно Microsoft Visual Basic, можно применять для создания серверов автоматизации, что позволит другим приложениям использовать Ваши наработки. Например, таким образом реализуется готовый код обработки данных для вызова из приложений Microsoft Office или через Internet Information Server. В результате сохраняется готовый код и в то же время применяются последние достижения технологии.
Как и Visual Basic, серверы автоматизации Visual FoxPro поддерживают удаленную автоматизацию для создания распределенных многоуровневых клиент-серверных приложений.
Преимущества Visual FoxPro
Выбор средства разработки из семейства Visual Studio
Прежде всего стоит проанализировать особенности приложения, которое Вы будете разрабатывать. В частности, попытайтесь ответить на следующие вопросы.
Возможности |
Visual Basic |
Visual С++ |
Visual InterDev |
Visual J++ |
Visual FoxPro |
Объектно-ориентированный подход |
- |
X |
- |
X |
X |
Создание повторно используемых компонентов |
X |
X |
- |
X |
- |
Компиляция программ для процессоров MIPS, Alpha и PowerPC |
- |
X |
- |
- |
- |
Создание приложений для Интернета и активных страниц сервера |
- |
- |
X |
- |
- |
Возможности клиент-серверной разработки |
X |
X |
X |
- |
X |
Объектно-ориентированное программирование
В отличие от процедурного, этот тип программирования требует объектно-ориентированного проектирования и соответствующего языка программирования.
При обычном подходе программа представляет собой набор процедур для обработки данных. Объектно-ориентированные программы, напротив, состоят из объектов — программных модулей, которые инкапсулируют сами данные и их обработку. Вот четыре основные характеристики объектно-ориентированного языка программирования:
Ниже перечислены компоненты Visual Studio, обладающие этими параметрами и, следовательно, считающиеся объектно-ориентированными языками программирования:
Создание повторно используемых программных компонентов
Visual C++ — наиболее мощный инструмент для разработки программ. В его состав входит редактор СОМ для построения и управления объектами СОМ (эта технология подробно обсуждается в главе 5), а также мастера для создания ActiveX-элементов и компонентов. Visual C++ поддерживает генерацию и компиляцию кода для СОМ, визуальное редактирование СОМ-компонентов и ускоренную разработку небольших компонентов на основе библиотеки шаблонов ActiveX (Active Template Library, ATL).
Visual Basic — один из самых простых и быстрых методов разработки ActiveX-элементов. Мастера интерфейса ActiveX-элемента (ActiveX Control Interface Wizard), страницы свойств (Property Page Wizard) и установки (Setup Wizard) помогут Вам создавать и распространять ActiveX-элементы.
Средства Visual J++ позволяют расширять возможности Java-кода Windows-приложений и создавать повторно используемые серверные ActiveX-компоненты (в частности, с помощью мастера).
Поддержка различных процессоров и платформ
Если приложение должно работать на процессорах нескольких типов — MIPS, Alpha, RISC или PowerPC, то наилучшее решение — Visual C++. Дело в том, что приложения Visual Basic могут выполняться только на платформах Windows.
Язык C++ — открытый, гибкий и легко переносимый. Он считается основным при разработке приложений для доступа ко всем возможностям большинства платформ. Visual C++ позволяет, например, сохранить готовый код, вложенные средства и накопленные знания при переносе Windows-приложений на системы UNIX и Macintosh.
Разработка приложений для Интернета
Visual J++ и Visual InterDev — оптимальный выбор при разработке приложений для Интернета и интрасети. Visual J++ позволяет создавать код для всех платформ, где есть виртуальная Java-машина или программа просмотра Web с поддержкой Java.
Visual InterDev обеспечивает автоматическое создание кода HTML и сценариев (VBScript и JScript) Web-узлов, работающих с базами данных. Построенные таким образом решения доступны любой программе просмотра Web на любой платформе.
Клиент-серверная разработка
Средствами Visual FoxPro можно проектировать и создавать клиент-серверные приложения. Этот инструмент профессионального разработчика позволяет быстро реализовывать приложения, конструировать объектно-ориентированные программы и является прекрасным клиентом для доступа к серверным БД. Клиент-серверные приложения, созданные с помощью Visual FoxPro, эффективны, поддерживают работу с большими объемами данных и обладают встроенными средствами защиты для серверов и ODBC-источников данных.
Для построения высокопроизводительных клиент-серверных приложений применяют и Visual Basic. Элемент управления для работы с удаленными данными (Remote Data Control) на основе ODBC оптимизирован для таких систем, как Microsoft SQL Server и Oracle?. Он содержит полную библиотеку OLE-объектов поддержки доступа к базам данных. Кроме того, Visual Basic поддерживает асинхронные запросы. Например, используя Remote Data Objects (RDO) в клиент-серверной программе, Вы сумеете решать различные задачи, пока в фоновом режиме выполняется большой запрос.
Visual InterDev облегчает интеграцию технологий клиент-сервер и Web, что позволяет разрабатывать конкурентоспособные коммерческие Web-приложения.
Для построения приложений доступа к базам данных Visual C++ использует клиент-серверные технологии и библиотеку Microsoft Foundation Classes (MFC). Visual C++ предоставляет в распоряжение разработчика классы и компоненты, инкапсулирующие подключение к БД и выполнение транзакций. В состав Visual C++ включены и средства для работы с накопленной корпоративной информацией, что упрощает интеграцию приложений с существующими сетями и мэйнфреймами.
Microsoft Office
Microsoft Office — интегрированный пакет офисных приложений, снабженный средствами доступа в Интернет и предоставляющий массу инструментов для более эффективной работы (рис. 4.4). Microsoft Office позволяет создавать собственные решения с использованием Visual Basic for Applications, который входит в состав всех приложений Microsoft Office.
Рис. 4.4 Семейство Microsoft Office
Microsoft Office Binder
Приложение Microsoft Office Binder позволяет объединить несколько документов Office в единый файл. В подшивку Office Binder можно вставить документы:
Будучи объектным приложением OLE, Office Binder включает простую модель объектов, которая позволяет сохранять, извлекать и распечатывать документы подшивки. Для доступа к объектам Office Binder средствами OLE-автоматиза-ции на компьютере надо установить Microsoft Office.
Visual Basic for Applications
Microsoft Visual Basic for Applications (VBA) — это новая версия Visual Basic, включенная в состав приложений Office.
Если Visual Basic работает с формами и элементами управления, VBA действует в контексте соответствующего приложения. Наиболее значительное различие между VB и VBA состоит в том, что последний не поддерживает обработку событий. В то же время приложение, в контексте которого выполняется VBA, открывает ему доступ к своим объектам и функциям, например:
Возможны три базовых сценария использования VBA:
Модель объектов VBA
Создание решений на базе Microsoft Office возможно благодаря тому, что функции приложения доступны через программируемые объекты.
Применение компонентов Office сокращает затраты на разработку, укорачивает ее цикл и позволяет конструировать более мощные решения. Бизнес-процессы, в которых используются такие программные продукты, отличаются стабильностью и упорядоченностью.
Посредством языка VBA можно управлять компонентами Microsoft Office и встраивать их объекты в бизнес-решения. Например, объект «диаграмма Microsoft Excel» предоставляет мощные средства работы с диаграммами, а объект «отчет Microsoft Access» снабдит бизнес-приложение универсальными средствами создания отчетов, включенными в Microsoft Access.
'Объявить объект Application
Dim XL As Excel.Application
'Использовать функцию CreateObject
Dim XL2 As Object
Set XL2 = CreateObject("Excel.Application")
Создание подшивки средствами VBA
В этом упражнении Вы создадите новый файл подшивки и добавите в него документы Microsoft Word и Microsoft Excel.
> Создание подшивки и добавление компонентов
Dim BND As OfficeBinder.Binder
Set BND = CreateObject("Office. Binder")
BND.Visible = True
BND.Sections.Add ("Word.Document")
BND.Sections.Add ("Excel.Sheet")
BND.SaveAs filename:="NewBinder.obd"
BND.Close 0
Set BND = Nothing
Приложение создаст экземпляр подшивки Office Binder и посредством автоматизации добавит в нее документ Word и электронную таблицу Excel.
Использование VBA
В этих упражнениях Вы примените Visual Basic for Applications в Word и Excel.
> Использование VBA в Microsoft Word
On Error GoTo ErrorHandler
If APR > 1 Then APR = APR / 100 'Проверка значения If chkEOM = True Then
PayType = 0 Else
PayType = 1 End If
IblMOpayment = Format(Pmt(APR / 12, TotPmts, -Pval, 0, PayType), "currency") Exit Sub
ErrorHandler:
IblMOpayment = 0
> Использование VBA в Microsoft Excel
Cells.Range("A1") = "Hello world!"
В первой ячейке электронной таблицы появится строка «Hello World!».
Резюме
Visual Studio 97 — многопрофильное семейство визуальных средств разработки приложений различных типов. Многие компоненты пакета выполняют схожие функции. Выбирая конкретное средство, сначала проанализируйте особенности приложения, которое Вы будете конструировать. В состав Visual Studio 97 входят:
Microsoft Office — это семейство приложений, на основе которого можно создавать бизнес-решения. В него входят:
Visual Basic for Applications (VBA) — новая версия Visual Basic в составе Microsoft Office, которая позволяет создавать адаптированные решения на основе приложений Office.