前言:
在绪论中说到软件工程包括下列领域:软件需求分析、软件设计、软件构建、软件测试和软件开发维护,软件开发活动(构建管理、源代码管理、软件设计、软件测试、项目管理)是软件工程的核心内容,这个大纲思路清晰,好像让我一下对软件工程导论这门课的知识有了大致的认识。尤其是“做中学”这种模式,打破常规,我觉得应该会有很大的帮助。
第一章:概论
1.2.2节关于软件与计算机科学的关系,引起了我的思考:
书中说到中国大陆高校大致有三种:
计算机科学与技术系或学院
软件学院
软件工程系、软件工程学院
确实我当时报志愿的时候也觉得软件学院和计算机学院差别不大,可进入大学后老师们强调二者区别很大,书中也是这么谈及的。但是又论到:计算机科学中的理论研究部分,大多可以从形式上证明,与数学、离散数学、数理逻辑密切相关;软件工程则和人的行为、现实社会的需求息息相关,可这似乎与我所正经历的有些相违。首先来说的话,如果两门学科真的侧重点不同,那么为何会有合院的现实?而不是分别管理?再者,从入校到现在我们学高等数学,离散数学,线性代数,数电,数据结构等等科目,与上文的描述是否有所冲突?但是这些科目对于我们编程来说确实又是必不可少的,便有些许疑惑。而现在计算机专业的学生也学C语言,Java语言,又跟书中论及到的:计算机院系大部分学生毕业后也投身于具体的工程问题,这根软件学院、软件工程系的研究和培养方向非常雷同的观点相吻合。所以现在我对于二者的关系不是那么的清楚,以及我们以后的发展道路感到疑惑。
第二章:个人技术和流程
2.1.1单元测试有感
修改之前
谈到单元测试,我首先就会想到自己之前在My Eclipse上用Junit做单元测试,所以看到书上所说的用VSTS写单元测试便有些陌生,不知道是什么,也不懂二者之间有什么区别。所以便百度了一下,学习了一些博客。VSTS的全称是Visual Studio Team System(软件团队项目跟踪),是由开发微软的一套具有高生产力、高集成性、可扩展的生命周期开发工具,它可以提供新的源代码管理工具, 同时还为开发者提供了单元测试工具和代码分析工具。VSTS使得整个开发团队拥有更好的沟通与合作,并且保证了更好的质量。以前学长让我们做单元测试的时候就觉得哎呀,好麻烦啊,要做的好多啊,看到书中小飞写单元测试改了好几次,真的非常有同感啊。看完第二章之后觉得,单元测试真的很重要啊,确实也要由最熟悉代码的人来写,毕竟最后的软件是由多人合作完成的。我们要确保我们所写的模块能被他人调用,并且代码清晰易懂,不影响其他模块,这样团队效率才会提高,达到事半功倍的效果。但是现在对于单元测试自动化,怎么自动化,了解了一点,但还是有点晕晕的,哈哈。
修改之后
什么是单元测试?
之前一直只是大概知道要做单元测试,那到底什么是单元测试,却有点含糊其辞,所以便百度了一下。“单元测试——是最小粒度的测试,以测试某个功能或代码块。一般由程序员来做,因为它需要知道内部程序设计和编码的细” 这样一了解便也知道了书上所说为什么要由最熟悉代码的人来做单元测试了
既然单元测试这么好,那么要怎么样将其自动化呢?
这个问题于我现在也不是太清楚。“自动化测试分为三个层级:单元测试、接口测试和UI测试,这三层成一个金字塔形状分布。最底层是单元测试,接口测试在中间,UI测试在最上层。”希望在以后的学习中能逐渐了解掌握到这些操作,做到在最适合的时候做自动化。
第十六章:IT行业的创新
16.1创新的迷思,这个问题,我觉得很有趣。
修改之前
这些迷思从文字表面乍一看,大部分人脑海里面应该都会留有这样的固有映像,包括我在内,很多时候确实这么觉着吧。但灵光闪现是源自于实力的积累;大家都喜欢创新,创新者有时却很创新;有些创新者最成功的创新在其拿手领域之外(马云是英语专业的学生,可是谁能想到他最先想到要发展互联网产业,开发阿里巴巴网上平台的)。那便不得不想,在这蓬勃发展的IT行业,身在软件工程的我们又应该要怎么创新呢?当然创新一词蕴含太多太多,我们也许早已经眼花缭乱,仁者见仁智者见智吧。会考虑很多,eg: 先发优势和后发优势;效能过剩;NPS,CAC,用户留存率……我可能考虑达不到如此成熟,现阶段只有累积实力,提前熟悉行业需求和发展方向,用心观察,方可根据实际需求创造出更好的体验的软件吧。希望老师和同学们都能谈谈自己的感想,一人所想还是太贫瘠,想要多学习学习。
修改之后
迷思之六:技术的创新是关键。
对于这种迷思,我还是持怀疑态度的。确实书中所举的铱星手机是有技术,其不靠谱之处被手机所替代,一是用户太少,然则难道没有技术革新不够,没有满足用户需求的原因吗?再放眼如今竞争激烈的手机行业,国产手机小米算得上是脱颖而出,其创始人雷军便谈到:一个公司核心技术创新最重要。去年小米在全球范围内申请的发明专利达7071项,且成为了继苹果、三星、华为之后第四家拥有中高端自研芯片的手机公司,更在技术创新的团队上中不断引入人才。确实,一次又一次的技术创新,让小米不仅在国内市场站住了脚跟,且强势占据了印度智能手机市场,深受消费者喜欢。所以我觉得还是觉得只有不断的技术的创新才能让一个企业蓬勃发展,生根发芽。