码迷,mamicode.com
首页 > 其他好文 > 详细

编程人生读书笔记(4):Bredan Eich

时间:2015-11-07 21:40:39      阅读:304      评论:0      收藏:0      [点我收藏+]

标签:

Bredan Eich是JavaScript设计者,Mozilla首席技术官,ECMAScript标准的制定者。
Breda有着坚实的理论基础和较强的工程实践能力,本科物理专业,数学底子很好。在学校里主要做科研编程,毕业后从事网络、系统内核开发。专长是编译器,内核开发,设计了JavaScript语言。

0、总结
从语言设计者的角度看待编程、学习和实践的关系:
- 编程要实践,选择合适的工具(语言),有自己的态度(动力)坚持练习。
- 设计代码的方法:用伪代码理清思路,再着手底层实践。实践多了,最后总结成为脑中的代码块。
- 开始编码前要多思考,搞清楚关键问题和可能的办法再下手。
- 学习编程的深度:语法、运行时、本地方法,乐于了解底层的东西。
- 挑选适合自己领域的开源代码阅读,从全局的角度把握。
- 设计模式要与实践经验结合,不能照搬书本。

1、如何学习编程
- 编程就像唱歌和写作一样,需要反复练习。但是跟唱歌一样,没有好的音调系统,练也白搭。语言很重要。
- 编程要有了解底层原理的习惯。不单单是学习这个源码语言,还研究它的运行时,本地方法。
- 有能力去系统地、放松地学习一些东西是很不错的。
- 没耐心和对原始工具的讨厌,这两种态度是驱动我成长的动力。

2、如何设计代码
a)准备阶段
- 开始设计之前,可能还有跟实体关系或者粗略的模块化有关的工作
- 可能有两三种方法弄清工程的复杂度,是线性增长还是常量?
b)开始阶段
- 反复做原型。先做顶层伪代码,再自底向上实现。
c)进阶
大脑中已经记住了底层的东西。
- 在已有的程序中加入新的子系统或者扩展一下,大多数时候都是可以从底层写起。
- 遇到困难时写一些伪代码,再自底向上实现。
- 在编写过程中,测试的时候回检查每一个环节以确定他们都能运行正常

3、如何调试bug
- 使用二分法,“圈狼”。

4、如何阅读代码
- 要深入代码,了解程序的动态状态,看程序要像看航拍照片一样,从全局的角度去把握它们。
- 通常会从上往下读,不懂的地方用调试工具来辅助阅读。
- 喜欢看其他程序员的代码,包括不少服务器端框架的代码,还有Python和ruby之类。有实现代码也有库代码,特别是Ajax库。

5、读书
读书学编程这种形式值得怀疑。
- 推荐Brain Kernighan的书
- 《计算机编程艺术》卷一到卷三
- Smalltalk的书
- Adele Goldberg的书
- 《摩托车维修的禅与艺术》

6、如何看待设计模式
- 不能仅仅依靠那些过时的设计编程,要不断实践,包括对设计进行反思,把编程的经验融入设计中。
- 模式体现了程序语言中的不足之处。

7、“隐藏关卡”
这篇访谈里有很多有意思的内容值得分析。
- 编程语言的设计中有很多“临时”或者“糟糕”的设计,这一点在JavaScript的作者口中得到了证实。一些设计模式、语言的“边角知识”会被人总结成《C语言指针陷阱》、《Java解惑》这样的内容,各种专题博客更是数不胜数。编程中,不要被完美的抽象迷惑,深入“下水道”才能看到那些高难度技术问题的根源。
- 不要被大师的说法迷惑。经典书籍是要读的,设计模式也是要了解的,只是在实际操作中不要全盘接受,而是有思考地学习,要结合实践。
- 与之前几篇访谈一样,都提到了读代码和实践的重要性。但是这里还有一个隐含的条件,就是投入的时间——这里的答案是很多。

告别了Bredan Eich,下一位会是Java大师Joshua Bloch,期待。


编程人生读书笔记(4):Bredan Eich

标签:

原文地址:http://www.cnblogs.com/tangyouhua/p/4945999.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!