Программирование >>  Программирование с использованием ajax 

1 ... 72 73 74 [ 75 ] 76 77 78 ... 396


3. После этого на экране появится диаграмма классов, имеющая имя Class Diagraml.cd.

4. Щелкните на элементе IMylnterface и с помощью окна Properties измените значение его свойства Position на Right.

5. Далее щелкните правой кнопкой мыши на элементе MyBase и в контекстном меню, которое появится после этого, выберите пункт Show Base Type (Показать базовый тип).

6. Передвиньте объекты в диаграмме, чтобы их компоновка выглядела более привлекательно. В конечном итоге диаграмма должна приобрести примерно такой вид, как показан на рис. 9.9.

IMyBaf Int ffac

Interfict

; IMyB taInUrfac 2

Inttrfict

I IMylnterface

j Interf.ce

I ♦IMyBiWlrUrfice I -HMyeiielntfrficeJ

Clan О

AbitrictCliM

MyCli t .t)

CliJi

♦Myfiiit

MyComplaxClats r

SciledClin -♦MyCliH

! Proon

Cl i

IMylrurface

Puc. 9.9. Конечный внешний вид диаграммы классов

Описание полученных результатов

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

□ Юхассы изображаются в виде голубых прямоугольников вместе с именем и типом.

□ Интерфейсы изображаются в виде зеленых прямоугольников вместе с именем и типом.

□ Наследование изображается с помощью стрелок с белыми наконечниками (и, в некоторых случаях, соответствующего текста внутри прямоугольников классов).

□ Классы, реализующие интерфейсы, снабжаются обозначением в виде окружности с линией.

□ Абстрактные классы изображаются с пунктирным контуром и выделенным курсивом именем.

□ Герметизированные классы изображаются с толстым черным контуром.



Выполнение щелчка на объекте приводит к отображению дополнительной информации внутри окна Class Details (Детали класса) в нижней части экрана. Здесь можно просматривать (и изменять) члены класса. Изменять детали класса также можно и в окне Properties (Свойства).

В главе 10 будет более подробно рассказываться о том, как добавлять в классы новые члены с помощью диаграммы классов.

С помощью панели Toolbox (Элементы управления) в диаграмму можно добавлять новые элементы, вроде классов, интерфейсов и перечислений, и определять отношения между ними. При таком подходе код для добавляемых новых элементов генерируется автоматически.

С применением этого редактора можно проектировать целые семейства типов графическим образом, никогда не прибегая к редактору кода. В том, что касается фактического добавления функциональных возможностей, то его, конечно, нужно выполнять вручную, но данный редактор все равно является прекрасной отправной точкой. В последующих главах еще будет рассказываться о нем и том, что он может делать, например, о том, как в нем применять панель Object Test Bench (Панель тестирования объектов) для тестирования классов перед их использованием в коде. Пока желающие могут изучить доступные в нем возможности самостоятельно.

Проекты библиотек классов

Классы можно размещать не только в отдельных файлах внутри проекта, но и вообще в совершенно отдельных проектах. Проект, в котором не содержится ничего, кроме классов (вместе с определениями других имеющих к ним отношение типов, но не входной точки), называется библиотекой классов.

Проекты типа библиотеки классов компилируются в .dll-сборки и доступ к их содержимому можно получать путем добавления ссылок на них из других проектов (которые могут являются частью того же самого решения, но не обязательно). Это расширяет границы обеспечиваемой объектами инкапсуляции, поскольку библиотеки классов могут пересматриваться и обновляться без затрагивания тех проектов, в которых они используются, что позволяет легко модернизировать предоставляемые классами службы (которые могут влиять на работу множества пользующихся ими приложений).

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

Практическое занятие Использование библиотеки классов

1. Создайте новый проект типа Class Library (Библиотека классов) по имени Ch09ClassLib и сохраните его в каталоге С: \BegVCSharp\Chapter09, как показано на рис. 9.10.

2. Измените в нем имя файла Class 1. cs на MyExternalClass . cs (выполнив щелчок правой кнопкой мыши на этом файле в окне Solution Explorer и выбрав в контекстном меню пункт Rename (Переименовать)). В диалоговом окне, которое появится далее, щелкните на кнопке Yes (Да).

3. После этого код в файле MyExternalClass. cs автоматически изменится и станет отражать изменение в имени класса:



A prO) ct fo, cte eng C dais МЬл-у I ( ri NET Frimewort 3 51 N ini! ChOIClaillib

Pwr. 9.70. Создание нового проекта типа Class Library

class MyExternalClass

4. Добавьте в проект новый класс с именем файла MylnternalClass. cs.

5. Измените код так, чтобы стало явно видно, что класс MylnternalClass является внутренним (internal):

internal class MylnternalClass

6. Скомпилируйте проект (у этого проекта нет точки входа, поэтому запускать его как обычный проект нельзя - вместо этого его можно скомпоновать, выбрав в меню Build (Сборка) пункт Build Solution (Собрать решение)).

7. Создайте новый проект типа Console Application (Консольное приложение), назовите его Ch09Ex02 и сохраните в каталоге С: \BegVCSharp\Chapter09.

8. Выберите в меню Project (Проект) пункт Add Reference (Добавить ссылку) или выберите опцию с таким же названием после выполнения щелчка правой кнопкой мыши на папке References (Ссылки) в окне Solution Explorer.

9. Перейдите на вкладку Browse (Обзор), отыщите каталог С: \BegVCSharp\Chapter09\ Chapter09\Ch09ClassLib\bin\Debug\ и дважды щелкните на файле Ch09ClassLib.dll.

10. По завершении операции удостоверьтесь в том, что соответствующг1я ссылка была добавлена в окно Solution Explorer (рис. 9.11).

11. Откройте окно Object Browser и разверните представляющий добавленную ссылку узел, чтобы увидеть, какие объекты в нем содержатся, как показано на рис. 9.12.

12. Измените код в файле Program, cs следующим образом:

3 Solution Ch09Ex02 (1 project)

Properties cj Л References

-а System J System Core J System Date

J System DatB.DataSetExtensions vJ SystemJOnl -чЗ SystemJ(ml.llnq ,33 Program.cs

n Explorer ЩЩЩЩГ

using System;

using System.Collections.Generic;

Puc. 9.11. Ссылки в окне Solution Explorer



1 ... 72 73 74 [ 75 ] 76 77 78 ... 396

© 2006 - 2024 pmbk.ru. Генерация страницы: 0.001
При копировании материалов приветствуются ссылки.
Яндекс.Метрика