分享
 
 
 

Ruby最佳实践

王朝百科·作者佚名  2011-11-12
窄屏简体版  字體: |||超大  

基本信息出版社: 东南大学出版社; 第1版 (

Ruby最佳实践

2010年1月1日)

外文书名: Ruby Best Practices

平装: 309页

正文语种: 英语

开本: 16

ISBN: 9787564119355

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

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

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

* 学习如何在不破坏原有Ruby代码的情况下进行调整,例如运行时在模块内糅合

* 探究测试与调试中的细节,以及如何从易测性出发进行设计

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

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

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

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

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

编辑推荐《Ruby 最佳实践(影印版)》是由东南大学出版社出版的。

媒体推荐“这是一本极为务实的著作,各层次的开发人员都能从中借鉴。”

——Brad Ediger,Madriska Media Group的领袖开发者,同时也是《Advanced Rails》(O'Reilly)的作者

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

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

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

——James Edward Gray II,代码忍者及Ruby 1.9 的CSV标准库的作者

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

目录Foreword

Preface

1. Driving Code Through Tests

A Quick Note on Testing Frameworks

Designing for Testability

Testing Fundamentals

Well-Focused Examples

Testing Exceptions

Run the Whole Suite at Once

Advanced Testing Techniques

Using Mocks and Stubs

Testing Complex Output

Keeping Things Organized

Embedding Tests 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

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有