个人信息
luckychen
文章分类
访客
新浪博客推荐文章
内容
  •  
    2007-02-25 16:23:38

    开发技术应用趋势

    XP技术——潜力无限,业已成为技术热点



    图-3 在web开发工作中进行实践的技术分布图


            评论:OOP仍然是主流技术,尽管MVC占有不少的份额,但“用户体验才是产品的价值所在”这句话仍然得到了验证。无论任何技术理论(包括MVC、Ajax、RoR等),凡是能够高效地应用在快速开发、提高用户体验上的才是好技术。
            Code review和Unit Testing都是极限编程(XP)中的概念,从图表中的比例来讲,让我感到欣慰:在开发技术中XP结对编程的方法得到了比较广泛的应用,希望国人也能更多的接受、应用它们。


            什么是Code Review:在起始开发阶段对源代码语法检测,以期发现和修正错误、提高代码质量的活动,常称之为结对复查(peer review)。Code review经常可以发现和去除一些常见安全漏洞,比如格式化字符串攻击、竞争条件、缓冲区溢出,因此提升了软件的安全性。

            什么是Unit Testing:单元测试是一种用来验证源代码的某个模块是否工作正常的活动。而每个测试实例都彼此独立;假对象(mock object)可以用于在隔离的环境下辅助测试某个模块。这样做目的在于把程序的每个部分分割开来、验证独立的部分是否正确。

            采用结对编程可以在QA测试之前捕捉、修正错误,但不仅如此:

            1.它使最终的错误内容下降到让人满意的程度,这源于采用持续的code review。

            2.采用头脑风暴(brainstorm)和结对轮换(pair replay)使设计更加完善、代码长度更短。

            3.依靠结对轮换团队解决问题更加迅速。

            4.团队成员能够学习到关于系统和软件开发的更多知识。

            5.项目结束时,多个团队成员能了解系统的每个部分。

            6.成员在一起相互学习、谈话,提供了更好的信息流动和团队动力。

            7.成员更加享受他们的工作,更加拥有成就感。


            这种方式尤其适用于缺少人手或者短缺昂贵的专业测试系统和QA的开发团队。

    工具流行趋势

    Dreamweaver——web开发工具中的王者



    图-4 web开发中采用的工具分布图


            评论:DW能力十足,无论对于web设计者还是开发者来讲都是很顺手的工具,但其语法自动提示能力实在有限。而且对于开发者而言,DW的超强编辑能力也注定了它overkill的宿命,这也是Text Editor和它平分秋色的原因之一。
            VS功能强大,但其受到微软语言的制肘,无法伸展开有力的上臂来拥抱各种开源语言。


            这里我要遗憾地感叹一下Eclipse WTP,它提供的HTML 编辑器用上去还算可以,但相比之下相形见绌,不免有些鸡肋之嫌,还需要进一步完善:

            1.Eclipse WTP的优点:
            在同一个IDE中支持Java, JavaScript和ActionScript等多种语言。
            “All In One”的发布模式是它易于安装。
            概要视图(Outline View)对方法和变量进行很好的组织。
            对JavaScript function提供了代码提示。
            提供了对web页面的验证功能。

            2.Eclipse WTP的缺点:
            缺少本地或者在线文档,甚至连说明文件也没有,非常不利于初学者使用。
            语言支持(比如ASP)有限,扩展能力弱。使之支持其它语言就必须手工添加,也许这是HTML编辑器的通病。
            概要视图(Outline View)并不支持JavaScript的方法和类。
            WTP没有提供良好的页面设计视图。
            WTP对页面进行验证性能不佳。

数据加载中...