软件工程学习总结

来源:互联网 发布:足球博客软件 编辑:程序博客网 时间:2024/06/05 04:19
          **

软件工程(C编码实践篇)学习总结

于腾飞 SA17225470+《软件工程(C编码实践篇)》MOOC课程O软件工程(C编码实践篇)
对课程的理解和心得
通过学习网易云课堂@孟宁V5老师的《软件工程(C编码实践篇)》课程后,学到了很多的东西。整个课堂从一个简单的C语言菜单小程序,从最开始的搭建环境讲起,由浅入深,层层深入,很适合零基础的我进行学习。
接下来又讲了代码风格规范的问题。良好的编码规范可以实现不同群体的阅读,减少不必要的阅读障碍,同时,有利于寻找bug点和代码审查工作的顺利高效的推进。更有助于自身的发展,成长为一个有良好习惯的程序员。
模块化的设计和可重用的的接口设计是本课程一个重点,同时也是一个程序员必须掌握学习的。模块化就是将大的软件系统分割到不同的模块来分别实现。在某种程度上可以减少系统的复杂性和重用性。各个模块的相互之间的联系,就产生了接口的概念。
在接口的课程中,学习掌握了CallBack函数。回调函数就是一个通过函数指针调用的函数。回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生时由另外的一方调用的,用于对该事件或条件进行响应。
在函数的可重入性和线程安全的课程中,我们将关注于代码的安全性方面的问题,在以后的编程中会更加注重自己的代码质量。
最后又学习了代码背后的设计思想这一节课,在这节课中最主要的还是软件设计的主要原则。模块化,接口,信息隐藏,增量开发,抽象,一般化。这节课内容量比较大,需要我们在以后边学习边消化。

代码层面的软件工程的理解
通过学习本课程后,在编码的层面上对软件工程的理解又加深了理解。
首先,一个良好的编码规范。不同的人不同的编码风格,如果没有统一的标准,每个人都按照自己的风格来写代码,必然导致很多问题。比如阅读障碍,理解困难等等。因此这编码规范是一个特别重要的点。
其次,在编码中,对于一个稍有规模的软件来说,就有必要来通过模块化来分割系统组件模块。然后在继续各个攻破各个模块。通过使用伪代码或者统一建模语言的工具来事先规划好自己的代码结构。从整体把握系统的功能实现流程。

实验报告
实验一:写一个hello world小程序
实验二:命令行菜单小程序V1.0
实验三:内部模块化的命令行菜单小程序V2.0
实验四:用可重用的链表模块来实现命令行菜单小程序V2.5
实验五:用callback增强链表模块来实现命令行菜单小程序V2.8_
实验七:将menu设计为可重用的子系统

原创粉丝点击