چه کسانی این کتاب را می‌خوانند

دانشجوعلاقه‌مند یادگیری
کتابخوان حرفه‌ایلذت مطالعه
نویسندهالهام‌گیری

Programming Ruby 1.9 & 2.0, 4th Edition: The Pragmatic Programmers' Guide

Dave Thomas, with Chad Fowler, Andy Hunt

قیمت نهایی

۴۹٬۰۰۰ تومان

نسخه اصلی و اورجینال

بلافاصله پس از خرید، فایل کتاب روی دستگاه شما آمادهٔ دانلود است.

تحویل فوری
پرداخت امن
ضمانت فایل
پشتیبانی

مشخصات کتاب

سال انتشار
۲۰۱۳
فرمت
PDF
زبان
انگلیسی
حجم فایل
۱۹٫۲ مگابایت
شابک
9781937785499، 1937785491

دربارهٔ کتاب

Would you like to go from first idea to working code much, much faster? Do you currently spend more time satisfying the compiler instead of your clients or end users? Are you frustrated with demanding languages that seem to get in your way, instead of getting the work done? Are you using Rails, and want to dig deeper into the underlying Ruby language? If so, then we've got a language and book for you! Ruby is a fully object-oriented language, much like the classic object-oriented language, Smalltalk. Like Smalltalk, it is dynamically typed (as opposed to Java or C++), but unlike Smalltalk, Ruby features the same conveniences found in modern scripting languages such as Perl and Python. Cover 1 Table of Contents 5 Foreword to the Third Edition 10 Preface 11 Why Ruby? 11 Ruby Versions 12 Changes in the Book 12 Resources 12 Acknowledgments 13 Notation Conventions 14 Road Map 15 Part I—Facets of Ruby 17 1. Getting Started 18 The Command Prompt 18 Installing Ruby 20 Running Ruby 24 Ruby Documentation: RDoc and ri 26 2. Ruby.new 29 Ruby Is an Object-Oriented Language 29 Some Basic Ruby 31 Arrays and Hashes 34 Symbols 35 Control Structures 37 Regular Expressions 38 Blocks and Iterators 39 Reading and 'Riting 41 Command-Line Arguments 42 Onward and Upward 42 3. Classes, Objects, and Variables 43 Objects and Attributes 46 Classes Working with Other Classes 51 Access Control 54 Variables 57 4. Containers, Blocks, and Iterators 59 Arrays 59 Hashes 61 Blocks and Iterators 66 Containers Everywhere 82 5. Sharing Functionality: Inheritance, Modules, and Mixins 83 Inheritance and Messages 83 Modules 87 Mixins 89 Iterators and the Enumerable Module 91 Composing Modules 91 Inheritance, Mixins, and Design 94 6. Standard Types 96 Numbers 96 Strings 99 Ranges 103 7. Regular Expressions 106 What Regular Expressions Let You Do 106 Ruby's Regular Expressions 107 Digging Deeper 109 Advanced Regular Expressions 118 8. More About Methods 128 Defining a Method 128 Calling a Method 131 9. Expressions 137 Operator Expressions 138 Miscellaneous Expressions 139 Assignment 140 Conditional Execution 144 case Expressions 148 Loops 150 Variable Scope, Loops, and Blocks 154 10. Exceptions, catch, and throw 156 The Exception Class 156 Handling Exceptions 157 Raising Exceptions 161 catch and throw 162 11. Basic Input and Output 164 What Is an IO Object? 164 Opening and Closing Files 164 Reading and Writing Files 165 Talking to Networks 169 Parsing HTML 170 12. Fibers, Threads, and Processes 172 Fibers 172 Multithreading 174 Controlling the Thread Scheduler 178 Mutual Exclusion 178 Running Multiple Processes 181 13. Unit Testing 185 The Testing Framework 187 Structuring Tests 191 Organizing and Running Tests 193 RSpec and Shoulda 196 Test::Unit assertions 203 14. When Trouble Strikes! 205 Ruby Debugger 205 Interactive Ruby 206 Editor Support 207 But It Doesn't Work! 208 But It's Too Slow! 211 Part II—Ruby in Its Setting 216 15. Ruby and Its World 217 Command-Line Arguments 217 Program Termination 222 Environment Variables 222 Where Ruby Finds Its Libraries 224 RubyGems Integration 225 The Rake Build Tool 230 Build Environment 232 16. Namespaces, Source Files, and Distribution 233 Namespaces 233 Organizing Your Source 234 Distributing and Installing Your Code 241 17. Character Encoding 246 Encodings 247 Source Files 247 Transcoding 252 Input and Output Encoding 253 Default External Encoding 255 Encoding Compatibility 256 Default Internal Encoding 257 Fun with Unicode 258 18. Interactive Ruby Shell 259 Command Line 259 Commands 266 19. Documenting Ruby 269 Adding RDoc to Ruby Code 272 Adding RDoc to C Extensions 275 Running RDoc 277 Ruby source file documented with RDoc 278 C source file documented with RDoc 280 20. Ruby and the Web 282 Writing CGI Scripts 282 Using cgi.rb 282 Templating Systems 285 Cookies 289 Choice of Web Servers 291 Frameworks 292 21. Ruby and Microsoft Windows 293 Running Ruby Under Windows 293 Win32API 293 Windows Automation 294 Part III—Ruby Crystallized 299 22. The Ruby Language 300 Source File Encoding 300 Source Layout 300 The Basic Types 302 Names 309 Variables and Constants 311 Expressions, Conditionals, and Loops 319 Method Definition 326 Invoking a Method 330 Aliasing 333 Class Definition 334 Module Definitions 336 Access Control 338 Blocks, Closures, and Proc Objects 338 Exceptions 342 catch and throw 344 23. Duck Typing 345 Classes Aren't Types 346 Coding like a Duck 350 Standard Protocols and Coercions 351 Walk the Walk, Talk the Talk 357 24. Metaprogramming 358 Objects and Classes 358 Singletons 361 Inheritance and Visibility 366 Modules and Mixins 367 Metaprogramming Class-Level Macros 373 Two Other Forms of Class Definition 378 instance_eval and class_eval 380 Hook Methods 384 One Last Example 389 Top-Level Execution Environment 391 The Turtle Graphics Program 392 25. Reflection, ObjectSpace, and Distributed Ruby 394 Looking at Objects 394 Looking at Classes 395 Calling Methods Dynamically 397 System Hooks 399 Tracing Your Program's Execution 401 Behind the Curtain: The Ruby VM 403 Marshaling and Distributed Ruby 404 Compile Time? Runtime? Anytime! 409 26. Locking Ruby in the Safe 410 Safe Levels 411 Tainted Objects 411 Trusted Objects 412 Definition of the safe levels 413 Part IV—Ruby Library Reference 415 27. Built-in Classes and Modules 416 Array 420 BasicObject 438 Bignum 443 Binding 446 Class 447 Comparable 449 Complex 450 Dir 455 Encoding 461 Enumerable 465 Enumerator 476 Errno 481 Exception 482 FalseClass 485 Fiber 486 File 487 File::Stat 502 FileTest 508 Fixnum 509 Float 512 GC 516 GC::Profiler 518 Hash 520 Integer 531 IO 535 Kernel 555 Marshal 556 MatchData 558 Math 561 Method 564 Module 567 Mutex 587 NilClass 588 Numeric 590 Object 598 ObjectSpace 630 Proc 632 Process 636 Process::GID 642 Process::Status 643 Process::Sys 646 Process::UID 647 Range 649 Random 654 Rational 655 Regexp 658 Signal 663 String 665 Struct 692 Struct::Tms 696 Symbol 697 Thread 701 ThreadGroup 709 Time 711 TracePoint 721 TrueClass 724 UnboundMethod 725 28. Standard Library 727 Abbrev 729 Base64 730 Benchmark 731 BigDecimal 732 CGI 733 CGI::Session 735 CMath 736 Complex 736 Continuation 737 coverage 738 CSV 739 Curses 741 Date/DateTime 742 DBM 743 Delegator 744 Digest 745 dRuby 746 English 747 erb 748 Etc 750 expect 751 Fcntl 752 Fiber 753 Fiddle 754 FileUtils 755 Find 756 Forwardable 757 GDBM 758 GetoptLong 759 GServer 760 IO/console 760 IO/nonblock 761 IO/Wait 761 IPAddr 762 irb 763 json 764 Logger 765 mathn 766 Matrix 767 MiniTest 767 Monitor 768 Mutex_m 769 Net::FTP 770 Net::HTTP 771 Net::IMAP 773 Net::POP 774 Net::SMTP 775 Net::Telnet 776 NKF 777 Observable 778 open-uri 779 Open3 780 OpenSSL 781 OptionParser 782 OpenStruct 784 Pathname 785 PP 786 PrettyPrint 787 prime 788 Profile 789 Profiler__ 790 PStore 791 PTY 792 Rational 792 Readline 793 Resolv 793 REXML 794 Rinda 796 Ripper 797 RSS 799 Scanf 800 SDBM 801 SecureRandom 801 Set 802 Shellwords 803 Singleton 804 Socket 805 StringIO 806 StringScanner 807 Syslog 808 Tempfile 809 Test::Unit 810 thread 811 ThreadsWait 812 Time 813 Timeout 814 Tk 815 tmpdir 816 Tracer 817 TSort 818 un 819 URI 820 WeakRef 821 WEBrick 822 WIN32OLE 823 XMLRPC 824 YAML 825 Zlib 826 A1. Support 827 Web Sites 827 Usenet Newsgroup 828 Mailing Lists 828 Bug Reporting 828 A2. Bibliography 829 Index 830 – SYMBOLS – 830 – DIGITS – 832 – A – 832 – B – 833 – C – 834 – D – 836 – E – 837 – F – 840 – G – 841 – H – 842 – I – 843 – J – 844 – K – 844 – L – 844 – M – 845 – N – 847 – O – 848 – P – 849 – Q – 851 – R – 851 – S – 853 – T – 856 – U – 858 – V – 859 – W – 859 – X – 860 – Y – 860 – Z – 860 www.it-ebooks.info IT eBooks Ruby 1.9 was a major release of the language: it introduced multinationalization, new block syntax and scoping rules, a new, faster, virtual machine, and hundreds of new methods in dozens of new classes and modules. Ruby 2.0 is less radical--it has keyword arguments, a new regexp engine, and some library changes. This book describes it all. The first quarter of the book is a tutorial introduction that gets you up to speed with the Ruby language and the most important classes and libraries. Download and play with the hundreds of code samples as your experiment with the language. The second section looks at real-world Ruby, covering the Ruby environment, how to package, document, and distribute code, and how to work with encodings. The third part of the book is more advanced. In it, you'll find a full description of the language, an explanation of duck typing, and a detailed description of the Ruby object model and metaprogramming. The book ends with a reference section: comprehensive and detailed documentation of Ruby's libraries. You'll find descriptions and examples of more than 1,300 methods in 58 built-in classes and modules, along with brief descriptions of 97 standard libraries. Ruby makes your programming more productive; it makes coding fun again. And this book will get you up to speed with the very latest Ruby, quickly and enjoyably

Ruby is the fastest growing and most exciting dynamic language out there. If you need to get working programs delivered fast, you should add Ruby to your toolbox. This book is the only complete reference for both Ruby 1.9 and Ruby 2.0, the very latest version of Ruby.

قیمت نهایی

۴۹٬۰۰۰ تومان