ืืืื
ืื ื ืืืฉื ืฉืืืื ืฉืืขื ืืืืืืชื ืืฉืคื ืืื " ืืืื ืคืขืืืื, ืืชืื ืคืขื ืืืช ". ืื ืืืชื ืืืจ ืืชืื ืืช. ืชืืื ืขืืืฃ ืืืฉืื ืขื ืืืืฉืื ืืคื ื ืฉืืชื ืืงืืืฉ ืืื ืืืืฆืืขื. ืืขืชืื ืงืจืืืืช ืืืืื ืืืืฉืื ืืชื ืฆืจืื ืืืฆืืจ ืืืืงืืช ืืืืืฆืื ืืช ืืืื ืืจืืงืฆืื ืฉืืื. ืืืขืชืื ืงืจืืืืช ืืืฆืื ืืืืชื ืฉื ืื ืืืื ืืขืืืจ ืืคืชืืจ ืืช ืืืขืื ืืฆืืจื ืื ืืื ื ืืืืชืจ. ืื ืืืงืื ืฉืื UML ืขืืืจืช ืื ื .ืื ืื UML?
ืื ืชืกืชืื ืขื ืชืืื ืืช ืืื ืืขื ืืืคืืฉ, ืืชืืจืจ ืฉ- UML ืืื ืืฉืื ืขื ืืืืืจืืืช, ืืืฆืื ืืืจืืืขืื. ืื ืฉืืฉืื ืืื ืฉ-UML ืืชืืจืื ื- Unified Modeling Language . ืืืืื ืืืืืืช ืืฉืืื ืืื. ืืืืืจ, ืืชืืื ืืช ืฉืื ื ืืืื ื ืื ืจืง ืื ื, ืืื ืื ืืืืจืื ืฉืืืืจืื ืืช UML. ืืกืชืืจ ืฉืื ืฉืคื ืืื ืืืืืืช ืืฆืืืจ ืืืืืจืืืช.
ืืคื ืฉืืืืจืช ืืืงืืคืืื
UML ืืื ืฉืคืช ืชืืืืจ ืืจืคืืช ืืืืืื ืืืืืืงืืื ืืคืืชืื ืชืืื ื, ืืืืืื ืฉื ืชืืืืืื ืขืกืงืืื, ืขืืฆืื ืืขืจืืืช ืืืฆืืช ืืื ืื ืืจืืื ืืื.ืืืืจ ืืืขื ืืื ืืืืชืจ ืฉืื ืืืื ืืืฉืืื ืขืืื ืื ืืืื ืื ืืื ืฉื-UML ืืฉ ืืคืจืืื. ืืชืจ ืขื ืื, ืืฉ ืืคืืื ืืคืจื UML2. ืคืจืืื ื ืืกืคืื ืขื ืืืคืจื ื ืืชื ืืืฆืื ืืืชืจ ืงืืืฆืช ื ืืืื ืืืืืืงืืื . ืืืขืฉื, ืืงืืืฆื ืืื ืืคืชืืช ืืคืจืื UML. ืืขื ืืื ืื ืฉ-UML ืืื ื ืืืืื ืืชืืืืจ ืืื ื ืืฉืืขืืจืื. ืืฉื ื ืกืืืื ืจืืื ืฉื ืืืืืจืืืช UML. ืชืืืืจ ืงืฆืจ ืฉื ืกืืื ืืืืืจืืืช UML ื ืืชื ืืจืืืช ืืืืชื ืืืงืืคืืื: ืืืืืจืืืช UML ืื ืืกืจืืื ืฉื ืืืืืจ ืืืืจืฉืื ืื ืกืงืืจืช ืืืืืจืืืช UML . UML ื ืืฆื ืืฉืืืืฉ ื ืจืื ืื ืืชืืืืจ ืชืืืืืื ืฉืื ืื, ืืืฉื ืืื: ืื ืืกื ืืืืื ืืืืฆืขืืช JWT . ืื ื ืืืืจ ืืฉืืืืฉ ืืืืืืจืืืช ืืืืงืืช UML, ืืืื ืืฉืื ืื ืืกืคืจ Head First: Design Patterns , ืฉืื ืืืคืืกืื ืืืืืจืื ืขื ืืื ืืืชื ืืืืืจืืืช UML. ืืกืชืืจ ืฉืืื ื ืขืฉื ืฉืืืืฉ ื-UML. ืืืกืชืืจ ืฉืืืข ืืืื ื ืฉื ืืืืฉืื ืฉืื ืื ืืืืื ืืช ืฉืืืืฉืืช ืืืื.
ืืืฉืื
ืืืื ื ืกืชืื ืืื ืืชื ืืืื ืืขืืื ืขื ืืืชื UML ืื-IDE. ืืืื ื ืืงื ืืช IntelliJ Idea ื-IDE . ืื ืื ื ืืฉืชืืฉืื ื- IntelliJ Idea Ultimate , ืื ืืืชืงื ืื ื ืืช ืืชืืกืฃ " ืชืืืื UML " ืืืงืืคืกื. ืื ืืืคืฉืจ ืื ืืืฆืืจ ืืืืคื ืืืืืืื ืืืืืจืืืช ืืืืงืืช ืืคืืช. ืืืืืื, ืืืืฆืขืืช Ctrl+N ืื ืคืจืื ืืชืคืจืื "ื ืืื" -> "Class" ืื ื ืขืืืจืื ืืืืืงื ArrayList . ืืขืช, ืืจื ืชืคืจืื ืืืงืฉืจ ืฉื ืฉื ืืืืชื, ืืืจ "ืืืืืจืื" -> "ืืฆื ืืืืืจืื ืงืืคืฆืช". ืืชืืฆืื ืืื, ืื ื ืืงืืืื ืชืจืฉืื ืืคื:
@startuml
class ArrayList {
}
class LinkedList {
}
@enduml
ืืื ืืจืืืช ืืช ืืชืืฆืื ื-Idea, ืืืจ "ืชืฆืืื" -> "ืืื Windows" -> "PlantUML". ืจืง ื ืงืื ืฉื ื ืจืืืืขืื ืืืืืฆืืื ืืืชืืช. ืืคื ืฉืื ื ืืืืขืื, ืฉืชื ืืืืืงืืช ืืืื ืืืืฉืืืช ืืช ืืืฉืง List. ืงืฉืจ ืืขืืื ืื ื ืงืจื ืืืฉืื. ืืื ืืชืืจ ืงืฉืจ ืืื, ืืฉืชืืฉ ืืืฅ ืขื ืงื ืืงืืืงื. ืืืื ื ืชืืจ ืืช ืื:
interface List
List <|.. ArrayList
List <|.. LinkedList
List
- ืืืช ืืืืชืืช ืืืืืื Collection
. ืืืืืจ, ืืื ืืืจืฉ ืืืืกืฃ. ืืงืฉืจ ืืื ื ืงืจื ืืืืื. ืื ื ืจืื ืืื ืืฅ ืขื ืงื ืจืฆืืฃ ืงืืืข. ืืืื ื ืชืืจ ืืช ืื:
interface Collection
Collection <|-- List
ืขืืืจ ืกืื ืืืืืืจ ืืื, ืืืกืฃ ืืชืืืืจ ืืืืชื ArrayList
ืขืจื ืขื ืืขืจื ืืืืื ืืื ืืคืจืื ืฉื ืืืืืื :
~Object[] elementData
ืขืืฉืื ืื ืื ื ืจืืฆืื ืืืจืืืช ืื ArrayList
ืืืื ืืื ืืืืืืงืืื. ืืืงืจื ืื, ืกืื ืืืืืืจ ืืืื ืฆืืืจื . ืืืืืื ืืืงืจื ืื ืืื ArrayList
, ืื ืืื ืืืื ืืคืฆืื ืืืจืื. ืื ื ืืืืจืื ืืฆืืืจื ืืืืืื ืฉืืืืืืงืืื ืืจืฉืืื ืืืืืื ืืืืืช ืืื ืืจืฉืืื: ืื ืืื ื ืืืงืื ืืื ืืืจืืืื ืืื ื. ืืฉื ืืืืื ืฉืืื ืืื ื ืงืฉืืจ ืืืืจื ืืืืื ืฉื ืืจืฉืืื. ืืืจืื ืืชืืจืื ืืืืื ืืช ื"ืืืจืื", ืืืืืจ ืืฉืื ืฉืืืจืื ืืืฉืื. ืืืืืื, ืืืืื, ืืฉ ืืืืืช ืฉืืืื, ืืืืจืืืช ืืืฉืืื ืืื ืืข. ื ืืชื ืืคืจืง ืืช ืืืืืื ืขืฆืื, ืืืืฉืืืจ ืืืง ืืืจืืืืื. ืืืฉื, ืืืืืจ ืื ืืืื ืืก ืืืืืื ืืืจืช. ืื ืื ืืจืฉืืื. ืืื ืืชืืื ืืฆืืจื ืฉื ืืืืื ืจืืง ืืื ืืืืืื ืืงื ืืชืืฉื. ืืืื ื ืชืืจ ืืช ืื ืื:
class Object{
}
ArrayList o- Object
ืืขืช ืื ื ืจืืฆืื ืืืจืืืช ืฉืื ืืืื ื- ArrayList
, ืืืืืงื LinkedList
ืืืืื Node
ืงืื ืืืื ืจืื ืฉืืชืืืืกืื ืื ืชืื ืื ืืืืืกื ืื. ืืืงืจื ืื, Node
ืื ืืืง ืืขืฆืื LinkedList
ืืืื ื ืืืืืื ืืืืืช ืื ืคืจื. Node
ืืื ื ืชืืื ืืืืืกื ืืฉืืจืืช, ืืื ืืืื ืจืง ืงืืฉืืจ ืืืื. ืืืืืื, ืืืฉืจ ืื ื ืืืกืืคืื ืืฉืืจื LinkedList
, ืื ื ืืืกืืคืื ืืืฉ Node
, ืืืืื ืงืืฉืืจ ืืฉืืจื ืื, ืืื ืงืืฉืืจ ืืฉืืจื ืืงืืืืช ืืืืื Node
. ืกืื ืื ืฉื ืชืงืฉืืจืช ื ืงืจื ืงืืืคืืืืฆืื . ืืื ืืืฆืื ืงืืืคืืืื (ืืื ืืืืจืื ืืืืงืื), ืืฆืืืจืื ืืืืื ืฆืืขืื ื, ืืฉืงื ืจืฆืืฃ ืืืืื ืืืื. ืืื ื ืืชืื ืืช ืื ืืืฆืืช ืืงืกื ืฉื ืืืืืืจ:
class Node{
}
LinkedList *-- Node
ืืขืืฉืื ืื ืื ื ืฆืจืืืื ืืืืื ืืืฆื ืืืฆืื ืกืื ืืฉืื ื ืืกืฃ ืฉื ืืขืจืืช ืืืกืื - ืืืกื ืชืืืช . ืืื ืืฉืืฉ ืืืฉืจ ืืืืงื ืืืช ืืฉืชืืฉืช ืืืืืงื ืืืจืช, ืื ืืืืืงื ืืื ื ืืืืื ืืช ืืืืืงื ืืฉืืืืฉ ืืืื ื ืฆืืฆื ืฉืื. ืืืืืื, LinkedList
ืื ArrayList
ืืืืขืื ืืืฆืืจ ListIterator
. ืืืื ื ืฆืื ืืช ืื ืืืฆืื ืขื ืงื ืืงืืืงื:
class ListIterator
ListIterator <... ArrayList : create
ListIterator <... LinkedList : create
ืืืจื ืื ืื ืื ืืจืื ืื:
ืืืืืืฆืื
ืืฉื ื ืืจืืื ืฉืื ืืช ืืืฆืืจ ืืืืคื ืืืืืืื ืืืืืจืืืช PlantUML. ืืืืืื, ื-Idea ืืฉ ืชืืกืฃ SketchIT , ืืื ืืื ืื ืืฆืืืจ ืืืชื ืืฆืืจื ื ืืื ื. ืืืืืื, ืืืืฉืื ืฉื ืืืฉืงืื ืืฆืืืจ ืืฆืืจื ืฉืืืื (ืืืฆื ืืชืืจ ืืจืืฉื). ืืฉื ื ืื ืืืืืืืช ืืืื ืืจื ื ืืืฆื ืืื ืืช ืืช ืื ืืชืื ืืืืืจ ืืืืื ืฉื ืืคืจืืืงื ืฉืื. ื ื ืื ืฉืืฉ ืืืืื ืขืืืจ Maven ืืืืฆืขืืช uml-java-docklet . ืืื ืืืจืืืช ืืื ืื ื ืขืฉื, ื ืฉืชืืฉ ื- Maven Archetype ืืื ืืืฆืืจ ืืืืืจืืช ืคืจืืืงื ืฉื Maven. ืืื ื ืืฆืข ืืช ืืคืงืืื:mvn archetype:generate
ืืฉืชืชืืงืฉ ืืืืืจ ืืกื ื ( ืืืจ ืืกืคืจ ืื ืืื ืืกื ื ), ืืฉืืจ ืืช ืืจืืจืช ืืืืื ืขื ืืื ืืืืฆื ืคืฉืืื ืขื Enter. ืื ืชืืื ืืืื " maven-archetype-quickstart ". ืืืจ ืืช ืืืจืกื ืืขืืื ืืช ืืืืชืจ. ืืืืจ ืืื, ืื ื ืขืื ืื ืขื ืืฉืืืืช ืืืฉืืืืื ืืช ืืฆืืจืช ืืคืจืืืงื:
mvn clean install
: ื mvn javadoc:javadoc
. ืืขืช, ืื ื ืคืชื ืืช ืืชืืขืื ืฉื ืืฆืจ (explorer target\site\apidocs\index.html), ื ืจืื ืืช ืืืืืจืืืช ื-UML. ืืื, ืืืืฉืื ืืืจ ืืืฆื ืืืืื ืืื)
GO TO FULL VERSION