Ruby最佳实践

百科

《Ruby最佳实践》是2010年东南大学出版社出版的图书,作者是Gregory T. Brown。

  • 中文名 Ruby最佳实践
  • 外文名 Ruby Best Practices
  • 页数 309页
  • 正文语种  英语
  • 开本 16

内容简介

  你能够编写真正优雅的Ruby代码吗?《Ruby最佳实践》正是为想要像专家那样使用Ruby的程序员所准备的。《Ruby 最佳实践(影印版)》由Ruby项目Praw来自n的开发者所著,简洁地向你阐释如何使用Ruby编写优美的应用程序接口和领域特定语言。此外,还包括如何应用函数式编起受蒸程的思想和技术,使代码更简洁,使你更有效率。通过《Ruby 最佳实践(影印版)》,你将会学到如何编写可读性更高,表达能力更强的代码,以及许多其他方面的内容。

  《Ruby最佳实践》将会360百科帮助你:

  * 理解Ruby代码块所蕴含的神秘力量

  * 学习如何在商季消元并末批术呀观球不破坏原有Ruby代码的情况下进行调整,例如运行时在模块内糅合

  * 探则斯广等调蒸他本究测试与调试中的细节,以及如何从易测性出发进行设计

  * 学习通过让事情保持简单来编写快速代码

  * 用于文本处理和文件管理的开发策略,包括正则表达式

  * 理解为什么会发生错误以及错误是如何发生的

  * 利用Ruby的多语言特性减少文化障碍

  《Ruby 最佳实践(影印版)》还包含多个章节对测试代码、设计应用程序接口以及项目维护做了全面介绍。《Ruby最佳实践》将陪伴你学习如何将这门丰富、优美的语言发挥到极致。

编辑推

  《Ruby 最佳实职故按策镇七宜本读鲁波践(影印版)》是由东南大学出版社出版的。

媒体推荐

  "这是一本极为务实的著作,各层次的开发人员都能从中借鉴。"

  --Bra来自d Ediger,Madriska Media Group的领袖开发者,同时也是《Advanced Rails》(O'Reilly)的作者

  "终于有这样一本书问世了,它不仅教我如何使用Ruby,更教会我如何正确地使用它。每360百科位Ruby爱好者的书架上都该摆上一本《Ruby最佳实践》。"

  --Jeremy McAnally,ENTP开发者,同时还是《Ruby in Practice》(Manning)一书的作者

  "我敢打赌,通过阅读这本书,你一定学到了可以提高Ruby编程能力的新技巧。"

  --James Edwar饭统保d Gray II,代码忍者及Ruby 1.9 的CSV标准库的作者

作者简介

  Gregory T. Brown是康涅狄格州纽黑文市的一位Ruby爱好者,他的大多数时间都花在了与Ruby语言相关的自由软件项目上。他是Ruport的原作者,并且是Prawn的作者,该Ruby库被用来生成PDF文档。

临井着纪

  Foreword

  Preface

  1. Driving Cod节剧劳间州正局亚e Through Test坚关管群头系许丝罪s

  A Quick 品另满吧领形弱Note on Te承概失年sting Framew古面知超轻毫好增突orks

  Designi统刘材时ng for Testability

  Testing Fundamentals

  Well-Focused Examples

  Testi张接血光连混祖杀钟夫ng Exceptions

  Run the Whole Suite at Once

  Advanced Testing Techniques

  Using Mocks and Stubs

  Testing Complex Output

  Keeping Things Organ决艺故秋维沿ized

  Embedding Test算个钢族才约倍功宪s in Library Files

怕因  Test Helpers

  Custom Assertions

  Conclusions

  2. Designing Beautiful APIs

  Designing for Convenience: Ruport's Table( ) feature

  Ruby's Secret Power: Flexible Argument Processing

  Standard Ordinal Arguments

  Ordinal Arguments with Optional Parameters

  Pseudo-Keyword Arguments

  Treating Arguments As an Array

  Ruby's Other Secret Power: Code Blocks

  Working with Enumerable

  Using Blocks to Abstract Pre- and Postprocessing

  Blocks As Dynamic Callbacks

  Blocks for Interface Simplification

  Avoiding Surprises

  Use attr_reader, attr_writer, and attr_accessor

  Understand What method? and method! Mean

  Make Use of Custom Operators

  Conclusions

  3. Mastering the Dynamic Toolkit

  BlankSlate: A BasicObject on Steroids

  Building Flexible Interfaces

  Making instance_eval( ) Optional

  Handling Messages with method_missing( ) and send( )

  Dual-Purpose Accessors

  Implementing Per-Object Behavior

  Extending and Modifying Preexisting Code

  Adding New Functionality

  Modification via Aliasing

  Per-Object Modification

  Building Classes and Modules Programmatically

  Registering Hooks and Callbacks

  Detecting Newly Added Functionality

  Tracking Inheritance

  Tracking Mixins

  Conclusions

  4. Text Processing and File Management

  Line-Based File Processing with State Tracking

  Regular Expressions

  Don't Work Too Hard

  Anchors Are Your Friends

  Use Caution When Working with Quantifiers

  Working with Files

  Using Pathname and FileUtils

  The tempfile Standard Library

  Automatic Temporary Directory Handling

  Collision Avoidance

  Same Old I/O Operations

  Automatic Unlinking

  Text-Processing Strategies

  Advanced Line Processing

  Atomic Saves

  Conclusions

  5. Functional Programming Techniques

  Laziness Can Be a Virtue (A Look at lazy.rb)

  Minimizing Mutable State and Reducing Side Effects

  Modular Code Organization

  Memoization

  Infinite Lists

  Higher-Order Procedures

  Conclusions

  6. When Things Go Wrong

  A Process for Debugging Ruby Code

  Capturing the Essence of a Defect

  Scrutinizing Your Code

  Utilizing Reflection

  Improving inspect Output

  Finding Needles in a Haystack

  Working with Logger

  Conclusions

  7. Reducing Cultural Barriers

  m17n by Example: A Look at Ruby's CSV Standard Library

  Portable m17n Through UTF-8 Transcoding

  Source Encodings

  Working with Files

  Transcoding User Input in an Organized Fashion

  m17n in Standalone Scripts

  Inferring Encodings from Locale

  Customizing Encoding Defaults

  m17n-Safe Low-Level Text Processing

  Localizing Your Code

  Conclusions

  8. Skillful Project Maintenance

  Exploring a Well-Organized Ruby Project (Haml)

  Conventions to Know About

  What Goes in a README

  Laying Out Your Library

  Executables

  Tests

  Examples

  API Documentation via RDoc

  Basic Documentation Techniques and Guidelines

  Controlling Output with RDoc Directives

  The RubyGems Package Manager

  Writing a Gem::Specification

  Working with Dependencies

  Rake: Ruby's Built-in Build Utility

  Conclusions

  A. Writing Backward-Compatible Code

  B. Leveraging Ruby's Standard Library

  C. Ruby Worst Practices

  Index

标签:
声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:yongganaa@126.com

评论留言

我要留言

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:yongganaa@126.com