A good Java (not enterprise) code design book?

Discussion in 'Java' started by richardsosborn@gmail.com, Mar 9, 2006.

  1. Guest

    I've been through some:

    - "Thinking in Java"
    - "Patterns in Java"
    - "Java Pitfalls"

    I'm looking for something that covers hardcore OO, code
    design and some conventions, entirely in Java. (IE
    "Thinking in Java II"?)

    I was trying to stay away from anything with J2EE,
    enterprise application, EJB, JMS, Struts, JDBC, etc..

    Just memory, the heap, the creation of objects, mutability,
    abstraction, coding to interfaces, refactoring, overloading,
    everyday optimizations and shortcuts.
    , Mar 9, 2006
    #1
    1. Advertising

  2. Rastislav Komara, Mar 9, 2006
    #2
    1. Advertising

  3. wrote:
    > I've been through some:
    >
    > - "Thinking in Java"
    > - "Patterns in Java"
    > - "Java Pitfalls"
    >
    > Just memory, the heap, the creation of objects, mutability,
    > abstraction, coding to interfaces, refactoring, overloading,
    > everyday optimizations and shortcuts.


    There are some other books you could be interested in:

    ** Effective Java™: Programming Language Guide
    ** Bitter Java
    *Java Design: Building Better Apps and Applets
    Java™ Design Patterns: A Tutorial
    *Head First Design Patterns (A more practical intro to
    the design patterns of Gamma, Helm)
    Better, Faster, Lighter Java
    ** Refactoring
    Anti Patterns
    Applying UML and patterns


    An Introduction to Object-Oriented Programming, 3e
    Not just java, but pure an oo concept book.

    /tom
    tom fredriksen, Mar 9, 2006
    #3
  4. mgungora Guest

    +1 for Effective Java
    mgungora, Mar 10, 2006
    #4
  5. wrote:
    > I've been through some:
    >
    > - "Thinking in Java"
    > - "Patterns in Java"
    > - "Java Pitfalls"
    >
    > I'm looking for something that covers hardcore OO, code
    > design and some conventions, entirely in Java. (IE
    > "Thinking in Java II"?)
    >
    > I was trying to stay away from anything with J2EE,
    > enterprise application, EJB, JMS, Struts, JDBC, etc..
    >
    > Just memory, the heap, the creation of objects, mutability,
    > abstraction, coding to interfaces, refactoring, overloading,
    > everyday optimizations and shortcuts.
    >

    Effective Java (reviewed here:
    http://www.techbookreport.com/tbr0036.html). Also take a look at the
    recommendations for intermediate/advanced Java titles at TechBookReport
    (http://www.techbookreport.com/JavaIndex.html)
    TechBookReport, Mar 10, 2006
    #5
  6. Alex Hunsley Guest

    tom fredriksen wrote:
    > wrote:
    >> I've been through some:
    >>
    >> - "Thinking in Java"
    >> - "Patterns in Java"
    >> - "Java Pitfalls"
    >>
    >> Just memory, the heap, the creation of objects, mutability,
    >> abstraction, coding to interfaces, refactoring, overloading,
    >> everyday optimizations and shortcuts.

    >
    > There are some other books you could be interested in:
    >
    > ** Effective Java™: Programming Language Guide
    > ** Bitter Java
    > *Java Design: Building Better Apps and Applets
    > Java™ Design Patterns: A Tutorial
    > *Head First Design Patterns (A more practical intro to
    > the design patterns of Gamma, Helm)
    > Better, Faster, Lighter Java
    > ** Refactoring
    > Anti Patterns
    > Applying UML and patterns


    A good list of good books...
    I would add "Elements of Java style" or similar.
    (Also the Sun Java coding conventions are worth a look, which
    aforementioned book is quite close to.)
    Alex Hunsley, Mar 10, 2006
    #6
  7. Alex Hunsley Guest

    wrote:
    > I've been through some:
    >
    > - "Thinking in Java"
    > - "Patterns in Java"
    > - "Java Pitfalls"
    >
    > I'm looking for something that covers hardcore OO, code
    > design and some conventions, entirely in Java. (IE
    > "Thinking in Java II"?)
    >
    > I was trying to stay away from anything with J2EE,
    > enterprise application, EJB, JMS, Struts, JDBC, etc..
    >
    > Just memory, the heap, the creation of objects, mutability,
    > abstraction, coding to interfaces, refactoring, overloading,
    > everyday optimizations and shortcuts.


    Not a Java specific book, but I'd seriously recommend "The Pragmatic
    Programmer" to any programmer.

    http://www.pragmaticprogrammer.com/


    Also, just to be on the controversial and off-topic side, have you heard
    of Beyond Java?
    http://shorterlink.com/?R24N66

    (original link is:
    http://www.amazon.co.uk/exec/obidos...8-1/ref=sr_8_xs_ap_i1_xgl/026-5425601-5314860)
    Alex Hunsley, Mar 10, 2006
    #7
  8. Guest

    Rastislav Komara escreveu:

    > There is only one hardcore choice :D... Design Patterns: Elements of
    > Reusable Object-Oriented Software by Erich Gamma, Richard Helm, Ralph
    > Johnson, John Vlissides a.k.a GoF
    >
    > http://www.amazon.com/gp/product/0201633612/002-5490581-6661627?v=glance&n=283155


    That book is 11 years old now, before uml, with examples in c++ and
    smalltalk. There's a java book that covers those same 23 patterns:

    http://www.amazon.com/exec/obidos/tg/detail/-/0201743973?v=glance

    I didn't like the book when I bought it - but over the 4 years since it
    has grown on me.

    HTH,
    Robert
    http://www.braziloutsource.com/
    , Mar 10, 2006
    #8
  9. Alex Hunsley Guest

    wrote:
    > Rastislav Komara escreveu:
    >
    >> There is only one hardcore choice :D... Design Patterns: Elements of
    >> Reusable Object-Oriented Software by Erich Gamma, Richard Helm, Ralph
    >> Johnson, John Vlissides a.k.a GoF
    >>
    >> http://www.amazon.com/gp/product/0201633612/002-5490581-6661627?v=glance&n=283155

    >
    > That book is 11 years old now, before uml, with examples in c++ and
    > smalltalk. There's a java book that covers those same 23 patterns:
    >
    > http://www.amazon.com/exec/obidos/tg/detail/-/0201743973?v=glance
    >
    > I didn't like the book when I bought it - but over the 4 years since it
    > has grown on me.
    >
    > HTH,
    > Robert
    > http://www.braziloutsource.com/


    GoF is slightly dated now, it's true, but still a good reference.
    The nice thing about the Head First design patterns book is that it
    sometimes covers more details than the GoF book. For example: the head
    first book's coverage of Singleton talks about threading issues.
    Alex Hunsley, Mar 10, 2006
    #9
  10. Chris Uppal Guest

    wrote:

    > That book [GoF] is 11 years old now,


    ....which hardly matters at this level of abstraction...

    > before uml,


    ....and is all the better for that !

    But I agree it's not a book to learn advanced Java from.

    (Actually, I don't think GoF -- or any "pattern" book is a book to learn design
    skills from in any language. You don't learn design by digesting reams of
    patterns, you learn design by designing and by using other peoples designs.
    Patterns are there to help you organise and communicate what you learn, not a
    short-cut to learning itself.)

    -- chirs
    Chris Uppal, Mar 10, 2006
    #10
  11. Roedy Green Guest

    On Fri, 10 Mar 2006 13:56:52 -0000, "Chris Uppal"
    <-THIS.org> wrote, quoted or indirectly
    quoted someone who said :

    > You don't learn design by digesting reams of
    >patterns, you learn design by designing and by using other peoples designs.
    >Patterns are there to help you organise and communicate what you learn, not a
    >short-cut to learning itself.)


    I think the human brain is designed to learn by abstracting from many
    examples rather than by learning abstract rules and applying them.

    Mathematicians of course do their damndest to avoid mentioning
    concrete examples. They are the devils work, special cases that can
    lead you astray with assumptions that don't really hold as generally
    as you imagine.

    --
    Canadian Mind Products, Roedy Green.
    http://mindprod.com Java custom programming, consulting and coaching.
    Roedy Green, Mar 10, 2006
    #11
  12. Timo Stamm Guest

    Chris Uppal schrieb:
    > wrote:
    >
    >> That book [GoF] is 11 years old now,

    >
    > ...which hardly matters at this level of abstraction...
    >
    >> before uml,

    >
    > ...and is all the better for that !
    >
    > But I agree it's not a book to learn advanced Java from.
    >
    > (Actually, I don't think GoF -- or any "pattern" book is a book to learn design
    > skills from in any language. You don't learn design by digesting reams of
    > patterns, you learn design by designing and by using other peoples designs.
    > Patterns are there to help you organise and communicate what you learn, not a
    > short-cut to learning itself.)



    I agree.


    From the preface of "Design Patterns":

    | This boook isn't an introduction to object-oriented technology or
    | design.


    The largest part of the book is a catalog of design patterns. I believe
    it was the first book to serve as a reference of standard reusable
    elements, and it did a great job. When we are talking about the
    "facade", we are talking about the design pattern defined by the GoF. I
    think this is a great achievement, because it makes communication
    between programmers a lot easier.



    Timo
    Timo Stamm, Mar 10, 2006
    #12
    1. Advertising

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

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Replies:
    3
    Views:
    551
  2. Replies:
    3
    Views:
    399
    Tom Dyess
    Jan 20, 2005
  3. Replies:
    2
    Views:
    582
    Tom Dyess
    Jan 20, 2005
  4. wallge
    Replies:
    5
    Views:
    617
    Bill Mills
    Jan 24, 2007
  5. vasudevram
    Replies:
    0
    Views:
    222
    vasudevram
    Apr 15, 2007
Loading...

Share This Page