Home :: Books :: Computers & Internet  

Arts & Photography
Audio CDs
Audiocassettes
Biographies & Memoirs
Business & Investing
Children's Books
Christianity
Comics & Graphic Novels
Computers & Internet

Cooking, Food & Wine
Entertainment
Gay & Lesbian
Health, Mind & Body
History
Home & Garden
Horror
Literature & Fiction
Mystery & Thrillers
Nonfiction
Outdoors & Nature
Parenting & Families
Professional & Technical
Reference
Religion & Spirituality
Romance
Science
Science Fiction & Fantasy
Sports
Teens
Travel
Women's Fiction
Smalltalk, Objects, and Design

Smalltalk, Objects, and Design

List Price: $44.00
Your Price:
Product Info Reviews

<< 1 >>

Rating: 5 stars
Summary: Like the title, this book is pure distilled information
Review: "Smalltalk, Objects, and Design" is such a simple and unexciting title, and yet that's what this book is, in its entirety. This book will teach you about Smalltalk, it will teach you about objects (using Smalltalk as the medium, but you will learn much about Object Oriented programming that is applicable in any language), and it will teach you about good design principles.

It is written in clear, straightforward prose. In each chapter, the author presents a new idea, discusses the reason for that idea and its implementations (and often discusses several alternative solutions to a given problem that have been adopted historically or in other languages, as well), then gives some concrete examples, some exercises to reinforce the point, and then summarizes. I learned a lot of things in this book that I only vaguely understood before. How garbage collection works. How Smalltalk really accomplishes "everything is an object." What "weak references" are and how to use them. How the Model-View-Controller framework works. There are good discussions about inheritance and how to avoid overusing it, implementation of polymorphism, reifying methods, and so on. Good, meaty stuff especially for the beginning OO programmer.

This book talks about Smalltalk from a design perspective, so while there is an introduction to Smalltalk and a lot of examples to help you learn, it really isn't intended to teach the language. If you have no Smalltalk experience at all, the book will teach you enough to follow along, but you'll want another book to go further in the language. It is fairly implementation-neutral; the author uses IBM's VisualAge for his examples, but he provides tables and footnotes when it's necessary to point out the differences with other Smalltalk implementations such as VisualWorks, and as a VisualWorks user myself, nothing in this book threw me off.

Objects are explained in great detail, starting with the hierarchy (in Smalltalk), what classes really are, how inheritance really works, "buying" vs. "inheriting" (i.e., "has-a" vs. "is-a"), abstract classes, Containers, polymorphism, and many other crucial OO concepts. Again, it's focused on Smalltalk but if you do OO-programming in Java or C++ or some other language, there is a lot here that will be useful to learn (and the author even adds footnotes here and there commenting on how certain things are done in C++ or other languages).

The design chapters are good, though not as thorough, as software design is really a vast subject requiring many books in its own right. The author gives brief treatment of a lot of practices covered in much more detail in other books; for example, there is a chapter on design patterns, much of which is adapted from the famous "Gang of Four" book "Design Patterns" (Gamma, Helm, Johnson, and Vlissides). The author talks about CRC cards, UI design, software engineering practices, frameworks, and other topics that can't really be done justice in a chapter each.

If I were teaching a class in Object-Oriented Programming, I would use Smalltalk as the language to teach basic OO concepts, and I would use this book as the text. Even if I had to use Java as the teaching language, I would find a good Java-based book on OO-programming, and supplement it with this one.

The final chapter, "Why Developing Software is Still Hard," was the author's opportunity to digress, and is worthwhile for all new programmers to read. Basically, there is a lot of Object-Oriented Kool-Aid out there, and if you take this chapter to heart, you'll avoid drinking some of it.

Rating: 5 stars
Summary: Good explanations too OOP
Review: I bought this book as I was embarking on a Object Oriented Software development course. The focus of the course was mostly on the theory of OOP rather than a language itself but Smalltalk was used as the vehicle to convey the ideas in practice.

For this reason, I chose Chamond Liu's book. What a good choice that was. His explanation on the OOP concepts coupled with the technicalities of the Smalltalk language made this book ideal for my requirements. It's something about his clear, yet informal style that makes this book seem, not like an academic reference but more like a friend, explaining new ideas over a cup of coffee.

This book helped me to consolidate my understanding of OOP concepts and also to build on my knowledge of Smalltalk.

Rating: 5 stars
Summary: Clear and succinct
Review: I found this book because I wanted to learn Squeak (a dialect of SmallTalk) and I bought it because it rated so high on Amazon.com. This is the best technical book I have ever read. It is clear and succinct. Its IBM SmallTalk examples ran fine on Squeak (GUI component examples excepted) and its clear style made me understand a lot of concepts that were taught to me years ago, but that I never really understood until now.

Rating: 5 stars
Summary: One of The Very Best
Review: I have always been reading reviews before buying a book from Amazon, and those reviews helped me greatly. I have long been thinking that I should give some back to my fellow readers by contributing to reviews on the site, yet I was busy and lazy, until one book knocked off my feet. "Smalltalk, Object and Design" is this book! It is worthy the praise of being a classic. As an OOP programmer, I am always aware of smalltalk but never actually used it. Yet smalltalk has such a venerable status in OOP language evolution, and I almost felt that without having at least some idea about that language, one can not fully understand all other OOP languages at work and put them in perspective. That is the reason that I started to search for a smalltalk introductory book, even though I don't plan to study smalltalk for living. Liu's book came on top, and I couldn't be happier after reading it. The book does contain a very concise introduction about smalltalk, yet the gem of the book is really about OO design and practise. It touches the OO topics and philosophy in such a deepth and breadth that is rarely seen in other publications, not to mention the pleasant wonder from author's lucid writing style that put all that invaluable insight in just about 300 pages. As a programmer, you owe yourself a chance to read this invaluable work, and we all owe author for writing such an excellent text.

Rating: 5 stars
Summary: The Best Beginner Book on O-O Design & Programming
Review: Mr. Liu has done a great service to the software development community by writing a clear, concise, approachable book on O-O Design & Programming. Thank you, Mr. Liu.

Many old-timers and not-so-old-timers in the profession have been trained under the so-called "Structured-Procedural" development discipline, and many are having a difficult time handling the huge paradigm shift. The learning curve is just too steep, as my own experience has shown.

As an old colleague of mine told me once, the main stumbling block in moving to Java, a popular language today, is developing a solution that's "object-oriented." One can very easily write "Pascalese" code in Java. (Of course, you can do the same in Smalltalk or C++.)

Mr. Liu's book takes one step-by-step through short chapters that can be read in 1 sitting or 2. Interspersed in the chapters are exercises to challenge the reader and scratch his head a little. These has greatly assisted me for one in understanding the topics.

A sampling of important items/lessons in the book: 1. What is the Programming Object (as opposed to programs & data-structures)? 2. Subtypes vs. Subclasses 3. Consistency and Polymorphism 4. Design Patterns "demystefied" (this book should prepare one to approach the G4 Design Patterns book with confidence)

I have always thought that the key to teaching oneself effectively, is getting hold of a good and right book for one's learning style. This could be also the right one for you.

A note on the author's use of Smalltalk: It should not really matter that it is not Java or C++. You can easily move on to them once you've grasped what Smalltalk, Objects and Design is all about.

-From an original SP-programmer turned OO-developer

Rating: 3 stars
Summary: High Fog Index
Review: Ok, its not THAT old, but software moves fast. And Liu was downplaying 'implementation inheritance' before most people understood that there was a problem with it. One of the few books out there that really explains objects, why they work, and how to work with them without shooting yourself in the foot. The book is honest about where objects work, and is not a 'rah-rah objects rock!' type book at all. Liu uses smalltalk as the language to discuss object oriented programming and design, but this is not a book just for Smalltalkers (although it does introduce you to smalltalk).

Rating: 5 stars
Summary: Fascinating book, really teaches OOP
Review: Ok, its not THAT old, but software moves fast. And Liu was downplaying 'implementation inheritance' before most people understood that there was a problem with it. One of the few books out there that really explains objects, why they work, and how to work with them without shooting yourself in the foot. The book is honest about where objects work, and is not a 'rah-rah objects rock!' type book at all. Liu uses smalltalk as the language to discuss object oriented programming and design, but this is not a book just for Smalltalkers (although it does introduce you to smalltalk).

Rating: 5 stars
Summary: FABULOUS BOOK !!!
Review: The old adage, "Don't judge a book by its cover" rings true with Chamond Liu's "Smalltalk, Objects, and Design". Its pea green, unappetizing exterior does not tempt most to buy...at least, I felt that way when I first spotted the book at a walk-in bookstore. However, I read all the glowing reviews about the book on Amazon, and based upon this, I decided to purchase the book. What can I say ? This book is awesome ! After stumbling through many OO, C++, Smalltalk, you-name-it-OO books in my lifetime, I have finally found THE BOOK which explains so clearly all those fuzzy OO concepts which I never quite understood before. This book is geared towards Smalltalk, and is a great beginner's Smalltalk book. However, even if your goal doesn't include learning Smalltalk - this book is highly advised. It is full of gems and surely has something to teach to even the most seasoned OO professional (regardless of her programming language background). Thank You Mr. Liu for taking the time and effort to write such a terrific book. You have done a great service to the software development community, with this effort. I anxiously await your next book.

My favorite chapter is Chap. 17, entitled "Two kinds of inheritance". It opened my eyes and taught me things that I had never imagined before, and I have read umpteen OO books.

Take my advice - BUY THIS BOOK ! Reading it will give you a huge competitive edge.

Rating: 5 stars
Summary: Example of succinct, entertaining writing
Review: This book is among my all-time favourites. The author understands how to write on technical subjects without being fatiguing. As Doug Lea is quoted "The chapter on design patterns is especially first-rate". I can only second that opinion.

Very much I liked the down-to-the-earth attitude presented. There are comparisons with C++ where necessary, and it's not the "I live in my dreamy clean Smalltalk world".

And if you always wanted to understand the metaclass thing, chapter 20 is the place to go. Excellent.

Rating: 5 stars
Summary: Great book for beginners and no-longer-beginners alike
Review: When I first looked into this book I thought "Oh well, this is just another book for Smalltalk and OOP beginners". Well I was wrong.

This book starts indeed from the fundamentals (objects and messages) and warns against certain pitfalls that beginners are prone to. It covers a few aspects of the class library, especially container classes as well as the MVC paradigm.

This book strongly focuses on design questions, i.e. "When to buy and when to inherit". It has a great chapter on "Specificaton inheritance" vs. "Implementation inheritance" and a chapter explaining the concept of design patterns as well as giving some example patterns for Smalltalk.

While a Smalltalk beginner might need more books to give a more complete introduction into the class library, this is a good book to expose beginners to the nuances of Smalltalk and OOP. The more advanced will appreciate the nuances in the design discussions especially in the 2nd half of the book.

In summary I can highly recommend this book for beginners and no-longer-beginners alike.


<< 1 >>

© 2004, ReviewFocus or its affiliates