Product: Book - Hardcover
Title: Applying UML and Patterns : An Introduction to Object-Oriented Analysis and Design and Iterative Development (3rd Edition)
Publisher: Prentice Hall PTR
Authors: Craig Larman
I recommend that book to everyone I train or work with. After you've read this book, you won't explain OOAD the same way.The formalization of key architecture principles as patterns for distributing responsibilities is the great invention of the book. We knew these principles before (high cohesion, low coupling) but the lack of formalism made it difficult to explain and communicate the consequences in a way that looked rigorous, rational and comprehensive.When teaching OOAD at Rational, I successfully used the GRASP patterns to have the students think early in terms of architecture. Identifying, explaining and using these patterns immediately raises the level abstraction. You have the students be aware that drawing a message from an object to another might be an architecturally significant decision. This decision is based on tradeoffs that in the end configure the attributes of the system in terms of flexibility, maintainability, reuse, etc. Craig made practical and understandable ideas that took so long to be understood before! It turns hackers into "beginner" architects.He also greatly illustrates and warns about the "put-patterns-everywhere" syndrome that we see so often in the field. I also loved how the code samples are introduced progressively...That book will have designers - who believe UML is about drawing pictures of their code - realize why and how they can work differently. Deep thoughts, easy reading: definitely a must read for every OO practitioner or teacher!
Product: Book - Paperback
Title: Borland C++Builder 6 Developer's Guide
Authors: Jarrod Hollingworth, Paul Gustavson, Bob Swart, Mark Cashman
This book isnt really awesome, then again, what technical text is? This is still the definitive works upon the subject of C++Builder, it learns you the neat details about the IDE, it reveals the depths of the API and shows some very interesting techniques on standard C++. It is simply a book written by some very experienced programmers, seasoned in Borlands solutions.
So who would want this book? Well, C++ Primers does not want it unless they have an extreme learningrate, it mainly targets people who know how to write a basic DOS program in C++ and have done some windowsprogramming in Delphi, Pascal or Visual Basic and want to get get the hinch of Windows programming in C++. You should know how C++ works, and you should know how Windows operate (You will get a crashcourse on the latter though -- See the topics on API) and want to tie the two together. Another group that would greatly benefit from it is people accustomed to Microsoft Visual C++ and wants to migrate to Borlands RAD to get more done in shorter time.
If you think you are among these, you really should get this book, it is cunning and it is interesting, it reveals tricks and howtos on advanced topics and is the best book Ive ever seen on programming in Windows.
So why only give it 4 stars? To put it simple, the fact that half the book is on CD only annoys me, and the fact that they crippled it in a stupid format as PDF annoys me even more! I previously bought Visual Basic Unleashed, which had their book in HTML wich was way more convenient. Not as nice looking, but way more convenient.
The fact remains though, this is a very good book, and it is the only book that dwells the depth of C++Builder 5.0 -- If you intend to spend some time working with this, you owe it to yourself to have a copy of this on your shelf.
Product: Book - Hardcover
Title: Unix Network Programming, Vol. 1: The Sockets Networking API, Third Edition
Publisher: Addison-Wesley Professional
Authors: W. Richard Stevens, Bill Fenner, Andrew M. Rudoff, Richard W. Stevens
The book is really great. Most if not all serious UNIX programmers out there have a copy of Stevens books that they hold close to their hearts as well as to their UNIX/Linux machine. This new edition continues the tradition of presenting excellent content and adds on the original Stevens edition with new topics.
There is a number of changes in this new edition that are very important. First the ccoverage of the new SCTP protocol in chapters 9 and 10. Then the coverage of the new IP protocol, IPv6 and its interoperability with IPv4 in chapter 12 and Appendix A.In addition, the coverage of an important feature: POSIX standards which is a single UNIX specification. Plus the extensive coverage of whatever API that exist!
All owners of the previous edition realize the value of this book and the excellent quality of the material it presents. This new edition continues in the same direction with new additional contents. For people who are new to this book, this is a great book on Unix programming, a very well known and respected classic that is a must to have.
A definite recommendation.
Product: Book - Paperback
Title: Lessons Learned in Software Testing
Authors: Cem Kaner, James Bach, Bret Pettichord
We've used "Testing Computer Software" (Kaner/Falk/Nguyen) for years at Microsoft as a beginning tester training guide. "Lessons Learned in Software Testing" is a great additional reference book that will be useful for both beginners and our experienced testers. Every page has great advice from some of the best experts practicing the craft today. I intend to order a copy for everyone on my test teams, and I'll encourage other test groups at Microsoft (and you) to do the same.