Re: How to learn software design
In article <96e36a6a-ae39-4fe6-9369-8cdc4adc5689@p8g2000yqb.googlegroups.com>, James Kanze <james.kanze@gmail.com> wrote:
On Dec 19, 7:54 pm, Saeed Amrollahi <amrollahi.sa...@gmail.com> wrote:
On Dec 19, 12:48 pm, e...@boese-wolf.eu (Eric B=F6se-Wolf) wrote:
I know it is off topic, but maybe someone could give me a
hint for a good book or few tips on learning software
design.
With software design I mean the step from the requirements
to some sort of software architecture.
Besides what other said, I want to name a book about
(object-oriented) software design. Recently, I re-read Object
Solutions by Grady Booch. It's practical and great.
Are there recent editions. I learned OO from it (and yes, it's
an excellent book), but that was a long time ago. The edition I
read still used cloud diagrams, and talked about Ada, rather
than Java, as C++'s concurrent.
A few months ago I read an article on debugging/logging by
Denis Ritchie (one of creators of C language).
What a pleasure that was!
He was presenting his argument regarding debugging vs logging.
What he said essentiall was this:
Lots of people tend to use debugging to fix the issues
with their code. As a result, they tend to get lost in tasty
local scope issues and can not see the whole picture easily.
He suggested to use a well designed logging system instead
of relying on debuggers as much.
Because a well designed logging system will immediately
expose your most critical system level issues,
while debugging will keep you busy for days looking at the
local scope variables or what have you.
What an insight.
It is like listening to 6th symphony of Tchaikovski,
compared to all the blabber all over the place,
which is nothing more than a noise in most cases.
--
Programmer's Goldmine collections:
http://preciseinfo.org
Tens of thousands of code examples and expert discussions on
C++, MFC, VC, ATL, STL, templates, Java, Python, Javascript,
organized by major topics of language, tools, methods, techniques.