Re: C++ and Design certification
* James Kanze:
UML and C++ complement each other, and I would never start
coding an application without having done some design (in UML)
first.
I don't like the way UML is abused because the idea of a conforming
rigidly to a standard notation is in direct conflict with the need to
express higher level concepts, and because it's an ungood compromise
(the "U" is the unification of Booch notation and two others whose names
escape me right now). Also, the tool support is still very poor, or
alternatively, tools (e.g. Rational Rose licenses) are not exactly
cheap. But, some UML-like illustrations, and UML generated from code,
can sometimes be nice.
C++ is, first and foremost, and implementation tool, not
a design tool.
Depends what you mean by design. There are many levels and shades of
purity of design. And design does absolutely not need to be only
annotated graphics created via an UML-based tool (limiting oneself that
way would be like donning a straightjacket before starting the job).
About "programming in C++ is all about design": read up on what e.g.
books like "Modern C++ Design" are all about.
About the only "design" in "Modern C++ Design" is in the title.
I think Andrei would disagree, since presumably he chose the title... ;-)
The book is mainly about implementation techniques; any design
considerations are limited to low level interface design, or
detailed design of specific components. C++ design, in sum, and
not application design. (E.g. how to design a shared pointer,
but not when to use one.)
They're 95% about C++ code. Much of the design is driven by
considerations of C++ code safety, efficiency, portability,
maintainability, and so forth, and not the least, C++ code
clarity -- maximize, and you have a good design.
You need high level design first.
There are many levels of design. "Design" by itself means the whole
thing. And does not imply a phase in a waterfall methodology.
--
A: Because it messes up the order in which people normally read text.
Q: Why is it such a bad thing?
A: Top-posting.
Q: What is the most annoying thing on usenet and in e-mail?