- 本カテゴリの商品を2500円以上購入で買取金額500円UPキャンペーン対象商品です。商品出荷時に買取サービスでご利用いただけるクーポンをメールにてご案内させていただきます。 詳細はこちら (細則もこちらからご覧いただけます)
The Ruby Programming Language (英語) ペーパーバック – 2008/1
Kindle 端末は必要ありません。無料 Kindle アプリのいずれかをダウンロードすると、スマートフォン、タブレットPCで Kindle 本をお読みいただけます。
The Ruby Programming Language is the authoritative guide to Ruby and provides comprehensive coverage of versions 1.8 and 1.9 of the language. It was written (and illustrated!) by an all-star team:
- Yukihiro "Matz" Matsumoto, creator, designer and lead developer of Ruby and author of Ruby in a Nutshell, which has been expanded and revised to become this book.
- why the lucky stiff, artist and Ruby programmer extraordinaire.
The book also includes a long and thorough introduction to the rich API of the Ruby platform, demonstrating -- with heavily-commented example code -- Ruby's facilities for text processing, numeric manipulation, collections, input/output, networking, and concurrency. An entire chapter is devoted to Ruby's metaprogramming capabilities.
The Ruby Programming Language documents the Ruby language definitively but without the formality of a language specification. It is written for experienced programmers who are new to Ruby, and for current Ruby programmers who want to challenge their understanding and increase their mastery of the language.
Yukihiro Matsumoto ("Matz"), the creator of Ruby, is a professional programmer who worked for the Japanese open source company, netlab.jp. Matz is also known as one of the open source evangelists in Japan. He's released several open source products, including cmail, the emacs-based mail user agent, written entirely in emacs lisp. Ruby is his first piece of software that has become known outside of Japan.
If you want the ebook, you can pay an extra $4.99 to upgrade it and get additional DRM-free formats. This is done through O'Reilly's website (theirs a link in the ebook to take you straight to the upgrade page). There's more info about the upgrade in the ebook, but basically it gives you updated versions of the ebook in DRM-free apk (android), DAISY, ePub, mobi (Kindle), and PDF formats.
I recommend the upgrade because the PDF is formatted and looks just like the physical book, and the sample code does not wrap lines.
This upgrade makes the total cost of the ebook just about the same as the physical book at Amazon's $23.99 pricing.
All in all, it's a little disappointing that the ebook isn't formatted to avoid wrapping lines with the sample code, but the upgrade is nice and offers a PDF that doesn't wrap the sample code. The upgrade didn't really add much to the cost, and it's still much less than the $40 list price for the physical book.
In the end, I'd probably just recommend getting the physical book for $23.99, but the ebook is fine, too.
To conclude, the book is great (O'Reilly books usually are), but if you want the ebook, just be aware of the sample wrapping code. The book is a fantastic way to learn Ruby.
The author assumes the reader has a sound foundation in programming another language and often gives excellent examples and analogies for people that may already understand a concept or context in C/C++, Java, Perl, or Python for example. He does the same to warn about things that are different or reversed to avoid confusion, e.g. (pseudo phrasing) "If you're a Java programmer, note that [it] works the opposite way in Ruby. Instead of..." I would not recommend this book to you if you don't have any experience programming but anyone with a sound handle on the basic fundamentals of coding with instantly fall in love with it.
The book is sectioned and organized masterfully making topics easy to find and forward and backward references found throughout the book are helpful instead of a hinderance. The book may have to be read mostly in order for someone who has no previous experience in Ruby, but the topics are contained well enough so that someone looking to hone their skills in certain areas can find what they need very easily. In the extremely rare event that there is an error in the book it is always something like the font appearing too close together or a misspelling in a comment in one of the code examples. Literally, the worst error in the book is that in one code example the author ended a sentence in a comment with a comma by mistake instead of a period.
Ruby is a very powerful and versatile language. As such the book covers some advanced logical material but the author is considerate enough to warn the reader ahead of time. Chapter 8 in particular, and in the interest of being complete, covers some Metaprogramming techniques that many readers might not ever need to use or know. It's there for you if you need it. The code examples are concise, well documented (even more so in potentially confusing areas), and structured beautifully.
This is one of the best books I have read in a VERY long time. In fact, this book has inspired me to break an 11 year silence in technical book reviews. Wow.
After finishing reading this book I can say that there are a lot of topics that I really don't remember anymore and lots of doubts that I still have. The major flaw here is that there are no exercises anywhere in the book. All the best programming books I read in the past have very good exercises to evaluate what you've learned (I could give as examples Learning Perl, C++ Programming Language, Core Java, etc). I think that without exercising what you learned it's really hard to judge how much you have really learned.
Another thing which is not described in the book is how to organize a big project. I'm used to working in large projects in C and C++ and I really have no idea of how to organize a large project in Ruby, how to organize classes in files, etc. I will start studying Rails now, and will get the Rails code and read it to make sense of how to organize a large project but be aware that this is not described here.
Also some sections of the book, are really "dry", like the one who talks about functional programming which is really hard to follow (this one is the first that came to my mind but there are a lot of sections which are hard to follow or don't make a lot of sense when reading first time). These sections are clearly targeted at advanced Ruby programmers.
I'll rate this book with 4 stars because despite the flaws I mentioned, the explanation of the language in general is really good.