![]() |
Звоните! (926)274-88-54 Бесплатная доставка. Бесплатная сборка. |
Ассортимент тканей График работы: Ежедневно. С 8-00 до 20-00. Почта: soft_hous@mail.ru |
![]() ![]() ![]() |
Читальный зал --> Диаграммы параллельных состояний Тип Показателя 0..1 Измерение значение:Количество измерение Наблюдение Показатель диапазон: Диапазон категория динам ическая> Пациент Категория Наблюдения представлено: Булев Количество значение:Число единица: Единица Единица Измерения Диапазон верхняя граница:Величина нижняя граница: Величина Рис. 11.1. Модель предметной области наблюдения пациента ассоциирован Показатель группа крови О . Этот Показатель в свою очередь связан с Типом Показателя группа крови . Диаграмма объектов на рис. 11.2 может несколько прояснить данную ситуацию. Рис. 11.3 иллюстрирует, что можно выполнить Наблюдение, которое служит одновременно Измерением и Категорией Наблюдения. Основой этого факта служит то, что Измерение 90 ударов в минуту может также являться Категорией Наблюдения, с которой связан Показатель быстрый сердечный ритм .
группа крови: Тип Показателя группа кробиА: Показатель группа крови Q: Показатель Мартин Фаулер; Пациент Категория Наблюдения Рис. 11.2. Диаграмма объектов наблюдения пациента На данной стадии мною рассмотрены только сами понятия без учета их поведения. Я не всегда поступаю именно так, однако данное представление оказывается подходяхцей отправной точкой для решения задачи, связанной главным образом с информацией. Мною до сих пор рассматриваются понятия, связанные с наблюдением пациентов, как если бы я имел дело с доктором или медсестрой. (На самом деле, все так и есть. Концептуальные модели были построены с моей помохцью парой докторов и медсестрой.) Чтобы перейти к объектно-ориентированному программированию, необходимо решить, как рассматривать это концептуальное представление в терминах программного обеспечения. (Должен же я как-нибудь вставить в эту книгу код на Java!) Большинство рассмотренных понятий могут быть преобразованы в классы языка Java. Понятия Пациент, Тип Показателя, Показатель, Единица Измерения и Количество преобразуются без проблем. Проблема возникает только с понятиями Диапазон и Наблюдение. Проблема с Диапазоном обусловлена тем, что мне нужно сформировать количественный диапазон для Показателя. Это можно было бы осухцествить, создав интерфейс величина и установив, что Количество реализует данный интерфейс, но это привело бы к определенным трудностям. В языке Smalltalk подобных проблем не возникает, да и в языке С-Ы- для этой цели можно воспользоваться параметризованными типами. Что касается данного примера, то здесь целесообразно использовать класс КоличественныйДиапазон, который, в свою очередь, использует образец Диапазон . Диапазон верхняя фзница = = 80 ударов в мин. нижняя граница = = 60 ударов в мин. верхняя граница = = бесконечность нижняя граница = = 80 ударов в мин. нормальный сердечный ритм; Показатель сердечный ритм; Тип Показателя быстрый сердечный ритм; Измерение И Категория Наблюдения значение = 70 ударов в мин. Мартин Фаулер: Пациент Рис. 11.3. Другая диаграмма объектов наблюдения пациента Проблема, связанная с Наблюдением, заключается в том, что Наблюдение одновременно может быть Категорией Наблюдения и Измерением (рис. 11.3). В языке Java, как и в большинстве других языков программирования, можно определить только одну классификацию. Я решил эту проблему, допустив, что любое Наблюдение должно иметь ассоциированный с ним Показатель, который позволяет классу Наблюдение эффективно реализовывать как понятие Наблюдение, так и понятие Категория Наблюдения. Хотя эти решения далеки от совершенства, тем не менее, они позволяют выполнить намеченную работу. Не пытайтесь создать программное обеспечение, которое в точности отражало бы концептуальную точку зрения. Напротив, следует придерживаться не буквы, а духа концептуальной модели, учитывая при этом ограничения имеющихся средств реализации.
ООО «Мягкий Дом» - это Отечественный производитель мебели. Наша профильная продукция - это диваны еврокнижка. Каждый диван можем изготовить в соответствии с Вашими пожеланияи (размер, ткань и материал). Осуществляем бесплатную доставку и сборку. Звоните! Ежедневно! (926)274-88-54 Продажа и изготовление мебели. Копирование контента сайта запрещено. Авторские права защищаются адвокатской коллегией г. Москвы. |