许昌月 + 原创作品转载请注明出处 + 《软件工程(C编码实践篇)》MOOC课程http://mooc.study.163.com/course/USTC-1000002006
实验心得
历经两个多月,学完了软件工程(c编码实践篇)这门课,我对软件设计开发有了一个全新的认识。
实验是从最熟悉的hello word写起,当然,这个实验主要是让我们先了解实验环境,了解Linux的操作命令和Git使用方法,为后面的学习打基础。接着一步一步做实验,不知不觉将命令行菜单的一个小程序慢慢地变成了一个命令行的小系统,并且在这个过程中,学到了很多能一直受用的知识,例如markdown的书写,还有4空格缩进、变量名和函数名各种风格、和{ }独占一行,且成对对齐等代码规范。并学到如何简化代码,如何保持设计与实现一致,如何设计规范的接口,如何让模块通用,如何提供皆空的同时隐藏信息,如何用makefile编译工程文件等等。这对于没有什么代码经验的我来说无疑是一个很好的学习过程和提高过程。
以前肤浅地认为软件就是写程序,开发软件项目就是大家一起写程序,然后拼在一起实现最后的功能。但现在终于明白,软件开发远比单单写程序来的高端,来的复杂。写程序也不能只考虑实现它的功能就行,还要考虑到今后的可扩展性和可维护性。
通过这门课程,我明白了写程序不能仅仅关注于它的功能实现,还要考虑到代码的规范、可读性和可重复利用性。因此写程序之前应该先好好设计程序。在本门课程中,我们的实验就是一步步地扩展我们的程序设计,从一开始只是实现命令行输出功能,中间贯穿实验的代码格式和规范,到最后将menu主程序设计成接口,让其能重用。这过程循序渐进,一步步地加深我对软件设计整个开发流程的理解。
实验报告
以下是多次实验的实验报告,在这里做个整理,方便以后的学习:实验楼课程https://www.shiyanlou.com/courses/122
- 实验一
https://www.shiyanlou.com/courses/reports/1244023 - 实验二
https://www.shiyanlou.com/courses/reports/1244568 - 实验三
https://www.shiyanlou.com/courses/reports/1245574 - 实验四
https://www.shiyanlou.com/courses/reports/1246291 - 实验五
https://www.shiyanlou.com/courses/reports/1246971 - 实验六
测验 - 实验七
https://www.shiyanlou.com/courses/reports/1248055
实验总结
通过本门课程我最大的收获就是加深了我对软件工程开发的认识,当同时还学到了很多相关的内容,例如Linux操作命令,Vim编辑器的使用方法,Git版本控制和C语言等。但是由于我基础薄弱,所以对代码理解得不够深入。这是本门课程的最大遗憾。