Which C++ books are recommended?

I

Immortal Nephi

I have been through study by reading How to Program C++ by Deitel 6th
Edition. I believe that it has very little information to explain
design patterns.
I want to expand more knowledge of better understanding how Design
Patterns is used with Object-Oriented Programming. I don’t find any
good books.
ATM example teaches how to use UML 2.0 and write several base
classes, one inheritance and polymorphism. ATM is the base class.
Screen, Keypads, Cash Withdrawal, and Deposit Slot are base classes
and they have compositions to be placed in ATM’s base class.
Think of creating more subclasses. The screen’s base class is good
example. I might want to build more subclasses and add more member
functions and data members to all subclasses. They are private
subclasses inside screen’s base class.
We discussed gigantic class post earlier. Screen’s base class might
become gigantic class. I am able to extract gigantic class into
subclasses by using refactoring.
I want to learn how to use Design Patterns and Refactoring. Here are
two books below. I am not sure if they are the right books. If not,
please make the list which books do you recommend me to study more.

Object-Oriented Computation in C++ and Java: A Practical Guide to
Design Patterns for Object-Oriented Computing by Conrad Weisert

Refactoring: Ruby Edition (Hardcover) by Jay Fields
 
N

nick

        I have been through study by reading How to Program C++ by Deitel 6th
Edition.  I believe that it has very little information to explain
design patterns.
        I want to expand more knowledge of better understanding how Design
Patterns is used with Object-Oriented Programming.  I don’t find any
good books.
        ATM example teaches how to use UML 2.0 and write several base
classes, one inheritance and polymorphism.  ATM is the base class.
Screen, Keypads, Cash Withdrawal, and Deposit Slot are base classes
and they have compositions to be placed in ATM’s base class.
        Think of creating more subclasses.  The screen’s base class is good
example.  I might want to build more subclasses and add more member
functions and data members to all subclasses.  They are private
subclasses inside screen’s base class.
        We discussed gigantic class post earlier.  Screen’s base class might
become gigantic class.  I am able to extract gigantic class into
subclasses by using refactoring.
        I want to learn how to use Design Patterns and Refactoring.  Here are
two books below.  I am not sure if they are the right books.  If not,
please make the list which books do you recommend me to study more.

Object-Oriented Computation in C++ and Java: A Practical Guide to
Design Patterns for Object-Oriented Computing by Conrad Weisert

Refactoring: Ruby Edition (Hardcover) by Jay Fields

The book "Design Patterns Explained: A New Perspective on Object-
Oriented Design" gives a good overview of what design patterns are,
explains in detail some common design patterns, talks about UML class
and interaction diagrams, etc. The code examples are in Java but they
translate to C++ easily. It's a good read for someone just getting
familiar with design patterns.
 
N

Nick Keighley

        I have been through study by reading How to Program C++ by Deitel 6th
Edition.  I believe that it has very little information to explain
design patterns.
        I want to expand more knowledge of better understanding how Design
Patterns is used with Object-Oriented Programming.  I don’t find any
good books.
        ATM example teaches how to use UML 2.0 and write several base
classes, one inheritance and polymorphism.  ATM is the base class.
Screen, Keypads, Cash Withdrawal, and Deposit Slot are base classes
and they have compositions to be placed in ATM’s base class.

        Think of creating more subclasses.  The screen’s base class is good
example.  I might want to build more subclasses and add more member
functions and data members to all subclasses.  

why are you adding more member functions/data to the screen base
class?

They are private
subclasses inside screen’s base class.

that sounds odd. Why would am embedded class be a derived class?
        We discussed gigantic class post earlier.  Screen’s base class might
become gigantic class.

only if you let it. How many different things can a screen in an ATM
do? If it adds something really weird like 3D or smell I'd say it was
time to reorganise your design.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,769
Messages
2,569,580
Members
45,054
Latest member
TrimKetoBoost

Latest Threads

Top