Ruby Best Practices

Ruby Best Practices

3.83 (166 ratings by Goodreads)
By (author) 

Free delivery worldwide

Available. Expected delivery to the United States in 9-12 business days.

Not ordering to the United States? Click here.


Now you know the Ruby language: how do you get the most out of it? This book covers everything (almost) you need to be a complete Rubyist. How to design beautiful APIs and domain-specific languages; the ins and outs of testing and debugging; functional programming ideas and techniques that can simplify your code and make you more productive; writing code that's readable and expressive; and much more. There's a lot more to Ruby than just knowing the language. Learn how to take this rich, beautiful language and make the most of it.
show more

Product details

  • Paperback | 300 pages
  • 177.8 x 231.14 x 20.32mm | 476.27g
  • Sebastopol, United States
  • English
  • 0596523009
  • 9780596523008
  • 578,150

Table of contents

Chapter 1 Driving Code Through Tests
A Quick Note on Testing Frameworks
Designing for Testability
Testing Fundamentals
Advanced Testing Techniques
Keeping Things Organized
Chapter 2 Designing Beautiful APIs
Designing for Convenience: Ruport s Table() feature
Ruby s Secret Power: Flexible Argument Processing
Ruby s Other Secret Power: Code Blocks
Avoiding Surprises
Chapter 3 Mastering the Dynamic Toolkit
BlankSlate: A BasicObject on Steroids
Building Flexible Interfaces
Implementing Per-Object Behavior
Extending and Modifying Preexisting Code
Building Classes and Modules Programmatically
Registering Hooks and Callbacks
Chapter 4 Text Processing and File Management
Line-Based File Processing with State Tracking Regular Expressions
Working with Files
The tempfile Standard Library
Text-Processing Strategies
Chapter 5 Functional Programming Techniques
Laziness Can Be a Virtue (A Look at lazy.rb)
Minimizing Mutable State and Reducing Side Effects
Modular Code Organization
Infinite Lists
Higher-Order Procedures
Chapter 6 When Things Go Wrong
A Process for Debugging Ruby Code
Capturing the Essence of a Defect
Scrutinizing Your Code
Working with Logger
Chapter 7 Reducing Cultural Barriers
m17n by Example: A Look at Ruby s CSV Standard Library
Portable m17n Through UTF-8 Transcoding
m17n in Standalone Scripts
m17n-Safe Low-Level Text Processing
Localizing Your Code
Chapter 8 Skillful Project Maintenance
Exploring a Well-Organized Ruby Project (Haml)
Conventions to Know About
API Documentation via RDoc
The RubyGems Package Manager
Rake: Ruby s Built-in Build Utility
Appendix Writing Backward-Compatible Code
Avoiding a Mess
Nonportable Features in Ruby 1.9
Workarounds for Common Issues
Appendix Leveraging Ruby s Standard Library
Why Do We Need a Standard Library?
Pretty-Printer for Ruby Objects (pp)
Working with HTTP and FTP (open-uri)
Working with Dates and Times (date)
Lexical Parsing with Regular Expressions (strscan)
Cryptographic Hash Functions (digest)
Mathematical Ruby Scripts (mathn)
Working with Tabular Data (csv)
Transactional Filesystem-Based Data Storage (pstore)
Human-Readable Data Serialization (json)
Embedded Ruby for Code Generation (erb)
Appendix Ruby Worst Practices
Not-So-Intelligent Design
The Downside of Cleverness
show more

About Gregory T Brown

Gregory T. Brown is a New Haven, CT based Rubyist who spends most of his time on free software projects in Ruby. His main projects are Prawn and Ruport, and he is also the author of the upcoming book Ruby Best Practices. He also is in possession of a small bamboo plant that seems to be invincible, and he is quite proud of this accomplishment.
show more

Rating details

166 ratings
3.83 out of 5 stars
5 28% (47)
4 40% (66)
3 20% (34)
2 10% (16)
1 2% (3)
Book ratings by Goodreads
Goodreads is the world's largest site for readers with over 50 million reviews. We're featuring millions of their reader ratings on our book pages to help you find your new favourite book. Close X