The D Programming Language (英語) ペーパーバック – 2010/6/2
Kindle 端末は必要ありません。無料 Kindle アプリのいずれかをダウンロードすると、スマートフォン、タブレットPCで Kindle 本をお読みいただけます。
“To the best of my knowledge, D offers an unprecedentedly adroit integration of several powerful programming paradigms: imperative, object-oriented, functional, and meta.”
—From the Foreword by Walter Bright
“This is a book by a skilled author describing an interesting programming language. I’m sure you’ll find the read rewarding.”
—From the Foreword by Scott Meyers
D is a programming language built to help programmers address the challenges of modern software development. It does so by fostering modules interconnected through precise interfaces, a federation of tightly integrated programming paradigms, language-enforced thread isolation, modular type safety, an efficient memory model, and more.
The D Programming Language is an authoritative and comprehensive introduction to D. Reflecting the author’s signature style, the writing is casual and conversational, but never at the expense of focus and precision. It covers all aspects of the language (such as expressions, statements, types, functions, contracts, and modules), but it is much more than an enumeration of features.
Inside the book you will find
- In-depth explanations, with idiomatic examples, for all language features
- How feature groups support major programming paradigms
- Rationale and best-use advice for each major feature
- Discussion of cross-cutting issues, such as error handling, contract programming, and concurrency
- Tables, figures, and “cheat sheets” that serve as a handy quick reference for day-to-day problem solving with D
Written for the working programmer, The D Programming Language not only introduces the D language—it presents a compendium of good practices and idioms to help both your coding with D and your coding in general.
Andrei Alexandrescu, Ph.D., is the author of the award-winning books Modern C++ Design (Addison-Wesley, 2001) and, with Herb Sutter, C++ Coding Standards (Addison-Wesley, 2005). Through his work, Andrei has garnered a solid reputation as a leading innovator in programming languages and methods. Since 2006, he has collaborated closely with Walter Bright—the original designer and implementer of D—on designing and implementing the language and its standard library.
While some previous programming previous is assumed, familiarity with the specifics of given paradigms is not. The justification behind concepts such as contract programming is stated, before discussing D's implementation. The author assumes no familiarity with D's syntax, making this book an excellent way to learn the language.
One of the best features of this book is its bibliography. Throughout the text citations are provided for certain facts or arguments, which provide more depth or context. These also serve to strengthen the implicit argument that D is a well-thought out and designed language.
When a code example is given, it shows up as inline text, with a hyperlink above that says "Click here to view code image". At first, I was having trouble understanding the code in the inline text - it had gaps in it, as if extra spaces were inserted. For instance, here's one example from section 4.1.7:
double a, b, c;
a = ( b (c 4)) c d;
The last line doesn't make any sense.
What I realized is that none of the punctuation symbols that represent operators were being displayed! The last line should show as:
a = -( b * (c + 4)) + c * d;
It shows correctly if I click on the "Click here to view code image" link, and it also has the correct characters if you copy the line and, for example, paste it into Notepad. So the problem is clearly not that the characters are missing, it's that they are not being displayed for some reason.
This is not isolated to one place, it happens in pretty much every code example that has any operator characters in it.
So if you are trying to understand a code example, the "Click here to view code image" link might be your friend :-)