Recently I am confused about how to put design patterns into real, effective java code. The book "Concurrent Programming in Java " is recommended by our professor, but I�m afraid it is not down to earth enough, a little bit too academic. It is a great book for the preparation of our exam but quite ineffective for homework. I went to amazon.com and then lost in the book forest ....I have two semesters of java programming experience( in the first semester got the basic of java, in the second semester they taught data structure in java, we wrote methods but seldom whole class), I�d like to get a book that contains many sample codes that I can follow( the professor only teaches concepts without detail in his lecture, but the homework....something like "Design a Bank System then code it in java...." )I got the wrox book "Beginning Java Objects, from concepts to code", it is a great book, I appreciate Ms.Barker very much, and awaiting her next book. But currently I need more examples to accompany my lectures. Could anyone please kindly recommend some books here? Thank you very much!
Hi Ellen, I've found it much easier to find "Patterns into code" books with C++ or even Smalltalk examples rather than Java, although I haven't looked for a while. However, one book that I would recommend checking out is Bruce Eckel's Thinking in Patterns. It's a work in progress and I haven't looked at it for a while but Eckel's is very readable and had plenty of accompanying code and best of all, it can be downloaded free. You can download it from here:- Mindview's Thinking in Patterns site or doing a search will produce lots of mirror sites. Bruce Eckel has written several books which are available to be downloaded for free and I found Thinking in Java really useful when I was learning basic java / preparing for programmer's certification and Thinking in Patterns useful when I started trying to code patterns in Java. Hope this helps and good luck with your courses, Kathy
Ellen, I can recommend "Applied Java Patterns" (2002 Prentice Hall, ISBN 0-13-093538-7), which is in essence a Java port of the GoF book. The website is at http://www.phptr.com/appliedjavapatterns/ I recently attended an all-day seminar given by Robert Martin, CEO of ObjectMentor.com, on the subject of Design Patterns. I asked him about how a novice should approach patterns. His response was basically that patterns books are best used as reference material, in combination with a significant amount of coding experience. It seemed that patterns are mostly useful as a way of communicating design elements and implemenation information among developers. My take-away was that design patterns are not something that you can easily incorporate into your work until after you have an intuitive feel for them. This means being able to sit down with the GoF book and say, "Oh, I've done that before, but I didn't know it had a name." This is not to say, don't read patterns books, but it may be a warning about applying patterns before you have experience with patterns. It seemed a bit "chicken and egg" to me, but Robert has been an expert in this field for as long as there has been a field. Anyway, I did get the "Applied Java Patterns" book, and I do thumb through it on occasion, but I don't go shopping for patterns to apply to my projects. I also got the Core J2EE Patterns book from the same series, but I don't spend as much time with that one. For what it's worth, I was able to gain a solid introduction to the MVC pattern in David Geary's "Advanced Java Server Pages". PCS [ November 05, 2002: Message edited by: Philip Shanks ]
Philip Shanks, SCJP - Castro Valley, CA
My boss never outsources or has lay-offs, and He's always hiring. I work for Jesus! Prepare your resume!
Philip, very good advice! You might also want to take a look at "Refactoring to Patterns" - it's a work in progress, but you can download a draft version at http://www.industriallogic.com/xp/refactoring/ Not only does it concentrate on *when* to apply a pattern why and how, it is also full of step-by-step examples.
The soul is dyed the color of its thoughts. Think only on those things that are in line with your principles and can bear the light of day. The content of your character is your choice. Day by day, what you do is who you become. Your integrity is your destiny - it is the light that guides your way. - Heraclitus