如何学化妆 初学者|对初学者如何开始学习VC的看法

更新时间:2017-07-12 来源:编程 点击:

【www.hzclsc.cn--编程】

1.学习VC的一点体会 
   
  如果没学过编程,最好从C开始,然后学习VC++。当然一开始就学VC也行,不过VC太庞大了,难以把握。用VC时,别用它的类,就用标准C和Win32 API编写命令行的程序,这样VC只是一个方便的C编辑/编译/调试器,而不是功能极多、庞杂的重型软件,这就和使用Turbo C差不多,只是功能更强了,使用更方便了。同时这样编程还有一个好处,就是可以熟悉Windows系统的工作方式和组织方式。 

  在没有熟练C、C++及编程思想前,一定不要接触VC的图形界面编程和MFC类库,否则你就会对VC望而却步的。我在上学时学了一学期的VC,在那之前学了C、汇编和很多其他的编程课程。可是学完VC后,班上大多数人害怕VC,不敢用它,没人逼着说什么也不会去碰VC,就是因为一直在学界面编程和使用MFC类库,学得糊里糊涂,不熟悉类库的使用和MFC体系结构,对Windows各种消息不熟悉,编起程来举步维健,有时根本无从下手;而不用MFC类库又不会编程了,因为不会用Windows API,对Windows系统的工作原理不了解。 

由于Windows NT的界面十分友好,管理员很容易就熟悉了NT的使用和日常管理,但是却不了解Windows NT的工作原理,也不注重Windows NT配置工作,因而降低了Windows NT的安全性,可以说这是Windows NT相对于Unix来说安全性差的一个重要原因。管理员只需按微软提供的NT C2 Config CheckList的配置列表,实现其中重要的几个配置就可以挡住大部分的普通入侵者,然而Admin为空密码和允许空连接的 NT 计算机就是如此之多,尤其在中国。说远了,对于编程人员其实也是一样,Windows系统的界面友好,使得很多人只是简单的使用它,而不去深究它内在的实现。对系统理解越少,编程的困难越多,实现所需的功能越难,因为编程基本上是在和系统提供给程序员的编程接口(API)打交道,你不知道系统提供给你什么支持,就难以编程。举个例子,大家知道Unix的用户帐号存在/etc/passwd文件里,如果要查找当前系统的一个用户名就只需打开/etc/passwd文件,然后一行一行的读文件,并分析一行里的内容,从而找到用户名部分和要查找的用户名相比较即可,这没有问题,我想大多数不了解unix编程的程序员都会这样想。然而unix提供的getpwnam函数恰好实现了这个功能,一个函数调用就解决了问题。可以看出,理解系统提供的API的重要性;实际上,程序员在学会了编程语言和基本编程技巧后,最主要的任务就是了解系统提供的函数支持,对系统API了解越多,编起程来就越得心应手。 

学习Win32 API的理想方法就是使用一个适当的编译器,学习控制台编程(不是DOS编程,虽然它的界面是命令行界面)。我想VC是比较合适的,它功能强大、使用方便自不必说,而且可以很容易的支持SDK的程序,这也是大家选择VC的重要原因。对于Delphi和BCB我了解不多,印象里和VB有些像,不知编写控制台程序如何。Turbo C是不错的编译器,大多数人在Dos下用C编程都用它,不过可惜,它不支持Windows API。 

  对于网络编程,用Winsock和标准 C 基本可以了(要进行Windows NT/2000的Netbios编程使用Winsock是不行的),而且不难,但要是使用它的MFC类库,方便是方便了,可是复杂的关系太多了,容易乱。而且有些功能是MFC所没有提供的,MFC提供了最常用的类,而一些特殊的应用没有MFC类。 

  要是想用图形界面编程,使用MFC还是比较简单和理想的(和使用API相比),不过自然不然VB快。首先C++的基础要打好,然后可以找本好的VC书,编些例子,慢慢熟悉MFC,不过要掌握MFC类库谈何容易。 
   
  


2.其实人都容易犯贪多的毛病,这就是求知欲,非常好,但要把握度  

  
  很多人学习电脑觉得自己懂的太少,于是什么都想学,什么作图、作动画、HTML、脚本、CGI、C、Authorware,仅仅Windows下流行的编程平台就有微软的Visual Stutio外加一系列开发工具包(SDK、DDK、DXSDK等)和Delphi、BCB。此外还有N多Unix和N多Linux呢。实际上你能学多少呢?一个VC就可以有很多分支(当然不是绝对的不可跨越),能够学好一个就不错了。其实人都容易犯贪多的毛病,这就是求知欲,非常好,但要把握度,否则就什么都蜻蜓点水,却没有专长。 

  下面我说说学习编程的一点体会。首先在有了一定的编程基础后,看别人的程序,尤其是好程序(看多了,自然会看到好的),是非常有益的,其帮助也会很大。不过在这同时你一定要动手去编,不然只能算是你看明白了或者‘懂’了,而不能说你会了、‘掌握’了,这之间有很大的差别。就拿下面这个程序来说,看了两遍,明白怎么回事了,建socket--监听--客户连接--建管道--建cmd进程,然后不断将客户的输入传给cmd,将cmd的输出发给客户;但是你‘掌握’了吗?让你写一个同样的你写不写的出呢?如果能,那你掌握了,否则没有。 

记得我第一次在unix下编程,是研究DOS攻击,好像是smurf攻击,那之前我从未在unix下编过程,连unix也不熟悉,cc命令还是问别人的,tcp/ip协议也了解不深,只是学生时课本上的那点知识而已,网络编程从未用过,只知道使用socket,然后就看smurf的linux源码,然后转为sco unix代码执行,很快做完了,找个sniffer一看运行对了。但是,我会unix编程了吗?我会网络编程了吗?没有,我写不了,只能看、改。后来找本书看看,渐渐明白点了,可还编不了程序,每个函数用什么参数,类型是什么,全要对着别人的程序才行。后来编了个小程序,Socket编程的基本知识就差不多了,其实很小很小的一个程序,似乎胜过看好几个程序,应该说这是量变到质变吧。有时看来看去,流行的新书都看过了,也没什么新鲜的,好像自己都会了,翻回来让你写一个,似乎又无从写起,好像什么都不会似的,就是因为我们看到太多了,明白了不少,但却都没掌握,于是就没有什么进步,此时写几个程序,会有很大帮助的。唉,这可能是人的通病吧,总觉得自己很强,什么都可以,越多越好,其实呢?能够在一个领域做好就是专家了。我不知是否看到近来ipxodi一篇学习网络安全方法的文章,确实,人很容易犯这个毛病。 
  
  当然,我并不是否认看程序,其实‘看别人的’和‘自己写 ’几乎同等重要。有时我觉得总写一些程序,似乎没什么新东西(是不是有点像看多了时的感觉??怪了),原来很久没看新东西了,看一看,似乎会有点发现,新的或者原来问题的解决办法。其实学习就是这样:看看,记记,然后就掌握了。有时看别人一个程序,能解决自己长期的困惑。 

本文来源:http://www.hzclsc.cn/ruanjianzixun/387.html

为您推荐

制作电音的软件|电音创作软件KORG将于明年登录Switch

如果你经常关注我们对任天堂Switch的报道,你可能还记得有家公司正在为Switch制作学习编程的软件,接下来要告诉各位,Switch不单可以用来编程,而且还可以作曲!日本知名的电子音乐作曲工作站软件游戏资讯

2020-12-05 17:04:48   做电音的软件   电音软件手机版  

【支付宝小程序在哪里找】支付宝小程序开发者公测地址 支付宝小程序申请公测网址

支付宝小程序目前已经开始公测了,为大家带来支付宝小程序开发者公测地址,支付宝小程序是手机应用嵌入支付宝客户端的一种方法,下面是支付宝小程序申请公测网址! 支付宝小程序开发者公测地址 特色能力开发服务成编程开发

2020-11-22 11:04:37   支付宝小程序怎么建立   支付宝小程序怎么开发  

[c罗]c++ vector用法详解 c++ vector用法总结

c++ vector是在c++中开发过程中c++ vector作为一个十分有用的容器,许多朋友还不是很清楚c++ vector用法,不知道c++ vector到底有什么优秀的用法,不用着急一起来看看编程开发

2020-11-22 11:04:37   pcba   c盘满了怎么清理  

【eclipse如何导出项目】eclipse怎么导出项目 eclipse导出项目教程

eclipse作为用户量十分大的编程开发软件,有许多新手用户朋友或者刚开始接触这款软件的朋友经常会出现在使用eclipse的时候不知道该怎么导出已经读取到软件中的项目,其实很简单,一起来看看ecli教你一招

2020-11-10 07:04:06   eclipse怎么导入项目   eclipse怎么打开项目  

jdk环境变量配置win10|JDK环境变量配置WIN7 WIN7JDK环境变量配置教程

JDK怎么进行环境变量配置一直是困扰着许多入门编程员的问题,许多用户朋友们如果重新换了一台设备,很容易出现不知道怎么进行环境配置的情况,不用担心,小编为大家带来了详细的在WIN7系统下如果进行JDK教你一招

2020-11-07 11:05:38   jdk安装与环境变量配置   安装jdk并配置环境变量