OOJSing

    我不知道我谈OOJS会不会有人理解我。今天恰巧看到一篇文章,回想起当初自己初次接触Ajax时的经历,颇有几分相似。于是回味。。。

    我看到一篇文章,名为Show love to the object literal。这篇文章,恰巧复现了我当初刚接触Ajax时的尴尬。

    去年10月当我刚刚接触Ajax的时候,我对Web开发领域的技术,应该说还是只知皮毛。尽管在大学四年里我一直从事Web开发,但由于使用的是ASP.NET之类的技术,而且自己不求甚解,所以,对真正隐藏在开发工具背后的东西知之甚少。

    正如Show love to the object literal所谈到的,在突破了XHRHTML DOMXML DOM等各种障碍之后,当我打开开源JS库的源代码之后,我发现我见到了另一种完全不知其所云的JS代码。于是,在过去的几个月里,我尝试去了解这些看似古怪,却非常好用的东西,直到今天。

    其实,根本原因并不如Show love to the object literal所讲。尽管,避免变量和方法冲突是其中原因之一。但是,那种风格的JS却有其正宗来历。JS支持JSON,那种风格的JS正是用JSON来定义一个类。JSON我们平日的开发很少用到。所以,一般来说,直到该方式JS代码的人比较少,如果他们没有阅读或者写过大量的JS代码的话。

    当然,我们OOJS绝对不是这么简单的原因。

    Object-Oriented Javascript文章中,作者解释了比较正宗,也比较彻底的OOJS方式。这篇文章与上一篇文章的不同之处在于,Show love to the object literal里所关注的,只是语法的某些局部而已。而在这里,即Object-Oriented Javascript中,作者关注的是整个OO方式的JS。我们由局部上升到整体。

    当然,OO绝对不是为了OOOO。在另一篇文章里Object-Oriented ConceptsObject-Oriented Javascript的作者解释了为何需要OO。特别需要注意的最后一个章节,“Why use Object-Oriented programming?”。

到底为什么呢?

    其实,单纯OO也没有太大作用。有兴趣的读者可以参考《Ajax in action》。本书的作者一直在试图在Ajax中应用设计模式。没有OO,如何设计模式。

    可是,为什么要设计模式?

    晕,怎么会有这么多问题?

    你可以来看这么一个PPTHijax: Progressive Enhancement with Ajax

    当然,你可能发现有些文不对题。当然,这篇PPT确实有点不是很合题。但是,它所强调的,正是我所想强调的,也是很多人都强调的。那就是,应当谨慎对待Ajax应用。更多的时候,我们都是在考虑用户体验,比如,某个实效的URL,或者,某些提示的缺失。现在是时候了,让我们回头来考虑一下我们开发者自身的问题,即,如何组织大量的代码。

    一个很好的偷懒的办法,就是汲取前人的经验。OO也好,设计模式也好,都是前人总结的经典。我们没理由放弃。

 

Coofucoo Zhang

Thursday, May 25, 2006

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值