我的软件开发总结

来源:互联网 发布:数据库er图用什么软甲 编辑:程序博客网 时间:2024/06/09 17:18

       以前经常看别人的博客,其中有许多经典的文章让我学到了很多东西,一直也想把自己的想法写出来,但是总怕自己文笔笨拙,让人见笑.今天终于鼓起勇气,对自己这几年的软件开发做一次总结.
     对于开发语言上c/c++用的很多,c语言语法还是比较简单,但是c++的语法太复杂,再加上面向对象的思想,设计模式对软件
的封装就更加复杂.对于类必须知道抽象类(含有纯虚函数的类virtual function()=0),多态:用基的指针/引用来操作多种类(基类和其派生类)对象的能力.基类是通过虚函数来完成的,虚函数的作用是使编译器产生迟后联编,虚函数又是通过虚函数表起作用,每个类对象维护自己的虚函数表,从而达到多态的目的,普通的成员函数代表所有类对象方法的统一,不存在多种行为, 设计模式正式因为类有了多态才有其用武之地,例如:熟悉的抽象工厂就是运用客户与抽象产品(接口)交互,而隐藏具体的产品,达到封装的目的.基类和派生类构造函数与析构函数的调用顺序,先是基类的构造函数然后是派生类的构造函数,析构函数调用的顺序正好与构造函数相反.定义一个空类,系统默认产生的函数有缺省构造函数,析构函数,拷贝构造函数,赋值函数,取址运算符函数((operator=)const和非const).对于一个基类若作为基类则其必须要把析够函数(如果必须)申明为虚函数,而构造函数不能为虚函数. 构造函数不能指定返回值类型和返回值.可以重载构造函数.
       对于开发方法上,尽量用面向对象的思想去封装系统中的对象(此对象不是类的对象),参照设计模式选取相应的设计模式或
稍微修改使之适应自己系统.在程序中要用到数据结构的地方,如果条件允许,就使用STL(vector,list,queue等),很多东西别人已经封装好了,在使用多线程是,对同步资源的保护可以使用用临界区,信号量,互斥等.线程间的通信可以使用全局变量,消息,socket等通信.对于网络编程可以根据需要,选择网络模型(select,WSAAsyncSelect,事件模型,重叠IO,完成端口).
     本文是对自己知识的一个大体总结,讲的不对的地方还希望大家指出,另外最近在看关于arm单片机编程,希望这方面的朋友
多提供建议(^_^). 

原创粉丝点击