利用GUI編程提高學(xué)生編程興趣及其實施方案
發(fā)布時間:2018-06-21 來源: 感悟愛情 點擊:
摘 要 論述利用GUI編程提高學(xué)生編程興趣的必要性,討論GUI編程在提高學(xué)生編程興趣中的重要作用,并以MATLAB語言為例,詳細給出通過GUI編程提高學(xué)生編程興趣的具體的實施方案。
關(guān)鍵詞 GUI編程;MATLAB;編程能力
中圖分類號:G642 文獻標識碼:B
文章編號:1671-489X(2016)24-0136-03
1 引言
隨著數(shù)字時代[1]、物聯(lián)網(wǎng)世界的到來[2],大數(shù)據(jù)[3]、云計算[4]、人工智能[5]等技術(shù)正在發(fā)揮越來越重要的作用。這些技術(shù)的實現(xiàn)都依靠一個共同的手段——編程。編寫程序的能力是大學(xué)生職業(yè)發(fā)展最重要的能力之一,尤其是對于理工科學(xué)生來說更是如此。如今人們的衣食住行等都離不開手機和電腦,手機和電腦的功能正是通過安裝在其上的應(yīng)用程序來實現(xiàn)的。此外隨著機器人技術(shù)的逐步發(fā)展,將來一些常見的、重復(fù)性的工作將逐漸被機器人所取代,而機器人的控制正是通過編程來進行。未來,隨著機器人的不斷普及,可以預(yù)見到,編程將成為人們普遍需要具備的能力之一[6]。
編程能力的重要性不言而喻,但是學(xué)好編程卻不是一件容易的事情。不少大學(xué)生一提到編程就頭痛,一上編程課就雙眼迷茫、腦袋昏沉、呵欠不斷,就是提不起興趣來。其最主要的原因在于:學(xué)生普遍覺得編程太過抽象和單調(diào),由于大多數(shù)教師覺得對于學(xué)生來說,GUI(Graphical User Interface,圖形用戶界面)編程太難,上課時盡量避免講授,學(xué)生一般只能接觸到控制臺程序的編寫,只能通過冰冷的屏幕查看結(jié)果,而不會自己編寫界面實現(xiàn)友好的人機交互,提高編程的成就感,從而激發(fā)學(xué)習的興趣。為此,本文將重點討論GUI編程在提高學(xué)生編程興趣中的重要作用,以及介紹在MATLAB中GUI編程的具體實施方案。
2 GUI編程在提高學(xué)生編程興趣中的重要作用
常規(guī)的編程教學(xué)中,教師在講授編程時總是先講授該編程語言中的各種數(shù)據(jù)類型的定義、流程控制語句的用法、函數(shù)的編寫、類的實現(xiàn)等,最后再講授一些實際的例子,告訴學(xué)生怎么運用該編程語言解決實際問題。這一比較傳統(tǒng)的教學(xué)過程,雖然比較符合由易到難的教學(xué)規(guī)律,但是往往與程序員實際的編程步驟不一致。一個資深的程序員在編寫一個面向?qū)嶋H應(yīng)用的軟件時,往往是從軟件的前端界面、后臺負責功能實現(xiàn)的源碼、前端界面與后臺的連接等三方面來考慮。如果學(xué)生不能夠站在一個程序員的角度來理解軟件編寫的具體實現(xiàn)過程,對于在未來工作中編程能力的提高、與其他程序的相互協(xié)作以及職業(yè)的發(fā)展將極為不利。
因此,在編程教學(xué)中,在課程的開始階段就應(yīng)當以一個簡單而實際的例子向?qū)W生展示前端界面設(shè)計、后臺源碼編寫等兩個步驟的具體實現(xiàn),使學(xué)生對如何編寫一個具體的軟件建立清晰的思路。在接下來的授課中,再按照上述的2個步驟具體講授這2個部分的具體編程實現(xiàn)。通過這樣的方式,使學(xué)生明白在編程課程上到底要學(xué)些什么,到底要達到什么樣的目標。學(xué)生只有明白了要做什么,用什么來實現(xiàn)這些目標,才能夠激發(fā)起學(xué)習的熱情和興趣。如果一上來就開始講授各種編程的語法和命令,學(xué)生往往充滿疑惑,不知道為什么要學(xué)這些語法和命令,也不知道這些語法和命令在具體的軟件實現(xiàn)過程中到底有什么用,從而缺乏學(xué)習的動力和毅力,甚至剛開始就放棄編程的學(xué)習。
3 通過GUI編程激發(fā)學(xué)生編程興趣的具體實施方案
接下來,將以利用MATLAB語言編寫一個多功能的計算器為例,描述通過GUI編程激發(fā)學(xué)生學(xué)習興趣的具體實施方案。首先,在教學(xué)開始時需向?qū)W生表明,本次教學(xué)的主要目的是通過MATLAB中的GUI編程實現(xiàn)一個多功能計算器。該計算器與常用的計算器的界面相似,但是除了常用的計算器所具有的功能外,還可以具有繪制函數(shù)圖形的功能,以此激發(fā)學(xué)生的好奇心,吸引學(xué)生的注意力。然后向?qū)W生提出問題:要實現(xiàn)這個多功能的計算器需要哪些步驟呢?通過與學(xué)生的問答互動,引導(dǎo)學(xué)生意識到要實現(xiàn)這樣一個多功能計算器,主要步驟包括:1)前端界面設(shè)計;2)后端源碼實現(xiàn)。隨后按照下述方式分別給出兩個步驟的具體實現(xiàn)過程。
前端界面的設(shè)計 在MATLAB207a的命令窗口中輸入命令guide,按回車后將彈出圖1所示對話框。
在主菜單欄中共有兩個選項:Create New GUI,創(chuàng)建新的GUI;Open Existing GUI,打開已經(jīng)存在的GUI。這里選擇創(chuàng)建新的GUI,在該菜單欄下有4個子菜單。由于需要創(chuàng)建一個多功能的計算器,所以選擇Blank GUI(Default),
空白的GUI(默認)。點擊OK后則彈出圖2。在圖2中主要包含內(nèi)置控件區(qū)、界面布局區(qū)。
從內(nèi)置控件區(qū)選擇需要的控件,拖放到界面布局區(qū),可以完成前端界面端的布局,如圖3所示。該界面的設(shè)計思路是:最上面的白色矩形區(qū)域是繪圖區(qū)域,綠色區(qū)域是計算結(jié)果展示區(qū)域,在兩個窗口的下方則是功能按鍵區(qū)。
后臺源碼的編寫 多功能計算器的原理是當按下某個功能按鈕后則執(zhí)行對應(yīng)的功能。在前面的步驟中已經(jīng)繪制出界面中的各個功能按鈕,剩下的工作則是通過后臺源碼的編寫實現(xiàn)每個按鍵的功能。
MATLAB中通過每個控件的回調(diào)函數(shù)來實現(xiàn)每個按鍵的具體功能。先選中需要實現(xiàn)其功能的按鈕,然后點擊右鍵,選擇View Callbacks選項中的callbakc則跳轉(zhuǎn)到該按鍵的回調(diào)函數(shù)的編寫處。在此處編寫相應(yīng)的代碼,實現(xiàn)該按鍵的功能。重復(fù)此步驟,完成所有按鍵的回調(diào)函數(shù)的編寫。點擊運行按鈕后則會彈出多功能計算器的操作界面。
在該計算器可以繪制一些簡單函數(shù)的圖形。在圖4中同時繪制出正弦函數(shù)和余弦函數(shù)的圖象。同時,該多功能計算器還具有一般計算器所具有的常見功能。
最后總結(jié)通過GUI編程實現(xiàn)一個多功能計算器的過程,并向?qū)W生拋出問題:前端界面編寫和后臺源碼實現(xiàn)需要具有哪些編程知識呢?通過與學(xué)生之間的提問和回答,引導(dǎo)學(xué)生明白:在編程的學(xué)習中要重點搞清楚該語言中的數(shù)據(jù)類型,實現(xiàn)流程的控制的基本方法,軟件的每個功能都是通過對應(yīng)的函數(shù)來實現(xiàn)的;等等。這樣學(xué)生自然就明白在隨后的、深入的編程學(xué)習中要重點學(xué)習該語言中基本的數(shù)據(jù)類型、流程控制語句的用法以及函數(shù)的實現(xiàn)等內(nèi)容,就明確了學(xué)習的目的,做到有的放矢,激發(fā)學(xué)習的熱情。
4 總結(jié)
本文首先重點討論了利用GUI編程提高學(xué)生編程興趣的必要性。隨著物聯(lián)網(wǎng)技術(shù)、大數(shù)據(jù)技術(shù)、云計算技術(shù)以及人工智能技術(shù)的迅猛發(fā)展,可以預(yù)見到編程能力在人們的日常生活以及工作中將越來越重要,編程能力將成為大學(xué)生尤其是理工科大學(xué)生需要掌握的一種核心能力。利用GUI編程可以提升剛開始接觸編程的學(xué)生的興趣,明確學(xué)習編程的目的和具體步驟,增強學(xué)習的信心。此外,本文以MATLAB語言為例,給出通過GUI編程激發(fā)學(xué)生學(xué)習興趣的具體方案。通過GUI編程實現(xiàn)一個多功能計算器,從而起到拋磚引玉的目的,激發(fā)學(xué)習編程的熱情。
參考文獻
[1]于穎,解月光.數(shù)字智慧:數(shù)字時代學(xué)生必備素養(yǎng)[J].電化教育研究,2016(3):13-19.
[2]田野,袁博,李廷力.物聯(lián)網(wǎng)海量異構(gòu)數(shù)據(jù)存儲與共享策略研究[J].電子學(xué)報,2016,44(2):247-257.
[3]郭兵,李強,段旭良,等.個人數(shù)據(jù)銀行:一種基于銀行架構(gòu)的個人大數(shù)據(jù)資產(chǎn)管理與增值服務(wù)的新模式[J].計算機學(xué)報,2016(39):1-19.
[4]黃少榮.云計算時代技術(shù)技能型IT人才培養(yǎng)模式研究[J].計算機教育,2015(6):12-15.
[5]陳愛斌,蔡自興,李建軍.林業(yè)院校人工智能課程教學(xué)的思考[J].計算機教育,2016(10):80-82.
[6]丁衛(wèi)平,陳建平,管致錦,等.以程序設(shè)計課程群實踐教學(xué)改革為契機,培養(yǎng)地方普通本科院校學(xué)生編程創(chuàng)新能力[J].計算機教育,2009(20):10-13.
相關(guān)熱詞搜索:編程 實施方案 提高學(xué)生 興趣 利用
熱點文章閱讀