一本书的概论,就像是饭前的开胃菜,它可以吸引你的注意,激发你的兴趣,并悄无声息的为你埋下主题。
1.1软件=程序+软件工程
程序=数据结构+算法;
软件=程序+软件工程;
软件企业=软件+商业模式。
作者为我们讲述了一篇关于程序员阿超的故事一步一步为我们揭开了软件的实质。
从玩具,到爱好,到探索,再到成熟。飞机的成熟,软件产业的发展,也如同我们本身的成长。
开始学习c语言时,其实很有兴趣,你用一行行代码,实现一个个功能,就像是一个乐高模型,
你组装它,创造它,很少有男生能够拒绝这种快乐,可是当玩乐成为爱好,爱好成为职业,
你又是否能沉下心来钻研。不能避免的,我们在学习时的程序是有bug的,是有需求无法实现的,
但当我们开始完成自己的项目时,又能否考虑周全,能否在考虑到后去实现,去修补,我们是否合格?
1.2软件工程是什么
如果把软件比作军队,那么软件工程就是军事思想,它是软件开发的指导思想。
同样软件工程是工程管理学和计算机技术在软件企业长期的实践中相结合的产物。
它指导软件企业如何有效分配各种人力物力资源,生产出令客户放心满意的软件产品。
我们不仅仅要创造出用户需要的软件,还要符合计划、维护发展。
2.单元测试+个人感受
单元测试不仅可以让模块负责者明确模块的功能,还可以让其他调用者了解模块的功能,
做好单元测试,可以使模块内部的改变不会影响其他模块,保证模块的质量。
过去,在初次做单元测试时,虽然觉着他必不可少,但也没放在心上,等到程序出现了问题,
想要去修补,却发现单元测试不完善,但是重新写又十分的困难,陷入了两难的境地,
最后还是将代码拆分,组合,才找出逻辑上的错误,但是消耗的时间实在是太长了,
修改过程中一度选择放弃,还是在队友的帮助下,成功解决。
这样做荒废时间长,会导致计划任务的失败。
在阅读了书后,我开始了解到单元测试应该测试程序中最基本的单元–类,在此基础上,
可以测试一些系统中最基本的功能点。单元测试要测试API中每一个方法及每一个参数。
在设计的时候就写好单元测试。单元测试创建的临时目录或文件,创建或修改了数据库中的记录都应该及时删除或恢复。
单元测试自动化,保证每个人都能随时、随地运行单元测试。单元测试必须和代码一起进行版本维护。
3.回归测试简单来说,就是在新版本上运行当前功能基准线对应的所有测试用例,检查是否有退化的现象发生。
如果退化是模块功能正常变化引起的,那么就需要修改基准线(修改测试用例以适应新的功能)。