ПКС / ПКС. Материалы лекций
.pdfUML-диаграмма объектов (Object)
class "_debug2:DebugLogger" as _debug2 <<stereotype_object>>{
# nextLogger = _error2
}
class "_error1:ErrorLogger" as _error1 <<stereotype_object>>{
# nextLogger = null
}
class "_error2:ErrorLogger" as _error2 <<stereotype_object>>{
# nextLogger = null
}
class "_error3:ErrorLogger" as _error3 <<stereotype_object>>{
# nextLogger = null
}
81
ChainPattern -down-> _info1 _info1 -right-> _debug1 _debug1 -right-> _error1 ChainPattern -right-> _debug2
_debug2 -right-> _error2
ChainPattern --> _error3
@enduml
UML-диаграмма объектов |
82 |
(Object): пример скрипта и диаграммы в PlantUML |
@startuml
object "default.aspx" as def_page { usernameTextBox.Text : string = av passwordTextBox.Text : string = 123
}
object "registration.aspx" as reg_page { firstnameTextBox.Text : string = a lastnameTextBox.Text : string = p middlenameTextBox.Text : string = v emailTextBox.Text : string = @ usernameTextBox.Text : string = av passwordTextBox.Text : string = 123
}
object "loggedIn.aspx" as log_page { userLabel.Text : string = av
}
def_page --> reg_page def_page --> log_page reg_page ..> log_page
@enduml
UML-диаграмма объектов (Object): пример фрагментов работы веб- |
83 |
приложения (ASP.NET) |
UML-диаграмма объектов |
84 |
(Object): пример скрипта и диаграммы в PlantUML |
@startuml
object "WebForm_main.aspx" as web_main {
}
object "Select.aspx" as ins_page { tbox_ot.Text : string = 10000 tbox_do.Text : string = 20000
checkBox_front_camera.checked : bool = false
}
object "Insert.aspx" as sel_page { tbox_name_telephone.Text : string = Samsung k961 tbox_insert_prise.Text : string = 33000 chbox_mainCamera.checked : string = true chbox_faceCamera.checked : string = true chbox_defenition.checked : string = false
}
web_main ---> sel_page web_main <--- sel_page web_main ---> ins_page web_main <--- ins_page ins_page ---> sel_page sel_page ---> ins_page @enduml
UML-диаграмма классов (Class) |
|
85 |
Диаграмма классов (Class) определяет абстрактный метакласс (высокоуровневый класс), для которого конкретные подклассы используются, чтобы классифицировать различные виды значений.
class (класс) – блок, определяющий класс в виде совокупности данных (_level и nextLogger
на слайде 5) и методов (main(), write() и setNext() на слайде 5);
template (шаблон, параметризованный класс) определяет типизированный класс, как правило, абстрактный (AbstractLogger на слайде 5);
attribute (атрибут класса) определяет уровни доступа к элементам класса: «+» – общедоступные (public) данные и методы, «-» – приватные (private) элементы класса, «#» – защищенные (protected) данные и методы класса; спецификация самих данных и параметров методов определяется как для диаграммы объектов;
generalization (обобщение) определяет взаимосвязь наследования классов (<<inherit>>), при этом особым образом указывается наследование параметризованного класса (<<implement>>: реализация наследуемых интерфейсов);
bind (связывание) определяет степень взаимосвязи данного класса с другими объектами: различают «жесткую» (rigid: указывается в виде составного элемента или взаимосвязи с закрашенным ромбом: например, <<derive>> на слайде 5: типизированная взаимосвязь извлечения данных) и «гибкую» связи (flexible: указывается в виде взаимосвязи без закрашенного ромба: например, <<use>> на слайде 5: типизированная взаимосвязь обращения к данным).
UML-диаграмма классов (Class) |
|
86 |
Details Suppressed, Analysis-level Details,
Implementation-level Details
UML-диаграмма классов (Class) |
|
87 |
Composition class
UML-диаграмма классов (Class) |
|
88 |
Graphical Adornments on Association Roles
UML-диаграмма классов (Class) |
|
89 |
UML-диаграмма классов (Class) |
|
90 |