This week's book giveaway is in the General Computing forum. We're giving away four copies of Arduino in Action and have Martin Evans, Joshua Noble, and Jordan Hochenbaum on-line! See this thread for details.
Any opinions on the best approach to learning to properly apply patterns to your projects? Any personal stories about patterns and how they have helped your programming skills?
A good way to learn patterns (as well as many other programming concepts) is to form a study group. I recommend getting a bunch of classmates or co-workers together. Barring that, you can find or start your own group (which is also a good way to network). Check out this thread for more info http://www.javaranch.com/ubb/Forum5/HTML/000048.html --Mark
Someone else mentioned a study group, and something like this can be important. The reason is that if you are the lone-wolf on your project trying to use patterns you won't get very far. At a minimum, you need to think about how to get not just yourself involved, but the other members of your team as well. Dave
Originally posted by Andrew Shafer: Any opinions on the best approach to learning to properly apply patterns to your projects? Any personal stories about patterns and how they have helped your programming skills?
I highly recommend the vanguard book, Design Patterns, by the Gang of Four (Gamma, Helm, Johnson, and Vlissides). In addition, I would read some Java publications, such as Java Pro and Java Developers Journal. Incidentally, Java Pro has a column written by the author of Java Design Patterns, James Cooper. Also, I have read articles in the Java Report written by Vlissides and read articles in Java Developers journal by the others of the J2EE patterns book.
As for a strategy for learning patterns, if possible, I would try to find a mentor who knows what they are talking about and learn as much as possible from them. Study groups is a great idea too!
Fei Ng
Ranch Hand
Joined: Aug 26, 2000
Posts: 1241
posted
0
Design Patterns Explained: A New Perspective on Object-Oriented Design by Alan Shalloway, James R. Trott and Design Patterns, by the Gang of Four (Gamma, Helm, Johnson, and Vlissides) side by side is the best bet. This is my path and it is a pretty well path. I am going for Refactoring next. Refactoring by by Martin Fowler, et al good luck [This message has been edited by FEI NG (edited November 15, 2001).] [This message has been edited by FEI NG (edited November 15, 2001).]
Wilfried, that is just marvelous advantage. Not only because it is free, also because I was today for book shopping and could not find GoF, and they could not find it even in PC. I also could not find (I only started looking for) free book on UML in the Internet (except some very primitive/short articles/manuals). Any links on free UML (not jsut rudimentary) books/manuals? FEI NG, can you give more conventional reference, at least authors, for that igniting book?
[This message has been edited by G Vanin (edited November 15, 2001).]
I'm a big fan of Effective Java (bunkhouse link) by Joshua Bloch. It isn't a Patterns book as such, but my view is that it provides a nice introductory bridge between writing and designing. Rather than coming out and teaching patterns, it has a bunch of helpful programming solutions that just happen to include patterns information. The first section talks about constructors and different ways to handle them. During the discussion it talks about private constructors and leads into Singletons and Factories, with a mention of other creational patterns. So, if you're looking for a book on patterns, buy a book on patterns (like this week's promo ). But if you just want a foothold on pattrens while also buying a real useful book, I'm a fan of Effective Java. Dave.
Originally posted by G Vanin: It is not free and not on UML
Except that the original topic is:
Any opinions on the best approach to learning to properly apply patterns to your projects? Any personal stories about patterns and how they have helped your programming skills?
Changing the topic mid-thread wouldn't be fair to Andrew. To answer your question: Gee, if only there were some way of searching... Dave.