藏刊網,職稱文章發表、期刊投稿權威機構

投稿咨詢

投稿在線咨詢

專著咨詢

合著&獨著&編委

編輯在線咨詢

專利咨詢

專利申請&轉讓

編輯在線咨詢

軟著版權

軟著版權

編輯在線咨詢

在線溝通

論文&專著&專利

編輯在線咨詢

微信聊

微信掃一掃

首頁 > 科技論文 > > 關于計算機語言教學的探討
關于計算機語言教學的探討
>2024-06-09 09:00:00

摘要:計算機的軟硬件技術的日新月異,推動計算機語言的不斷更新發展,如何與時俱進學習計算機語言是值得關注問題。該文從高校程序設計課程教學中存在問題出發,探討了如何與時俱進的進行計算機語言的教與學,根據面向過程語言與面向對象語言發展的歷程,建立程序設計語言學習的思維邏輯,掌握計算機語言學習的框架模式,幫助學生在快速發展的計算機領域里可持續發展。

關鍵詞:計算機語言;程序設計;思維培養;面向過程;面向對象
中圖分類號:G642 文獻標識碼:A 文章編號:1009-3044(2018)10-0121-03
Abstract: Advances in computer hardware and software technology, promote the development of the continuous renewal of computer language, how to keep pace with The Times to learn computer language is a problem worthy of attention in this paper. Based on the existing problems in the teaching of programming courses in colleges and universities, this paper discusses how to keep pace with the times in the teaching and learning of computer languages. According to the process oriented language and the development of object-oriented language, establish the thinking logic programming language learning, to master the computer language learning mode, the framework of computer language learning to help students in the fast-growing computer field of sustainable development.
Key words: computer language; programming; thinking training; process-oriented; object oriented
隨著計算機技術應用普及,掀起來了學習計算機的浪潮,程序設計作為各專業重要的基礎課在各高校開設,目的是使學生能系統地學習程序設計有關的內容及思維方式,以便更好的應用計算機解決實際問題。隨著計算機的軟硬件技術的不斷更新,計算機語言經歷機器語言、匯編語言、高級語言幾個階段,高級語言分為面向過程和面向對象,具體語言種類都有好幾十種。目前,許多高校根據就業形勢和專業建設培養模式開設了多門程序設計課程,由于所依托的基礎語言和講授的內容模式不盡相同,在教學中存在不近人意的問題。本文根據教學實踐中反映出來的問題,探討如何培養學生學習程序設計語言的思維模式,順應瞬息萬變的計算機領域,實現學生學習程序設計模式的與時俱進。
1 程序設計課程存在問題
目前計算機專業及相關專業的課程設置中,一般大一開設《C語言程序》,大二開設可視化程序設計語言Visual Basic,結合現在潮流的軟件,大三開設面向對象語言如《Java程序設計》和《C#語言》,我們學院的信息與計算科學專業還涉及數值計算,于是還開設了Matlab語言,學生學習的程序設計語言種類較多,但很多學生編程能力僅僅停留在語言的語法規則層面,學而卻不精,限于各種的原因,有些老師在教學上把語法基礎當成重點,而沒有根據學生的先修課程的知識點來引導組織教學,導致學生學習了多門計算機語言,仍對編寫程序缺乏感性認識,沒有形成基本的編程思維,具體來說主要體現在以下幾個方面:
1) 計算機語言課教學深度與廣度的不協調。[1]日常教學中,由于專業設置和課程的學時有限,學生的水平參差不齊,老師的教學的側重點也很難把握,對于二本類的院校,老師把教學重點放在語法基礎教育階段居多,限于學時的原因,很多程序設計語言的高級應用沒有深入探討,這也是導致學生學了很多語言但都不精重要原因之一。
2) 沒有建立計算機語言學習的思維方式。很多?W生學語言僅僅是單純學習,沒有建立計算機語言學習的框架體系,從整體上把握如何去學一門語言,把學習語言的思維融會貫通起來,建立程序設計的思維模式。教學上也沒有進行引導,幫助學生建立學習程序設計語言的思維和能力。
3) 缺乏對程序設計語言發展的認識,轉變程序設計的思維模式比較困難。計算機的語言經歷了機器語言、匯編語言、高級語言幾個階段,高級語言分為面向過程和面向對象,其中C語言就是經典的面向過程語言,在當今的嵌入式開發中仍然是炙手可熱,面向對象典型的語言有c++和java。一般先開設一門面向過程的C語言后,再開設面向對象的高級語言,很多學生學C語言時覺得很容易掌握,到面向對象語言就不知所措,隨著程序設計語言的發展如何實現程序設計的思維轉變是程序設計思維培養重要方面
2程序設計課程學習思維的培養
計算機的語言隨著時代不斷變化,技術的更新,計算機語言的發展也會日新月異,尤其計算機的硬件更新換代,必然也會觸動軟件技術的更新,更多優秀的計算機語言會產生[1],在這種形式下如何教會學生學習計算機語言的思維邏輯更重要,掌握學習計算機語言的思維方式,建立程序語言的框架體系結構,建立學習程序設計思維模式,教會學生學習程序設計的語言能力與素質。 2.1框架式學習程序設計語言基礎知識
一門計算機語言是一套人與計算機的交流的指令集合,與自然語言相似,有詞匯、語法、句法、語句組織規則,編寫程序就像寫文章,做項目就像編寫一本書。寫文章首先要構思好框架再寫,同樣學習編寫程序首先要掌握程序設計的框架,從整體上把握程序設計語言基本特征,再具體學習語言的組織方式,這也是結構化程序設計的中把復雜的客觀問題,分成若干獨立的問題,然后一個個進行解決,也即是逐步分解、分而治之的思想的反射應用。
一本書根據書名的主題分成若干章節組織,每個章節又有一個小的中心思想,圍繞此來展開故事的描述,編寫一個項目程序就像編寫一本書。圖1是C語言程序基本組成框架結構,一個項目程序由若干源程序組成,每個源程序都是圍繞程序完成功能來編寫程序,而每個源程序都有程序的組織模式,C語言中源程序的模式由若干相關函數和說明語句組成,java語言中每個源程序模式由說明語句和若干類組成。類是由數據和函數組成,函數是一個功能獨立性最高的程序段,到函數這一層都是面向過程程序設計,也即是數據輸入、數據處理和數據輸出三個內容,體現在程序設計中即是輸入數據的定義、表達,數據處理的順序、選擇、循環三大骨架結構程序,以及數據的輸出。在這個過程中就要學習該門程序語言的詞匯(即標識符、保留字)、數據的表示、語法規則、語句的種類及使用規則,利用所學的詞匯、句法和語法來組織程序。馮偌依曼思想的計算機都是存儲程序,程序運行時調入到內存中,逐條取出來執行,程序編寫順序決定程序的讀寫順序,一篇文章默認的讀寫順序的從上到下從左至右,同樣程序執行順序也是從上到下從左至右,因此組織程序要按照它執行順序的語義去編寫程序,否則就會像前言不搭后語的文章詞不達意,導致就是運算的結果不是所要的結果。
2.2 面向過程的程序設計思維
“過程語言”用類似自然語言的符號化形式描述對問題的處理過程,用數學表達式的形式描述對數據的計算過程,人們只需向計算機描述問題的求解過程,而不關心計算機的內部結構。[2]面向過程的程序設計模式就是如圖2所示的三個步驟:輸入信息A,通過計算機的算法處理,輸出結果信息B。[3]若輸入的信息A直接可以運用編程語言中提供的數據類型表達出來,則直接進行算法處理步驟;若輸入的信息A是圖、表、聲音等非數值信息時,首先要做是利用數據結構理論應用計算機的語言把信息A組織表達出來,因此圖靈獎獲得者Niklaus Wirth提出的著名論斷:“程序=數據結構+算法”,這就是面向過程的程序設計的核心思想,以計算為核心,按照數據處理的過程來組織程序。

圖2 計算機處理數據的過程
例如鍵盤輸入一個三位數,輸出逆序后的數。例如,輸入236,輸出632。根據題意按照計算處理數據的過程把上述問題轉變出如圖3的程序設計流程,再按照自左至右的順序用計算語言表達出來即是計算機可以識別的程序。

圖3 程序設計的流程
#include
void main()
{
int x, y; //輸入數據、輸出數據的表示
int a,b,c; //中間數據的表示
printf("Please input a num:");
scanf("%d\n",&x); //接收輸入數據
//輸入數據的處理
a=x/100;
b=x/10%10;
c=x%10;
y=100*c+10*b+a;
printf("y=%d\n",y);//輸出數據
}
由此可以看出面向過程的程序設計是一種線性的思維模式,以數據處理過程為核心,大體上分為輸入數據、處理數據和輸出數據三個過程,是一種順序線性的處理數據的模式,遵循“程序=數據結構+算法”的思維模式,不適應于規模大、特別復雜的項目,軟件重用范圍窄粒度小,對于需求不明確的情況難以適應,后期維護的代價高。
2.3面向對象程序設計思維
面向對象的基本思想是從現實世界客觀存在的事物出發來構造軟件系統,并在系統構造中盡可能運用人類的自然思維方式,將一個實際問題看成是一個對象或幾個對象的集合。[4]面向對象程序設計中,把問題世界的事物都看作對象即客觀世界是由對象組成,把對象中具有相同的數據和操作的對象歸為一類這即是面向對象中抽象的過程,在計算機中程序設計中即是用類這個數據類型來表示,程序處理是具體的數據,即對象,故用類來定義對象。利用面向對象的繼承與多態性技術派生出具有的相似性對象的子類,體現在計算機體系結構就是不同的類,各個對象間通過發消息進行通信,因此面向對象的方法學主要是由“對象+類+繼承+消息”組成,強調把數據和操作組合為一個整體,這就是面向對象里面封裝思想。圖4是面向程序設計的思維方式。

圖4 面向對象思維方式
在大型的程序設計中,根據軟件工程的面向對象的方法論把客觀世界需解決的問題抽象各種各樣的類,把完成功能統一模塊的類再進行抽象形成問題子系統、人機交互子系統、數據庫管理子系統、任務管理子系統類,如圖5所示。

圖5 面向對象程序框架體系
面向過程的語言反映了計算機的解決問題的思維過程,面向對象的程序設計語言則是人的思維模式,利用面向對象的技術進一步縮小了人腦與電腦思維方式上的差異,使人們在利用計算機解決問題時,不是將主要精力花在如何描述解決問題的過程上(編程上),重點是在解決問題的分析上。[5]面向對象技術常用于解決復雜的客觀問題,利用繼承、封裝、多態實現了代碼的重用,使得數據更安全更易于維護。 2.4 面對過程到面向對象程序設計思維轉變
面向過程到面向對象程序設計實際是計算機程序在數據管理上的一個轉變。在面向過程的程序設計中以計算為核心,遵循程序=數據結構+算法,程序的組織方式以數據處理的過程來組織代碼,數據與處理過程分離。隨著計算機應用技術發展,計算機處理的數據不再是單純的數值型數據,而是更復雜的非數值型數據例如圖、表格、聲音等,這時面向過程的語言中提供struct這種技術構造類型來描述復雜的事物方式,我們知道數據類型是數值取值范疇和操作的總稱,C語言中struct構造器仍然是無法體現數據與操作的相關性。面向對象技術則是把處理的數據和操作進行封裝,在計算機語言中體現出來即是一個“類”,體現了一個事物的動態特征和靜態屬性。通俗的說面向對象是把數據和與數據相關的操作提取出來,這樣更好保證數據處理的獨立性,利于系統的維護,保證了數據的安全性。計算機處理的數據是對象,對象是類的實例化也即是這個類數據類型的個體,因此面向對象數據編程變成定義學習類的定義,面向對象的程序設計是以類來組織代碼,從管理學的角度來說面向對象中的類是把面向過程中數據和相關的操作(函數)進行分類放在一起,面向對象是在面向過程的基礎上演變而來的,面向對象中操作還是面向過程的,圖6是已知矩形的長和寬,求矩形面積和周長的程序設計問題,運用面向過程與面向對象程序設計方法的對比。

圖6 面向過程與面向對象程序設計對比
3程序設計課程教學實施框架方案
程序設計課程的教學重點不在于如何解決各種實際問題,而是有了計算方法(算法)后,如何掌握使用高級語言實際編制解決問題的程序,以便將來學習“程序設計語言理論”、“算法設計與分析”、“程序設計方法學”等課程?!?】一門程序設計課程可以按照如圖7所示矩形區域的側重點來組織教學,該區域可以分為四個部分:語言基礎部分I、實驗部分II、自主學習區域III和課程設計IV,第一部分基礎部分是語言共同具有的特征,其中包括數據類型、程序的基本結構、類的定義和使用等,這部分內容可以利用程序設計學框架快速掌握語言的語法規則,在以往程序設計課程基礎上找區別與聯系,利用比較的少的學時來講解。第二區域實驗教學,教師要精心設置實驗鞏固語法知識,提前把實驗內容發給學生預習,實驗中重視學生實驗課準備與實踐情況,引導學生把基礎打扎實。第三區域是自主學習,程序設計課程是實踐性十分強的課程,需要學生在?n后花一定時間演練,除了課堂教學之外,教師通過網絡課程平臺布置一些更具挑戰性的作業給學生,讓學生獨立完成,通過不斷的實踐提高學生。第四部分是程序設計課程綜合應用,對于老師和學生老說都要花更多的時間更加重視,建議設置課程設計,讓學生進行系統的綜合練習,把所學的知識進行綜合應用,系統化程序設計知識,提高學生鍛煉學生應用能力。在課程的開設上可以進行階梯式培養,先設置面向過程程序設計語言作為基礎,然后是在此基礎上設置面向對象程序設計語言的課程,再就是面向對象語言的專業技能實訓或者課程設計,把程序設計能力培養分成三個階段來進行。
4結束語
本文探討了計算機程序設計的語言教與學的思維模式,目的是幫助學生建立程序設計的學習思維模式,掌握程序設計語言的特點,在學習過程中鍛煉分析問題解決的能力。同時也為老師在教授程序設計課程如何引導組織教學,提供一種思路。
參考文獻:
[1]周億陶.計算機語言教學方法探析[J].黑龍江省政法管理干部學院學報,2009(2):145-147.
[2]沈澤剛,鐘德春.關于計算機專業入門語言的探討[J].福建電腦,2012(1):182-187.
[3]付喜梅. 《數據結構》的類比教學[J].電腦開發與應用,2013,26(10):33-35.
[4]何渝.計算機語言課程的困惑與思考[C].2011 International Conference on Education and Education Management EEM2011,2011:754-759.
[5]陳榮.《面向對象程序設計》教學探討[J].新疆廣播電視大學學報,2007(1):48-51.

綜合排序
投稿量
錄用量
發行量
教育界

主管:廣西壯族自治區新聞出版局

主辦:廣西出版雜志社

國際:ISSN 1674-9510

國內:CN 45-1376/G4

級別:省級期刊

中國報業

主管:中國報業協會

主辦:中國報業協會

國際:ISSN 1671-0029

國內:CN 11-4629/G2

級別:國家級期刊

中國房地產業

主管:中華人民共和國住房部和...

主辦:中國房地產業協會

國際:ISSN 1002-8536

國內:CN 11-5936/F

級別:國家級期刊

建筑與裝飾

主管:天津出版傳媒集團有限公司

主辦:天津科學技術出版社有限...

國際:ISSN 1009-699X

國內:CN 12-1450/TS

級別:省級期刊

財經界

主管:國家發展和改革委員會

主辦:國家信息中心

國際:ISSN 1009-2781

國內:CN 11-4098/F

級別:國家級期刊

文化月刊

主管:中華人民共和國文化部

主辦:中國文化傳媒集團有限公司

國際:ISSN 1004-6631

國內:CN 11-3120/G2

級別:國家級期刊

期刊在線投稿系統
上傳文件
支持上傳.doc、.docx、.pdf文件
18年國內外學術服務,發表國際文獻請認準藏刊網官網

資深編輯團隊

專業設計投入方案

投稿成功率極高

企業信譽保障

對公交易更安全

人民群眾口碑好

高效投稿流程

審稿快!出刊快!檢索快!

正規刊物承諾

無假刊!無套刊!

投稿成功!

藏刊網提醒您

1.稿件將進入人工審稿階段,審稿后會有編輯聯系您,請保持手機暢通。

2.為避免一稿多投、重刊等現象影響您的發表,請勿再投他刊。

確定

投稿失??!

藏刊網提醒您

由于網絡問題,提交數據出現錯誤,請返回免費投稿頁面重新投稿,謝謝!

確定

藏刊網收錄400余種期刊,15年誠信發表服務。

發表職稱文章,覆蓋教育期刊、醫學期刊、經濟期刊、管理期刊、文學期刊等主流學術期刊。

  投稿郵箱:cangkan@163.com

本站少量資源屬于網絡共享如有侵權請您聯系我們,將在第一時間刪除。

版權 2009-2022 版權所有:河北藏刊文化發展有限公司 工信部備案:ICP備20016223號 冀公網安備13010502002858號

青青青爽不卡一区二区_操婷婷色六月中文字幕_国产精品yjizz视频网_中文无码一级大片_A级毛片100部免费观