做一个半瓶子 Javascript 程序员

最近项目需要一部分 javascript 代码做 DOM 操作,并且最终是要提供给其他项目调用的。组内的其它同事对 JS 不算精通,虽然 Web 前端开发咱不专业,但好歹有幸和 Lewisrealazy 两位高人同事过,这就叫没吃过猪肉也看过猪跑,于是承担起代码初始编写的任务。

过程很简单:首先是根据需求写了大约 1100 行可以工作的代码,交付给第一个用户 todd,然后俺按照他的建议花了大约1天半的时间把代码改写了一遍,剩下最后的逻辑和界面剥离的任务交给别的同事完成。

以前也用过 javascript,这次才真正以开发产品的目的来写代码。(伪)静态类、函数式编程、闭包这些概念首次接触到,感觉 Javascript 是一门很严肃的程序设计语言,要想掌握或者说精通绝对是一个挑战。具体到 Javascript 在浏览器环境(DOM/HTML)的运行就更需要经验了,好比把 Linux 程序移植到 Solaris 和 AIX,总会在一些细微的地方有什么东西会跳出来捣乱。

假设你已经很熟悉一门开发语言了,由于某些原因需要做一点儿 Javascript/AJAX 开发,那怎么开始呢?

1. 从根本上要重视 Javascript 语言。相比较服务器端主流的 C/C++/Java/PHP 而言,Javascript 属于动态语言(在对 Python/Javascript 有了一些初步了解后,我发现严格上来说 PHP 都不能算动态语言),我认为只有掌握了语言的精髓才能写出好的代码。

2. 需要一个好的调试环境。至少现在为止,Firefox + FireBug 的组合应该是无人可敌的吧。

3. 参考手册。MSDN 和 MDC 上都有很好的在线文档。我个人偏好 MDC,包括 Gecko DOM ReferenceCore JavaScript 1.5 GuideCore JavaScript 1.5 Reference。微软还有一个中文的离线文档 jscript5.chm,似乎是随着 Office 2000 一起安装的,网上很多地方提供下载。

4. 学习别人的代码。prototype 是一个很好的起点。

今天刚刚发现一个更简单的代码集合,里面包括"$ function, getElementsByClassName, event handling, the JS 1.6 array methods, and the DOMContentLoaded event",如果 prototype 看的头大,可以先把这个看明白再说。

除了 prototype 外,JQuery 偏重于 DOM/CSS 特效,被视为 prototype 有力的竞争对手。

5. 补充读物。推荐 deanppk 的 blog。

成为一个 JS 半瓶子程序员并不是太难达到的目标。:)

Topic: 技术

评论

呵呵,邱哥也开始写 JS 了,怎么感觉像是历史的倒退啊 :D

再有,我换域名了,希望邱哥能更正一下链接,谢了!

呵呵,邱哥也开始写 JS 了,怎么感觉像是历史的倒退啊 :D

再有,我换域名了,希望邱哥能更正一下链接,谢了!

推荐一个Javascript开发环境Aptana,可以作为一个独立Javascript IDE也可以下载Aptana的Eclipse插件。很好用,我现在再用他做Javascript的开发。

嗯?我摸了摸,那代码“硬硬的还在”这里

呵呵,纯粹就猪的问题而言,就是这样了。