前些天,下了月影《JavaScript王者归来》PDF。
觉得里面的很多理论性的东西讲的不错。分享:
总之一句话,除了掌握JavaScript本身,我们需要学会的另一个重要技巧就是,在正确的时候,正确的地方使用JavaScript。对于JavaScript初学者来说学会判断正确使用的时机有时候甚至比学语言更加困难。
正确的做法是:不要放出魔鬼。所以,JavaScript程序员需要学会的第一个技巧就是掌握在什么情况下使用JavaScript才是安全的。

前些天,下了月影《JavaScript王者归来》的样章。把前后几个章节做了介绍,觉得里面的很多理念讲的不错,只会动手做不去思考的人和空想家一样没用~ 分享
正确的使用
总之一句话,除了掌握JavaScript本身,我们需要学会的另一个重要技巧就是,在正确的时候,正确的地方使用JavaScript。对于JavaScript初学者来说学会判断正确使用的时机有时候甚至比学语言更加困难。
正确的做法是:不要放出魔鬼。所以,JavaScript程序员需要学会的第一个技巧就是掌握在什么情况下使用JavaScript才是安全的。
开始前的思考
事实上,在我们真正使用JavaScript之前,需要反复问自己一个重要问题是,究竟是因为有人想要它,还是因为真正有人需要它。在你驾驭JavaScript马车之前,你必须学会抵制脚本诱惑,把你的脚本用在必要的地方,永远保持你的web界面简洁,风格一致。
在用户眼里,简介一致的风格与提供强大而不常用的功能和看起来很cool而实际上没有什么用的界面特效相比起来,前者更能另他们觉得专业。毕竟,大部分用户和你我一样,掌握一个陌生的环境和新的技能只是为了能够将事情做的更好更快,除非你 要提供一个类似于QZONE之类的娱乐程序,你永远也不要大量地使用不必要的JavaScript.
隐藏在简单表象下的复杂
另一个业内的偏见是脚本语言都是比较简单的,实际上,一门语言是否脚本语言往往是它的设计目标决定的,简单与复杂并不是区分脚本语言和非脚本语言的标准。JavaScript即使放到非脚本语言中来衡量,也是一门相当复杂的语言。
学会管理
作为程序员,如果你不管好自己代码里的变量,那么总有一天你或则你的继任会为它们整天头疼不已。可能出现在任何地方的变量,想缺乏约束四处乱窜的野马,随时可能导致整个系统崩溃。一个好的习惯是用良好的自我约束来限制变量的定义和使用,并且避免定义过多的全局变量。
像程序员一样地思考
在成为程序员的道路上,要经历四个坎坷,让我们用四个境界来标明他们。
第一境界,就是前面所说的,掌握一门或则几门编程语言,会模仿例子来实现程序代码,并且让代码在计算机系统中运行起来。达到这个境界的人,还不能算是真正意义上的程序员,而仅仅是掌握了一种或几种工具的工匠,他们中的熟练者能够快速模仿现成的例子,以实现自己或则用户需要的软件模块。
第一境界的特质是对语言工具的掌握,在这个境界里的高手,会强调自己对语言如何如何熟练,因此这个境界可以用“知器”来表示。
第二个境界里,我们要学习的是分解问题和推理的技巧,学会用逻辑的语言来精确地表达一个命题。在这个境界里,软件工作者掌握的是一种分析具体事物的方法,他们不再一味地模仿,而是开始对一个又一个问题思考并尝试用自己的方法来更好地解决。
在这个层次里的程序员开始关注解决问题的思路,并且关注分析和推理的数学技巧,他们中的优秀者熟知各种算法善用各种各样的命题推理来分析并解决问题。他们同样善于借鉴前人的例子,但是往往能够根据问题的特点进行有效的改进,并且能够在尝试改进的过程中得到创新的成就感和新的经验。在这个层次里的人,对语言的认识比第一境界更加深刻,他们是真正知道如何利用手中语言工具的特点更好解决问题的人。但是他们并不会强调自己对语言如何熟悉,也不再热衷于宣扬掌握如何如何多的语言,在他们眼里,语言仅仅是一种工具而已,真正重要的是分析问题的方法。
第二境界的特质是对具体问题的分析,在这个境界的高手,往往善于从具体问题中分析出合理有效的解决方法。因此用“格物”表示。
第二境界里有真正对如何用程序来解决问题经验丰富的人,这些人能够出色地胜任编码工作,因此我们称他们为Coder,或则初级程序员。
第三境界里,我们要学习的是抽象思维和找出事物表象后的规律。在这个境界里,软件工作者不再针对一件一件具体的事物来分析,而是尝试理解事物表象下的本质。在这个层次里的人,开始关注事物的共性,并且逐渐掌握归纳和总结的方法。“模式”开始出现在他们的头脑里。
第三境界的特质是对事物本质规律的认识,在这个境界的高手,往往能够快速的抽象问题的本质,从而用最适合的方法来解决问题。这个境界我用“明理”来表示。
达到第三境界的程序员,是天生的设计师,他们对问题的本质领悟能力帮助他们用优美简洁代码来解决问题,他们的代码中充满设计思想。他们是真正能够享受到程序设计的艺术魅力并且充满成就感的一群人。
第三境界里的程序员真正当得起Programmer称号,他们在外人眼里看起来是天生的设计师,艺术家或技术牛人,他们是为软件创作而生的。
第三境界程序员中的极优秀者,并不满足于专家的地位和高薪,他们开始向第四境界艰难地前进。第四境界是程序设计领域的最高境界,要达到这个境界,只需要掌握一样东西,然而这个东西并不是寻常之物,而是许多人穷尽一生也无法得到的,这个世界最为深邃的秘密。

这样的东西,叫做“道”。

对第四境界的程序员来说,“思想”已经不再是很重要的东西,因为他们对程序本质的理解已经超越了问题本身,在他们的代码里,有的只是自然,现实和虚幻的边界都已经模糊,一个完美自治的系统在刹那间诞生,却仿佛从恒古时刻便存在着运动着,从简单而质朴的规律中涵盖着世间万物的本质。因此,这个境界,我称之为“成道”。
代码对于程序员来说就像剑客手中的剑。对于高手来说,剑的长短不是决定因素,剑招的犀利才是胜负的关键。相对来说越短的剑,破绽越少。
要知道,你写的每段代码,在将来都有可能需要花费精力去维护,代码越多,将来需要维护的工作量越大。
程序大师如是说:“虽然程序只有三行,但总有需要维护的一天。”
聪明的程序员总是用简洁的代码来证明自己的才华,通常情况下,优秀的代码总是比较短的那一段。
吝惜代码的另一个含义是“不要轻易动手编写代码”。真正优秀的程序员永远在深思熟虑之后才动手写代码,因为他们知道,要是实际动手之前避开可能的陷阱,尽量让自己的代码不要有破绽。

在用你的键盘敲出每一行代码前,请三思。优秀的代码是思想的结晶,蹩脚的代码才是呆板的模仿和毫无章法的拼凑。
魔琳人生:www.linlife.com

1条评论 so far
Leave a comment
By DIno on 07.21.08 10:16 pm | Permalink
发表评论