经常看到有很多朋友问关于vc编程学习的问题,我也回答过一些,今天我和一个朋友讨论了关于学习vc编程的问题,整理一下,对初学这或许有些帮助。
A:deadhorse
B:朋友
A:说说你的实际情况
B:我学程序其实才1年零3月,一开始学php,现在工作也是写php。
(deadhorse:其实并不需要太多基础,这个我以前说过,只要3点。1,熟悉计算机应用;2,有较强逻辑思维能力;3,有学习的热情。)
B:我身边一个能指导我的人也没有,不过有个比较厉害的,但不爱教别人 哎~
A:我是属于不太厉害,但是善于(也愿意)将我所了解的教给被人
B:那我现在应该学什么?我们这里有个人先看的mfc,然后那个不爱教别人的高手就说:你还没学会走就想跑,然后就笑了他一顿,所以我不知道先看mfc是不是正确的路啊?
A:学什么,我在网上也贴过了
sdk是基础,但我并不要求你学懂,要求学过留一个印象。
B:用什么工具?
A:我以前一直用vc6,如果你要学也建议用这个版本,比较单纯。vs.net以后再说。
B:哈哈好,我听你的,我用vc6,我机器上已经装过了。
B:sdk是不是就是java的jdk类似呢?
A:software development kit
(deadhorse:windows开发中的sdk常常指的应该是microsoft win32 platform SDK)
B:开发包是吧?啊
有介绍这个的书吗?我去找找
A:我推荐《windows98编程从入门到精通》(windows98 program from ground up)(大概是这个名字,记不清楚了)
A:我们一般说用sdk开发的意思是不用类库,直接一行一行利用WINDOWS API用手敲出一个基本的windows程序。
B:哦,明白点了,就是写最纯的程序是吗?
A:不用别人的类库,这样从头开始的好处是让你充分明白一个基本的windows程序是如何工作的,至少需要哪些步骤,这是你以后融会贯通的基础。
B:VC编写Windows程序有两种:1. Windwos c方式(SDK),2. C++方式:即对SDK函数进行包装,如VC的MFC,BCB的OWL等。
sdk编程就是只调用api函数是吗?那就和php里调用差不多是吗?
A:你有一个理解不完全正确的地方,其实,用c还是c++都可以直接调用api编程。
那只是语言的问题。
mfc,owl这些类库是方便你编程用的,帮你封装了常用的任务,帮你搭建了一个比较好的程序框架。由于他们是用c++写的,所以我们也用c++比较方便。其实当你用类库编程的时候,经常不会意识到是在用c还是c++。
本来如果不涉及类的概念的话,那语法基本没什么太大不同。
B:明白了
等于是mfc 封装了更高级的功能是吧?
A:差不多吧。
B:e文怎么办?我最发愁
A:E文最不可怕。
B:为什么啊?
A:我的E文也很不好,但是MSDN没问题,这对于开发也就够了。
B:我也就是高中水平
A:最早,我什么都看不太明白,那时候听高手说都去CODEGURU。我去看,什么都不明白,但其实,过了一段时间,什么都明白了。
A:计算机英语的词汇很有限,更是不是E文高手没任何关系。
MSDN中的词汇和语法都很有限,其实MSDN很多是日本人写的,你说它的E文有多厉害?
B:原来,也许看看就习惯了
A:我也认识一些E文很好的人,连软件提示都不明白。
其实,就是一个熟悉过程。在计算机E文方面,你和任何一个E文高手的起点差不多,从专业角度来说要强得多。所以说,我是E盲我怕谁?