高级软件工程实验总结 ——SA20225583张超衡

实验一:VScode环境配置

本次实验了解使用了VScode,包括相关的快捷键和扩展包的安装使用,印象最深的是对于C++的编译环境的配置,通过学习这部分内容,还额外掌握了Cmake和makefile文件的工作原理和使用方法。编译运行第一个程序helloworld.cpp。

实验二:git的使用

Git的原理:按行对比(line diff)将差异的部分作为一个增量补丁,通过git add添加到暂存区里的每一个文件都会由line diff得到该文件的增量补丁,而git commit将暂存区里的所有文件的增量补丁合并起来存入仓库就是一个commit。提交(commit)时,会生成一个SHA-1 Hash值作为commit ID。

通过老师的场景设置逐步熟悉git在本地仓库、远程仓库的使用,并熟悉相关git命令的使用。

实验三:正则表达式:  

正则表达式可高效实现字符串匹配搜索功能,在各种语言中都有应用;

实验四:vscode+draw.io完成工程实践项目UML图

使用vscode画出工程实践项目uml图并发布到github上

vscode的功能十分强大,这也是基于它有海量插件,本次实验的draw.io插件是一个强有力的画图工具。由于vscode采用的是进程隔离的插件模型,因此它保证了插件与原生功能一样的优秀。

实验五:验证软件中的一些特殊机制

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

 

实验总结: 通过此次课程,我找到了软件工程在哲学上的意义,人没有无漏的智慧,那么软件工程也没有所谓的银弹。世界的本质是0和1,V模型里的生死相依,回调里的庄生晓梦迷蝴蝶。当然,课程教学实验里一些软件工具的实践和掌握,如Vscode,git,也同样令人感到兴奋和收获满满。

 

posted @ 2021-07-19 09:30  青萍剑气三千万  阅读(28)  评论(0编辑  收藏  举报