国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

淺談面向?qū)ο蟪绦蛟O(shè)計(jì)學(xué)習(xí)策略

2014-03-20 11:13:50高永麗
關(guān)鍵詞:面向?qū)ο?/a>程序設(shè)計(jì)編程

高永麗

(楚雄師范學(xué)院信息科學(xué)與技術(shù)學(xué)院,云南 楚雄 675000)

引言

面向?qū)ο蠹夹g(shù) (OOT)是一種軟件開發(fā)和程序設(shè)計(jì)技術(shù),是建立在“對象”概念基礎(chǔ)上的方法學(xué)。面向?qū)ο蠹夹g(shù)的運(yùn)用使程序更安全、可靠、易重用、易維護(hù)。在硬件、數(shù)據(jù)庫、人工智能技術(shù)、分布式計(jì)算、網(wǎng)絡(luò)、操作系統(tǒng)等應(yīng)用中都顯示出其良好的優(yōu)越性。因而,該項(xiàng)技術(shù)成為當(dāng)今主流的計(jì)算機(jī)編程技術(shù)。面向?qū)ο蟪绦蛟O(shè)計(jì)課程自然成為高校計(jì)算機(jī)專業(yè)的一門重要的基礎(chǔ)課,在整個(gè)專業(yè)的知識體系中占有非常重要的地位。

由于面向?qū)ο蟮脑O(shè)計(jì)思想是在原來結(jié)構(gòu)化程序設(shè)計(jì)方法基礎(chǔ)上的一個(gè)發(fā)展和質(zhì)的飛躍,因此內(nèi)容繁多,兼具抽象性和復(fù)雜性。面向?qū)ο蟪绦蛟O(shè)計(jì)課程也成為目前公認(rèn)的比較難學(xué)的課程。而且學(xué)習(xí)材料 (教材)往往面面俱到,知識點(diǎn)廣,如果不考慮整個(gè)學(xué)習(xí)的主線結(jié)構(gòu) (包括實(shí)驗(yàn))和方法,對每一章節(jié)都通學(xué)一遍,勢必變成“拉完”式學(xué)習(xí),不能真正意義上掌握好這門編程技術(shù)及應(yīng)用。

筆者長期從事C++語言、JAVA語言、VB語言等“面向?qū)ο蟪绦蛟O(shè)計(jì)”類課程的教學(xué),總結(jié)教學(xué)上存在的一些主要問題,歸納面向?qū)ο蟪绦蛟O(shè)計(jì)課程的學(xué)習(xí)策略如下:

1.結(jié)合可視化設(shè)計(jì),掌握好過程式編程的基本功。

程序代碼設(shè)計(jì)最基本的結(jié)構(gòu)無外乎就是順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)?!拜斎胼敵稣Z句”、“賦值語句”、“條件語句”、“循環(huán)語句”這些老一代程序員耳熟能詳?shù)臇|西,依然是面向?qū)ο缶幊套罨A(chǔ)的編程因子,即使是發(fā)展到了如今的面向?qū)ο蠹夹g(shù),動輒把“面向過程”視作淘汰的東西,也顯然是錯(cuò)誤的。這就有如建房子,不論多宏大的工程,還是少不了“砌磚”這個(gè)基本功。掌握好這些基本的語句語法,依然是學(xué)好程序設(shè)計(jì)的基礎(chǔ)。為了提高學(xué)習(xí)興趣,可輔予可視化設(shè)計(jì)。

2.深入理解我們編程所依托的操作系統(tǒng)平臺

大家都知道操作系統(tǒng)是硬件之上的第一層軟件系統(tǒng),無疑我們編寫的程序都將依托于某個(gè)操作系統(tǒng)來運(yùn)行。作為編程者,就應(yīng)該對操作系統(tǒng)有一個(gè)更專業(yè)的理解。以目前兩大主流操作系統(tǒng)(Windows和Linux)之一的Windows為例,學(xué)習(xí)者應(yīng)該了解Windows操作系統(tǒng)的基本內(nèi)核是怎么組成和運(yùn)行的;了解硬件驅(qū)動的機(jī)制、注冊表的作用和原理;各種DLL程序的作用;Windows的消息機(jī)制;最重要的是了解Windows給外部提供的編程接口,即常說的Windows API,了解API函數(shù)組成,記住一些常用的API函數(shù)。Windows的編程模式是事件驅(qū)動的,這使得它與用戶之間的交互更友好,而這種Windows特有的“消息”激勵(lì)機(jī)制正是學(xué)習(xí)者在學(xué)習(xí)面向?qū)ο缶幊糖皯?yīng)該先行理解的。這是我們深入掌握面向?qū)ο缶幊痰谋U稀?/p>

3.學(xué)會從讀程序開始學(xué)習(xí)面向?qū)ο蟪绦蛟O(shè)計(jì)技術(shù)

很多學(xué)習(xí)者往往在學(xué)習(xí)了一個(gè)知識點(diǎn)以后就會被要求進(jìn)行實(shí)踐性編程。通常的情況是老師給個(gè)任務(wù),要求學(xué)生設(shè)計(jì)完成其功能。學(xué)生恰恰就是在這里出現(xiàn)卡殼。認(rèn)為困難度較大。其實(shí)對初學(xué)者而言,要求其去寫程序不如叫他先多讀懂一些經(jīng)典的程序段。以一個(gè)VC++程序?yàn)槔?

這是一個(gè)用CRect類定位鼠標(biāo)的例子,雖然短短一段程序,卻包含面向?qū)ο笾幸恍┗镜母拍?,包括對象引用作為參?shù)、指針調(diào)用、方法調(diào)用等。大量的讀代碼,學(xué)習(xí)者會漸漸熟悉一些基本技術(shù)應(yīng)用方法,理解一些課堂上或教材上晦澀難懂的概念。編程就像寫文章,每個(gè)概念都有前因后果,試想一下,當(dāng)你毫不費(fèi)力地讀懂大段的原代碼,離你自己動手編程還會遠(yuǎn)嗎?

4.要提前儲備好一定的數(shù)據(jù)庫知識

數(shù)據(jù)是所有計(jì)算機(jī)系統(tǒng)要處理的對象。數(shù)據(jù)庫是計(jì)算機(jī)應(yīng)用系統(tǒng)中的一種專門管理數(shù)據(jù)資源的系統(tǒng)。數(shù)據(jù)庫系統(tǒng)不從具體的應(yīng)用程序出發(fā),而是立足于數(shù)據(jù)本身的管理,它將所有數(shù)據(jù)保存在數(shù)據(jù)庫中,進(jìn)行科學(xué)的組織,并借助于數(shù)據(jù)庫管理系統(tǒng),以它為中介,與各種應(yīng)用程序或應(yīng)用系統(tǒng)接口相接合使之能方便地使用數(shù)據(jù)庫中的數(shù)據(jù)。所以對于編程來說,數(shù)據(jù)庫語言就是基礎(chǔ),無論你用JAVA、C++還是C#,程序最終要操作的都是數(shù)據(jù)庫中的數(shù)據(jù),要操作這些數(shù)據(jù)就得懂點(diǎn)基本的sql語言。會設(shè)計(jì)基本的數(shù)據(jù)庫表。記住,任何時(shí)候都不要把所學(xué)的知識孤立起來,在計(jì)算機(jī)學(xué)科的廣闊領(lǐng)域里,知識都是融會貫通相輔相成的。

5.從“軟件工程”的角度進(jìn)行實(shí)踐訓(xùn)練

基于課程體系的面向?qū)ο蟪绦蛟O(shè)計(jì),其實(shí)踐教學(xué)內(nèi)容僅僅是針對教學(xué)環(huán)節(jié)進(jìn)行設(shè)定,不同教師不同教材的實(shí)驗(yàn)內(nèi)容和重點(diǎn)大相徑庭,但大多數(shù)都未能很好地使用其中主流的圖形化的面向?qū)ο蟮牟僮鹘缑嫫脚_、達(dá)不到一定規(guī)模的綜合性實(shí)驗(yàn),所以不能很好地體現(xiàn)面向?qū)ο蟪绦蛟O(shè)計(jì)的架構(gòu)層次。因此,對于學(xué)習(xí)者,要想全面而實(shí)質(zhì)性了解面向?qū)ο缶幊蹋€須上升到工程的角度來完成一個(gè)簡單的系統(tǒng)設(shè)計(jì),這應(yīng)該是掌握面向?qū)ο蠹夹g(shù)的宏觀有效方法。

以設(shè)計(jì)一個(gè)“學(xué)生管理系統(tǒng)”為例,問題看似簡單,但學(xué)習(xí)者不僅要運(yùn)用面向?qū)ο蟮姆椒ǚ治龀橄蟪霭ā皩W(xué)生類”在內(nèi)的各種類體,分析它們之間復(fù)雜的繼承、派生、多態(tài)性,還要通過系統(tǒng)的需求分析把它們架構(gòu)在不同的層次上,配以設(shè)計(jì)恰當(dāng)?shù)臄?shù)據(jù)庫系統(tǒng),才能完成學(xué)生管理的基本功能。真正體驗(yàn)到程序員要面臨的問題和面向?qū)ο蠹夹g(shù)的優(yōu)點(diǎn)。

6.結(jié)語

學(xué)生對程序設(shè)計(jì)成就感的期望值很高,但對學(xué)習(xí)將遇到的困難心理準(zhǔn)備不足,容易產(chǎn)生畏難與逃避情緒,不利于知識和技術(shù)的掌握。由于面向?qū)ο蠹夹g(shù)是一門新興的技術(shù),所以目前大多數(shù)高校在教學(xué)體系中,仍然將“面向過程”程序設(shè)計(jì) (如C語言)作為學(xué)生接觸程序設(shè)計(jì)的起點(diǎn)和基礎(chǔ),這樣,學(xué)生往往有了先入為主的“面向過程”概念,接下來才接觸面向?qū)ο蟪绦蛟O(shè)計(jì),雖然能比較輕松地掌握一些面向?qū)ο蟮幕靖拍钜约昂唵蔚某绦蚓帉懛椒?,但在開發(fā)實(shí)際系統(tǒng)時(shí),卻容易受過程化語言的影響,往往還是從非面向?qū)ο蟮慕嵌热シ治?、設(shè)計(jì)并實(shí)現(xiàn)系統(tǒng)。人為地增加了從過程化程序設(shè)計(jì)到面向?qū)ο蟪绦蛟O(shè)計(jì)思想的轉(zhuǎn)化成本,這也是導(dǎo)致面向?qū)ο蠹夹g(shù)學(xué)習(xí)質(zhì)量不高的原因之一。針對基于面向?qū)ο蠹夹g(shù)的程序設(shè)計(jì)類課程知識面廣、語法復(fù)雜、面向?qū)ο笏枷腚y以形成和應(yīng)用等問題,總結(jié)學(xué)生學(xué)習(xí)的一些對策和方法,以期提升學(xué)習(xí)者的學(xué)習(xí)效果,構(gòu)建更為完善的學(xué)習(xí)質(zhì)量保障機(jī)制。

[1]譚浩強(qiáng).C++程序設(shè)計(jì) [M].北京:清華大學(xué)出版社,2004.

[2]侯俊杰.深入淺出MFC[M].武漢:華中科技大學(xué)出版社,2000.

[3]顏志軍.Visual C++數(shù)據(jù)庫開發(fā):典型模塊與實(shí)例精講 [M].北京:電子工業(yè)出版社,2007.

猜你喜歡
面向?qū)ο?/a>程序設(shè)計(jì)編程
編程,是一種態(tài)度
元征X-431實(shí)測:奔馳發(fā)動機(jī)編程
編程小能手
基于Visual Studio Code的C語言程序設(shè)計(jì)實(shí)踐教學(xué)探索
紡織機(jī)上誕生的編程
從細(xì)節(jié)入手,談PLC程序設(shè)計(jì)技巧
電子制作(2019年9期)2019-05-30 09:42:04
面向?qū)ο蟮挠?jì)算機(jī)網(wǎng)絡(luò)設(shè)計(jì)軟件系統(tǒng)的開發(fā)
電子測試(2018年15期)2018-09-26 06:01:34
面向?qū)ο蟮臄?shù)據(jù)交換協(xié)議研究與應(yīng)用
高職高專院校C語言程序設(shè)計(jì)教學(xué)改革探索
面向?qū)ο骔eb開發(fā)編程語言的的評估方法
南溪县| 梅河口市| 盐池县| 平定县| 宣武区| 大化| 舞钢市| 如东县| 洪雅县| 侯马市| 凤冈县| 漾濞| 金门县| 沂水县| 徐闻县| 三穗县| 务川| 西乌珠穆沁旗| 威海市| 信丰县| 青田县| 常山县| 龙井市| 清流县| 尤溪县| 深水埗区| 西盟| 禹州市| 绥芬河市| 新平| 青浦区| 沙河市| 衡阳市| 吉木萨尔县| 登封市| 惠来县| 隆昌县| 图片| 江孜县| 瑞丽市| 荆门市|