www.4FipS.com]-      
[ FipS' NEWS ]-

 ABOUT FipS =
[ START HERE ]=
[ PROFILE ]-
[ GUESTBOOK ]-
[ FORUMS ]-

 COMPUTERS=
[ CODING ]-
[ FipS' CODE ]-
[ FSHUB ENG. ]-
[ OLD STUFF ]-

 ART & CG =
[ CG ART ]-
[ ARTWORKS ]-

 PHOTO =
[ * ABOUT ]-
[ SERIES ]-
[ SHOTS ]-
[ PANORAMAS ]-
[ MACROS ]-
[ TIMELAPSE ]-

OOP - UML Introduction

C++ --->
[ C++ Tips, rev. 2006-05   /   ]
[ C++ Collected Wisdom, rev. 2006-09 ]
[ C++ Smart Pointers, rev. 2005-01 ]
OOP / Pragmatic UML --->
[ UML Introduction, rev. 2006-06 ]
[ UML Class Diagrams, rev. 2006-06 ]

Visitor Map      
= LINKS 
-[ CODING ]
-[ C++ ]
-[ GAME DEV ]
-[ GRAPHICS ]
-[ MATH ]
-[ LIBS ]
-[ PYTHON ]
-[ MOBILE ]
-[ FREE TOOLS ]

-[ CG ART ]
-[ PHOTO ]
-[ LEARN ENG ]

-[ E FRIENDS ]
-[ SELECTED ]
-[ MISC ]

= DUMPED 
-[ 2010 ] [ 07 ]
-[ 2009 ] [ 06 ]
-[ 2008 ] [ 05 ]


UML Introduction : rev. 2006-06-13 by FipS

For a programmer it is fundamental to know a programming language. Often, it is the only thing you need to develop a software application. However, when applications become huge or complicated, it is time to sit and plan a bit before one starts coding. There are many approaches to the process. It is usually necessary to involve some kind of hand-written diagrams to figure out the overall design.

Those personal diagrams are OK and help one to face the complexity. The real problem arises when there are more developers involved in the design / implementation process. Then it is convenient to introduce some common notation. At present it is worth taking a look at [ UML ] (Unified Modeling Language).

If you come across the UML for the first time it could be quite confusing. Especially for a pragmatic programmer all those UML diagrams might seem rather vague. Of course, it is the purpose of UML to hide low-level details for the most part, however If you want to discuss the design with skilled persons I prefer to be much more concrete (as is possible in personal diagrams).

The motivation for the following chapters is to take a look at UML from the C++ programmer's point of view. I will try to find connections between C++ and UML constructs and hopefully be able to express low-level details. For that purpose, I have chosen a great UML tool. It is [ BOUML ] by Bruno Pagès. It is fast, free and I am pleased that I have been even able to force BOUML to generate std::vector-like code...

Finally, I would like to point out that I am not an UML expert! Everything presented here is a product of my effort to understand and take advantage of UML in my everyday programming.

[ Comments here... ]
Jun, 2006 - UML Introduction - (c) Filip STOKLAS (FipS) - [ www ][ Guest Book ]