基于软件工程网络课程的个人体会

     

SA16225431_张启-原创作品转载请注明出处-《软件工程(C编码实践篇)》MOOC课程http://mooc.study.163.com/course/USTC-1000002006 

  工程实践课程大多数是在某一方面对所学专业进行讲解,但这门软件工程师从软件的整体出发来给我们一个宏观上的了解,同时孟宁老师通过一些代码的演示,使得课程又不失趣味性;他从代码设计规范,模块化思想,子系统的接口可重用,线程安全等多个方面来编写代码。而且孟老师打破了传统软件工程书本教学的方式,而是理论与实践完美的结合起来,每个实验之间都相互关联,实验内容层层深入,实验难度逐步增加,为我们理解软件工程的思想起到了明显的作用。学习完这几周的课程,我对代码从另外一个角度有了一个全新的认识,真的受益颇多!

在课程过程中,我跟随孟宁老师做了一下几件小事;

      1.熟悉linux实验环境

实验一:写一个hello world小程序

小结:在linux环境下,编写helloworld小程序。本次实验主要是让学生熟悉实验楼的环境,并学习Linux环境下的一些基本操作,如cd,gcc,vim,git等。
      2.代码风格规范
实验二:命令行菜单小程序V1.0
小结:学习代码风格的原则:简明、易读、无二义性。并注意缩进、命名、注释等代码编排的风格规范。
      3.基本的模块化设计
实验三:内部模块化的命令行菜单小程序V2.0
小结:学习模块化思想相关的知识,学会将系统抽象为两个层级:菜单业务逻辑和菜单数据存储。
      4.重用模块的接口设计
实验四:用可重用的链表模块来实现命令行菜单小程序V2.5
小结:学习高内聚低耦合的思想,使代码更具有通用性并且更容易管理。注意接口规范。
      5.可重用模块的接口设计(callback函数)
实验五:用callback增强链表模块来实现命令行菜单小程序V2.8
小结:利用callback函数参数接口更加通用,注意接口的信息隐藏
      6.函数的可重入性(reentrant)及线程安全浅析
小结:知道什么是函数的可重入性,什么是线程安全,以及学习函数的可重入性与线程安全之间的关系。
      7.子系统的可重用设计
实验七:将menu设计为可重用的子系统
小结:熟悉使用Makefile文件来简化多个文件的编译命令,学习menu程序的可重用性,学习getopt函数。
      我在软件工程这门课程的学习中最大的收获就是对软件工程有了一个系统的了解,并且学习到了它的思想。以前自己的专业也有过一些编程,不过主要是做科学计算,和软件工程的编程有很大的差别。现在自己编程的时候经常会自动地考虑到要不要模块化、要不要对接口加以改进,这也许就是我最大的进步。当然凡事都不是完美的,由于个人在软件方面经验的缺失,孟宁老师所教授的很多方面我并不能很好的理解,希望有机会回过头来再学习!~
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值