|
Advanced Rails
Ready to go to the next level with Rails? From examining
the parts of Ruby that make this framework possible to
deploying large Rails applications, Advanced Rails offers
you an in-depth look at techniques for dealing with
databases, security, performance, web services and much
more.
Chapters in this book help you
understand not only the
tricks and techniques used within the Rails framework
itself, but also how to make use of ideas borrowed from
other programming paradigms. Advanced Rails pays particular
attention to building applications that scale -- whether
"scale" means handling more users, or working with a bigger
and more complex database. You'll find plenty of examples
and code samples that explain:
Aspects of Ruby that are often confusing or misunderstood
Metaprogramming
How to develop Rails plug-ins
Different database management systems
Advanced database features, including triggers, rules, and
stored procedures
How to connect to multiple databases
When to use the Active Support library for generic, reusable
functions
Security principles for web application design, and security
issues endemic to the Web
When and when not to optimize performance
Why version control and issue tracking systems are essential
to any large or long-lived Rails project
Advanced Rails also gives you a look at REST for developing
web services, ways to incorporate and extend Rails, how to
use internationalization, and many other topics. If you're
just starting out with rails, or merely experimenting with
the framework, this book is not for you. But if you want to
improve your skills with Rails through advanced techniques,
this book is essential.
CONTENTS:
Preface
1. Foundational Techniques
What Is Metaprogramming?
Ruby Foundations
Metaprogramming Techniques
Functional Programming
Examples
Further Reading
2. ActiveSupport and RailTies
Ruby You May Have Missed
How to Read Code
ActiveSupport
Core Extensions
RailTies
Further Reading
3. Rails Plugins
About Plugins
Writing Plugins
Plugin Examples
Testing Plugins
Further Reading
4. Database
Database Management Systems
Large/Binary Objects
Advanced Database Features
Connecting to Multiple Databases
Caching
Load Balancing and High Availability
LDAP
Further Reading
5. Security
Application Issues
Web Issues
SQL Injection
Ruby's Environment
Further Reading
6. Performance
Measurement Tools
Rails Optimization Example
ActiveRecord Performance
Architectural Scalability
Other Systems
Further Reading
7. REST, Resources, and Web Services
What Is REST?
Benefits of a RESTful Architecture
RESTful Rails
Case Study: Amazon S3
Further Reading
8. i18n and L10n
Locale
Character Encodings
Unicode
Rails and Unicode
Rails L10n
Further Reading
9. Incorporating and Extending Rails
Replacing Rails Components
Incorporating Rails Components
Contributing to Rails
Further Reading
10. Large Projects
Version Control
Issue Tracking
Project Structure
Rails Deployment
Further Reading
Index
|