Customer Reviews: Filthy Rich Clients: Developing Animated and Graphical Effects for Desktop Java Applications
Your Garage Buy 2 kids' books and save Amazon Fashion Learn more Discover it Benjamin Leftwich Fire TV Stick Health, Household and Grocery Back to School Totes Summer-Event-Garden Amazon Cash Back Offer AllOrNothingS1 AllOrNothingS1 AllOrNothingS1  Amazon Echo  Echo Dot  Amazon Tap  Echo Dot  Amazon Tap  Amazon Echo Introducing new colors All-New Kindle Oasis Water Sports

Customer Reviews

4.6 out of 5 stars
Your rating(Clear)Rate this item

There was a problem filtering reviews right now. Please try again later.

This is one of those "fun books" on Java that you used to see so much of in the 90's but are pretty much no longer written. This book is about building better desktop applications that employ interesting graphical and animated effects. This book was meant to be worked through from beginning to end, although if you are already familiar with the technology that does not mean you can't skip around. The book has plenty of code and some math. However, as in the example in the section on morphing, the book does not try to get into heavy-duty math. If there are open source libraries that do the trick, as there are in the case of morphing effects, the authors refer you to that library. They do explain math if all it involves is something on the level of fairly simple matrix algebra - blurring for example. The book is not a primer on Swing. It assumes the reader has experience in that area. However, some of the touchier aspects of Swing that may not be self-evident to even experienced Swing programmers are explained in the first couple of chapters of the book. In particular, the authors do a pretty good job of explaining how Swing and Java 2D work together, which is hard to find in books and even in online tutorials. Obviously, there is lots of code involved in such a book, and although there are snippets in the book to the point that you can understand what's going on, you'll want to go to the book's website at O'Reilly & Associates and download the whole thing so you can study it and play with it. The book is divided into four parts as follows:

Part I - Graphics and GUI Fundamentals
Not a fundamental tutorial on building GUI's in Java, it points out the stuff you need to get up to speed with the APIs and techniques that later parts of the book build upon.
Chapter 1. Desktop Java Graphics APIs: Swing, AWT, and Java 2D
Abstract Window Toolkit (AWT);
Java 2D; Swing;
Chapter 2. Swing Rendering Fundamentals
Events; Swing Painting; Swing Rendering; Double-Buffering; Threading;
Chapter 3. Graphics Fundamentals
Java 2D; Rendering;
Chapter 4. Images
Image Types; BufferedImage; Image Scaling;
Chapter 5. Performance
Use the Clip; Compatible Images; Managed Images; Intermediate Images; Optimal Primitive Rendering; Benchmark ;Command-Line Flags;

Part II - Advanced Graphics Rendering
Continues looking at Java 2D and Swing. The first pat talks about composites, gradients, and image processing support in Java. The second part talks about Swing components that support graphical applications - the glass pane, layered panes, and the repaint manager.
Chapter 6. Composites
AlphaComposite; AlphaComposite: The 12 Rules; Creating and Setting Up an AlphaComposite; Common Uses of AlphaComposite; Issues with AlphaComposite; Create Your Own Composite; Summary;
Chapter 7. Gradients
Two-Stops Linear Gradient; Special Effects with Regular Gradients; Multistops Linear Gradient; Radial Gradient; Optimizing Gradients;
Chapter 8. Image Processing
Image Filters; Processing an Image with BufferedImageOp;AffineTransformOp; ColorConvertOp; ConvolveOp; LookupOp; RescaleOp; Custom BufferedImageOp; A Note about Filters Performance; Summary;
Chapter 9. Glass Pane
Painting on the Glass Pane; Blocking Input Events;
Chapter 10. Layered Panes;
Using Layered Pane Layers; Ordering Components within a Single Layer; Layered Panes and Layouts; Alternative to JLayeredPane with Layouts;
Chapter 11. Repaint Manager
When Swing Gets Too Smart; Meet the RepaintManager; A Reflection on RepaintManager; Summary;

Part III - Animation
Discusses the basics of animation in Java and the existing facilities in the core language that make it possible. Covers the Timing Framing library that simplifies Java animation.
Chapter 12. Animation Fundamentals
It's About Time; Fundamental Concepts; Timing (and Platform Timing Utilities); Resolution; Animating Your Swing Application; Summary;
Chapter 13. Smooth Moves
Background: Why Does My Animation Look Bad?; What Makes Animations Choppy, and How to Smooth Them Out; SmoothMoves: The Demo; Summary;
Chapter 14. Timing Framework: Fundamentals
Introduction; Core Concepts; Interpolation; Summary;
Chapter 15. Timing Framework: Advanced Features
Triggers; Property Setters; Summary;

Part IV - Effects
Effects are only possible after you really understand parts one through three. Individual effects are covered and explained in detail if not overly mathematically complex. The section ends by showing how an example graphically rich client might be developed from beginning to end.
Chapter 16. Static Effects
Blur; Reflection; Drop Shadows; Highlights; Sharpening; Summary;
Chapter 17. Dynamic Effects
Motion; Fading; Pulse; Spring; Morphing; Summary;
Chapter 18. Animated Transitions
Animating Application State Segues; Animated Transitions: The Library ;Animated Transitions: Under the Hood, or How Do You Get Swing to Do That?; Summary;
Chapter 19. Birth of a Filthy Rich Client
Workflow Paper Design; he Vision; Screen Paper Design; Mockup; From Mockup to Code; But I'm Not an Artist; Choosing Nice Colors; Read Design Books; Summary;

Overall, this is a very interesting book full of useful information both language-wise and effects-wise that I highly recommend.
0Comment| 38 people found this helpful. Was this review helpful to you?YesNoReport abuse
on August 14, 2008
This book will save you hours of trouble shooting the little things that don't work as intuitively as they should in Java.
I have not found an un-useful idea here.
It also shows you how to make your application more efficient (faster).
The author has already done the timing tests and offer you the results and the routes you should take.
All in all, a fantastic find.
0Comment| 4 people found this helpful. Was this review helpful to you?YesNoReport abuse
on March 31, 2008
To push java's ui capabilities has in the past been a bit of a struggle due to the many ways of dealing with Swing, repaints, events, animation etc. This book is an absolute life saver in terms of presenting a unified best practice strategy for everything a ui developer would wish to do in java. It creates very simple applications with solid explanations of what the code is doing, from the low level to the high level. It is also written in a very personable style and the book moves easily and logically through the related material. I wish I had read this book 4 years ago.
0Comment| 3 people found this helpful. Was this review helpful to you?YesNoReport abuse
on December 9, 2012
Well written book, but i'm having trouble following it being a novice to JAVA. I think it's more intended for mid to advance JAVa programmers.
0Comment| One person found this helpful. Was this review helpful to you?YesNoReport abuse
on April 2, 2009
After years of programming swing data grid based applications. This book is more than a relief to read. The examples are really inspiring and are an invitation to experiment and apply them. I really learned a lot about the inner working of swing and the book kept me keen on performance. Applying animations and effects is not applicable in a lot of cases but is very good to know how to apply them when a chance comes by. For me this book is a must read if you like to program Java Swing applications.
0Comment|Was this review helpful to you?YesNoReport abuse
on October 23, 2015
Cool book, great content, easy reader, very helpful. Explains java's Event Dispatch Threading in detail (and in simple language) which will make your swing apps better.
0Comment|Was this review helpful to you?YesNoReport abuse
on December 2, 2007
Libraries that cater to Java programmers will find an excellent guide in FILTHY RICH CLIENTS, which refers to rich applications that teach how to build better, more effective desktop applications that enhance user experiences. Graphical and animated effects are the focus here, with a bow to performance: chapters teach how to create, customize and translate special effects with Filthy Rich Clients and come from a client architect of a Java group at Sun Microsystems. Any advanced programming collection needs this.
0Comment| 2 people found this helpful. Was this review helpful to you?YesNoReport abuse
on October 9, 2007
This is a very good book. It can enlighten even your basic knowledge
about java 2d drawing and swing. It is not a book for beginners. If you
love swing/java2d this is the book for you!
0Comment| 2 people found this helpful. Was this review helpful to you?YesNoReport abuse
on December 7, 2007
This book is fantastic - so many tips and tricks that I was unaware of. I want more!! I hope a sequel is in the making!! Check it out!! You won't be disappointed!!
0Comment| 2 people found this helpful. Was this review helpful to you?YesNoReport abuse
on March 11, 2015
Very educational.
0Comment|Was this review helpful to you?YesNoReport abuse