国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

對初學(xué)者如何開始學(xué)習(xí)VC的看法

2019-11-17 05:51:52
字體:
供稿:網(wǎng)友
1.學(xué)習(xí)VC的一點(diǎn)體會(huì) 
   
  假如沒學(xué)過編程,最好從C開始,然后學(xué)習(xí)VC++。當(dāng)然一開始就學(xué)VC也行,不過VC太龐大了,難以把握。用VC時(shí),別用它的類,就用標(biāo)準(zhǔn)C和Win32 API編寫命令行的程序,這樣VC只是一個(gè)方便的C編輯/編譯/調(diào)試器,而不是功能極多、龐雜的重型軟件,這就和使用Turbo C差不多,只是功能更強(qiáng)了,使用更方便了。同時(shí)這樣編程還有一個(gè)好處,就是可以熟悉Windows系統(tǒng)的工作方式和組織方式。 

  在沒有熟練C、C++及編程思想前,一定不要接觸VC的圖形界面編程和MFC類庫,否則你就會(huì)對VC望而卻步的。我在上學(xué)時(shí)學(xué)了一學(xué)期的VC,在那之前學(xué)了C、匯編和很多其他的編程課程。可是學(xué)完VC后,班上大多數(shù)人害怕VC,不敢用它,沒人逼著說什么也不會(huì)去碰VC,就是因?yàn)橐恢痹趯W(xué)界面編程和使用MFC類庫,學(xué)得糊里糊涂,不熟悉類庫的使用和MFC體系結(jié)構(gòu),對Windows各種消息不熟悉,編起程來舉步維健,有時(shí)根本無從下手;而不用MFC類庫又不會(huì)編程了,因?yàn)椴粫?huì)用Windows API,對Windows系統(tǒng)的工作原理不了解。 

由于Windows NT的界面十分友好,治理員很輕易就熟悉了NT的使用和日常治理,但是卻不了解Windows NT的工作原理,也不注重Windows NT配置工作,因而降低了Windows NT的安全性,可以說這是Windows NT相對于Unix來說安全性差的一個(gè)重要原因。治理員只需按微軟提供的NT C2 Config CheckList的配置列表,實(shí)現(xiàn)其中重要的幾個(gè)配置就可以擋住大部分的普通入侵者,然而Admin為空密碼和答應(yīng)空連接的 NT 計(jì)算機(jī)就是如此之多,尤其在中國。說遠(yuǎn)了,對于編程人員其實(shí)也是一樣,Windows系統(tǒng)的界面友好,使得很多人只是簡單的使用它,而不去深究它內(nèi)在的實(shí)現(xiàn)。對系統(tǒng)理解越少,編程的困難越多,實(shí)現(xiàn)所需的功能越難,因?yàn)榫幊袒旧鲜窃诤拖到y(tǒng)提供給程序員的編程接口(API)打交道,你不知道系統(tǒng)提供給你什么支持,就難以編程。舉個(gè)例子,大家知道Unix的用戶帳號(hào)存在/etc/passwd文件里,假如要查找當(dāng)前系統(tǒng)的一個(gè)用戶名就只需打開/etc/passwd文件,然后一行一行的讀文件,并分析一行里的內(nèi)容,從而找到用戶名部分和要查找的用戶名相比較即可,這沒有問題,我想大多數(shù)不了解unix編程的程序員都會(huì)這樣想。然而unix提供的getpwnam函數(shù)恰好實(shí)現(xiàn)了這個(gè)功能,一個(gè)函數(shù)調(diào)用就解決了問題。可以看出,理解系統(tǒng)提供的API的重要性;實(shí)際上,程序員在學(xué)會(huì)了編程語言和基本編程技巧后,最主要的任務(wù)就是了解系統(tǒng)提供的函數(shù)支持,對系統(tǒng)API了解越多,編起程來就越得心應(yīng)手。 

學(xué)習(xí)Win32 API的理想方法就是使用一個(gè)適當(dāng)?shù)木幾g器,學(xué)習(xí)控制臺(tái)編程(不是DOS編程,雖然它的界面是命令行界面)。我想VC是比較合適的,它功能強(qiáng)大、使用方便自不必說,而且可以很輕易的支持SDK的程序,這也是大家選擇VC的重要原因。對于Delphi和BCB我了解不多,印象里和VB有些像,不知編寫控制臺(tái)程序如何。Turbo C是不錯(cuò)的編譯器,大多數(shù)人在Dos下用C編程都用它,不過可惜,它不支持Windows API。 

  對于網(wǎng)絡(luò)編程,用Winsock和標(biāo)準(zhǔn) C 基本可以了(要進(jìn)行Windows NT/2000的Netbios編程使用Winsock是不行的),而且不難,但要是使用它的MFC類庫,方便是方便了,可是復(fù)雜的關(guān)系太多了,輕易亂。而且有些功能是MFC所沒有提供的,MFC提供了最常用的類,而一些非凡的應(yīng)用沒有MFC類。 

  要是想用圖形界面編程,使用MFC還是比較簡單和理想的(和使用API相比),不過自然不然VB快。首先C++的基礎(chǔ)要打好,然后可以找本好的VC書,編些例子,慢慢熟悉MFC,不過要把握MFC類庫談何輕易。 
   
  


2.其實(shí)人都輕易犯貪多的毛病,這就是求知欲,非常好,但要把握度  

  
  很多人學(xué)習(xí)電腦覺得自己懂的太少,于是什么都想學(xué),什么作圖、作動(dòng)畫、Html、腳本、CGI、C、Authorware,僅僅Windows下流行的編程平臺(tái)就有微軟的Visual Stutio外加一系列開發(fā)工具包(SDK、DDK、DXSDK等)和Delphi、BCB。此外還有N多Unix和N多linux呢。實(shí)際上你能學(xué)多少呢?一個(gè)VC就可以有很多分支(當(dāng)然不是絕對的不可跨越),能夠?qū)W好一個(gè)就不錯(cuò)了。其實(shí)人都輕易犯貪多的毛病,這就是求知欲,非常好,但要把握度,否則就什么都蜻蜓點(diǎn)水,卻沒有專長。 

  下面我說說學(xué)習(xí)編程的一點(diǎn)體會(huì)。首先在有了一定的編程基礎(chǔ)后,看別人的程序,尤其是好程序(看多了,自然會(huì)看到好的),是非常有益的,其幫助也會(huì)很大。不過在這同時(shí)你一定要?jiǎng)邮秩ゾ帲蝗恢荒芩闶悄憧疵靼琢嘶蛘摺耍荒苷f你會(huì)了、‘把握’了,這之間有很大的差別。就拿下面這個(gè)程序來說,看了兩遍,明白怎么回事了,建socket--監(jiān)聽--客戶連接--建管道--建cmd進(jìn)程,然后不斷將客戶的輸入傳給cmd,將cmd的輸出發(fā)給客戶;但是你‘把握’了嗎?讓你寫一個(gè)同樣的你寫不寫的出呢?假如能,那你把握了,否則沒有。 


記得我第一次在unix下編程,是研究DOS攻擊,似乎是smurf攻擊,那之前我從未在unix下編過程,連unix也不熟悉,cc命令還是問別人的,tcp/ip協(xié)議也了解不深,只是學(xué)生時(shí)課本上的那點(diǎn)知識(shí)而已,網(wǎng)絡(luò)編程從未用過,只知道使用socket,然后就看smurf的linux源碼,然后轉(zhuǎn)為sco unix代碼執(zhí)行,很快做完了,找個(gè)sniffer一看運(yùn)行對了。但是,我會(huì)unix編程了嗎?我會(huì)網(wǎng)絡(luò)編程了嗎?沒有,我寫不了,只能看、改。后來找本書看看,漸漸明白點(diǎn)了,可還編不了程序,每個(gè)函數(shù)用什么參數(shù),類型是什么,全要對著別人的程序才行。后來編了個(gè)小程序,Socket編程的基本知識(shí)就差不多了,其實(shí)很小很小的一個(gè)程序,似乎勝過看好幾個(gè)程序,應(yīng)該說這是量變到質(zhì)變吧。有時(shí)看來看去,流行的新書都看過了,也沒什么新鮮的,似乎自己都會(huì)了,翻回來讓你寫一個(gè),似乎又無從寫起,似乎什么都不會(huì)似的,就是因?yàn)槲覀兛吹教嗔耍靼琢瞬簧伲珔s都沒把握,于是就沒有什么進(jìn)步,此時(shí)寫幾個(gè)程序,會(huì)有很大幫助的。唉,這可能是人的通病吧,總覺得自己很強(qiáng),什么都可以,越多越好,其實(shí)呢?能夠在一個(gè)領(lǐng)域做好就是專家了。我不知是否看到近來ipxodi一篇學(xué)習(xí)網(wǎng)絡(luò)安全方法的文章,確實(shí),人很輕易犯這個(gè)毛病。 
  
  當(dāng)然,我并不是否認(rèn)看程序,其實(shí)‘看別人的’和‘自己寫 ’幾乎同等重要。有時(shí)我覺得總寫一些程序,似乎沒什么新東西(是不是有點(diǎn)像看多了時(shí)的感覺??怪了),原來很久沒看新東西了,看一看,似乎會(huì)有點(diǎn)發(fā)現(xiàn),新的或者原來問題的解決辦法。其實(shí)學(xué)習(xí)就是這樣:看看,記記,然后就把握了。有時(shí)看別人一個(gè)程序,能解決自己長期的困惑。 


發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 华安县| 应用必备| 元氏县| 蕉岭县| 浪卡子县| 新巴尔虎右旗| 遂宁市| 宁陵县| 新泰市| 武陟县| 新丰县| 霍林郭勒市| 图们市| 乐陵市| 龙海市| 永寿县| 闽清县| 平邑县| 峨边| 济阳县| 陵川县| 丰县| 桑植县| 江门市| 开远市| 赞皇县| 安岳县| 攀枝花市| 永定县| 敖汉旗| 贵德县| 南投县| 墨江| 元江| 松溪县| 南丰县| 贵港市| 浪卡子县| 三河市| 扎兰屯市| 武义县|