图书介绍

Ruby最佳实践【2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载】

Ruby最佳实践
  • GregoryT.Brown著 著
  • 出版社: 南京:东南大学出版社
  • ISBN:9787564119355
  • 出版时间:2010
  • 标注页数:314页
  • 文件大小:12MB
  • 文件页数:329页
  • 主题词:计算机网络-程序设计-英文

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

Ruby最佳实践PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

1.Driving Code Through Tests1

A Quick Nore on Testing Frameworks2

Designing for Testability2

Testing Fundamentals10

Well-Focused Examples10

Testing Exceptions11

Run the Whole Suite at Once13

Advanced Testing Techniques14

Using Mocks and Stubs14

Testing Complex Output22

Keeping Things Organized26

Embedding Tests in Library Files27

Test Helpers27

Custom Assertions29

Conclusions30

2.Designing Beautiful APIs31

Designing for Convenience:Ruport's Table() feature31

Ruby's Secret Power:Flexible Argument Processing35

Standard Ordinal Arguments36

Ordinal Arguments with Optional Parameters36

Pseudo-Keyword Arguments37

Treating Arguments As an Array38

Ruby's Other Secret Power:Code Blocks40

Working with Enumerable41

Using Blocks to Abstract Pre- and Postprocessing43

Blocks As Dynamic Callbacks45

Blocks for Interface Simplification47

Avoiding Surprises48

Use attr_reader,attr_writer,and attr_accessor48

Understand What method?and method!Mean50

Make Use of Custom Operators53

Conclusions55

3.Mastering the Dynamic Toolkit57

BlankSlate:A BasicObject on Steroids57

Building Flexible Interfaces62

Making instance_eval() Optional63

Handling Messages with method_missing() and send()65

Dual-Purpose Accessors69

Implementing Per-Object Behavior70

Extending and Modifying Preexisting Code74

Adding New Functionality75

Modification via Aliasing79

Per-Object Modification81

Building Classes and Modules Programmatically84

Registering Hooks and Callbacks88

Detecting Newly Added Functionality89

Tracking Inheritance91

Tracking Mixins93

Conclusions96

4.Text Processing and File Management99

Line-Based File Processing with State Tracking99

Regular Expressions103

Don't Work Too Hard105

Anchors Are Your Friends105

Use Caution When Working with Quantifiers106

Working with Files109

Using Pathname and FileUtils109

The tempfile Standard Library112

Automatic Temporary Directory Handling113

Collision Avoidance113

Same Old I/O Operations114

Automatic Unlinking114

Text-Processing Strategies115

Advanced Line Processing116

Atomic Saves118

Conclusions120

5.Functional Programming Techniques121

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

Minimizing Mutable State and Reducing Side Effects129

Modular Code Organization133

Memoization138

Infinite Lists145

Higher-Order Procedures149

Conclusions152

6.When Things Go Wrong153

A Process for Debugging Ruby Code153

Capturing the Essence of a DefeCt157

Scrutinizing Your Code160

Utilizing Reflection160

Improving inspect Output162

Finding Needles in a Haystack166

Working with Logger168

Conclusions176

7.Reducing Cultural Barriers177

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

Portable m17n Through UTF-8 Transcoding182

Source Encodings183

Working with Files183

Transcoding User Input in an Organized Fashion185

m17n in Standalone Scripts188

Inferring Encodings from Locale189

Customizing Encoding Defaults191

m17n-Safe Low-Level Text Processing193

Localizing Your Code195

Conclusions204

8.Skillful Project Maintenance205

Exploring a Well-Organized Ruby Project(Haml)205

Conventions to Know About210

What Goes in a README211

Laying Out Your Library213

Executables216

Tests216

Examples217

API Documentation via RDoc219

Basic Documentation Techniques and Guidelines220

Controlling Output with RDoc Directives222

The RubyGems Package Manager227

Writing a Gem::Specification228

Working with Dependencies231

Rake:Ruby's Built-in Build Utility234

Conclusions237

A.Writing Backward-Compatible Code239

B.Leveraging Ruby's Standard Library251

C.Ruby Worst Practices283

Index299

热门推荐