Programming Ruby 1.9 & 2.0: the pragmatic programmers' guide ; [for Ruby 1.9 and Ruby 2.0]
Gespeichert in:
Hauptverfasser: | , , |
---|---|
Format: | Buch |
Sprache: | English |
Veröffentlicht: |
Dallas, Tex. [u.a.]
The Pragmatic Bookshelf
2013
|
Schriftenreihe: | The facets of ruby series
The pragmatic programmers |
Schlagworte: | |
Online-Zugang: | Inhaltsverzeichnis |
Beschreibung: | XVI, 863 S. graph. Darst. cm |
ISBN: | 9781937785499 1937785491 |
Internformat
MARC
LEADER | 00000nam a2200000 c 4500 | ||
---|---|---|---|
001 | BV041154316 | ||
003 | DE-604 | ||
005 | 20170620 | ||
007 | t | ||
008 | 130718s2013 d||| |||| 00||| eng d | ||
020 | |a 9781937785499 |9 978-1-937-78549-9 | ||
020 | |a 1937785491 |9 1-937-78549-1 | ||
035 | |a (OCoLC)858018029 | ||
035 | |a (DE-599)BVBBV041154316 | ||
040 | |a DE-604 |b ger |e rakwb | ||
041 | 0 | |a eng | |
049 | |a DE-83 |a DE-91G | ||
084 | |a ST 250 |0 (DE-625)143626: |2 rvk | ||
084 | |a DAT 368f |2 stub | ||
100 | 1 | |a Thomas, David |d 1956- |e Verfasser |0 (DE-588)141256508 |4 aut | |
245 | 1 | 0 | |a Programming Ruby 1.9 & 2.0 |b the pragmatic programmers' guide ; [for Ruby 1.9 and Ruby 2.0] |c Dave Thomas with Chad Fowler and Andy Hunt |
264 | 1 | |a Dallas, Tex. [u.a.] |b The Pragmatic Bookshelf |c 2013 | |
300 | |a XVI, 863 S. |b graph. Darst. |c cm | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
490 | 0 | |a The facets of ruby series | |
490 | 0 | |a The pragmatic programmers | |
650 | 0 | 7 | |a Ruby |g Programmiersprache |0 (DE-588)4653817-3 |2 gnd |9 rswk-swf |
689 | 0 | 0 | |a Ruby |g Programmiersprache |0 (DE-588)4653817-3 |D s |
689 | 0 | |5 DE-604 | |
700 | 1 | |a Fowler, Chad |e Verfasser |0 (DE-588)139216308 |4 aut | |
700 | 1 | |a Hunt, Andrew |d 1964- |e Verfasser |0 (DE-588)133675025 |4 aut | |
856 | 4 | 2 | |m HBZ Datenaustausch |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=026129737&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |3 Inhaltsverzeichnis |
999 | |a oai:aleph.bib-bvb.de:BVB01-026129737 |
Datensatz im Suchindex
_version_ | 1804150557871439872 |
---|---|
adam_text | Titel: Programming Ruby 1.9 2.0
Autor: Thomas, David
Jahr: 2013
Contents
Foreword...............ix
Preface................xi
Road Map...............xv
Part I — Facets of Ruby
1. Getting Started..............3
1.1 The Command Prompt 3
1.2 Installing Ruby 5
1.3 Running Ruby 9
1.4 Ruby Documentation: RDoc and ri 11
2. Ruby.new...............15
2.1 Ruby Is an Object-Oriented Language 15
2.2 Some Basic Ruby 17
2.3 Arrays and Hashes 20
2.4 Symbols 21
2.5 Control Structures 23
2.6 Regular Expressions 24
2.7 Blocks and Iterators 25
2.8 Reading and Riting 27
2.9 Command-Line Arguments 28
2.10 Onward and Upward 28
3. Classes, Objects, and Variables..........29
3.1 Objects and Attributes 32
3.2 Classes Working with Other Classes 37
3.3 Access Control 40
3.4 Variables 43
4. Containers, Blocks, and Iterators..........45
4.1 Arrays 45
4.2 Hashes 47
4.3 Blocks and Iterators 52
4.4 Containers Everywhere 68
iv • Contents
5. Sharing Functionality: Inheritance, Modules, and Mixins .... 69
5.1 Inheritance and Messages 69
5.2 Modules 73
5.3 Mixins 75
5.4 Iterators and the Enumerable Module 77
5.5 Composing Modules 77
5.6 Inheritance, Mixins, and Design 80
6. Standard Types..............83
6.1 Numbers 83
6.2 Strings 86
6.3 Ranges 90
7. Regular Expressions.............93
7.1 What Regular Expressions Let You Do 93
7.2 Ruby s Regular Expressions 94
7.3 Digging Deeper 96
7.4 Advanced Regular Expressions 105
8. More About Methods............115
8.1 Defining a Method 115
8.2 Calling a Method 118
9. Expressions..............125
9.1 Operator Expressions 126
9.2 Miscellaneous Expressions 127
9.3 Assignment 128
9.4 Conditional Execution 131
9.5 case Expressions 136
9.6 Loops 137
9.7 Variable Scope, Loops, and Blocks 142
10. Exceptions, catch, and throw..........145
10.1 The Exception Class 145
10.2 Handling Exceptions 146
10.3 Raising Exceptions 150
10.4 catch and throw 151
11. Basic Input and Output............153
11.1 What Is an IO Object? 153
11.2 Opening and Closing Files 153
11.3 Reading and Writing Files 154
11.4 Talking to Networks 158
11.5 Parsing HTML 159
12. Fibers, Threads, and Processes..........161
12.1 Fibers 161
12.2 Multithreading 163
12.3 Controlling the Thread Scheduler 167
Contents • v
12.4 Mutual Exclusion 167
12.5 Running Multiple Processes 170
13. Unit Testing..............175
13.1 The Testing Framework 177
13.2 Structuring Tests 181
13.3 Organizing and Running Tests 183
13.4 RSpec and Shoulda 186
13.5 Test::Unit assertions 193
14. When Trouble Strikes!............195
14.1 Ruby Debugger 195
14.2 Interactive Ruby 196
14.3 Editor Support 197
14.4 But It Doesn t Work! 198
14.5 But It s Too Slow! 201
Part II — Ruby in Its Setting
15. Ruby and Its World............209
15.1 Command-Line Arguments 209
15.2 Program Termination 214
15.3 Environment Variables 214
15.4 Where Ruby Finds Its Libraries 216
15.5 RubyGems Integration 217
15.6 The Rake Build Tool 221
15.7 Build Environment 224
16. Namespaces, Source Files, and Distribution.......225
16.1 Namespaces 225
16.2 Organizing Your Source 226
16.3 Distributing and Installing Your Code 233
17. Character Encoding............239
17.1 Encodings 240
17.2 Source Files 240
17.3 Transcoding 245
17.4 Input and Output Encoding 246
17.5 Default External Encoding 248
17.6 Encoding Compatibility 249
17.7 Default Internal Encoding 250
17.8 Fun with Unicode 251
18. Interactive Ruby Shell............253
18.1 Command Line 253
18.2 Commands 260
19. Documenting Ruby............263
19.1 Adding RDoc to Ruby Code 266
19.2 Adding RDoc to C Extensions 269
vi • Contents
19.3 Running RDoc 271
19.4 Ruby source file documented with RDoc 273
19.5 C source file documented with RDoc 274
20. Ruby and the Web.............277
20.1 Writing CGI Scripts 277
20.2 Using cgi.rb 277
20.3 Templating Systems 280
20.4 Cookies 284
20.5 Choice of Web Servers 286
20.6 Frameworks 287
21. Ruby and Microsoft Windows..........289
21.1 Running Ruby Under Windows 289
21.2 Win32 API 289
21.3 Windows Automation 290
Part III — Ruby Crystallized
22. The Ruby Language............297
22.1 Source File Encoding 297
22.2 Source Layout 297
22.3 The Basic Types 299
22.4 Names 306
22.5 Variables and Constants 308
22.6 Expressions, Conditionals, and Loops 316
22.7 Method Definition 323
22.8 Invoking a Method 327
22.9 Aliasing 330
22.10 Class Definition 331
22.11 Module Definitions 333
22.12 Access Control 335
22.13 Blocks, Closures, and Proc Objects 335
22.14 Exceptions 339
22.15 catch and throw 341
23. Duck Typing..............343
23.1 Classes Aren t Types 344
23.2 Coding like a Duck 348
23.3 Standard Protocols and Coercions 349
23.4 Walk the Walk, Talk the Talk 355
24. Metaprogramming.............357
24.1 Objects and Classes 357
24.2 Singletons 360
24.3 Inheritance and Visibility 365
24.4 Modules and Mixins 366
24.5 Metaprogramming Class-Level Macros 372
24.6 Two Other Forms of Class Definition 377
Contents • vii
24.7 instance_eval and class_eval 379
24.8 Hook Methods 383
24.9 One Last Example 388
24.10 Top-Level Execution Environment 390
24.11 The Turtle Graphics Program 391
Reflection, ObjectSpace, and Distributed Ruby 393
25.1 Looking at Objects 393
25.2 Looking at Classes 394
25.3 Calling Methods Dynamically 396
25.4 System Hooks 398
25.5 Tracing Your Program s Execution 400
25.6 Behind the Curtain: The Ruby VM 402
25.7 Marshaling and Distributed Ruby 403
25.8 Compile Time? Runtime? Anytime! 408
Locking Ruby in the Safe........ . . 409
26.1 Safe Levels 410
26.2 Tainted Objects 410
26.3 Trusted Objects 411
26.4 Definition of the safe levels 412
Part IV — Ruby Library Reference
27. Built-in Classes and Modules..........417
28. Standard Library.............729
Al. Support...............829
Al.l Web Sites 829
Al .2 Usenet Newsgroup 830
Al.3 Mailing Lists 830
Al .4 Bug Reporting 830
Bibliography
Index.
831
833
|
any_adam_object | 1 |
author | Thomas, David 1956- Fowler, Chad Hunt, Andrew 1964- |
author_GND | (DE-588)141256508 (DE-588)139216308 (DE-588)133675025 |
author_facet | Thomas, David 1956- Fowler, Chad Hunt, Andrew 1964- |
author_role | aut aut aut |
author_sort | Thomas, David 1956- |
author_variant | d t dt c f cf a h ah |
building | Verbundindex |
bvnumber | BV041154316 |
classification_rvk | ST 250 |
classification_tum | DAT 368f |
ctrlnum | (OCoLC)858018029 (DE-599)BVBBV041154316 |
discipline | Informatik |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>01595nam a2200385 c 4500</leader><controlfield tag="001">BV041154316</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">20170620 </controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">130718s2013 d||| |||| 00||| eng d</controlfield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9781937785499</subfield><subfield code="9">978-1-937-78549-9</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">1937785491</subfield><subfield code="9">1-937-78549-1</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)858018029</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)BVBBV041154316</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DE-604</subfield><subfield code="b">ger</subfield><subfield code="e">rakwb</subfield></datafield><datafield tag="041" ind1="0" ind2=" "><subfield code="a">eng</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-83</subfield><subfield code="a">DE-91G</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 250</subfield><subfield code="0">(DE-625)143626:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">DAT 368f</subfield><subfield code="2">stub</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Thomas, David</subfield><subfield code="d">1956-</subfield><subfield code="e">Verfasser</subfield><subfield code="0">(DE-588)141256508</subfield><subfield code="4">aut</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Programming Ruby 1.9 & 2.0</subfield><subfield code="b">the pragmatic programmers' guide ; [for Ruby 1.9 and Ruby 2.0]</subfield><subfield code="c">Dave Thomas with Chad Fowler and Andy Hunt</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">Dallas, Tex. [u.a.]</subfield><subfield code="b">The Pragmatic Bookshelf</subfield><subfield code="c">2013</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">XVI, 863 S.</subfield><subfield code="b">graph. Darst.</subfield><subfield code="c">cm</subfield></datafield><datafield tag="336" ind1=" " ind2=" "><subfield code="b">txt</subfield><subfield code="2">rdacontent</subfield></datafield><datafield tag="337" ind1=" " ind2=" "><subfield code="b">n</subfield><subfield code="2">rdamedia</subfield></datafield><datafield tag="338" ind1=" " ind2=" "><subfield code="b">nc</subfield><subfield code="2">rdacarrier</subfield></datafield><datafield tag="490" ind1="0" ind2=" "><subfield code="a">The facets of ruby series</subfield></datafield><datafield tag="490" ind1="0" ind2=" "><subfield code="a">The pragmatic programmers</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Ruby</subfield><subfield code="g">Programmiersprache</subfield><subfield code="0">(DE-588)4653817-3</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="689" ind1="0" ind2="0"><subfield code="a">Ruby</subfield><subfield code="g">Programmiersprache</subfield><subfield code="0">(DE-588)4653817-3</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2=" "><subfield code="5">DE-604</subfield></datafield><datafield tag="700" ind1="1" ind2=" "><subfield code="a">Fowler, Chad</subfield><subfield code="e">Verfasser</subfield><subfield code="0">(DE-588)139216308</subfield><subfield code="4">aut</subfield></datafield><datafield tag="700" ind1="1" ind2=" "><subfield code="a">Hunt, Andrew</subfield><subfield code="d">1964-</subfield><subfield code="e">Verfasser</subfield><subfield code="0">(DE-588)133675025</subfield><subfield code="4">aut</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">HBZ Datenaustausch</subfield><subfield code="q">application/pdf</subfield><subfield code="u">http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=026129737&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA</subfield><subfield code="3">Inhaltsverzeichnis</subfield></datafield><datafield tag="999" ind1=" " ind2=" "><subfield code="a">oai:aleph.bib-bvb.de:BVB01-026129737</subfield></datafield></record></collection> |
id | DE-604.BV041154316 |
illustrated | Illustrated |
indexdate | 2024-07-10T00:40:49Z |
institution | BVB |
isbn | 9781937785499 1937785491 |
language | English |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-026129737 |
oclc_num | 858018029 |
open_access_boolean | |
owner | DE-83 DE-91G DE-BY-TUM |
owner_facet | DE-83 DE-91G DE-BY-TUM |
physical | XVI, 863 S. graph. Darst. cm |
publishDate | 2013 |
publishDateSearch | 2013 |
publishDateSort | 2013 |
publisher | The Pragmatic Bookshelf |
record_format | marc |
series2 | The facets of ruby series The pragmatic programmers |
spelling | Thomas, David 1956- Verfasser (DE-588)141256508 aut Programming Ruby 1.9 & 2.0 the pragmatic programmers' guide ; [for Ruby 1.9 and Ruby 2.0] Dave Thomas with Chad Fowler and Andy Hunt Dallas, Tex. [u.a.] The Pragmatic Bookshelf 2013 XVI, 863 S. graph. Darst. cm txt rdacontent n rdamedia nc rdacarrier The facets of ruby series The pragmatic programmers Ruby Programmiersprache (DE-588)4653817-3 gnd rswk-swf Ruby Programmiersprache (DE-588)4653817-3 s DE-604 Fowler, Chad Verfasser (DE-588)139216308 aut Hunt, Andrew 1964- Verfasser (DE-588)133675025 aut HBZ Datenaustausch application/pdf http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=026129737&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA Inhaltsverzeichnis |
spellingShingle | Thomas, David 1956- Fowler, Chad Hunt, Andrew 1964- Programming Ruby 1.9 & 2.0 the pragmatic programmers' guide ; [for Ruby 1.9 and Ruby 2.0] Ruby Programmiersprache (DE-588)4653817-3 gnd |
subject_GND | (DE-588)4653817-3 |
title | Programming Ruby 1.9 & 2.0 the pragmatic programmers' guide ; [for Ruby 1.9 and Ruby 2.0] |
title_auth | Programming Ruby 1.9 & 2.0 the pragmatic programmers' guide ; [for Ruby 1.9 and Ruby 2.0] |
title_exact_search | Programming Ruby 1.9 & 2.0 the pragmatic programmers' guide ; [for Ruby 1.9 and Ruby 2.0] |
title_full | Programming Ruby 1.9 & 2.0 the pragmatic programmers' guide ; [for Ruby 1.9 and Ruby 2.0] Dave Thomas with Chad Fowler and Andy Hunt |
title_fullStr | Programming Ruby 1.9 & 2.0 the pragmatic programmers' guide ; [for Ruby 1.9 and Ruby 2.0] Dave Thomas with Chad Fowler and Andy Hunt |
title_full_unstemmed | Programming Ruby 1.9 & 2.0 the pragmatic programmers' guide ; [for Ruby 1.9 and Ruby 2.0] Dave Thomas with Chad Fowler and Andy Hunt |
title_short | Programming Ruby 1.9 & 2.0 |
title_sort | programming ruby 1 9 2 0 the pragmatic programmers guide for ruby 1 9 and ruby 2 0 |
title_sub | the pragmatic programmers' guide ; [for Ruby 1.9 and Ruby 2.0] |
topic | Ruby Programmiersprache (DE-588)4653817-3 gnd |
topic_facet | Ruby Programmiersprache |
url | http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=026129737&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |
work_keys_str_mv | AT thomasdavid programmingruby1920thepragmaticprogrammersguideforruby19andruby20 AT fowlerchad programmingruby1920thepragmaticprogrammersguideforruby19andruby20 AT huntandrew programmingruby1920thepragmaticprogrammersguideforruby19andruby20 |