软件设计与自动化测试学习历程感悟

发表于:2011-10-27 10:02  作者:散步的SUN   来源:51Testing软件测试博客

字体: | 上一篇 | 下一篇 |我要投稿 | 推荐标签: 软件测试 软件开发 自动化测试

  序言:最近一段业余时间都在进行web编程设计,采用的是JSP技术,虽然JSP在网站设计上过于复杂,可是其能帮助学习java的思想,而且觉得在理解自动化测试方面颇有些帮助。自动化测试设计也是软件产品设计的一种,不过为了在此区分,一个为被测试软件的设计,一个为测试软件的设计。前者是面向特定用户使用的,后者是面向测试人员使用的,前者是为了帮助特定用户实现某个场景、提高生活效率。后者是为了帮助测试人员完成测试工作,提高测试效率。

  回想自动化测试过程和软件设计学习过程,后来看了一个人所谓的软件设计学习历程,颇有感悟,当然,只是在这里说说自己的感受,也许说的有点乱,读者需要保持一颗自我和清醒的心。

  软件设计学习过程:

  某位人士23岁毕业,对Java的优雅设计情有独钟,其Java技术之旅开始了。

  1、最开始三个月,开始接触Java,比如接口、继承、封装等,买了本《Think in Java》天天啃,并且同时做项目实践。猛学了三个月后,对面向对象编程OOP熟悉了,原来脚本式思维和对象思维确实有差别。

  2、三个月后,开始啃《Core Java》,《Effective Java》,对Java有了更深入的了解,回调的概念也有了,逐渐接触到更高的层次,面向对象设计OOD,这时又看了一本书《Head First Design Patterns》,感觉设计模式特别有趣。再写代码,已经不是面向实现编程,而是面向设计编程。感觉写Java代码太简单了。逐渐了解了WebWork等Web框架的使用。

  3、六个月过去了,Java瘾越来越大,逐渐开始往更高层次攀登,这时,又看到两本书《企业应用架构模式》、《UML和模式应用:面向对象分析与设计导论》,已经开始从设计往面向对象分析OOA、架构攀登了。Hibernate已经比较熟悉了,了解Hibernate背后的持久化技术、Spring背后的IoC容器、组装技术原理。

  4、一年后,他逐渐脱离了Java语言,开始看这类书《面向模式的软件体系结构卷1》。这个阶段持续了一年,并且对以前的学过的设计模式,如命令模式、观察家模式有一个更深入的了解。因为两年的企业应用开发,他已经熟悉了Java EE的十来种规范,对Web容器和Servlet规范的关系有很深的理解,对JDBC规范和数据库驱动程序的关系也很了解。他正在经历Java开发的快速上升期

  5、两年后,他突然发现,他学的很多东西都没用,都是纸上谈兵,比如,在自己的企业应用开发中,Command模式、Template从来没有用过。他还发现,本来100行写的一个功能,花了1000行,就是为了所谓的设计优雅性:可扩展。而实际上,还没有等到扩展,该系统就已经废掉了。他发现原来设计模式主要用在系统框架开发,而不是应用开发,一般开发人员不用,只需要理解。他还发现,他认真学过的JMS、JCA、JTA、EJB像是从来没有用过。突然他想通了,JMS、JTA可能是一种无奈的选择:处理遗留系统。当他开始对自己两年学到的知识进行反省、批驳时,他已经有了技术辨别能力,知道技术推广也不是那么纯洁,也有商业炒作。这时候,他已经不限于Java了,开始了解C#,Ruby,发现Java可能并不太适合互联网开发,PHP可能更适合,ROR开发更快但需要在牛人的手里。两年后的这个时候,他才开始真正驾驭Java,他已经不再限于Java,而是企业应用。这个时候,技术提升的速度越来越慢了,因为不知道还可以学习什么新技术。因为他发现,原来这些东西,最深层次的,都是几十年前的技术概念:消息系统、异步通讯、事件机制等等....

  6、三年过去后,他已经不再限于企业应用,而是解决方案,技术只是一种解决问题的方式,比如企业信息化成功的关键,恐怕不是技术,而是企业本身的业务流程成熟度;企业信息化成功的关键,不是处理好了技术,而是处理好了几位企业高官的利益。这时候,对IT行业新闻,逐渐有判断力和免疫力。他突然发现,技术的力量很有限,商业才是最大的驱动力量。而此时,他已经不再钻研技术细节,比如JVM的垃圾回收机制,如果他在一个技术研发型公司,比如普元,可能还会深入挖掘技术。如果他在东软这类行业应用开发企业,这类企业的口号是Beyond Technology,这时候他再执迷于技术而轻业务,恐怕不太受欢迎。这个时候,技术的提升,就会进入一个平台期。


21/212>

评 论

论坛新帖

顶部 底部


建议使用IE 6.0以上浏览器,800×600以上分辨率,法律顾问:上海信义律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2021, 沪ICP备05003035号
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪公网安备 31010102002173号

51Testing官方微信

51Testing官方微博

扫一扫 测试知识全知道