易盛实习总结

由面向过程编程转向面向对象编程

收获

对变量作用域有了更深的了解,不在是简单地写全局变量,而是通过C++类的封装机制,控制数据的作用范围;通过仿真网关代码中的UserRunner类继承TThread类,覆盖TThread类中的Run()方法实现一个线程,在外部通过UserRunner类所继承TThread类的Start()方法启动该线程;通过CTapServiceApi类的纯虚函数,了解多态,即父类对象的指针可以调用子类的成员

遗憾

没有仔细阅读过TThread类的代码,该类还提供锁机制和信号量,自己没有去看,损失啊

C++容器

收获

学习了string,vector,queue等容器的使用

遗憾

也就仅仅是会用而已

回调函数机制

通过APIDemo初步认识了回调函数机制,CTapServiceSpi加深了对回调函数的理解:只需在代码中设置回调,就可以等待异步数据的传入,而主进程不用做任何附加的操作

学习使用vs2013

学习vs2013IDE的使用,新建C++ 项目,导入项目所需库,通过类视图观察项目结构,通过调用层次结构查看函数的相互调用关系;学会调试C++ 项目,明白了调试的重要性与优势:可以更清楚地了解代码真实的执行流程,通过设置断点观察是否被触发可以更快更准确地定位问题,远远优于机械地用打印的方法定位错误

Linux C++编程

学习Linux多线程编程,启动线程,终止线程,学习使用NetBeans,在NetBeans上构建C++项目,向项目中导入so库,添加库目录,添加编译选项、Xshell链接远程主机,手动检查发送到远程主机上的项目和本地项目是否一致,NetBeans调试C++ 项目;NetBeans代码对齐;NetBeans代码补全

网关服务模块

在总线连接类的OnMessage方法的实现中,一开始并不理解为何要加状态判断,并没能领会到精髓,后来在此时过程中明白了,加上状态判断是多么的明智,因为总有一些意外情况出现,也就是说自己的代码并不是在自己的可预测的环境中运行,应对各种突发事件都应有一个策略,不然只能等着陷入:修改代码–>编译代码–>重启程序的深坑;学习了类的层次结构,从管理类到功能实现类从高层到底层为金子塔型

监控服务模块

在做监控服务项目过程中,学习了CURL,在Linux环境下编译CURL库并使用,由于做了网关服务,在一些流程上更熟悉了,因此进度明显比做网关服务快,基本完成了要求的功能,但是在数据统计、类结构设计上还是有待提高

整体总结

在仿真测试工具项目中,历经撰写需求文档,编码,测试单个类,测试模块,代码走查,项目联调,详细设计文档,编写测试用例等过程。体会到做项目和之前自己写小程序有很大不同:自己写小程序输入是特定的,有严格要求的,所以只需关注算法实现;而做项目所面临的输入环境真可谓千变万化,作为编程人员必须考虑到各种突发情况,并做出应对,而不仅仅是考虑算法的实现。当然,一个高效率的算法在这两种情况下都是必须的。重新认识了编程。

接下来的学习计划

学习设计模式,书籍《大话设计模式》《MySQL必知必会》《计算机程序的构造和解释》《编译原理(龙书)》

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值