出版社: Pragmatic Bookshelf
副标题: A Pragmatic Guide to Learning Programming Languages
出版年: 2010-10-10
页数: 328
定价: USD 34.95
装帧: Paperback
ISBN: 9781934356593
内容简介 · · · · · ·
Ruby, Io, Prolog, Scala, Erlang, Clojure, Haskell. With Seven Languages in Seven Weeks, by Bruce A. Tate, you'll go beyond the syntax-and beyond the 20-minute tutorial you'll find someplace online. This book has an audacious goal: to present a meaningful exploration of seven languages within a single book. Rather than serve as a complete reference or installation guide, S...
Ruby, Io, Prolog, Scala, Erlang, Clojure, Haskell. With Seven Languages in Seven Weeks, by Bruce A. Tate, you'll go beyond the syntax-and beyond the 20-minute tutorial you'll find someplace online. This book has an audacious goal: to present a meaningful exploration of seven languages within a single book. Rather than serve as a complete reference or installation guide, Seven Languages hits what's essential and unique about each language. Moreover, this approach will help teach you how to grok new languages.
For each language, you'll solve a nontrivial problem, using techniques that show off the language's most important features. As the book proceeds, you'll discover the strengths and weaknesses of the languages, while dissecting the process of learning languages quickly--for example, finding the typing and programming models, decision structures, and how you interact with them.
Among this group of seven, you'll explore the most critical programming models of our time. Learn the dynamic typing that makes Ruby, Python, and Perl so flexible and compelling. Understand the underlying prototype system that's at the heart of JavaScript. See how pattern matching in Prolog shaped the development of Scala and Erlang. Discover how pure functional programming in Haskell is different from the Lisp family of languages, including Clojure.
Explore the concurrency techniques that are quickly becoming the backbone of a new generation of Internet applications. Find out how to use Erlang's let-it-crash philosophy for building fault-tolerant systems. Understand the actor model that drives concurrency design in Io and Scala. Learn how Clojure uses versioning to solve some of the most difficult concurrency problems.
It's all here, all in one place. Use the concepts from one language to find creative solutions in another-or discover a language that may become one of your favorites.
Seven Languages in Seven Weeks的创作者
· · · · · ·
-
Bruce A·Tate 作者
作者简介 · · · · · ·
(Biography)
I started in this industry back in 1985, as a co-op with IBM in Austin. I joined IBM full time in 1987, and spent 13 years with them. I later left to join a startup, and ultimately started my own business where I focus on helping customers build software with lightweight technologies.
I've been writing technical books for more than 10 years now, with the last 7 comi...
(Biography)
I started in this industry back in 1985, as a co-op with IBM in Austin. I joined IBM full time in 1987, and spent 13 years with them. I later left to join a startup, and ultimately started my own business where I focus on helping customers build software with lightweight technologies.
I've been writing technical books for more than 10 years now, with the last 7 coming since 2000. I write for the love of the craft.
Others have told me that my fundamental strength as an author is the ability to quickly recognize emerging trends. I do tend to find emerging frameworks just as they become popular, and that skill is a mixed blessing that--combined with my complete lack of political tact--gets me in trouble sometimes, as it did with Bitter Java (Java is too hard), Beyond Java (Java is not going to last forever), and most recently, From Java to Ruby: Things Every Manager should Know (there's a better language for some problems, but our managers don't know it yet.)
My promise to you is this: I will always seek to find better ways to do things, and will work hard to tell you the truth, without regard for any notion of political correctness. Thanks for reading.
目录 · · · · · ·
Beta 2.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Foreword 10
1 Introduction 13
1.1 Method to the Madness . . . . . . . . . . . . . . . . . . 13
1.2 The Languages . . . . . . . . . . . . . . . . . . . . . . . 15
· · · · · · (更多)
Beta 2.0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Foreword 10
1 Introduction 13
1.1 Method to the Madness . . . . . . . . . . . . . . . . . . 13
1.2 The Languages . . . . . . . . . . . . . . . . . . . . . . . 15
1.3 Buy this Book... . . . . . . . . . . . . . . . . . . . . . . . 17
1.4 Don’t Buy this Book... . . . . . . . . . . . . . . . . . . . 18
1.5 Acknowledgements . . . . . . . . . . . . . . . . . . . . . 21
1.6 A final charge . . . . . . . . . . . . . . . . . . . . . . . . 22
2 Ruby 23
2.1 Quick history . . . . . . . . . . . . . . . . . . . . . . . . 24
2.2 Day 1: Finding a nanny . . . . . . . . . . . . . . . . . . 25
2.3 Day 2: Floating down from the sky . . . . . . . . . . . . 33
2.4 Day 3: Serious change . . . . . . . . . . . . . . . . . . . 45
2.5 Wrapping Up Ruby . . . . . . . . . . . . . . . . . . . . . 52
3 Io 56
3.1 Io . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.2 Day 1: Skipping school, hanging out . . . . . . . . . . . 57
3.3 Day 2: The Sausage King . . . . . . . . . . . . . . . . . 68
3.4 Day 3: The Parade and Other Strange Places . . . . . . 75
3.5 Wrapping Up Io . . . . . . . . . . . . . . . . . . . . . . . 84
4 Prolog 88
4.1 About Prolog . . . . . . . . . . . . . . . . . . . . . . . . . 89
4.2 Day 1. An excellent driver. . . . . . . . . . . . . . . . . . 89
4.3 Day 2: Fifteen Minutes to Wapner . . . . . . . . . . . . 101
4.4 Day 3: Blowing up Vegas . . . . . . . . . . . . . . . . . . 112
4.5 Wrapping Up . . . . . . . . . . . . . . . . . . . . . . . . . 123
5 Scala 127
5.1 About Scala . . . . . . . . . . . . . . . . . . . . . . . . . 127
5.2 Day 1: The Castle on the Hill . . . . . . . . . . . . . . . 131
5.3 Day 2: Clipping bushes and other new tricks . . . . . . 146
5.4 Day 3: Cutting through the fluff . . . . . . . . . . . . . 159
5.5 Wrapping Up Scala . . . . . . . . . . . . . . . . . . . . . 167
6 Erlang 172
6.1 Introducing Erlang . . . . . . . . . . . . . . . . . . . . . 172
6.2 Day 1: Appearing Human . . . . . . . . . . . . . . . . . 176
6.3 Day 2: Changing Forms . . . . . . . . . . . . . . . . . . 186
6.4 Day 3: The Red Pill . . . . . . . . . . . . . . . . . . . . . 197
6.5 Wrapping Up Erlang . . . . . . . . . . . . . . . . . . . . 208
7 Clojure 212
7.1 Coming Soon... . . . . . . . . . . . . . . . . . . . . . . . 212
8 Haskell 213
8.1 Coming Soon... . . . . . . . . . . . . . . . . . . . . . . . 213
9 Wrap up 214
9.1 Coming Soon... . . . . . . . . . . . . . . . . . . . . . . . 214
A Bibliography 215
Index 216
· · · · · · (收起)
喜欢读"Seven Languages in Seven Weeks"的人也喜欢的电子书 · · · · · ·
喜欢读"Seven Languages in Seven Weeks"的人也喜欢 · · · · · ·
- Coders at Work 8.6
- CoffeeScript 8.0
- The Rails 3 Way 8.3
- Land of LISP 8.8
- Debugging 8.3
- Debug It! 7.9
Seven Languages in Seven Weeks的书评 · · · · · · ( 全部 25 条 )
这书真是一本非常好的书
必须阅读,但又浅尝辄止~
> 更多书评 25篇
论坛 · · · · · ·
有读过的人能分享下么? | 来自子江 | 5 回应 | 2012-06-20 15:22:15 |
中文版《七周七语言》将在四月下旬上市 | 来自敏子爱书 | 2012-03-31 17:07:22 |
以下书单推荐 · · · · · · ( 全部 )
- Big Data & Business Intelligence (Jule)
- 书单|图书类Jolt大奖和生产力大奖 (zpp)
- 软件开发工具书 (uncutstone)
- 2011年Dr.Dobb's Jolt图书大奖 (huangz)
- 2011读书 (r2g2)
谁读这本书? · · · · · ·
二手市场
· · · · · ·
- 在豆瓣转让 有357人想读,手里有一本闲着?
订阅关于Seven Languages in Seven Weeks的评论:
feed: rss 2.0
0 有用 蝴蝶来过这世界 2011-11-13 11:09:43
扫了scala的一段,什么时候有空继续扫erlang和clojure。
0 有用 于小鱼 2012-10-13 23:19:38
每年学一门新语言确实是好主意。读过这本书之后,就提前完成7年的计划啦
0 有用 軒轅鍾書 2013-11-12 15:59:36
学习编程,几种类型都涉猎无疑功力大增。Erlang偏居一隅,不必学。Io倒不如JS。Prolog、Scala还是必须学。 作者过赞Ruby,小型网站Web开发尚可;还不如学习用途更广之Python。还想深入,纯FL则Haskell、LISP方言则Clojure。 还未提到的Aspect-Orented的AspectJ和Data-Oriented的SQL,也是比不可少要学的。
1 有用 yuanlin2008 2012-09-07 16:37:20
不同的语言或者语言范式是用来解决不同领域的问题的,强烈推荐这本书,它可以作为语言学习的目录书籍。
0 有用 r2g2 2011-06-23 17:04:04
电子档
0 有用 ¥ifan 2017-08-22 10:14:20
终章对于编程范式转化的梳理短小精悍。重新燃起了写 Haskell 的欲望!
0 有用 halamourinho 2017-05-08 08:06:06
给三星吧。可能限于篇幅,每个语言讲得都比较粗,但是最大的语言特性基本都提及到了。看到中后面有点乏味因为都是差不多的东西,直到haskell的monad才又激发了兴趣。
0 有用 粗人 2017-03-31 13:29:34
飞机上的快餐
0 有用 Eric 2016-07-29 21:58:34
可以感受一下几种语言的特点,但不能细读
0 有用 方若 2016-06-10 18:43:10
介绍的一般。帮助我开阔了视野。