Special Offers see all
More at Powell'sRecently Viewed clear list |
$44.99
New Trade Paper
Ships in 1 to 3 days
More copies of this ISBNOther titles in the Addison-Wesley Professional Ruby series:
Rails Antipatterns: Best Practice Ruby on Rails Refactoring (Addison-Wesley Professional Ruby)by Chad Pytel
Synopses & ReviewsPublisher Comments:The Complete Guide to Avoiding and Fixing Common Rails 3 Code and Design Problems
As developers worldwide have adopted the powerful Ruby on Rails web framework, many have fallen victim to common mistakes that reduce code quality, performance, reliability, stability, scalability, and maintainability. Rails™ AntiPatterns identifies these widespread Rails code and design problems, explains why they’re bad and why they happen—and shows exactly what to do instead.
The book is organized into concise, modular chapters—each outlines a single common AntiPattern and offers detailed, cookbook-style code solutions that were previously difficult or impossible to find. Leading Rails developers Chad Pytel and Tammer Saleh also offer specific guidance for refactoring existing bad code or design to reflect sound object-oriented principles and established Rails best practices. With their help, developers, architects, and testers can dramatically improve new and existing applications, avoid future problems, and establish superior Rails coding standards throughout their organizations.
This book will help you understand, avoid, and solve problems with
Book News Annotation:Pytel, a software development consultant, and Saleh, a Ruby developer, present this guide to avoiding antipatterns, deeply ingrained, habitually used computer code that creates more problems than it solves. Focusing on their expertise with the Ruby on Rails web application framework, this volume dissects each portion of the programming schema and unearths the underlying problem code. Covering model layer code, domain modeling, view layer tools, the control layer, services and third-party code, the work functions both as a reference and as a narrative of best practices for avoiding antipatterns. Presented in a problem/solution style layout, each chapter contains numerous code examples. Access to a free, searchable online edition is provided. Annotation ©2011 Book News, Inc., Portland, OR (booknews.com)
Synopsis:The Complete Guide to Avoiding and Fixing Common Rails 3 Code and Design Problems
As developers worldwide have adopted the powerful Ruby on Rails web framework, many have fallen victim to common mistakes that reduce code quality, performance, reliability, stability, scalability, and maintainability. Rails(TM) AntiPatterns identifies these widespread Rails code and design problems, explains why they're bad and why they happen-and shows exactly what to do instead. The book is organized into concise, modular chapters-each outlines a single common AntiPattern and offers detailed, cookbook-style code solutions that were previously difficult or impossible to find. Leading Rails developers Chad Pytel and Tammer Saleh also offer specific guidance for refactoring existing bad code or design to reflect sound object-oriented principles and established Rails best practices. With their help, developers, architects, and testers can dramatically improve new and existing applications, avoid future problems, and establish superior Rails coding standards throughout their organizations. This book will help you understand, avoid, and solve problems with Model layer code, from general object-oriented programming violations to complex SQL and excessive redundancyDomain modeling, including schema and database issues such as normalization and serializationView layer tools and conventionsController-layer code, including RESTful codeService-related APIs, including timeouts, exceptions, backgrounding, and response codesThird-party code, including plug-ins and gemsTesting, from test suites to test-driven development processesScaling and deploymentDatabase issues, including migrations and validationsSystem design for graceful degradation in the real world About the AuthorChad Pytel is the founder and CEO of thoughtbot, a software development firm specializing in Ruby on Rails, and creators of Paperclip, Shoulda, FactoryGirl, and Hoptoad, among other projects. thoughtbot embraces both agile development methodologies and a “getting real” project philosophy. Chad coauthored Pro Active Record: Databases with Ruby and Rails (Apress, 2007) and has presented at various conferences around the world. To follow along with Chad and the rest of the thoughtbot team’s ideas on development, design, technology, and business, visit their blog at http://robots.thoughtbot.com.
Tammer Saleh is the director of engineering at Engine Yard. He wrote the Shoulda testing framework, was the primary developer and project manager for thoughtbot’s fantastic Hoptoad service, and is an experienced Ruby on Rails trainer and speaker. In previous lives, he’s done AI development for the NCSA and the University of Illinois, as well as systems administration for both Citysearch.com and Caltech’s Earthquake Detection Network. You can find him online at http://tammersaleh.com. Table of Contents Foreword xi
Introduction xiii Acknowledgments xvii About the Authors xix
Chapter 1: Models 1 AntiPattern: Voyeuristic Models 2 AntiPattern: Fat Models 14 AntiPattern: Spaghetti SQL 31 AntiPattern: Duplicate Code Duplication 50
Chapter 2: Domain Modeling 73 AntiPattern: Authorization Astronaut 74 AntiPattern: The Million-Model March 79
Chapter 3: Views 89 AntiPattern: PHPitis 91 AntiPattern: Markup Mayhem 107
Chapter 4: Controllers 117 AntiPattern: Homemade Keys 118 AntiPattern: Fat Controller 123 AntiPattern: Bloated Sessions 154 AntiPattern: Monolithic Controllers 161 AntiPattern: Controller of Many Faces 167 AntiPattern: A Lost Child Controller 170 AntiPattern: Rat’s Nest Resources 180 AntiPattern: Evil Twin Controllers 184
Chapter 5: Services 189 AntiPattern: Fire and Forget 190 AntiPattern: Sluggish Services 195 AntiPattern: Pitiful Page Parsing 197 AntiPattern: Successful Failure 201 AntiPattern: Kraken Code Base 207
Chapter 6: Using Third-Party Code 211 AntiPattern: Recutting the Gem 213 AntiPattern: Amateur Gemologist 214 AntiPattern: Vendor Junk Drawer 216 AntiPattern: Miscreant Modification 217
Chapter 7: Testing 221 AntiPattern: Fixture Blues 223 AntiPattern: Lost in Isolation 236 AntiPattern: Mock Suffocation 240 AntiPattern: Untested Rake 246 AntiPattern: Unprotected Jewels 251
Chapter 8: Scaling and Deploying 267 AntiPattern: Scaling Roadblocks 268 AntiPattern: Disappearing Assets 271 AntiPattern: Sluggish SQL 272 AntiPattern: Painful Performance 282
Chapter 9: Databases 291 AntiPattern: Messy Migrations 292 AntiPattern: Wet Validations 297
Chapter 10: Building for Failure 301 AntiPattern: Continual Catastrophe 302 AntiPattern: Inaudible Failures 306
Index 311 What Our Readers Are SayingBe the first to add a comment for a chance to win!Product Details
Other books you might likeRelated Subjects
Computers and Internet » Computer Languages » Ruby
|
|||||||||
|
|
||||||||||
|
|
||||||||||