After I was written in this series, I suddenly found that I miss the important content of the object-oriented design should be mastered - MLL, although I mentioned UML in the previous article, but the importance of UML for Java should be separate Lext description.
UML's importance, I have no way to express it in their own language, thus referring to the "UML Design Core Technology" to express the importance of UML, out of reason and inner reasons.
Foreign reasons:
UML is a standard of international unified standards. It uses the products that it expressed in line with international standards, and the product can be widely recognized, which will increase the competitiveness of the product in the market; as international standards, international software and commercial sessions are generally supported by UML And thus adopting it will receive the most widely technical support and tool support.
Intrinsic reason:
UML uses the picture to describe the system's view, graphical easy to understand, facilitating communication between customers, field experts, system analysis, development and designers in different knowledge background, prompting them to understand each other; UML is a standard Representation method, any method or process can be used in UML, it is independent of specific methods and processes, with versatility; UML has good scalability, providing a mechanism such as plus tag value, constraint, version, etc., self-extension, Can be used in different areas, while having versatility, it also has the ability to make your own dedicated, and the UML is integrated with the best software practices. Although there is no way to describe any method or process, it requires the following characteristics: the structure is centered, with an example-driven, support iterative and incremental development, which reflects the successful experience of software development; UML to software design and Analysis of new ideas and new methods that emerged in practice provide good support, it supports concepts such as models, frameworks, and components, providing traceability from "conceptual mode to implement code".
The above is a reference, indicating the important role of UML in OOA and OOD, I want to do some instructions in the following:
UML is a graphical language indicating systematic analysis, system design, and system representation. In system development, people with different roles should focus on the corresponding view, not all. UML has 9 kinds of views, I have learned, but I am familiar with some views, sequence diagrams, collaborative drawings, and other views due to the system design. This is a little forgotten due to less use. But for the maps you often, you must draw a corresponding UML map on your whiteboard. UML with whiteboard. In systematic analysis and system design stages, it is often discussed. When discussing, the whiteboard is a better choice for the UML tool, which requires skillful master of the UML language. UML and UML tool software. Most UML tool software has functions that convert UML's class diagrams and corresponding code, UML class graph -> code, code generation, code -> UML class diagram process is reverse engineering. I recommend using UML tool software when designing system design. Common UML tools have Rose, Togetherj and Visio 2002, I have used Rose and Togetherj, Rose is not a standard UML language because of many ways, I am not very agreeable with ROSE. I prefer to use togetherj, in the project, I prefer to do design with togetherj, after design, automatically generate the code frame, and use JBuilder to implement the specific method.