如果您的孩子想学程序设计,您会如何选择?

举报
xenia 发表于 2020/02/10 15:37:54 2020/02/10
【摘要】 我是工作之后才开始接触Python的。在那之前一直使用C/C++、Java、C#等传统风格的语言,再看到Python,不免有耳目一新之感。为何以往觉得晦涩难懂的程序设计理念,在Python中却表达得这么简洁易懂?为何以往需要绞尽脑汁才能拼出来的大段代码,在Python里却只需要几个简单调用即可?为何繁复的集合操作,在Python中却只需要一行列表理解循环语句就完成了?为何Python的文档那...

我是工作之后才开始接触Python的。在那之前一直使用C/C++、Java、C#等传统风格的语言,再看到Python,不免有耳目一新之感。为何以往觉得晦涩难懂的程序设计理念,在Python中却表达得这么简洁易懂?为何以往需要绞尽脑汁才能拼出来的大段代码,在Python里却只需要几个简单调用即可?为何繁复的集合操作,在Python中却只需要一行列表理解循环语句就完成了?为何Python的文档那么容易找,还可以使用交互模式轻松尝试?每次使用Python编写程序之后,总会感慨,当初初学程序设计语言的时候,如果教的是Python该多好。相信所有学过C/C++之后再接触Python这类语言的人,都会有相同的感受吧。

那么是什么原因让C/C++几乎垄断了程序设计语言的教材呢?我觉得更多的是历史惯性。在计算机科学教育开始普及的20世纪70、80年代,C语言正在其鼎盛时期,几乎所有的人都在用C开发程序,操作系统、软件、游戏几乎都是用C甚至汇编开发的。硬件性能的限制,让那些更抽象、更高阶的语言,无法普及开来。因此教学自然也使用它。久而久之形成了惯性,到了新世纪,程序设计的教学已经赶不上语言发展的潮流了。我们的程序越来越复杂,越来越像人脑,而教学的语言仍然在使用高级语言中最贴近机器的C。而C++、Java、C#,虽然相对于C更抽象高阶,但由于这些语言设计的初衷仍是以扩展C为主,所以不过是在这一惯性上多走了五十步而已。

《像计算机科学家一样思考Python》这本书正是扭转这种矛盾局面的一个有益的尝试。

《像计算机科学家一样思考》这一系列书,早有耳闻,它可谓开创了程序设计入门书的一个新思路。授人以鱼,不若授人以渔;教人编程,不如引导人思考;教人语言细节,不若指明语言精要。而结合Python语言之后,得到的《像计算机科学家一样思考Python(第2版)》这本书,则是在这个思路上走到了一个极致的佳作。

《像计算机科学家一样思考》是对程序设计教学模式的真谛的领悟,而使用Python这种简洁强大的高阶语言,也正是这种新思路最贴切的贯彻。授人以渔,自然应当用最好的渔具;引导人思考,当然也应使用更贴近人的思路而不是机器思路的语言。Python在高阶语言中,是一个从理念和实际综合考量后非常合适的候选。

在翻译过程中我发现,本书不但思路很贴切其教学主旨,从行文和用例来看也非常浅显易懂。全书讲了非常多的程序设计理念,在读过之后却会觉得那些理念都很自然,大概也是因为作者苦心安排,前后穿插,让读者能循序渐进地明白每个程序设计理念是因为什么而出现的原因吧。这种风格,再配合上精心编辑的示例,用于介绍任何程序设计语言,都是非常合适的。

如果将来我的孩子愿意学习程序设计,我愿意用这本书教他。

这一版,将语言升级到Python 3,从而更加贴近语言发展的趋势。作者对章节内容和示例练习也做出了重新组织和调整,使得阐述行文更加通畅。

尽管我已尽最大努力争取译文准确、完善,但仍然难免有疏漏之处,如发现问题,欢迎批评指正。电子邮箱zhaopuming@gmail.com。



以上内容是译者赵普明为《像计算机科学家一样思考Python(第2版)》写的一篇译后记。

赵普明 毕业清华大学计算机系,从事软件开发行业近10年。从2.3版本开始接触Python,工作中使用Python编写脚本程序,用于快速原型构建以及日志计算等日常作业;业余时,作为一个编程语言爱好者,对D、Kotlin、Lua、Clojure、Scala、Julia、Go等语言均有了解,但至今仍为Python独特的风格、简洁的设计而惊叹。 



《像计算机科学家一样思考》系列图书:

《像计算机科学家一样思考Java》

《像计算机科学家一样思考C++》

《像计算机科学家一样思考Python》(缺货中,可选第2版)

《像计算机科学家一样思考Python(第2版)》


本文转载自异步社区

原文链接:https://www.epubit.com/articleDetails?id=NC7E3EF90E4B00001D3F0250F994010C2

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。