《Dive Into Python》非死不可
译者言:
早在 2008 年 8 月,我就曾在自己的博客发表了一篇《为什么<Dive into Python>不值得推荐》(http://blog.csdn.net/lanphaday/archive/2008/08/28/2845258.aspx ),当时引起的讨论就不多说了,不过事实上到今天仍然有许多朋友留言与我讨论,让我几次贼心不死,想写再深入批判。好运的时候在我真正攒足动力之前,看到了这篇《Dive Into Python Must Die》,骂得痛快!所以我就把它简单翻译一下,借花献佛,也算是作为大家对我之前的小文的一个回应。
===================
原文:http://oppugn.us/posts/1272050135.html
译:赖勇浩(http://laiyonghao.com )
《Dive Into Python》非死不可
我受够了。 《Dive Into Python》 是一本关于学习 Python 的烂书,它非死不可。 许多人找到这本书,并被它极其垃圾的章节设计弄 死在学习之路上,为此我决定宣战了。 该书不可思议,使用过时的技术,举面目可憎的例 子,并且 Mark Pilgrim(作者)面对他人评论时冷嘲热讽:
09:42 @ diveintomark @ zedshaw 完全重写了一本我 6 年没打理过的书的前3章? 是的,我即刻去办。
11:32 @ diveintomark @ zedshaw 你肯定是有很多意见。 你最好在博客上写!
这是他对我提出从书中把 ODBC 相关章节删除的答复。 现在已经 2010 年了,他那本号称能够教会大家编程的该死的书,仍然使用上世纪 90 年代的技术。 是的,事实上 他 是在 6 年前教学 Python 时开始 写他的书的。 但即使当时这也是一个愚蠢 的决定。
这在科技书历史上闻所未闻。 Mark Lutz 的书《Learing Python》已更新 4 次,内容与这门编程语言严格一致。 他的书很容易阅读,很容易 教会大家,读者并不需要有多少有关计算机的知识。
与此同时,Pilgrim 先生的书已经 6 年没有更新,虽然它是在线书籍,读者能够给作者提交补丁。 没错,这家伙的书是摆在了网络上,可是即使大家 都给他提了意见和反馈,他仍然懒得更新。 如果他把书的源码拿出来,那么大家也可以为他纠 正这些错漏,但他没有。他把自己的那砣屎放到网上免费阅读,以此作为与《Learing Python》竞争的唯一手段。
《Dive Into Python》并非仅仅因为使用了 ODBC 而被评为烂书,即使第一个例子也烂到如同狗屎。 看看你的第一个 Python 程序 ,有多少东西需要初学者能够憣然领悟:
- 带着一砣巨大的文档字符串 去定义函数。
- 面目可憎的双下划线变量,还使用了一个垃圾字 体,让人看起来以为是单下划线。
- 上来就用 list comprehension 替代了 for 循环,这是用来把元组中的元素格式化后串接在一起功能。
- 定义字典的时候使用来并不 需要的反斜杠来格式化代码。
靠,这是一个设计良好的“第一个例子”吗? 更糟糕的是它以 ODBC 为主线来教 Python。
尽管 Python 实际上是设计得极易于使用的少数语言之一,但当初学者看到这本书,会觉得它如此复杂和艰难, 能够让他们羞愧到恨不得一 头撞死在这本书上。
《Dive Into Python 3》的第一个例子也烂得像砣屎。 让我们掩鼻来看看所谓的你的第一个 Python 程序 。 这是多么操蛋的事情啊! 你写的第一个程序居然涉及 如此多的知识点:
- 带有字符串和列表和多层词典。
- 函 数后面紧跟一砣文档字符串,混淆了语法。
- 抛出异常。
- 如 何使用三元运算符风格的 if 语句。
- 循环嵌套。
- 主 函数技法使用了非常烂的字体,双下划看起来就像单下划线一样。
这就是所谓的第一个 程序? 当有人叫初学者去读《Dive Into Python》,他们遇到这样的例子,应该会泄气吧? 我希望作者能够声明或警告 大家:这不是初学者的书,但他没有。 事实上,他用整整一章的篇幅来写“安装 Python 3”,显然他就是写给初学者的。
这本书一开始就使用糟糕透顶的例子,读者难以循序渐进地学习,它的存在实际上伤害了 Python。 当初学者遇到挫折,他们会气馁,然后转向另一种语言。 我个人有太多的朋友原本渴望学习编程,但在我警告他们之前找到了这砣恶臭的狗屎,最后他们远离了编程。
我说完了。 Pilgrim 先生并不理解初学者的需要(其他“专家”也如此),只能给大家一砣狗屎。 由于他不愿意更新图书和解决它那些显而易见的问题,而且他拥有这样做的自由,那么唯一能做的就是请求大家不 推荐这本书。
不管出于什么目的,请告诉他人不要从《Dive Into Python》开始学习。 否则你只会使他远离这门语言,甚至是远离编程。
《Dive Into Python》非死不可相关推荐
- 为什么《Dive into Python》不值得推荐
2010 年 5 月 5 日更新:我翻译了一篇<<Dive Into Python>非死不可>作为对本文观点的进一步支持和对评论的回复,请见:http://blog.csdn. ...
- Dive into Python
写这篇文章的原因完全是为了督促自己每天晚上看完两章<Dive Into Python>这本书,因此,很多内容都是摘抄自原书的翻译版或者是自己瞎想,于是就顺带着记录了下来.此前已经看完前两章 ...
- <Dive into Python>大补贴(1)
<Dive into Python>大补贴 作者:赖勇浩 前言 前几日发了一篇<为什么<Dive into Python>不值得推荐>的贴子,有朋友指出这本书虽然不 ...
- <Dive into Python>大补贴
作者:赖勇浩 前言 前几日发了一篇<为什么<Dive into Python>不值得推荐>的贴子,有朋友指出这本书虽然不适合初学者,但里面的一些内容还是可以当作提高篇的,最大的 ...
- python非贪婪、多行匹配正则表达式例子[转载]
python非贪婪.多行匹配正则表达式例子[转载] 一些regular的tips: 1 非贪婪flag >>> re.findall(r"a(\d+?)", &q ...
- Python非本地语句
本文翻译自:Python nonlocal statement What does the Python nonlocal statement do (in Python 3.0 and later) ...
- <Dive into Python>大补贴(2)
赖勇浩(http://laiyonghao.com) 第二贴 在 2.2 节函数声明中,DIP 讲述了关于函数定义的一些基础知识,后来又在 4.2 节使用可选参数和命名参数中讲述了关于函数参数的较为深 ...
- python非递归前序遍历二叉树_Python非递归实现二叉树的后续遍历
leetcode 145. Binary Tree Postorder Traversal 思路一: 使用一个栈stack保存经过的根结点,另一个栈flag保存每个结点的右子树是否遍历: 如果根结点存 ...
- 人生,还没困难到非死不可
最近半个月,美国著名的Facebook公司,出了好几件大事. 第一件事,2019年9月19日,一名陈姓中国软件工程师在Facebook加州总部跳楼自杀. 第二件事,2019年10月4日,一名软件工程师 ...
最新文章
- 逆矩阵、伪逆矩阵:数据的压缩和复原
- Java 基础【12】 日期类型
- 关于深度学习框架Hamaa与Python API文档生成工具Sophon
- JS核心基础数组的操作概述
- 一根绳子从一头烧需30时分钟_小学生一分钟跳绳满分训练指南
- Qt5及模块架构分析
- 21SpringMvc_异步发送表单数据到Bean,并响应JSON文本返回(这篇可能是最重要的一篇了)...
- FFMPEG结构体分析:AVStream
- Atitit.ioc 动态配置文件guice 设计原理
- Android反编译实战-去广告
- 显示最新的Picasaweb上传
- CCD传感器成像、尺寸、曝光时间
- 【关于c/c++中开平方函数sqrt()的用法】
- layui+thymeleaf 点击弹框右上角叉号刷新父页面
- ECharts 示例——双Y轴
- 一台电脑控制多部手机怎么实现
- C语言代码覆盖率测试软件,代码覆盖率检测工具GCOV
- 【java并发探赜索隐】判断标志、死锁、守护进程
- Bilstm+crf中的crf详解
- 数据库(Mysql)的四种隔离级别
热门文章
- 百度与重庆市人力资源和社会保障局达成战略合作,共建AI人才产业基地
- 2020 蓝桥杯总结(内附20GB资料)
- matlab 2014 win7 64位,win764位系统电脑肿么安装matlab2014a
- 第五章 投资性房地产
- Core Java For The Impatient-阅读笔记1.基本的编程结构
- Android加载自定义字体出错,Android设置自定义字体的解决方案
- Re:惠普DJ3836打印机之无法连接wifi
- mysql实现序列自增_MySQL实现序列自增
- 宝塔面板安装php扩展
- 开源丨CloudBase CMS 内容管理系统!简单易用企业内容管理流