《高级软件工程》课程总结 SA20225441-万登科

一:工具

(1)VS code

VScode是一款轻量级的编辑器,安装包非常小,而且启动速度非常快。有着非常丰富的插件系统,无论你是编辑HTML、CSS、JS、TS、Vue、React等前端代码,还是C、C++、JAVA、Python等后端代码。我们都可以找到相对应的插件,让我们如虎添翼,更快速地完成项目。

(2)Git

Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。用于在多人项目中通过网络进行增量合作开发而无需反复拷贝整个项目,Git提供了add、push、pull、merge、commit等命令用于同步版本以及管理提交历史以便查看和回滚,rebase可用于重新整理提交记录,使得仓库中的commit记录更加清晰。

(3)正则表达式

正则表达式(regular expression)描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。

 

二:通过实验感受软件开发一些特殊机制

回调:将函数作为参数,可以达到在回调的目的;
多态:一个函数根据传入的参数个数、类型的不同就形成了函数的多态,类也是如此;
闭包:在函数里返回一个函数,就创建了当前函数的闭包,返回的函数可以在任意时刻获取到父函数的作用域;
异步调用:网络IO,这是一个异步操作,异步操作返回时,触发回调函数的执行,典型的实现有primise,async/await;
匿名函数:()=>{},在 JavaScript 中,可以绑定运行时 this,缩短函数代码逻辑;

三:软件质量属性

软件属性包括功能属性和质量属性,但是软件架构重点关注的是质量属性。架构的基本需求主要是在满足功能属性的前提下,关注软件质量属性。软件的质量属性可列举很多,也有各种不同的分类法和不同的表述。一般将质量属性分为3类:

● 系统的质量属性。可用性,可修改性,性能,安全性,可测试性和易用性。

● 受架构影响的商业属性(上市时间)。

● 与架构本身相关的一些质量属性(如概念完整性),它们会间接影响其他质量属性,如可修改性。

四:软件项目管理

软件项目管理的对象是软件工程项目。它所涉及的范围覆盖了整个软件工程过程。 为使软件项目开发获得成功,关键问题是必须对软件项目的工作范围、可能风险、需要资源(人、硬件/软件)、要实现的任务、经历的里程碑、花费工作量(成本)、进度安排等做到心中有数。 这种管理在技术工作开始之前就应开始,在软件从概念到实现的过程中继续进行,当软件工程过程最后结束时才终止。

五、总结

经过一学期的学习,收获很多。首先是对工具的使用更加重视,工欲善其事必先利其器,特别是可以提高开发效率使得团队合作更方便。其次是对软件设计有了新的认识,比如程序中特殊机制的设置、一些设计模式还有软件本身的质量属性。最后在真正的项目开发中,一定不能忽略软件项目管理,真正好的项目管理才是软件开发中重要的一环。经过这些学习,改变了我对软件工程的一些看法,加深了对软件工程的理解。

posted @ 2021-07-16 11:55  DK_Coder  阅读(59)  评论(0编辑  收藏  举报