Rating: ![4 stars](http://www.reviewfocus.com/images/stars-4-0.gif) Summary: Orientates a Person to Programming Review: This book is good in that it explains in simple terms what designing programs is about. Design tools such as pseudocode, Nassi-Schneiderman diagrams, flowcharts, etc. which is good for the procedural way of thinking. Only two chapters that teaches the reader about object-oriented. As such, this book will help the reader more in the traditional approach of problem solving than the object-oriented way. I do not see two chapters as providing a solid, practical grounding for developing object-oriented solutions. Furthermore, there are no "Suggested solutions to selected questions". While it is true that there are different ways to solve a problem or expressing the solution, providing some "Suggested solutions" may, in effect be also providing further understanding if the solutions points out possible pitfalls or aspects which the student may overlook and thus produce something that isn't quite correct.I think the book is not good at covering desk-checking. It is constructed in such a way that allows the checker to make mistake as to which step is under consideration or inspection. The first column of the desk-check table (or dry-run table) is labelled as "Statement" and under this column, "Read", "If", "Print", etc. appears. It would be better to number the lines in pseudocode (which can easily be done) and label the 1st column of the table as "Step No." so as to allow easy, and less error-prone cross-checking. The other area that can be improved is "Appendix 3: Special Algorithms". It attempts to explain Bubble Sort, Insertion Sort and Selection Sort without using examples. Unsorted arrays with numbers and diagrams to show the swaps in the passes would be useful. This is done in many programming and algorithm design books. It is a pity that it is not done here. It would certainly support the textual explanation. With this minor blemishes, it is still a very good book to teach people who do not know programming to get a good feel of how to think to solve programming problems in a computer language independent way. The teacher is the key to making this book useful as a concise text to the topic of program design. For example, the teacher can show a example of improper identation in pseudocode which may not be obvious to the beginner and explain why it is incorrect the consequences of it. Things like an "else" belongs to the nearest "if" should be highlighted. The book does not show an example, it merely states that it is important to indent pseudocode properly. Overall, it is still a good text.
Rating: ![4 stars](http://www.reviewfocus.com/images/stars-4-0.gif) Summary: Too Much Psuedo, Too Little Code Review: This is a great book for learning algorhithm design, but the text is *very* English like. The problem with psuedo-code is that there is no standard. The psuedo we used in class was much more C/Java like. On the plus side, I doubt anyone would buy this book for a Saturday read or their bookshelf...I had to have it. I don't regret the purchase one bit.
Rating: ![5 stars](http://www.reviewfocus.com/images/stars-5-0.gif) Summary: Reading this book is the best way to learn how to program Review: This is the best book I have found about learning how to program. I have read lots of books about specific programming languages but I never felt like I understood how to program until I read this book. This book is great because it explains the fundamentals of programming in a way that makes it easy to learn any other language. If a person wants to learn to program they should get a reference for whatever language they intend to program in such as one of the O' Reilly or WROX books on Visual Basic or Java and a copy of this book. I have been doing a lot of database related programming and I found that the way this book explains program design helps in database oriented applications as much as it does in desktop VB or Java applications.
Rating: ![4 stars](http://www.reviewfocus.com/images/stars-4-0.gif) Summary: good first book Review: This was a requirement to read in my CS1 class before we ever stepped foot into a C++ book. Now several classes later I can understand the importance of the good algorithm design that this book enforces. This book required no experience in programming what so ever. Those with experience may find it a little boring to read but may also find themselves referring back for examples.
Rating: ![4 stars](http://www.reviewfocus.com/images/stars-4-0.gif) Summary: good first book Review: This was a requirement to read in my CS1 class before we ever stepped foot into a C++ book. Now several classes later I can understand the importance of the good algorithm design that this book enforces. This book required no experience in programming what so ever. Those with experience may find it a little boring to read but may also find themselves referring back for examples.
Rating: ![4 stars](http://www.reviewfocus.com/images/stars-4-0.gif) Summary: Pretty good for beginniners Review: This was my first time reading any kind of programming book. This does a good job at introducing programming logic simply, and gradually getting more difficult. The exercises at the end of each chapter are helpful as well. I didn't find the book extremely challenging. If you're a fairly analytical thinking person, the logic should make sense. I had to purchase this for a class - but I'd recommend it.
Rating: ![4 stars](http://www.reviewfocus.com/images/stars-4-0.gif) Summary: Pretty good for beginniners Review: This was my first time reading any kind of programming book. This does a good job at introducing programming logic simply, and gradually getting more difficult. The exercises at the end of each chapter are helpful as well. I didn't find the book extremely challenging. If you're a fairly analytical thinking person, the logic should make sense. I had to purchase this for a class - but I'd recommend it.
Rating: ![3 stars](http://www.reviewfocus.com/images/stars-3-0.gif) Summary: Started out good. Review: Well, I'm taking this book as a start to a computer programming course. It is written very basic. And starts the reader out on how to organize program problems to make solutions. However, by the half way point the book jumps from being the basic book it started with to almost a professional additude. And starts to make generalizations on how problems will be handled. It no longer checks the solutions or clarified why things are written the way they are. And as I'm using this as a text book the solutions to the problems in the book just about blow me away. The problems are written generally, and the solutions make assumptions that are not outlined in the problem. It sort of gave me a sick feeling in the pit of my stomach. And I said to myself, I would never have thought of all these things to add. It is hard book to learn a simple process to solving problems. it didn't have to be that complicated.
|