亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        “Java程序設(shè)計(jì)”課程教學(xué)思考

        2013-01-01 00:00:00藍(lán)雯飛李子茂
        計(jì)算機(jī)時(shí)代 2013年1期

        摘 要: 目前,面向?qū)ο笳Z言Java已成為Internet上最受歡迎的開發(fā)語言之一,許多高校紛紛將Java列為程序設(shè)計(jì)的核心課程。在多年Java教學(xué)經(jīng)驗(yàn)的基礎(chǔ)上,就Java語言的教學(xué),包括教材的選擇、開發(fā)環(huán)境的選取、教學(xué)內(nèi)容的篩選、教學(xué)方法的運(yùn)用、教學(xué)實(shí)例的選用等問題進(jìn)行了較為深入的探討,給出了可行性思路。

        關(guān)鍵詞: Java; 面向?qū)ο螅?程序設(shè)計(jì)課程; 教學(xué)方法

        中圖分類號(hào):G642 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1006-8228(2013)01-37-03

        Pondering over teaching of “java programming designing”

        Lan Wenfei, Li Zimao

        (School of Computer Science, South-central University of Nationalities, Wuhan, Hubei 430074, China)

        Abstract: Java is becoming one of the most popular object-oriented programming languages in developing areas based on Internet and one of the core programming curriculums for universities. In this paper, some Java teaching problems are discussed, such as the choice of teaching materials, the choice of developing environment, filtering of teaching content, using of teaching method, design of the teaching cases. The feasible ideas for above are given.

        Key words: Java; object-oriented; programming curriculum; teaching method

        0 引言

        在Java面世短短的十來年間,Java以其簡(jiǎn)單易學(xué)、安全可靠、面向?qū)ο?、多線程及平臺(tái)獨(dú)立性等許多特點(diǎn)[1-3],被越來越多地推廣和使用,它已成為Internet上最受歡迎的開發(fā)語言之一。

        目前,許多高校已將“Java程序設(shè)計(jì)”列為程序設(shè)計(jì)的核心課程之一,肯定了它在培養(yǎng)計(jì)算機(jī)開發(fā)類人才中的地位和作用。

        本人已連續(xù)多年擔(dān)任高校計(jì)算機(jī)專業(yè)Java程序設(shè)計(jì)課程的主講教師,針對(duì)Java教學(xué)中存在的問題,積累了一些教學(xué)經(jīng)驗(yàn),希望能與同仁共同探討。

        本文就Java語言的教學(xué),包括教學(xué)時(shí)數(shù)的安排、教材的選擇、開發(fā)環(huán)境的選取、教學(xué)內(nèi)容的篩選、教學(xué)方法的運(yùn)用、教學(xué)實(shí)例的選用等方面[4,5],給出了一些自己的做法,實(shí)踐證明,這些方法是可行的。

        1 教學(xué)準(zhǔn)備環(huán)節(jié)

        首先討論Java程序設(shè)計(jì)課程教學(xué)的準(zhǔn)備工作。

        1.1 合理安排教學(xué)時(shí)數(shù)

        我們授課的對(duì)象是軟件工程實(shí)驗(yàn)班本科學(xué)生,該課程安排在大一第二學(xué)期,鑒于學(xué)生在大一第一學(xué)期已具備基本的計(jì)算機(jī)原理及專業(yè)基礎(chǔ)知識(shí),這樣來安排教學(xué)計(jì)劃是比較合理的??紤]到學(xué)生在大一已具備C/C++高級(jí)語言程序設(shè)計(jì)的基礎(chǔ),而多數(shù)學(xué)生在國內(nèi)修完本科課程后會(huì)選擇到國外繼續(xù)深造學(xué)習(xí),所以Java語言程序設(shè)計(jì)課程的教學(xué)設(shè)計(jì)必須考慮全方位,此外Java語言衍生自C++,它的基本語法同C語言,而其面向?qū)ο蟮幕咎卣魍珻++。鑒于此,我們將Java程序設(shè)計(jì)課程的上課時(shí)數(shù)設(shè)置為48個(gè)授課學(xué)時(shí),18個(gè)實(shí)踐學(xué)時(shí),這樣設(shè)置是比較合適的。

        1.2 精選教材

        選擇合適的教材,是保證有效教學(xué)的重要手段之一[6]。合適的Java教材, 應(yīng)具有較好的知識(shí)覆蓋面,難度適中,適合學(xué)生的具體情況[4]。由于我們講授的對(duì)象是實(shí)驗(yàn)班學(xué)生,需要使用全英文教學(xué),此外,他們已具備一定的面向?qū)ο蟪绦蛟O(shè)計(jì)基礎(chǔ),所以諸如《Thinking in Java》、《Objects First with Java》、 《The Java Programming Language》等經(jīng)典書籍都適合作為該課程的教材。

        選擇國外經(jīng)典教材,能保證我們的教學(xué)內(nèi)容與國外接軌[7]。學(xué)生在閱讀英文原版教材的同時(shí),可同時(shí)參考對(duì)應(yīng)的中文翻譯本,能使學(xué)生加強(qiáng)對(duì)所學(xué)知識(shí)的理解。

        1.3 選擇合適的實(shí)驗(yàn)環(huán)境

        由于JDK(Java Development Kit)是命令行的編程環(huán)境,需要用編輯器建立Java源程序。如果選用Windows自帶的記事本notepad來編輯程序,首先程序中若出現(xiàn)語法錯(cuò)誤是很不容易被發(fā)現(xiàn)的;其次每次必須打開cmd窗口并輸入一大堆命令,如編譯命令、運(yùn)行命令等;再就是對(duì)于applet小程序還要自編html文件,非常麻煩。但是,如果選用超智能、傻瓜型的集成開發(fā)環(huán)境,如JBuilder、NetBeans,因其耗內(nèi)存,所以速度慢,慢到不能忍受;更重要的是不利于入門級(jí)的學(xué)生掌握J(rèn)ava的基本語法。因?yàn)镴ava上機(jī)實(shí)踐的一個(gè)重要訓(xùn)練內(nèi)容就是熟練使用Java編譯器(java.exe)去檢查語法錯(cuò)誤,并能修改錯(cuò)誤,這樣做的目的是使學(xué)生能較快地掌握J(rèn)ava語法。

        本文簡(jiǎn)要介紹一種既簡(jiǎn)單又方便入門者使用的Java編輯器TextPad。TextPad作為Java編輯器需要做簡(jiǎn)單配置,首先把TextPad裝上(先裝JDK),安裝完畢就可按下面的方法配置:在菜單的Configure中選擇Preference,選擇Tools,點(diǎn)add下拉菜單,選擇Java SDK commands。之后Tools中多了3項(xiàng):Compile Java、Run Java Application、Run Java Applet。從這一點(diǎn)來看它確實(shí)比其他的Java編輯器更容易配置,如EditPlus。

        按上述方法配置TextPad Java編輯器后,還可適當(dāng)優(yōu)化TextPad Java IDE環(huán)境,使它更適合編寫、執(zhí)行Java程序。優(yōu)化環(huán)境方法在此省略,有興趣的作者可參見文獻(xiàn)[2]。

        2 教學(xué)內(nèi)容

        根據(jù)多年的Java程序設(shè)計(jì)課程教學(xué)經(jīng)驗(yàn),我們認(rèn)為講授該課程的內(nèi)容主要包括三個(gè)方面:一是Java語言基礎(chǔ);二是Java語言的新特性;三是在講授上述內(nèi)容時(shí)穿插介紹JDK類庫的常用類。

        Java語言基礎(chǔ)包括:數(shù)據(jù)類型、表達(dá)式、基本語句、類和對(duì)象、繼承和多態(tài)、異常處理機(jī)制、小程序、圖形用戶界面設(shè)計(jì)、輸入/輸出、多線程、網(wǎng)絡(luò)編程和數(shù)據(jù)庫編程。考慮到我們面授的學(xué)生已經(jīng)掌握了C++面向?qū)ο蟪绦蛟O(shè)計(jì)基礎(chǔ)內(nèi)容,而且Java教學(xué)內(nèi)容偏多、教學(xué)時(shí)數(shù)較少[8],因此對(duì)于衍生自C++的Java語言,它和C++類似的部分,包括數(shù)據(jù)類型和表達(dá)式、基本語句、類和對(duì)象、繼承和多態(tài)及異常處理機(jī)制等,應(yīng)講授較少的學(xué)時(shí)數(shù);而對(duì)于Java語言特有的部分,如小程序、圖形用戶界面設(shè)計(jì)、輸入/輸出、多線程、網(wǎng)絡(luò)編程和數(shù)據(jù)庫編程,則應(yīng)講授較多的學(xué)時(shí)數(shù)。由于篇幅有限,在此省去對(duì)每個(gè)章節(jié)學(xué)時(shí)數(shù)的具體編排。

        1996年Sun公司發(fā)布了JDK1.0,在短短的十年時(shí)間里,JDK從1.0版本升級(jí)到6.0版本。特別值得一提的是2004年發(fā)布的JDK5.0版本,它在舊版本的基礎(chǔ)上增加了一些非常有意義的新特性,比如,泛型編程、增強(qiáng)的for循環(huán)、自動(dòng)裝包/拆包、類型安全的枚舉、可變參數(shù)和靜態(tài)導(dǎo)入等,使用這些特性有助于我們編寫更加清晰、精悍、安全的Java代碼。為了與時(shí)俱進(jìn),讓學(xué)生掌握較新的Java特性,我們認(rèn)為很有必要在課堂上向?qū)W生傳授新技術(shù),以拓寬學(xué)生的知識(shí)面。

        一方面為了節(jié)約有限的學(xué)時(shí)數(shù),另一方面為了鼓勵(lì)學(xué)生在課余積極使用、查閱JDK幫助文檔,我們不安排專門的章節(jié)介紹JDK類庫的使用,而是在講授Java程序例子時(shí),將重點(diǎn)介紹一些重要類的使用,比如,在講授圖形用戶界面這一章時(shí),則會(huì)講授一些重要包的使用,包括java.awt、java.awt.event、java.applet、javax.swing等,概述這些包的類層次結(jié)構(gòu)。這樣做既節(jié)約了時(shí)間,也使學(xué)生通過對(duì)例子的學(xué)習(xí)較好地掌握了一些常用類的使用。特別需要說明的是,容器類很重要,這些類在程序設(shè)計(jì)中會(huì)普遍使用到。

        總之,在教學(xué)內(nèi)容的選擇上,我們推崇簡(jiǎn)化的原則,忽略一些不常用的知識(shí)點(diǎn),如帶標(biāo)號(hào)的跳轉(zhuǎn)語句、復(fù)雜的表達(dá)式運(yùn)算規(guī)則、嵌套類等,這樣做既節(jié)約了課時(shí),也能充分引導(dǎo)學(xué)生編寫簡(jiǎn)單、可讀性好的程序代碼[4]。

        3 教學(xué)方法

        充分利用多媒體教學(xué)設(shè)施,為上課講述的例子做編譯、運(yùn)行演示。對(duì)于學(xué)生編程時(shí)常常出現(xiàn)的錯(cuò)誤,在編輯程序時(shí)可設(shè)置類似的錯(cuò)誤障礙,讓學(xué)生修改錯(cuò)誤,以杜決今后再出現(xiàn)此類錯(cuò)誤,此外還能現(xiàn)場(chǎng)教會(huì)學(xué)生如何使用JDK TextPad開發(fā)環(huán)境。到了學(xué)期的中后期,鑒于學(xué)生們已基本掌握J(rèn)ava的語法,上課可適當(dāng)減少演示例子的次數(shù)。

        對(duì)于Java基本類庫的授課,根據(jù)多年的Java開發(fā)經(jīng)歷和教學(xué)實(shí)踐,我們認(rèn)為學(xué)生應(yīng)該對(duì)基本類庫有個(gè)整體了解,要重點(diǎn)掌握 Java類庫中的Java.lang和Java.util兩個(gè)包,特別是容器類的應(yīng)用是難點(diǎn),需要結(jié)合實(shí)際例子闡述。這兩個(gè)包提供的是Java編程要用到的基本類,學(xué)生需要清楚這些類或接口的繼承關(guān)系、主要功能[5]。我們?cè)谑谡n時(shí)適當(dāng)介紹JDK API文檔的使用和閱讀,提倡使用最新版本的英文API文檔;在教學(xué)中注意總結(jié)相關(guān)類的聯(lián)系和區(qū)別,如String和StringBuffer在使用上的區(qū)別,以及FileInputStream和RandomAccessFile在用于讀文件時(shí)的區(qū)別。

        在實(shí)施Java教學(xué)時(shí),應(yīng)注意Java和C++的區(qū)別。Java和C++都是面向?qū)ο蟮恼Z言,而且Java衍生自C++,在基本語法及面向?qū)ο筇卣鞣矫婢泻芏嘞嗤?。比如,我們?cè)谥v授Java的數(shù)據(jù)類型、常量、變量、表達(dá)式、語句、類和對(duì)象、繼承和多態(tài)等內(nèi)容時(shí),應(yīng)著重指出它和C++的區(qū)別,簡(jiǎn)略細(xì)節(jié)知識(shí)。這樣既能節(jié)約課時(shí),也能使學(xué)生快速掌握J(rèn)ava的基本語法和面向?qū)ο筇卣鳌?/p>

        在學(xué)生掌握了Java的基本語法及面向?qū)ο筇卣鞯幕A(chǔ)上,我們會(huì)考慮將重點(diǎn)放在圖形用戶界面、多線程、網(wǎng)絡(luò)編程和數(shù)據(jù)庫編程上,以使學(xué)生能進(jìn)行一般的Java應(yīng)用編程。

        如果課堂教學(xué)時(shí)數(shù)比較寬裕,則可介紹Java和UML、Java和設(shè)計(jì)模式相關(guān)的知識(shí),強(qiáng)調(diào)軟件開發(fā)新技術(shù),特別是對(duì)于軟件工程專業(yè)的學(xué)生,更應(yīng)該這么做。

        4 教學(xué)實(shí)例

        可將程序例子分為非算法型和算法型兩種類型。在介紹Java基本語法時(shí),我們提倡用非算法型的例程,利于學(xué)生對(duì)例子程序的閱讀和理解。而在講授計(jì)算機(jī)典型問題,如排序、查找、遞歸時(shí),則使用算法型的例程,以加強(qiáng)學(xué)生對(duì)一些典型問題的掌握。

        在選擇例程時(shí),以例程中是否含有JDK類作為篩選原則,目的在于能讓學(xué)生掌握更多的JDK類。

        此外,在期中階段,可選擇一兩個(gè)游戲項(xiàng)目作為綜合的例程,如用于Java學(xué)習(xí)的Robocode游戲?qū)嶒?yàn)項(xiàng)目。Robocode是IBM的一位工程師MatNelson用Java語言所創(chuàng)造的機(jī)器戰(zhàn)斗仿真引擎,是一款專門為程序員設(shè)計(jì)的游戲半成品。利用該引擎,只要編寫幾行簡(jiǎn)單的代碼,就可以創(chuàng)造出一個(gè)在屏幕上四處疾馳的機(jī)器人坦克,參加游戲?qū)?zhàn)[4]。這樣能增強(qiáng)例子的實(shí)用性和趣味性,調(diào)動(dòng)學(xué)生學(xué)習(xí)Java的積極性。在此基礎(chǔ)上,再布置一個(gè)游戲項(xiàng)目,作為學(xué)生在課余時(shí)間的練兵題。

        5 結(jié)束語

        衍生于C++的Java語言,作為一種面世較晚的語言,它集中體現(xiàn)和充分利用了若干當(dāng)代軟件技術(shù)新成果,如面向?qū)ο?、多線程、平臺(tái)無關(guān)等[9],使其擁有眾多優(yōu)秀的特性,從而成為面向?qū)ο筌浖_發(fā)的首選語言。

        出于“Java程序設(shè)計(jì)”這門課的重要性和教學(xué)中存在的問題,本文提出了“Java程序設(shè)計(jì)”教學(xué)實(shí)施的諸多方面,并在作者施教的班級(jí)進(jìn)行了多次實(shí)踐,實(shí)踐表明,上述教學(xué)思路是可行的,能在一定程度上提高教學(xué)效果。

        下一步我們將在“Java程序設(shè)計(jì)”實(shí)踐教學(xué)和后續(xù)課程改革方面進(jìn)行實(shí)踐探討。

        作者多年從事Java教學(xué)和Java軟件開發(fā)工作,積累了一些教學(xué)經(jīng)驗(yàn),本文將它提練總結(jié),希望能給Java同仁一些啟示。

        參考文獻(xiàn):

        [1] 秦學(xué)禮,汪迎,鄭淑紅.Java程序設(shè)計(jì)實(shí)用教程[M].清華大學(xué)出版社,2012.

        [2] 劉正林等.Java技術(shù)基礎(chǔ)(第2版)[M].華中科技大學(xué)出版社,2004:30-40

        [3] 印旻.Java語言與面向?qū)ο蟪绦蛟O(shè)計(jì)(第二版)[M].清華大學(xué)出版社,2007.

        [4] 葉恒舟.Java程序設(shè)計(jì)教學(xué)探討[J].科技信息,2007.1:23-25

        [5] 李純玉,胡麗娜.Java語言程序設(shè)計(jì)教學(xué)中的幾點(diǎn)思考[J].科技信息,2007.2:10-13

        [6] 張延軍,喬德軍,溫炎耿等.構(gòu)建Java教學(xué)體系[J].邯鄲學(xué)院學(xué)報(bào),2007.17(9):41-44

        [7] 藍(lán)雯飛,鄭波盡.高級(jí)語言程序設(shè)計(jì)課程建設(shè)思路[J].計(jì)算機(jī)教育,2012.6:30-32

        [8] 陸萍.淺議Java程序設(shè)計(jì)教學(xué)改革[J].電腦知識(shí)與技術(shù),2007.27:32-35

        [9] 石瑞峰,邊琦,馮小龍等.Java程序設(shè)計(jì)教程[M].清華大學(xué)出版社,2012.

        国产免费播放一区二区| 插我一区二区在线观看| 香蕉视频在线精品视频| 中文字幕经典一区| 国产成人精品中文字幕| 丰满精品人妻一区二区| 国产精品无码久久久久久| 福利网址在线观看| 精品人妻中文字幕一区二区三区| 男女做羞羞事的视频网站| 亚洲av无码片vr一区二区三区| 亚洲欧美精品伊人久久| 国产亚洲AV片a区二区| 国产精品一区久久综合| 日本阿v片在线播放免费| 豆国产95在线 | 亚洲| 亚洲成片在线看一区二区| 日韩中文字幕一区二区二区| 亚洲av综合永久无码精品天堂| 真人抽搐一进一出视频| 久久99精品国产麻豆| 人妻人妻少妇在线系列| 久久精品国产一区老色匹| 国自产拍偷拍精品啪啪一区二区| 亚洲av日韩av不卡在线观看 | 国产一区二区三区亚洲天堂| 亚洲免费女女在线视频网站| 亚洲精品久久区二区三区蜜桃臀 | 国产亚洲欧美日韩综合一区在线观看 | 一本大道久久东京热无码av| 毛片在线啊啊| 国产一级内射一片视频免费| 婷婷色香五月综合缴缴情| 麻豆精产国品| 精品国产一区二区三区男人吃奶| 国产精品国产三级国产密月| 亚洲处破女av日韩精品| 亚洲欧洲综合有码无码| 国产午夜精品视频在线观看| 777国产偷窥盗摄精品品在线| 久久噜噜噜|