時間:2022-11-02 20:06:15
導言:作為寫作愛好者,不可錯過為您精心挑選的10篇邊城教案,它們將為您的寫作提供全新的視角,我們衷心期待您的閱讀,并希望這些內容能為您提供靈感和參考。
2.把握對人物的描寫,分析主要人物重點是翠翠的形象。
3.結合人物分析,領會作者的創作目的,小說的主旨。
教學重點:主旨和人物形象。
教學難點:沈從文的小說風格。
教學課時:2課時。
教學方法:品讀法。
第一課時概括情節并分析第一部分
一.教學導入:
同學們,我國現代文學史上,小說的創作可謂百花齊放,魯迅、巴金、茅盾、郁達夫等人在現代文學史上都各樹一幟,而沈從文的作品也另辟新徑,為現代文學注入了一股難得的清新之氣。
二.介紹作家作品。
沈從文(1902-1988),我國現代小說家、散文家、文物研究家。原名沈岳煥,筆名小兵、懋琳、炯之、休蕓蕓、甲辰、上官碧、璇若等。湖南鳳凰人。苗族。1918年小學畢業后曾入本鄉土著軍隊當兵。1923年到北京。1926年開始在《晨報副鐫》、《現代評論》《小說月報》《新月》上發表作品,并與胡也頻編輯《京報副刊》和《民眾文藝》周刊。1927年到上海,與胡也頻、丁玲等編輯《紅黑》雜志,并參加新月社。1930年在青島大學任教,1934年在北京主編《大公報》副刊《文藝》及天津《益州報》副刊。抗戰爆發后到昆明西南聯合大學任教。回北京后任北京大學教授,并繼續辦原刊物,以此為陣地,集合許多北京文人,形成了“京派作家群”。1949年后曾在中國歷史博物館、故宮博物館工作,在中國古代服飾及文物研究方面成績卓著,有許多專著。1978年任中國社會科學院歷史研究員。其文學創作宏富,數量驚人,有小說、散文、文論、自傳、通信等集子七十余種,是現代文學史上最多產的作家之一。主要作品集有《鴨子》《蜜柑》《神巫之愛》《虎雛》《石子船》《阿黑小史》《月下小景》《八駿圖》《湘西散記》《邊城》《長河》等。其中短篇小說《丈夫》《貴生》《三三》,長篇小說《邊城》《長河》是其代表作。主要文學貢獻在于創造了一種描寫特殊民情的鄉土文學,并受廢名影響,取其抒情筆調,發展了新文學中抒情小說的文學形式。大部分小說是以湘西生活為背景,對故鄉人民懷有不可言狀的同情和溫愛。以其特異的“生命形式”,熔生動豐富的社會風景畫和優美清新的風情風景畫于一爐,展示其民情的粗獷強悍,民俗的淳厚善良,使作品充溢著濃郁的鄉土氣息和反樸歸真的牧歌情調。這種鄉土抒情體的美學風格代表了京派作家的社會理想,也對后來作家產生了深刻的影響。
三.識字與解詞:
1.給加點的字注音:
喁喁()黑黝黝()燜菜()挪移()竹篁()碧溪且()儺送()涎皮()甬道()莞爾()濱水()蒿艾()角隅()胡謅()嗤笑()茨灘()碾坊()茶峒()
2.用下列詞語編寫一段話:
神往傾心間或悲憫信口開河自言自語
四.快速瀏覽全文,然后給各部分命一個耐人品味的小標題。
(依次可命名為:往事如夢或移動的心、夢中人的夢或為了誰、水中望月或未了情緣)
五.賞讀第一部分:
1.這部分可分幾個層次,試進行概括。
提示:可分兩部分。“黃昏來時……很覺得悲傷。”表現翠翠內心的騷動不安;“天夜了……就是這種歌唱出了你。”寫爺爺講媽媽過去的愛情故事。
2.翠翠為什么看到天上的紅云,聽著生意人的雜亂聲音,心中有些凄涼?
提示:一方面內心寂寞惆悵,一方面又迸發出騷動不安的愛情的火花。
3.翠翠在成熟中的生命,到底缺少了什么?
提示:是那朦朧中的愛情,后文說“新的人事”“生活太平凡”與此同。
4.翠翠真的想逃走嗎?她為什么有這樣的想法?
提示:這些莫名其妙的想法實際上反映了其內心的無聊與孤寂。
5.“祖父不理會她”真是她“覺得悲傷”的原因嗎?
提示:祖父不理會是外部表象,渴望情感的撫慰是真。
6.翠翠為什么對母親“神往傾心”呢?
提示:主要是對母愛的渴求、對母親的懷念。
7.翠翠為什么對母親的愛情故事那么感興趣?
提示:源于自己內心對愛情的朦朦朧朧的期盼。
六.作者在這一部分中為什么用了那么多的環境描寫?這些環境描寫在文中有什么作用?
提示:作用不盡相同。①烘托夜幕降落時的氣氛;②烘托人物內心的孤寂與惆悵;③烘托人物內心的騷動難安;④構織濃厚的鄉土氣息。
七.作業:課后練。
第二課時分析二三部分,賞析小說中的風土人情
一.講析作業:課后練
二.分析第二部分:
1.這一部分又可分為幾層?請加以歸納。
提示:兩層。“老船夫做事累了……他就不去驚動她。”寫翠翠夢中聽歌摘虎耳草。“第二天……不告給翠翠一個字。”寫爺爺張冠李戴,事情發生波折。
2.作者安排“夢摘虎耳草”這一情節的用意是什么?
提示:一方面可以配合二老“走馬路”這一事件,正是因為這個“夢”,翠翠錯過了聽歌的時機;另一方面翠翠“不知道把這東西交給誰”又暗示了愛情故事將會無果而終。
3.爺爺“張冠李戴”的前后神情有什么變化?
提取:“溫和悲憫地笑”——“快樂”——“涎皮”——“臉色那樣難看”——“莞爾”;神情的變化體現出他把翠翠許給大老的強烈意愿,及對翠翠的深切關懷。
4.大老為什么要讓弟弟先開口?
提示:一是他老實厚道,讓著弟弟以求公平;二是弟弟唱得比他要好,自己不便啟齒。
5.老船夫為什么不把事情的前后經過告訴給翠翠“一個字”?作者安排這樣的細節有何妙處?
提示:老船夫不告訴翠翠是因為害怕她走母親的老路;作者這樣安排是為了悲劇情節發展的需要。
三.分析第三部分:
1.第三部分的有幾層意思?請概括之。
提示:有兩層意思。“大老坐了那只新油船向下河走去了……自己便也坐到那巖石上了”寫爺爺將親事委婉告訴翠翠。“月光極其柔和……原來便是那晚上聽來的歌”寫爺爺月下為翠翠唱歌。
2.爺爺問翠翠選哪一個,翠翠為什么不答?
提示:翠翠其實心里是早有所屬的,只是在爺爺面前不好意思說出來。
3.翠翠拿蘆管出來吹,又吹不好,這是為什么?
提示:她一心等著儺送為她唱歌,卻等不來,心里亂。
4.翠翠何以要求爺爺唱個歌來聽?
提示:她的本意是要想知道儺送為她唱過的是什么歌。
四.作者為什么把他的小說中的人物都塑造成一個個不愿多說話的形象呢?(討論)
提示:是為了表現作為封閉的農業文明社會的湘西,人們身上那種孤寂的色彩。
五.本文第二三部分中也有一些環境描寫的語句,試分析它們的作用。(學生議論后作答)
六.作者寫作《邊城》的目的到底是什么?(結合課文提示和時代特點討論)
中圖分類號:G642 文獻標識碼:A 文章編號:1009-3044(2016)27-0099-02
Abstract: At present, the programming courses’ practice teaching evaluation exist the shortcomings of randomness, one-sidedness and not-truth etc. In this paper, a new practice teaching evaluation scheme is proposed which emphasizes the procedural examination instead of the ending examination. This scheme includes a complete index system of the practice teaching evaluation and a supporting software management platform etc. It can effectively improve the practice teaching effect.
Key words: programming; evaluation; practice teaching; index system
1 目前高校計算機編程類課程實踐環節考核的現狀
眾所周知,計算機專業是一門實踐性要求很高的專業,尤其是課程中的編程類課程,學生的編程能力的提高只有通過實踐環節加以訓練。目前,計算機編程類課程對學生的考核方法,大多學校采用理論和實踐相結合的結構成績,理論考核往往采用筆試方式在期末進行,較為客觀,占整個課程成績的50%以上,但對實踐環節的考核存在評價的隨意性、不全面性和不客觀性等因素,從而導致學生只重視期末一次終結性的考核評價,而忽視課程的實踐教學的考核,這種評價非常不利于學生的創新精神和創新實踐能力的培養[4]。
(1)評價的片面性
目前學生實踐效果的評價主要看學生所編寫的代碼能否運行、結果是否正確,這種方法只注重對基本知識和技能掌握的評價,忽視對學生學習過程中的學習態度、自學能力、創新意識、團隊協作精神等方面的評價,忽視了對學生綜合素質的全面評價。這種單一只注重知識技能的評價,必然導致學生發展片面、畸形,影響學生身心發展和綜合素質的提高。
(2)學生對實踐考核重視度不夠
實踐考核以培養學生動手能力、操作技能和職業素質為主要目的,由于實踐教學缺乏明確的考核方式和評分標準。一方面,程序設計中的實驗、課程設計,沒有制定明確的考核評分標準,課程的實驗環節的最終考核成績大多是根據提交的實驗報告和上課時學生給教師的印象給定實踐考核成績,導致學生認為只要按時交實驗報告就很容易得分,自然而然認為實驗課在整個課程中并不重要。另一方面與實驗課成績只是作為整個課程平時成績(作業、出勤、實驗)的一部分對待,而只有整個課程的期末筆試成績達到50分才能與平時成績結合算最終成績,否則不管平時成績如何最終成績視為不及格 (我校的規定) 。而一般筆試能達到50分老師盡量使結構后的成績能達到60分,這致使實驗課的考核成了老師平衡考試成績的一種手段,從而反過來影響到學生對實驗重視程度降低。
(3)缺乏真實性和客觀性
教師在實踐教學過程完成后往往通過實驗報告或軟件系統考核評價學生,這樣致使部分學生課下將別人做好的程序稍加修改或從網上找現成的交給老師,導致評價結果不能真實地反映實踐教學過程中的學生表現;另外,課程設計往往分組進行,一個組的成績有評價標準,但組中成員之間的差異就很難界定出來,因為沒有明確的可操作的評價標準,使考核評價結果存在較大的主觀隨意性,能力相差很多的學生有可能實驗成績相同。
2 實踐環節考核方式改革的方法
(1)以過程考核為重點[1]
1967 年美國芝加哥大學教授 Michael Scriven提出形成性評價(Formative Assessment),強調教師在教學過程中利用多種機會和手段評估學生的學習狀況,以獲得有益的教學信息指導教學,促進教學健康發展,最終促進學生學習進步。借鑒形成性評價、過程化考核方法,實踐教學的評價應貫穿整個課程中,包括學生的在實驗課上的學習的積極主動性,編程思路的考核,編程時間的考核、代碼編寫規范的規范程度,課程設計包括選題、設計、實現和答辯,整個過程中學生的對項目的組織、計劃、管理、溝通能力等多方面的評價,這些能力的高低正是決定學生職業生涯發展的關鍵。
(2)設置全面的、合理的指標評價體系[2]
評價不能只看學生最后的代碼的正確性,應綜合多方面的因素考慮。一個實驗任務應從以下三個一級指標來評價:學習態度:是否按時出勤、學習的主動性和熱情等;代碼質量:結果是否正確、編碼的用時時間、代碼的可讀性和執行效率如何;團隊合作:答辯和表達清楚、文檔編寫規范等,如圖1 所示:
一級指標的權重包括學習態度權重系數15%;代碼質量權重系數 60%;團隊合作權重系數 20%。根據企業實際需要的技術方法劃分二級指標,其所占的權重及評分標準如表1 所示:
(3)建設一套輔助考核評價的軟件系統[3]
在傳統的實踐教學中,教學、實驗、批閱實驗報告都是人工方式,在這種方式下,老師的工作量大、效率低下,信息反饋時間太長。這種教學方式已經不能適應當今社會的需求,因此利用信息化的相關手段與方法十分必要。編程類課程作為實踐性要求很高的一類課程,課程教學評價的核心是對學生利用編程動手解決實際問題能力的評價。通過實驗報告、筆試并不能全面反映學生的真實水平,而且對學生所寫的代碼進行手工批改,既費時又費力。隨著高校教學信息化建設的加快,實現對學生編程能力的自動化評價方法,搭建一個基于網絡的計算機編程類課程實踐教學自動化教學評價平臺,該平臺以自動化評價為主、人工評價為輔的方式評價學生的程序,學生可以隨時登錄平臺提交自己的程序,平臺會自動運行學生的程序,平臺還能隨時記錄學生的上機過程(上機時間、編寫程序耗時、錯誤程序提交次數、程序錯誤原因、互動情況、代碼量等),同時教師根據學生實驗過程中的表現和完成情況,動態地對學生的每一次實驗給出各個指標不同的分值。
3 應用及效果分析
編程類課程的教學重點是培養學生的實踐編程、調試代碼、解決實際問題能力,因此衡量一個學生是否達到教學要求的標準不是看他“懂沒懂”,而是看他“會不會寫代碼”。本考核方案通過在C語言課程中的應用,考核方式采用上機、軟件展示、項目答辯等形式進行,采用新的實踐考核方案對學生上實驗課的熱情、實驗課堂的學習氣氛和項目參與的積極性有明顯提高,到學期末,每個學生都取得了不同程度的收獲。大多數學生不僅能把書本上學到的編程語法、編程思想和真正代碼實現結合起來,解決了一些實際問題,具備了編程和調試C語言程序的能力,同時也提高了學生的團隊合作能力、工作協調能力、語言表達能力、報告書寫能力等多方面的素質,為學生今后從事IT工作打下堅實的基礎。這種實踐考核方式的應用不但提高了本門課程的教學質量和效果,激發了學生的編程積極性,為后續編程課程的學習積累了很好的學習方法。
4 結語
計算機專業中編程類課程較多且非常重要,一個合理的、客觀的、公正的考核辦法是提高該類課程至關重要的環節,該環節不僅考查學生對該門課程知識和技能的掌握情況,更重要的是通過考核,使學生能把課堂上學到的基本知識和技能綜合起來,可以解決實際問題,提高學生的編程能力。從考核制度上給學生一個發揮自身才能、展示自我的機會,變被動的做實驗為主動的挑戰,讓考核真正成為提高學生編程水平的過程。同時在完成實驗任務的過程中,學生通過團隊協作,共同學習,一起討論,共渡難關,取得最后的成功,提高了學生的綜合素質。
參考文獻:
[1] 劉一臻,李敬波,馬彩霞.以過程考核為主導的大學計算機程序設計語言類課程考核評價體系的研究[J]. 遼寧科技學院學報,2014(1):66-67+71.
這節課的重點是對自信的理解;難點是自卑、自負是自信的誤區。把握重難點,我這樣設計了這節課:
第一部分:故事導入,利用學生希望掌握好的學習方法的樸素愿望引入了2005年安徽省理科狀元海志友的故事。為了使知識與知識之間的體系更為緊密,我用了一個案例來貫穿整個課堂,但這個案例是經過我精心挑選的案例。具體來說,就是用“控制變量法”串聯案例,通過改變條件出現自己想要的結果。這節課的這個案例,我將之分為了以下幾集:
第一集:高三上學期一次數學模擬考試結束了。海志友考得很差,是班上的最后一名。他很痛心……
第二集:這次考試失敗了,海志友問自己:難道我真的不行嗎?自己是不是和大學無緣了呢?是不是自己什么都不行了呢?
第三集:為了激勵自己,他在一張很大的白紙上開始寫下:“我能行!”
1.學好語文――我能行;
2.寫好英語作文――我能行;
3.幫助同學――我能行;
4.專心聽講、認真完成作業――我能行;
5.幫媽媽做家務――我能行;
……
海志友發現自己能行。他告訴自己:我能行!我一定能行!
他不斷努力,取得了一個又一個進步,他充滿信心地參加了2005年全國高考……結果他的數學成績是140分,高考總分708分。他不但成了班里、年級的第一名,而且成為安徽省理科“狀元”。他創造了一個――“奇跡”!
通過這三集故事,引導出自信的重要性和自信的含義。
第四集:海志友在大學……
第二部分:講解海志友在大學的故事之后,趁熱打鐵,重點講解了“自卑”和“自信”的含義。
海志友在大學的故事包括兩個層面:
其一:剛上大學的那會兒感覺自己特別厲害,看不起同學,看不起老師,陷入了“自負”的誤區;
其二:在參加一次系學生會主席競選失敗后,又很難過,陷入了“自卑”的境地。
在這兩個層面的故事之后,我重點引導學生對自卑和自負進行理解,并下了定義。
第三部分:以小組為單位,各編一個小品。
小品內容:數學考試后,自卑的曉峰;自信的小佳和自負的曉輝都得了滿分,這三個同學一起走在回家的路上……
表演者進行現場表演,其他同學根據表演角色的反應來猜測所扮演的角色的心理。學生在此基礎上進行了很好的現場表演。
課堂結束,我帶領學生高呼:“我能行!”內化為學生的信仰。
課例二:人教版初中《思想品德》八年級上冊第二單元第三課第一框《同學.朋友》
經過了一個暑假,我對自己的教學有了一定的思考,結合本課的實際,在備課時我就給了自己課程結構要出新的任務。這節課從整個課堂來說,主要包括以下幾個部分:
第一部分:熱身活動。通過含有大量學生日常生活照片的電子相冊導入――放松情緒,引入課題。這個熱身活動是由兩部分組成。首先,利用自己在校園里抓拍的一些學生生活的照片,配上語言制成了反映學生日常真實生活的電子相冊;其次,在引入課題以后,采用了娛樂現場的方式測試了學生的人際關系現狀,并要求學生填寫了書本上的“人際關系樹輪圖”。兩個活動開展以后,學生的情緒被調動起來了,課堂氣氛既活潑又輕快,師生雙方很快進入了課堂的狀態。
正是在這種狀態的鋪陳下,我又主導了學生開展了第二部分的活動。
第二部分:我喜愛的同學――從中總結開放自我的意義和受歡迎人的共同特征。這一部分,我在學生回答自己所喜愛同學并給出理由的過程中進行了認真的板書;在分析板書的過程中首先總結出了開放自我的意義,然后帶領學生回歸課本,識記了受歡迎人的共同特征:品德+能力。
在這一部分中,我告訴自己的是:既要讓學生敞開心扉說真話,又要回歸課本,用理性知識來“慣性”自己的思維認知。
第三部分:朋友交往案例探討――如何交往。在這里我主要采用了“控制變量法”串聯案例的辦法,在穿插解釋“小金”和“小寧”故事的過程中解釋了交友的四個原則。串聯的這個案例分為四步:
第1步:小金和小寧是同班同學。小金的成績特別好,小寧的成績特別差;小金雖然球技很差卻夢想成為球星,小寧則是學校公認的最厲害的足球高手!小金一心想和小寧成為朋友,但小金的媽媽卻說:小寧的成績那么差,你怎能跟他做朋友?
這個案例讓學生討論“成績相差很大能否成為朋友”。學生在討論交流的過程中發現:朋友難免有缺點,真正的朋友應當互相幫助,這樣才能提高,追求雙贏或者多贏。這其實就是交友的第一個原則了。
第2步:班級出關于“教師節”的板報,最終采納了小寧的意見,小金很難過。小金想:我對你那么好,你卻不支持我的想法!還讓全班同學公然反對我!我真不想跟你玩了!
案例到了這一步,學生在討論小金的看法之后,其實就自我的總結出了交友的第二個原則:包容彼此,多溝通,求大同存小異。
第3步:沖動的小寧在家中和爸爸發生口角,甚為生氣。放學以后,小寧拉著小金,對小金說:“我爸爸欺人太甚,是兄弟夠哥們兒的,今天晚上跟我一起回家把那“老東西”打一頓!”小金很納悶……
案例到這一步,是讓學生在討論小金的行為選擇時的正反誤區。學生在討論的過程中懂得了朋友不等于哥們兒義氣;朋友也不等于零距離。
第4步:天下無不散的宴席,因爸爸工作,小金隨爸爸來到了南國城市――廣州上學。
在新班級中,即使面對新同學,小金仍然很想念曾經的好朋友:小寧。
案例到了這一步,通過討論“轉了學的小金,應該怎么做?”學生明白了:要交新朋友;還要珍惜老朋友。這其實又是交友的第四個原則。
四步案例全部呈現結束以后,我又用一張幻燈片展示了與人交往的四原則:
1.互相體諒,互幫互助,共同進步;
2.求大同存小異,和朋友加強溝通;
3.和朋友相處,不以犧牲原則為代價;
4.廣交朋友,善交諍友,不交損友。
再次帶領學生回歸課本。
第四部分:同學們交往過程中的困境――學以致用。
這一部分,結合“小班”的實際,我讓全班同學把自己和同學交往時的困境寫在紙條上(強調了必須真實),在收集好這些真實的案例以后,我采用了讓學生抽取的方法。用這種學生喜聞樂見的方式始終牽著學生的注意力。
在討論自己和同學交往的問題時,學生一次次深化了對交友四原則的理解程度。
第五部分:結束語――師生共同總結升華。最后,我又帶領學生回顧了自己在成長過程中朋友對自己的幫助,人類歷史上朋友的交往文明,在傳遞這份人類文明火炬的過程中,我采用了美文朗誦的方式,配合著深情的音樂和優美的電子相冊,我在最后高呼:
“無論我們的朋友是默默無聞,還是名滿天下,普天之下的、過去的、曾經的、將來以后的所有朋友,理應該得到我們的關懷和幫助!”升華了主題,呼出了口號,讓學生有所思考,有所得,力圖使學生達到“知、行、信”的統一。
【教學反思】
通過這兩節課以后,我自己經過了認真的反思:
我的自我感受是:兩節課都是在思想品德教學中引入“控制變量法”,實施案例教學法的有效課堂,利用這種串聯案例的方法,兩節課都是有效、高效和熱鬧的。但第一節課通過“控制變量法”精講知識以后,只停留在書本的基礎上,是案例教學法對“教材體系”的重現;而第二節課,我在講完串聯的案例以后,又設置了讓學生回歸生活實際的第四部分,這部分的設置讓自己的課堂脫離了案例教學法本身造成的“教材體系”的束縛,回歸現實從而實現了從“教材體系”到“教學體系”的轉變。
這給我自身的啟發是:
首先,借班上課要熱身。這是我第一個重要的感悟。這兩節課雖然在同一個學校上的,但是,第一節課是在自己班上上的,而第二節課我是在校內借班上的。在一個自己不熟悉,也不熟悉自己的班級里開課,如果要讓師生都在短時間之內進入狀態,熱身是必要的。這種熱身最好是學生喜聞樂見的形式,而且一定要來源于一種能引起學生歡快的共鳴。
其次,要用“控制變量法”串聯案例,案例結尾要生成口號。所謂“控制變量法”,其實是物理實驗所用的方法,即保持一個或多個量不變,調整另一個或多個量改變,來探究這些量之間的關系。而在思想品德課堂中利用“控制變量法”精選案例,實質上就是通過改變案例的條件,使主人公陷入不同的身份沖突、矛盾沖突或體驗沖突,讓學生在討論這種沖突的過程中催化出自己想要講解的知識點。
把物理學中的“控制變量法”引入思想品德教學,具有非常好的意義。首先,用這種方法改編過后的案例,比較簡潔而且整齊劃一,利于學生的識記。其次,這樣的案例,往往抓住了事物動態發展的邏輯,利于學生把握知識與知識之間的邏輯結構。最后,這樣的案例,其實是一種發展的案例、動態的案例,利于發展學生的“聯系的思維”“發展的思維”和“辯證的思維”。
但這種方法在實施過程中需要精細化的“管理條件”,否則,會呆板不靈活,甚至產生誤區。從本質上來說,我認為:如果只采用課例一的方法來上課,雖然效果也還好,還是只停留在書本的層面,說到底:案例反映的還僅僅只是教材的體系。
這種教材體系一般比較松散,因此,最后還要生成一句口號,讓學生從總體上給予把握。
那么,教材的體系如何向教學的體系轉變呢?結合課堂實際,我認為:案例不但要用“控制變量法”串聯精選,而且還要關注孩子真實的內心,在課堂中力圖去解決學生真實的生活沖突。這個任務我在第二節課《同學?朋友》中試圖去完成,結合班級的實際,我采用的方法是讓每個學生都敞開心靈說真話,然后引導學生討論所出現的沖突,既鞏固課堂的知識點,又利用所學知識來解決自己生活中真實的困境。
這也是這兩節課給我的最大啟示:在自己的教學過程中,關注學生心靈,要追求真善美;關注學生生活,要追求從教材體系向教學體系的轉變;要用真實的學生問題來彌補“控制變量法”的不真實。
(一)換一種眼光以求真。真正的課堂,它是從生活開始的,而生活就是“柴米油鹽醬醋茶”,就是生活中的瑣碎。因此,真正真實的課堂,應該是回歸現實生活的,說生活中的真實事件,在師生雙方既為主體、又為客體的氛圍中去共同探討生活中的真知灼見、抒真情。我們站在課堂中的教師,應當放手發動學生,讓學生放低姿態關注自身的實際生活,引導學生多說話,說心里話、說真話、說實話。
真正的課堂,它是從生活開始的。而生活,就是從細微之處感悟:感,是感動;悟,是思考。好的教育,就是促使學生從怦然心動到若有所思。
(二)換一種態度以求善。教師做好這個“善”,首先態度要“善”。要讓學生感覺到教師身上所散發出來的善的力量和魅力。
更重要的是教師要引導學生用“善”的眼光去看待實際中的生活。真實的生活是多樣的,是酸甜苦辣兼具的,是真善美丑惡并存的。當有學生還原不善的生活的真實后,我們應引導學生用“善”的眼光看待,在學生內心深處植入“善”的種子。
教學大綱和教材是教學的依據。備課時對教材的鉆研要按照“通讀一重讀一細讀”的原則,把握住教材的系統性、科學性、思想性和可接受性。系統性是與前后章節有關系的教材的來龍去脈。科學性是指教材對數學語句、數學概念和定理等的科學敘述、論證等。思想性主要體現在數學內容中所包含的辯證唯物主義觀點在教學中要讓學生了解數學中的大量概念都有現實的模型,是從現實的具體事物中抽象出來的。查閱資料和吸取教學經驗認真查閱資料作為自己教學上的參考,備課就可以事半功倍。此外參與觀摩教學與示范教學,認真做好教學后記,有助于吸收經驗教訓。
二、明確教學目標和要求
教學目標和要求應考慮到下列幾個方面:教材的思想性體現在哪一方面,對基礎知識和基本技能、技巧應達到何種程度,提出何種水平的要求,如何為今后學習有關知識作準備,如何結合教材內容進行思想教育,著重培養學生的哪些能力等等。確定重點、難點和關鍵。教材的重點是指在整個教材體系或課題體系中處于重要地位和作用的內容,重點的確定也應“由大到小、由粗到細”。難點主要是指學生接受起來比較困難的知識點,在教學過程中,要注意分散難點,各個擊破。關鍵是指對掌握某一部分知識或解決某一問題能起決定性作用的內容。
三、備好習題
習題在數學教學中有著特殊重要的作用。若沒有必要的恰當的練習,學生不可能掌握所學的基礎知識,更不用說將知識轉化為能力。通過練習,還能夠及時發現和彌補教和學中的遺漏或不足,培養學生良好的學習習慣和品質。習題要按照由淺入深,由單一到綜合,難度要適中,題量要適度。在備課時,教師必須課前熟悉所教章節習題的解法,了解每個題目的作用、難易程度、重要程度,然后對學生可能犯的錯誤做出估計。要鼓勵學生一題多解。
四、確定課型和教學方法
在城區邊緣的農村學校,同時具有農村和城市學校的雙重特征。所以安全教育的內容更復雜,難度也更大一些。這就要求我們在安全教育方面更要多動一番腦筋,多下一些功夫。
一、客觀認識安全教育現狀
1.安全意識不足
農村學生的家庭安全教育缺失,這與家長自身的素質有很大關系。一般來說,農村學生家長的受教育程度多數較低,受過高等教育的家長幾乎沒有。這使得他們對孩子的關注點更多地集中在衣食住行這些物質方面,對于學生的安全教育以及心理健康等方面則比較欠缺,所以導致農村孩子的安全意識不足。
2.安全基礎較差
農村孩子除了安全意識不足以外,對安全知識的掌握情況也不樂觀。由于前些年對安全工作的重視不夠,經費也缺乏,近幾年雖然重視程度提高了,但安全教育的軟硬實力都相對薄弱,甚至有的還沒有把安全教育工作真正地落到實處,因而導致素質教育過程中學生安全方面的素質還比較差。我們學校教育工作者要客觀認識本地實際和安全教育狀況,提高重視度,把安全教育作為學校頭等大事來抓,切實落到實處。
二、合理完善安全教育內容
根據城鄉結合部位農村學校自身特點及當地的實際,我們在按教學計劃認真上好生命與安全教育課程基礎上,還要有針對性的增加一些相關教育內容。
1.勞動安全教育
作為農村中學生一定會或多或少地參加一些農村田園生產勞動,在勞動過程和使用工具方面都會存在一定的不安全因素,教給學生一些勞動常識和正確使用生產工具是非常必要的,所以我們有目的地利用學校勞動基地對學生進行愛勞動、會勞動以及安全使用工具等方面的教育,包括各種勞動工具如何攜帶等等。
2.食品安全教育
幾乎所有的學生都喜歡吃方便面、麻辣燙、米線、辣卷、辣片和各式各樣的小食品,這些東西本來就不是什么健康食品,況且農村的食品安全檢查相對薄弱,農村的超市、小賣店和麻辣燙等小吃很多是質量不合格、不衛生的。所以我們要教育學生不去吃,教給學生正確掌握辨別食品安全的常識,讓學生知道只有吃安全的食品,才能有利于身體健康。
3.交通安全
農村孩子對交通安全常識了解不夠,交通安全的意識也比較差。雖然他們去城里的機會相對少些,然而中學生已不是太小的孩子,時常也會結伴或單獨去往城里,這就存在極大的安全隱患。基于這些情況,我們應及時的對學生進行交通安全教育,通過課堂教學講解、觀看視頻和交通案例等方式使學生盡快掌握交通知識,提高遵守交通規則的自覺性,并且有計劃、有組織的帶領學生參與實踐,在實踐中掌握知識,學會守規。
4.人身安全
農村的村與村之間距離較遠,每當盛夏來臨莊稼長高,部分學生上學放學路上很容易遇到壞人,所以要教育學生盡量結伴而行或由家長接送。此外,由于家距城區很近,很多家長都出去城里打工,早出晚歸,有的學生大部分時間單獨在家,這就要教育學生單獨在家時注意鎖好門窗,不要給陌生人開門,盡量不要自己在家點火,用電器,用煤氣等,并且適當教給學生這些生活常用品的使用方法。
5.時節性內容
隨著春夏秋冬季節的變化,一些與生命安全有關的事情也會隨季節發生變化,春秋季節的花粉過敏,易導致眼部疾病的發生,春季風大也易發生火災;夏季注意不要溺水,吃瓜果蔬菜注意衛生;冬季注意雪天路滑,并預防感冒;春節燃放鞭炮注意安全等等,這些都要有針對性的對學生進行安全教育。
三、努力拓寬安全教育形式
生命安全教育,應根據內容特征、學校內外部環境特征、學生實際情況采用多種形式開展。
1.開設生命與安全教育課程
嚴格按上級要求開設生命與安全教育課程,不可偏廢、不得取消,要按課程計劃開足生命安全課,選擇有經驗、懂業務的骨干教師擔任授課。
2.授課內容細致入微
無論是原課本內容還是根據實際增加的授課內容,教學時一定要做到細致入微,防止粗線條勾勒。可以把安全知識按內容分成若干塊兒,采取微型課形式集中講解、各個擊破、逐一落實。
3.開展生命與安全知識講座
有計劃開展各種形式的生命與安全知識講座,使學生系統掌握某些專項的安全知識,如珍愛生命遠離危險知識講座;如何正確判斷各種危險環境;從生理學角度了解生命意義等知識講座,教育學生保持積極的心情、樂觀的態度、正確地面對挫折;還有交通安全知識、食品健康安全知識、消防安全知識等講座。條件允許的情況下,對某些專業性較強的東西聘請相關專家指導講座。
4.安全教育不能怕麻煩
要時刻記在心里、時刻盯在眼中、時刻掛在嘴上。開展最后一分鐘安全教育活動,每天上午的最后一節課和下午的最后一節課的最后一分鐘,不管是什么課都要結合當時的實際進行安全教育,如雪天注意路滑、回家路上注意交通安全、注意飲食安全、別忘了學校強調過安全注意事項等等。
5.多看生命與安全教育資料
觀看生命與安全教育的圖片展覽、視頻及科教片,讓學生感受生命的堅強與脆弱,讓安全意識常駐于心。
四、掌握必備安全保護技能
只了解生命與安全知識是不夠的,必須在此基礎上掌握一定的生命與安全保護技能,才能終生受益。而掌握生存技能最好的時期應當是學生階段。
1.開展各種實踐活動
活動是學生了解和掌握生命與安全知識技能的有效載體,定期組織學生開展實踐活動,在實踐中掌握的知識技能才更快、更好、更牢。
真有意思。下面我們一起去看看有什么趣事發生。
二、再讀課文,感知大意
1、來,小腰板挺直了,聽范讀課文,邊聽邊思考:我為什么想變成一棵樹呢?
2、聽讀課文。(誰找到這個答案了?小手舉起來)
3、師:真棒,來!開啟你的火眼金睛,我們進入游戲天地,找出相同的小動物。你們太厲害了!那我們不要停,繼續!繼續!第一個游戲,用你的火眼金睛找找你覺得很有趣的句子,再畫下來。?孩子們,請自由朗讀第四自然段。
師:這是介紹“我”變成?樹的過程,在這句話里,你認為哪個詞很有趣呢?
(是啊,“癢癢的”??和“冒”把我變成樹的感覺寫活了)
4、第二個游戲來了:嘿,小家伙們!想知道“我”的樹上長什么嗎?
睜大你的小眼睛,能不能把覺得很有意思的句子,畫下來嗎?請與同位互相讀第5、6自然段,一人讀一個自然段,好嗎?
①交流有意思的描寫:真有意思,樹上長了鳥窩。一起說說有哪些形狀?(三角形、正方形、長方形、圓形、橢圓形、菱形....)??②現在老師上面有一棵大樹,你能幫它變滿鳥窩嗎?誰來??孩子們,“我”變的樹上僅僅是這些嗎?你從哪里知道?(……省略號)那你想想還會有什么形狀呢????你們太聰明了!???③如果你變成了一棵樹,你會變成一棵什么樣的樹呢????④出示句子練習:
我變成了一棵長滿各種形狀的鳥窩的樹:三角形、正方形、長方
形、圓形、橢圓形、菱形……
我變成了一棵____________的樹:______……?5、師:這么漂亮的樹都住了誰呀?
①你們敢跟孫大圣玩游戲嗎?你們有我孫大圣的眼睛厲害嗎?課文里面有許多有意思的地方,你們能找出來嗎?
我們現在來分組讀讀第七、八自然段。
②現在小兔子迫不及待想要跳進來了,誰來?……
(“我”真是一個有愛心的小朋友。除了小動物,還有誰住進“我”的“鳥窩”?)
6、孩子們,累了嗎?還有信心挑戰小矮人嗎?媽媽來了,“我”的心情如何?你能找出描寫“我”心情的句子嗎?
嗵嗵是描寫什么的詞語?(聲音)文中還有一個類似的詞語(丁零丁零)
“嗵嗵”說明了“我”見到媽媽后,感覺怎樣?(擔心媽媽會發現)有點高興,有些失望,真矛盾!什么是失望?(自己的希望不能實現而覺得不開心)“我”高興的是什么?失望的又是什么?(高興的是媽媽不知道我變成了樹。失望的是媽媽竟然認不出我。)?8、練習朗讀(讀出我心情的變化)
中圖分類號:TP309 文獻標識碼:A 文章編號:1009-3044(2017)14-0102-04
1概述
自從二十世紀末以來,由于其破壞性大與廣泛性,緩沖區溢出漏洞得到了信息安全領域學者們的普遍關注。當前,相關研究統計表明,全球每年發生的安全威脅事件以指數增長。由于緩沖區溢出漏洞不受操作系統不同的限制、能作用于不同的應用程序之上,作為網絡攻擊一種主要形式,緩沖區溢出攻擊次數超過了所有網絡系統攻擊總數的五分之四。
在程序設計中,緩沖區就是應用程序用來保存用戶輸入數據和代碼的臨時數據的內存空間。作為一種系統攻擊的手段,緩沖區溢出(Buffer Overflow),就是在程序中的緩沖區內寫入超出正常長度的內容,使緩沖區產生溢出,破壞程序的堆棧,讓程序跳轉去執行別的指令,從而達到系統攻擊的目標。
正常情況,利用緩沖區溢出漏洞攻擊者并不只是想讓程序本身崩潰,而是想通過這種攻擊來達到提升權限,獲得對系統更多的訪問和控制權。一般而言,緩沖區溢出本身并不會導致系統安全問題,但如果該溢出能夠跳轉到以超級權限(如root權限)運行命令的區域,使程序去運行一個shell或執行某些特權代碼,那么該程序將以超級用戶的權限控制了計算機系統。顯然,緩沖區溢出漏洞是計算機系統的重大安全隱患。緩沖區溢出的根本原因就是程序設計時沒有考慮用戶輸入參數與運行邊界的相關檢查。
當應用程序運行時,其內存中的映像被分為數據段、代碼段以及堆棧段三個部分。數據段包括運行文件中的BSS Sec-tion與Data Section,其用于存放程序運行的靜態變量與各種數據。代碼段就是運行文件中的Text Section(圖1),其中包括只讀數據與運行代碼。一般該段在內存中被標記為只讀,所有企圖修改該數據的指令都將引發一個Segmentation Violation錯誤。
具體到C程序中,如圖1所示,.stack、.heap、.bss以及.data區都被分配在緩沖區,并且和程序執行流相關的函數返回地址、函數指針等數據結構也會被分配在區域,因此,一旦發生到緩沖區溢出攻擊時,控制程序執行流的敏感數據結構則有可能發生改變,將導致正在執行的程序發生轉向,從而去執行非法代碼。
依據程序數據在內存中增長方式的不同,緩沖區溢出可分堆溢出和棧溢出兩種情況。所謂堆溢出,就是數據分配從低地址向高地址方向增長,溢出點可能發生在.bss、.daat、.heap區,基于堆溢出的攻擊有覆蓋分配在該區域的函數指針等。反之,棧溢出就是數據分配從高地址向低地址方向增長,溢出點發生在.stack區,基于棧溢出的攻擊有覆蓋函數返回地址等。
在模塊化程序設計中,各種函數調用會經常出現,如調用Win32 API、C運行庫等。并且編譯器幾乎都會將這些調用編譯為Call語句,執行該指令時,IP被設為調用函數的入口地此,調用后的返回地址會被壓入堆棧,而且針對函數調用帶有的局部變量與入口參數,這些數據也會被編譯器生成為一些指令存入堆棧(也有通過寄存器傳遞的)。通常稱因一個函數調用所導致必需在堆V寫娣諾姆禱氐刂酚胂喙厥據等構成一個堆棧幀(Stack Frame)。
2緩沖區溢出基本原理
緩沖區溢出攻擊的基本原理就是向程序中輸入超出正常長度的內容,由于越過緩沖區長度界限造成緩沖區的溢出,程序的堆棧會被破壞而出現特殊的問題,使程序運行跳轉去執行其它指令。
下面我們舉一個緩沖區溢出例子來說明其基本原理:
首先我們看一下未執行strcpy時(已經調用函數funcl)堆棧中的情況(如圖2所示)。
該程序是一個典型的緩沖區溢出編碼錯誤。并沒有經過邊界檢查,函數將一個字符串拷貝至另一內存區域。在執行strcpy時,256字節的‘A’(ox41)被程序拷入buffer中,但是buffer的長度只有16字節,那么buffer后面的240字節內容將被覆蓋掉,這些字節包括RET地址、EBP、large_string地址。字符‘A’的十六進制為0×41,因此函數的返回地址被變為了0×41414141,明顯超出了程序的地址空間,所以系統將報“Segmentation Vio-lation”錯誤。這就是所謂的緩沖區溢出。
3緩沖區溢出攻擊方式
當非法用戶操作程序時,若所進行的操作超出了程序的運行范圍,程序所用的數據會被添加到分配給該緩沖區內存塊之外,將導致緩沖區溢出,這時候就會出現數據泄漏或侵占其它的數據空間。
1)向緩沖區寫人超出正常長度的字符。
如上例通過向緩沖區中寫入超出正常長度的字符來產生緩沖區溢出,導致程序崩潰。
2)攻擊者可用任意數據覆蓋堆棧中變量的內容。
安全漏洞的一個經典例子是基于口令的認證,首先從本地數據庫中讀取口令并存儲在本地變量中,然后用戶輸入口令,程序比較這兩個字符串,從而比較結果為二者相等。
3)覆蓋堆棧中保存的寄存器。
通過輸入超長的字符從而覆蓋指令指針IP,攻擊者可以利用函數結尾的RET來執行程序中的任意程序代碼。一般而言,不是利用程序本身的代碼,而是植入攻擊者自己的機器代碼(一般稱之為Shellcode,即外殼代碼)。為此把機器代碼寫到變量中并復制到堆棧中,把保存的IP地址改變為攻擊代碼的開始地址。當函數執行完畢返回時,RET從堆棧中獲得IP的值并寫入CPU的IP寄存器,于是運行攻擊代碼。
4)覆蓋函數指針以執行第三方代碼。
攻擊者把機器代碼Shellcode放在一全局或本地變量或編程環境中,并使函數指針指向這段程序代碼。當用函數指針調用函數時,執行的將不是函數代碼而是攻擊代碼。
4安全編程
1)編寫正確的代碼
前面提到過,解決緩沖區溢出問題的第一步是,人們必須更加小心地進行計算機的編程。程序員只要增加能夠處理過長字符串的指令,就能夠防止對自己產品的攻擊。下面我們共同探討容易導致緩沖區溢出的系統調用,并給出正確的、安全的使用方法。
①gets(char*s)
本函數的功能是從標準輸入來讀入數據到靜態緩沖區中,有名的bug是Morris Internet Worm在fingerd中開發的,利用此漏洞可通過網絡在計算機上執行命令。正確的fgets(char *s,im size,FILE*stream)使用方式是通過嚴格規定輸入數據長度從而安全的讀取數據。如本例中通過使用sizeof(Array Buff)等指定數據長度,如12字節,fgets()將讀入1~12個字節并在最后加一個NULL字符。
然而,實際編程中程序員容易把整個if語句直接寫成了i++的錯誤編程方式。
如前所述,還有很多函數不進行邊界檢查,包括scanf(3)、strcpy(3)/strcat(3)、getwd(3)等等,在此不再一一⑹觶請同學們自行探索研究。
所謂靜態發現技術,就是為了降低程序被攻擊的可能性,在程序設計過程中,根據一定的約束規則來發現源碼里潛在的漏洞之處,便于程序員發現并改進。顯然使用靜態發現技術,系統需要維護一個不斷更新的與漏洞有關的規則庫。靜態發現技術常用的工具有BOON、Flawfinder、ITS4、RAST等。
2)使用Libsafe
朗訊技術公司的Arash Baratloo、Timothy Tsai和Navjot Singh等針對這些易受緩沖區溢出攻擊的Libc函數進行二次開發,開發出了封裝這些庫函數的動態載入庫Libsafe[4],來解析那些不安全的Libc庫函數,并用Libsafe中實現的安全函數替代,讓Libsafe實現邊界檢查,以達到確保任一緩沖區溢出都被控制在堆棧幀之內,從而保證了代碼的安全,解決了緩沖區溢出攻擊問題。
3)不可執行的緩沖區技術
根據緩沖區溢出的基本原理,所謂不可執行的緩沖區技術,就是使可能被攻擊程序的數據段地址空間不可執行,植入到被攻擊程序輸入緩沖區中的代碼不可能被非法用戶執行。
合法程序并不需要在堆棧中存放可執行代碼,因此完全可以讓操作系統使程序的堆棧段不可執行。目前,Solaris與Linux為此了安全補丁。正常情況下,合法程序幾乎都不會在堆棧中存放代碼,那么這種做法也就不會產生有關兼容性方面的問題。然而Linux系統中有特例的情況,其可執行的代碼必須被存放在堆棧中,在此不再一一敘述,請同學們自行探索研究。
不可執行緩沖區技術能夠有效地抑制把代碼植入自動變量的緩沖區溢出攻擊,但是對于其它形式的攻擊卻無效果。
4)數組邊界檢查
根據緩沖區溢出的基本原理可知,要實現緩沖區溢出攻擊則需要改變程序的執行流程,使程序代碼不按約定的流程執行。如果給局部變量分配的內存空間沒被溢出,改變程序運行狀態也就無從談起。為此,我們可以利用一些編譯器或工具對程序進行數組邊界檢查,就是在對數組進行讀寫操作時,必須將對數組的操作控制在正確的內存范圍內。最簡單的方法就是檢查所有對數組的操作。當前,Paul Kelly與Richard Jones聯合開發的GCC補丁、Purify以及Compaq C編譯器等都能實現對數組邊界的檢查功能。
5)程序指針完整性檢查
相對于邊界檢查,所謂程序指針完整性檢查,就是在程序指針被引用之前檢測它是否有改變。若非法用戶改變了程序的指針,并且系統事先檢測到了指針的改變,那么該指針將不會再使用。目前有以下三個研究方向。
FreeBSD系統有一套能通過監測CPU堆棧來確定緩沖區溢出的libc,可有效地保護libc中當前有效的記錄函數,有效地防衛了基于libc庫函數的攻擊,然而不能抑制其它方式的攻擊。
StackGuard通過不允許改動活動函數的返回地址RET來防止某些類型的緩沖區溢出攻擊。實現方式有函數返回前檢測返回地址RET的改動和禁止對返回地址RET寫。分析與實驗數據表明,對于各種系統的緩沖區溢出攻擊,StackGuard都有很好的保護作用,并具有較好的系統性能與兼容性。并且,StackGuard能有效抵御各類不同基于堆棧的攻擊。
PointGuard通過在所有的代碼指針之后放置附加字節來檢驗指針在被調用之前的合法性,實質上是StackGuard的推廣。此外動態防御技術還有ProPolice、StackShield、PaX等。
0、引言
近年來,我國移動互聯網迅猛發展,智能手機用戶數量連年上升,已近4億,其中,Android手機市場占有率超過80%,移動軟件開發人員需求旺盛,因此許多高校開始嘗試開設Android相關課程,但是,各高校普遍存在師資缺乏、適用教材難尋等問題。
教材作為體現教學理念、教學內容、教學要求、教學模式的知識載體,在教學過程中起著引導教學方向、保證教學質量的作用,因此,符合高校課堂教學需求的教材非常重要。目前已有的Android相關書籍大部分是技術參考書、培訓用書或經典案例教程,大多不符合高校Android相關課程的教學需要。
Android編程課程重基礎與實踐,而且教學課時短,強調“師傅引進門、修行在個人”。建構主義認為,學習不是通過教師傳授而來,而是學習者在一定的情境,即社會背景下,借助他人的幫助,利用必要的學習資料,通過意義建構的方式而獲得的。它要求學生用探索法、發現法來建構知識,強調學習中的互助合作,要求學生主動收集和分析有關的信息和資料,對所學的內容進行建構。這一觀點非常符合高校Android課程的教學特征,因此可以嘗試從建構主義視角去分析和設計Android編程教材。
1、國內Android圖書現狀分析
1.1 Android圖書出版情況
筆者于2014年1月在當當網以“Android”為關鍵字對相關書籍進行搜索,共搜索到288本(有些Android書籍可能未在當當網上銷售),其中2009年出版的僅有7本,2010年出版的有22本,2011年出版的有54本,2012年出版的有113本,2013年出版的有92本,可知近兩年出版的Android書籍很多(見圖1)。
根據書籍主講內容,我們可將288本書分為以下7類:Android應用開發入門、Android手機游戲開發、Android案例開發教程、Android手機操作、Android高級編程(如網絡編程和3D編程等)、Android系統原理與內核、Android安全。其中,Android應用開發入門與Android手機游戲開發書籍居多,與人才市場上Android應用開發工程師和Android游戲開發工程師需求量相符。
根據內容介紹、目錄以及編寫體例等內容,圖書可分為以下5類:①技術人員根據自己的開發經驗和成果總結成的學習筆記或技術手冊;②培訓機構根據培訓實踐在培訓講義基礎上整理的培訓教材;③詳細介紹經典案例的案例教程;④國外優秀Android書的翻譯本或改編版;⑤高校教師設計和編寫的教材。這些圖書以面向就業、自學、培訓導向居多,由教學經驗豐富的高校教師根據高校培養目標和教學特點設計的面向高校學生的教材則非常少。
此外,封面上明確標明各級各類規劃教材或系列教材的不到30本,說明多數教材為零散行為。從圖書篇幅來看,技術手冊、培訓教材、案例教程篇幅往往較長,在500頁左右,而高校教材的篇幅大部分在300頁甚至200頁以內。
1.2 Android教材內容分析
筆者選取了10本Android應用開發入門教材(見表1)進行比較,以確定Android應用開發入門所需掌握的知識點,選取時主要參考以下4點:①封面標明XXX規劃教材或XXX系列教材;②多個出版社出版的;③盡量最近出版;④銷量比較大的(如已改版)。
表2所示為10本教材在所含知識點、教材闡述方式(如是否包含綜合示例、章節小結和課后練習等)的統計。由表2可知,Android應用開發入門必須包含Android環境搭建、Android界面設計、Android事件處理、Handler消息處理等Android的四大組件,以及Intent、Android中數據的存儲等知識點,而簡單圖形圖像、Android資源介紹、網絡編程、多媒體編程、游戲開發、NDK開發、位置服務和地圖、綜合示例等可作為拓展知識,讓學習者進行選擇性的學習。
Android課程現有教材存在兩種傾向:一種是過分強調實踐,教材中詳細列出了各個操作的步驟,缺乏必要的理論、原理的介紹,大部分學生根據教材講解能夠完成案例、實現功能,卻不能舉一反三,這種教材隨著Android技術的更新與發展很容易被淘汰;另一種是過分強調理論的系統性、邏輯性,而忽視了實踐能力培養,教材中詳細列出了各個知識點的作用或功能說明,學生可以對Android有大致了解,明白如何做Android開發,但是要具體開發某個示例時,卻無從下手。
由于Android編程是一門實踐性、應用性非常強的新課程,理論與實踐間需要有效平衡,因此有必要分析Android課程的特點、結合高校教學特色,探索和設計一本符合高校教學要求的Android優秀教材。
2、Android編程教材設計
2.1 教材設計理念
Android編程是Android應用開發的入門級課程,除了要講解Android應用開發理論基礎,培養學生Android應用開發基本技能,更重要的是教會學生學習Android編程的方法,養成規范的代碼編寫習慣,為后續Android高級應用開發學習打好基礎。因此,在教材設計時,理論與實踐要對半分,理論部分本著常用、實用、夠用原則來編寫,實踐部分注重運行效果、功能的分析,通過設問引發學生的思考。在教材中只列出一些關鍵代碼,完整的功能實現則由學生自主完成。
高校課程教學與社會培訓集中授課不同,具有課時少、間隔長、課堂教學內容有限、對學生課后要求不高等特點。通常,一門課程一個星期只上一次。若想讓學生在有限的時間內學好課程,就需要激發他們的學習興趣,讓其主動地進行課后學習。因此教材中教學示例的選取要盡可能貼近學生生活,讓學生在生活中再次遇到該情景時,會自然聯想到課上所學的知識,有助于知識的遷移與鞏固。教材中應多引導學生進行思考與討論,只有學生積極參與課堂學習,印象才會深刻;同時,教材中應有明確的教學目標、清晰的知識結構圖、簡練的章節小結,以方便學生掌握重難點和復習。
除此之外,教材設計時,還需注意學生的個性化需求,內容要有層次性;教材內容要與時俱進,基于最新版本,以市場需求為導向;教材篇幅要適中,以免給學生帶來畏難情緒。
2.2 教材體系結構設計
通過前面的分析,我們已確定Android編程必須包含的知識點以及一些可選的知識點,考慮到可選知識點之間相對獨立、高校教學課時有限、教材篇幅不宜過長等問題,沒必要將所有可選內容都放到教材中。根據市場需求和知識使用的頻率,最終選取的可選知識包括簡單圖形圖像、網絡編程、位置服務和地圖、綜合示例。對于相同的知識點,不同的教材組織順序會有所不同,但有些知識點之間有嚴格的先后關系。知識點間的關系如圖2所示。
組織教材內容時,主要參考知識點間內在的先后聯系、知識點的難易程度以及知識點的使用頻率。綜合考慮教材單個章節的內容不宜過多(如將Android界面設計分為Android界面編程基礎和Android界面編程高級兩章),知識對比學習(如將數據存儲之SharedPreference、數據存儲之文件存儲、數據存儲之SQLite數據庫等合為一章)等因素,最終將教材分為三大部分:基礎入門篇、技能提升篇和專題教學篇。
基礎入門篇主要講解Android編程最基礎的知識,如界面設計、事件處理等。通過該部分的學習,學生能夠設計出一些簡單的手機軟件界面,對手機軟件有一個視覺感官體驗,但不涉及業務邏輯處理,處于設計階段。
技能提升篇主要講解Android比較核心和特色的內容,如Android的四大組件、Android的數據存儲等。通過該部分內容的學習,學生將對Android應用程序的開發步驟和執行原理有一個比較深的領會,能夠自主開發一些有一定功能的應用程序。這部分的學習會經常設計業務邏輯代碼,進入編程階段。
專題教學篇主要是對Android應用開發中的高級部分進行專項學習,如網絡編程、位置服務等。這部分內容學生可根據興趣以及實際需求進行選擇性地學習。通過該部分內容的學習,學生將對某一塊Android應用開發非常熟練。
教材設計時,考慮到學習者的個性化特征,可以將知識有針對性地分為基礎、進階、高級等,并在教材中給出明確標記,使不同層次、水平的學生都能夠從教材中學習到相應的技能。同時,作為一本教材,學完每一章內容后,應及時進行總結,讓學生從眾多知識點中把握重難點,梳理知識點之間的邏輯關系。還應對學生所學內容進行形成性評價,以便及時獲取學生的掌握效果,幫助教師調整教學方案和教學進度。因此,每章除了教學內容外,還包括章節小結和課后習題。Android手機編程教材最終的目錄安排如表3所示。
2.3 教材章節內容設計
教材每章內容包括:本章要點、本章知識結構圖、本章示例截圖、本章概況、知識點介紹、示例效果演示、示例界面分析、示例程序結構分析、關鍵代碼展示、注意事項、問題與討論、本章小結和課后練習。章節內容組織順序如圖3所示。
“本章要點”部分簡要概括本章包含的知識點以及需要達到的目標,學生帶著目的去學習,更能抓住重點;“本章知識結構圖”部分則通過圖解展現各知識點間的邏輯關系,一目了然,方便讀者課后復習和回憶;“本章示例截圖”部分展示本章將要實現的案例效果,給學生直觀印象,使之明白學完本章內容后,能夠做什么,吸引學生注意力;“本章概況”部分則用文字描述本章的主要內容,與前面所學知識點之間的關系,以及這些內容有什么作用、能夠干什么、有哪些應用。“知識點介紹”部分講解各知識點功能、如何使用等;接著通過一個具體的示例將相關知識點關聯起來。示例設計以貼近學生生活實際、實用為原則,盡可能將前面所學內容添加進來,以方便學生復習、鞏固。首先是“示例效果演示”,展示示例運行的效果圖,以及用戶操作后相關界面變化的效果圖;然后用圖解法對這些效果圖的界面進行分析,使讀者明白界面具體是如何實現的;接下來即可進行代碼的編寫。但教材不是視頻,視頻教學可以手把手教編寫代碼,而教材更多是教如何閱讀已有的代碼,它是一個展示代碼的載體,應注重代碼整體結構分析,使學生快速了解該程序包含哪些文件,每個文件的作用又是什么,使學生明白其原理,啟發學生思考,而不應只列出長長的代碼,讓學生立即鉆入代碼實現的細節中,機械地記憶代碼。
了解程序結構之后,下面就是對一些比較關鍵的代碼進行詳細說明。教材中不宜列出所有的代碼,一方面容易使教材篇幅過長,另一方面不能為學生留下思考的余地。代碼的表現形式要方便讀者閱讀和教材自身描述,主要采取以下措施:①顯示代碼所在文件的相對路徑,方便學生快速定位;②對于部分關鍵語句給出必要注釋;③為每行代碼添加行號。即使關鍵代碼也要符合代碼編寫規范。程序的完整代碼可共享在網站上,由學生自由下載。學生通過書上給出的代碼并不能運行得到結果,需要根據自己的理解,把代碼補充完整,這也符合維果斯基的“最近發展區”理論。學生通過自己的努力實現效果,提高其成就感,確實做不出來時也可以下載和參考給出的代碼,與之比較存在哪些差異,這也是一種提升的手段。
“注意事項”部分主要提示代碼中一些容易出錯的地方、程序運行中可能會出現的問題以及一些編碼規范要求說明,在教材中以加粗、下劃線或對話框的形式引起學生注意。同時對程序中的一些關鍵步驟和問題引發學生討論,例如不這么做可不可以?如果要添加一個功能,怎么實現等。通過這種方式啟發學生思考、課后實踐、舉一反三,促使學生知識的遷移。
“本章小結”回顧本章所學知識,突出本章的重點和難點,幫助學生梳理、復習所學知識。最后是“課后練習”,既包括基礎概念題,也包括擴展實踐題,對本章的示例效果給出建設性的修改意見,讓學生課后自主實現,誘導學生去思考、探討某些問題,方便教師及時檢查學生知識的掌握程度,從而調整教學方式。學生也可在課后實踐中提高自己的技能,鞏固所學知識。
3、教材應用綜述
《Android應用開發教程》教材編寫后,經過內部試用、培訓班講義等多輪使用,再根據使用效果進行改編,并于2013年1月在江西高校出版社出版。該書出版一年來,被江西省11所高校選用,如江西師范大學、江西財經大學、東華理工大學、贛南師范學院等本科院校以及江西應用技術職業學院、南昌工學院、江西環境工程職業學院等多所專科院校,江西省外也有天津中德職業技術學院、廈門理工學院軟件學院等十多所高校選用本書,累計已有2000多學生使用。本教材的出版,帶動了部分高校開設Android相關課程,同時吸引了一批網友的關注。許多教師與網友反映,教材實用、通俗易懂、深入淺出、可讀性強,特別適合于大學課堂教學和入門自學。
為了方便學校使用,我們還開發了教學大綱、電子課件、測試題庫等一系列教輔資源,錄制了“手把手教你學Android4.1”系列演示視頻,建立了課后輔導答疑群。其中,教學視頻完全公開于土豆網和傳課網,單個視頻累積播放最高達5000多次,該書的學習交流群(群號287966120)現有成員800余人,大多是看了網絡視頻資源后加入的,而且還在不斷增長。很多自學者反映,自己看其他教材和視頻看了很久都不理解的內容,聽了本書的教學視頻后,很快就懂了,并期望我們再開發Android高級編程教材及相關的應用視頻。
一個好的實例,不但是一個好的例子,更是一個具有啟發性的例子。通過實例,可以激發學生更多的聯想,那么我們的實例設計便是成功的。倘若學生學完之后,只能知其然,不知其所以然,更不知如何將其運用到實際當中,那么這樣的實例對于學生的未來發展來說,則是乏力無效的。
二、學生情況的分析
好的教學實例要根據學生的實際情況來設計,不是單純從教學需要出發,從教師的意愿出發。在設計案例時,應分析學生的心理特點和認知水平,了解存在的問題等。只有真正了解學生的認知需求,才能設計出一個切合實際的教學案例來。
數控編程與操作是一門理論性與實踐性均較強的學科,目的是讓學生通過仿真操作來鞏固編程知識,提高數控操作技能。為此筆者在教學中引入項目教學法,把理論與實踐有機地結合起來,充分發掘學生的創造潛能。實施項目教學的關鍵是要有典型的項目案例,本文以“階梯軸的編程與加工”為例,淺談如何運用項目教學案例。
一、項目任務展示與項目實施過程
項目任務是按照零件圖樣要求加工出零件(零件圖樣略)。其實施過程如下。
1.閱讀零件圖,明確項目任務
學生分組討論零件圖,并分析出圖樣加工的技術要求。在小組交流的基礎上,教師歸納引出項目任務:根據圖樣所示技術要求,制定零件加工工藝,編寫出零件加工程序,并在仿真軟件上進行虛擬操作加工,最后在數控車床上進行實際操作加工,并對加工后的零件進行檢測、評價。
2.編制加工工藝
學生分組討論,小組交流,教師歸納出最佳加工工藝方案。
3.編寫程序和模擬仿真
學生采取小組合作的形式進行程序編寫(見表1),并在電腦上輸入程序、裝夾工件、安裝刀具和對刀,然后進行零件仿真加工。如發現程序在執行中出現問題,教師應及時給予指導。學生模擬仿真加工出零件后,教師要求學生自己對加工的工件進行檢測和誤差分析。
表1 加工程序表
程序段號 程序內容 程序段號 程序內容
N10 G54G97G98G40 N120 G00X42.0Z2.0
N20 M03S400 N130 X20.0
N30 T0101 N140 G01Z-15.0F100
N40 G00X42.0Z2.0 N150 X30.0
N50 G90X35.0Z-35.0F180 N160 Z-35.0
N60 X31.0 N170 X42.0
N70 X26.0Z-15.0 N180 G00X100.0Z100.0
N80 X21.0 N190 M30
N90 G00X100.0Z100.0
N100 T0202
N110 M03S900
4.數控機床實際操作加工
在教師指導下,學生獨立操作:安裝毛坯和刀具,做好工量具準備;在數控車床上輸入、編輯程序和檢驗程序;加工出工件。
5.質量檢查及評分
采用小組合作形式,對加工出的工件按照要求進行測量、評分。
二、項目評價
項目評價是項目教學的重要內容,通常采用自評、小組互評及教師評價等方式(見表2)。
表2 項目教學評價表
項目
內容 占分比重 自
評 小組
評分 教師
評分 總
評
閱讀零件圖 10分
制定工藝方案 10分
程序編寫 20分
模擬仿真 20分
實操加工 20分
合作交流 10分
安全操作 10分
總之,對于項目教學法的實施與運用要進行研究,要根據職業教育的特點,結合學校的現有條件,設計開發出一套具有學校自身特色的數控編程項目教學案例,并以此來推動學校教育教學方法的改革,用全新的模式培養出高素質的技能型人才。
參考文獻:
[1]高楓,肖衛寧.數控車削編程與訓練[M].北京:高等教育出版社,2005.
[2]孫偉偉.數控車工實習與考級[M].北京:高等教育出版社,2010.