| Average Rating: |
|
| Sales Rank: | 303930 (lower is better) |
| Price Used: | $26.99 |
| Shipping: | Free Shipping on most orders over $25* |
| Availability: | Usually ships in 24 hours |
| Label: | Addison-Wesley Professional |
| UPC: | 785342703696 |
| Pages: | 688 |
| Binding: | Paperback |
| Publication Date: | 2001-04-19 |
| Published By: | Addison-Wesley Professional |
| ASIN: | 0201703696 |
| Category: | Book |
This book does a beautiful job of collecting and organizing Parnas' papers. Each paper is preceeded by an introduction from a peer or other recognized prominent computer scientist. Almost all of these introductions are insightful in themselves: they help create a context for the essay which made it easier for me to fill in the gaps. Almost all of the contributors' writting styles are lucid and easy to read. I found reading through this book quite enjoyable.
Parnas' contributions are critical, no doubt. The concept of Information Hiding as a criteria for modular decomposition really helped form modern "object-oriented" thinking. It seems to me that returning to the first well-formed idea can often grant insights into how to be more effective with its offspring. Indeed, Chapter 7 in this text is essentially a primer on how to think in object-oriented terms.
You'll not find a passage that reads, "now here's an example of that in Java/C#/C++" But that's the blessing: Parnas communicates the essence of the principles that yield quality software engineering without getting lost in unnecessary details. The fact that some of these papers were written 30 years ago helps bring home the fact that novel ideas are rare.
One aspect of 30 year-old writtings that may be a stumbling block for similarly aged programmers is that these works live in an iron world: where programs lived very close to their hardware. Parnas uses phrases like "4 bytes packed in a word" and "core" that seem primal (not to say that some folks aren't concerned with word-sizes and which endian, just that the overall percentage is much lower). For some, this may seem to be a waste of time to try to understand. I encourage the reader to ferret out the bigger message...the more abstract picture of principles that guide one to conceive, organize, implement and document quality software.
If you are a journeyman programmer looking for the original latin, enjoy this well-polished collection for yourself.
This book reprints 33 of Parnas' most influential papers. Each paper is started off with an introduction from one of Parnas' peers (like Barry Boehm), giving the paper a connection to the modern state of Software Engineering, and trying to give the reader an understanding of just how seminal the particular paper was to the world of Computer Science and Software Engineering.
I believe you become a much better programmer if you understand where things come from. Once you understand how things were before "Information Hiding" came about, you get a better appreciation for why its such a necessary and important practice. You'll become a better programmer because you're more aware of what would happen if you didn't have exception handling. And you'll be come a better writer when you understand why buzzwords can be so dangerous in technical papers.
Dave Parnas has been a huge influence over the world of Software Engineering. Everyone should have the chance to read his work.