David Flanagan是一名程序員以及《Java技術(shù)手冊》和《JavaScript權(quán)威指南》兩本暢銷書(同為O‘Reilly出版)的作者,這兩本書被認(rèn)為是Java和JavaScript的標(biāo)準(zhǔn)參考。《Ruby程序設(shè)計(jì)語言》包含了對Ruby平臺的大量API的全面介紹,通過包含詳盡注釋的代碼展示了如何將Ruby用于文本處理、數(shù)值處理、集合、輸入/輸出、網(wǎng)絡(luò)和并發(fā)。如果您真想要理解Ruby,本書不可或缺?!禦uby程序設(shè)計(jì)語言》是Ruby的權(quán)威指南,全面涵蓋該語言的1.8版和1.9版。本書詳盡但并不拘泥于語言規(guī)范,既適合首次接觸Ruby的資深程序員,同樣也適合那些想要挑戰(zhàn)對這門語言的理解并更深入掌握它的Ruby程序員。本書首先通過一個(gè)快速指南帶您熟悉這門語言,然后徹底解釋它的細(xì)節(jié),包括:Ruby程序的詞法和句法結(jié)構(gòu)、數(shù)據(jù)類型和對象、表達(dá)式和操作符、語句和控制結(jié)構(gòu)、Method、proc、lambda和Iclosure、類和模塊、反射和元編程、Ruby平臺。
圖書目錄
Preface 1. Introduction 1.1 A Tour of Ruby 1.2 Try Ruby 1.3 About This Book 1.4 A Sudoku Solver in Ruby 2. The Structure and Execution of Ruby Programs 2.1 Lexical Structure 2.2 Syntactic Structure 2.3 File Structure 2.4 Program Encoding 2.5 Program Execution 3. Datatypes and Objects 3.1 Numbers 3.2 Text 3.3 Arrays 3.4 Hashes 3.5 Ranges 3.6 Symbols 3.7 True, False, and Nil 3.8 Objects 4. Expressions and Operators 4.1 Literals and Keyword Literals 4.2 Variable References 4.3 Constant References 4.4 Method Invocations 4.5 Assignments 4.6 Operators 5. Statements and Control Structures 5.1 Conditionals 5.2 Loops 5.3 Iterators and Enumerable Objects 5.4 Blocks 5.5 Altering Control Flow 5.6 Exceptions and Exception Handling 5.7 BEGIN and END 5.8 Threads, Fibers, and Continuations 6. Methods, Procs, Lambflas, and Closures 6.1 Defining Simple Methods 6.2 Method Names 6.3 Methods and Parentheses 6.4 Method Arguments 6.5 Procs and Lambdas 6.6 Closures 6.7 Method Objects 6.8 Functional Programming 7. Classes and Modules 7.1 Defining a Simple Class 7.2 Method Visibility: Public, Protected, Private 7.3 Subclassing and Inheritance
7.4 Object Creation and Initialization 7.5 Modules 7.6 Loading and Requiring Modules 7.7 Singleton Methods and the Eigenclass 7.8 Method Lookup 7.9 Constant Lookup 8. Reflection and Metaprogramming 8.1 Types, Classes, and Modules 8.2 Evaluating Strings and Blocks 8.3 Variables and Constants 8.4 Methods 8.5 Hooks 8.6 Tracing 8.7 ObjectSpace and GC 8.8 Custom Control Structures 8.9 Missing Methods and Missing Constants 8.10 Dynamically Creating Methods 8.11 Alias Chaining 8.12 Domain-Specific Languages 9. The Ruby Platform 9.1 Strings 9.2 Regular Expressions 9.3 Numbers and Math 9.4 Dates and Times 9.5 Collections 9.6 Files and Directories 9.7 Input/Output 9.8 Networking 9.9 Threads and Concurrency 10. The Ruby Environment 10.1 Invoking the Ruby Interpreter 10.2 The Top-Level Environment 10.3 Practical Extraction and Reporting Shortcuts 10.4 Calling the OS 10.5 Security Index