VC++, OO & ME

原创 2006年05月18日 19:07:00

  面向对象课程设计终于完成了,我也终于学会了使用VC++。真有一种如释重负的感觉。这对我来说这应该算是一个小小的里程碑吧。在此记录一下。

  对VC呢,我只能说它的确是一块够硬的骨头。我从大二开始就在想把它啃掉,可是一直也没有把时间真正地用在它身上。编译原理、离散数学、操作系统……门门都是很重要的专业课,我一门也不想放弃。直到这个学期,面向对象课程设计被要求只能用VC做,看来是不能再拖下去了。只有放弃一些课程了。毕竟学VC还是比较费时间的。

  大二的数据结构课程设计就要求用VC做,我也是从那时开始啃VC这块骨头的。那时我只学过C语言,还没学C++,得知Charles Petzold写的Programming Windows就是给我这只会C的人看的,我便开始硬着头皮在电脑上看电子版。但看了一半我就看不下去了。因为我发现自己依然还是不会用VC,而且面对VC我只知道可以用API调用来写界面,完全不懂什么MFC。因而我只能用API写数据结构课程设计的界面。在极其痛苦地写出一个界面的框架后,我就彻底放弃了。因为我用API写界面完全感觉不到编程的乐趣,有的只是痛苦。我想不通为什么别人学习VC为什么能那么容易就搞定了。后来得知他们是学的MFC,我便开始看MFC的内容。结果学得一头雾水。这个类,那个类,这个继承那个,那个又继承这个。都什么乱七八糟的呀。我不得不再次停止。

  暑假,某些其它的原因促使我不得不开始学习C++。对类的理解让我开始了解OO的设计思想。但我还是不清楚类的真正用处。我不明白为什么面向对象的思想就适合对问题的分析与设计,用面向过程的方法不是也挺直观的吗。而且C用很简单的几个语句就能完成的任务,交给C++OO的方法编码就会增加一些明显多余的操作。这到底是为什么呢?

  直到这个学期,我才找到这些问题的答案。我重新开始学习MFC。突然发现它的结构相当清晰,很好理解。对VC的学习一下子变得容易起来。在做OO课程设计时,对类的大量使用也让我体会到了OO的好处,我终明白C++中增加的那些“多余”的操作是为了什么。在对一个系统进行建模时,结构的清晰才是最重要的。这对整个系统的维护及更改都是有益的。如果采用面向过程的设计,在性能方面的确会更好一些,但却使得整个系统的更改变得困难。对于复杂的系统如果用采用面向过程的方法做,编码时也不是很直观,更别说维护了。这次课程设计的编码过程中,我最大的感觉就是:用面向对象的方法编程就象是在做一幅三维立体图形,而以前用面向过程的方法编程就象是在做一幅平面图形。OO的设计就象我们小时候搭积木一样,各部分做好了以后再合起来就是一个完整的模型了。OO的思想果然不错呀。

  回头再看我学习VC的过程,走了一大截弯路。现在想想,我觉得对VC的学习还是应该从C++入手,之后再学MFC。如果想要深入学习Windows程序设计,再去学习API编程。初学VC还是不要从API入手比较好。

 

sumless

ALV OO: 最简单的ALV OO实例-Docking容器

最简单的ALV OO实例,Docking容器实现,ALV宽度可以由用户自动调整……
  • rztyzxzy
  • rztyzxzy
  • 2015年07月29日 09:51
  • 1672

OO六大设计原则总结(上层码农必会)

一直以来都严格遵循OO的原则来进行开发(用的工具是C++和Qt) 什么是设计原则? 设计原则是基本的工具,应用这些规则可以使你的代码更加灵活、更容易维护,更容易扩展。 基...
  • suxinpingtao51
  • suxinpingtao51
  • 2015年07月29日 15:45
  • 1623

OO系统设计师之路--分析模型

(1)--什么是分析模型 分析模型是采用分析类,在系统架构和框架的约束下,来实现用例场景的产物。 分...
  • fishmai
  • fishmai
  • 2016年09月01日 12:51
  • 1346

OO4O简介以及其在VC++中的应用

  • 2008年12月02日 22:46
  • 557KB
  • 下载

VC++动态链接库DLL编程深入浅出"

"VC-基础:VC++动态链接库DLL编程深入浅出" 1.概论   先来阐述一下dll(dynamic linkable library)的概念,你可以简单的把dll看成一种仓库,它提供给...
  • viphl
  • viphl
  • 2018年01月10日 16:42
  • 25

从C++起步到MFC实战VC++软件工程师高端培训视频教程

从C++起步到MFC实战VC++软件工程师高端培训视频教程 本课程从C++起步、用户无需任何计算机基础,只需要懂的基本的电脑操作,既可学习本课程,本课程适合在校大学生,在职人员等,通过本课程...
  • xkqueen2
  • xkqueen2
  • 2015年02月04日 12:00
  • 1100

孙鑫vc++ 17 进程间通信(3) 命名管道

一、基础知识 1.命名管道 (1)命名管道是围绕Windows文件系统设计的一种机制,采用“‘命名管道文件系统’(Named Pipe File System,NPFS)“接口 (2)命名管道通...
  • wang_cong0214
  • wang_cong0214
  • 2013年01月07日 13:51
  • 2816

VC++ 常用编程技巧总结

VC++6.0的使用以及编程技巧整理 1、MDI子窗口一启动就最大化      BOOL   CChildFrame::PreCreateWindow(CREATESTRUCT&   cs...
  • bcbobo21cn
  • bcbobo21cn
  • 2017年04月01日 22:28
  • 7319

VC++用第三方类实现串口通信

【原文】http://dev.yesky.com/29/2310029.shtml 与通过WIN32 API进行串口访问相比,通过MScomm这个Activex控件进行串口访问要来的方便许多...
  • u012234115
  • u012234115
  • 2014年07月17日 22:23
  • 1798

VC++动态链接库(DLL)编程深入浅出

VC++动态链接库(DLL)编程深入浅出 1.概论   先来阐述一下DLL(Dynamic Linkable Library)的概念,你可以简单的把DLL看成一种仓库,它提供给你一些可以直接拿...
  • lwb102063
  • lwb102063
  • 2016年07月30日 09:21
  • 402
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:VC++, OO & ME
举报原因:
原因补充:

(最多只允许输入30个字)