软件工程(C编码实践篇)
胡亮 原创作品转载请注明出处 《软件工程(C编码实践篇)》
MOOC课程 http://mooc.study.163.com/course/USTC-1000002006
此次博客主要记录自己在网易云课堂上的学习成果,书写自己的学习心得,也希望与大家分享自己的学习经验。
一、实验报告
- 实验一:写一个hello world小程序
- 实验二:命令行菜单小程序V1.0
- 实验三:内部模块化的命令行菜单小程序V2.0
- 实验四:用可重用的链表模块来实现命令行菜单小程序V2.5
- 实验五:用callback增强链表模块来实现命令行菜单小程序V2.8
- 实验六:函数的可重入性(reentrant)及线程安全
- 实验七:将menu设计为可重用的子系统
代码库
学习总结
我们写的不仅仅是代码!我们实现一个C语言小项目,通过其演化来呈现无设计代码、模块化设计的代码、可复用的代码和回调函数等接口设计,以及可重入函数、线程安全等较深入的设计问题。您可以通过跟随模仿来训练工程化代码的编写能力,辨识代码的工程质量差异。 —— [孟宁 ]
学习了这门课程, 还有老师的多元化教课,不但让我从理论上掌握软件工程,还有从不同的实例,让理论和实践得到了很好的结合。整一个学期下来,总的来说还是学到了很多东西的,有很多地方是值得肯定的,其实在我看来,软件工程与其说是一门课程,不如说是一门思想。是一个如何去分析和处理问题的过程,应该说其范畴已经远远不止局限于该门课程,成为了一个综合的一个能够解决问题的思想集合。通过对C编码编程的实践,感觉自己收获了不少,以前在实验室里以为能得到自己想要的结果就完成了实验,但是现在忽然发现,如果你想写好程序代码是一件多么不容易的事情。
学习的结果就是让我感觉自己对问题的考虑是完全不够的,总有一些自己忽略的地方,但往往是一些不引人注意的东西会让人产生错觉,这为以后程序的扩展和交接带来隐患,因此作为一个好的程序员,你必须认真起来。