999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Windows程序設計課程教學新思路

2014-04-29 04:41:52張曉峰
計算機時代 2014年11期

張曉峰

摘 要: Windows程序設計使得復雜的軟件開發過程變得簡便,但是由于API、MFC等復雜內容的引入,使得該課程的學習過程充滿艱辛,難以獲得滿意的教學效果。隨著該課程的廣泛開展,基于對該課程教學模式的深入思考和多年教學經驗,分析了該課程教學過程中存在的問題,充分認識到程序整體結構對于Windows程序設計的重要性,提出了“先搭結構,再添磚瓦”的教學模式,并設計了一套與之相對應的實驗。

關鍵詞: Windows程序設計; API; MFC; 程序框架

中圖分類號:G42 文獻標志碼:A 文章編號:1006-8228(2014)11-57-02

New idea of Windows programming course

Zhang Xiaofeng

(School of Computer Science and Technology, Nantong University, Nantong, Jiangsu 226019, China)

Abstract: Using Windows programming, the complex software development becomes easy. But the course of Windows programming is hard to obtain a satisfactory teaching effectiveness. Since the introduction of API, MFC and so on, the study of Windows programming is difficult. With the development of this course, it is necessary to take a deep considering of this course. In this paper, the problems of this course are analyzed according to years of teaching experience. A new teaching mode, which suggests the framework is more important, is proposed. A suit of corresponding experiments are designed.

Key words: Windows programming; API; MFC; framework of programming

0 引言

Windows程序設計是一種實用的面向對象程序設計方法,該方法主要使用API(Application Programming Interface,應用程序編程接口)、MFC(Microsoft Foundation Classes,微軟基礎類庫)等實現,是程序設計的高級形式。近幾年來,為了讓學生更好地接觸流行的程序設計方式,畢業后更好地適應角色融入工作中,很多學校開設了Windows程序設計課程。由于該課程涉及的知識面廣,包含內容的關系錯綜復雜,實際獲得的教學效果并不理想。一些研究[1-3]分析了Windows程序設計課程的特點,提出了相應的教學方案。但是這些方法的使用往往得到只見樹木不見森林的結果。本文分析和研究了Windows程序設計課程教學過程中遇到的問題,提出了合理的解決方案,并設計了一套與之相對應的實驗。所提出的方法在近幾年的教學實踐中獲得了較好的效果。

1 課程的難點

本課程涉及一種實用的程序編寫技術,它和Windows操作系統有著密切的聯系,通過Windows編程技術,既能夠編寫出涉及底層的軟件,也可以實現功能強大的具有Windows窗口界面的程序。然而正是由于其強大的功能,使得初學者無所適從。以下簡要分析本課程的難點。

⑴ 面向過程到面向對象的轉變

學生在接觸本課程之前,一般都學習過諸如C或者C++這類程序設計語言。然而那些課程中編寫的程序主要是面向過程的,程序之間的調用、跳轉清晰明了。會有人說C++是一個面向對象的語言,課程中主要涉及的是控制臺程序,用C++來講解面向過程的程序結構和思想,對于面向對象的講解僅停留在類、對象等概念上,學生很難形成面向對象的深刻認識。

到了Windows程序設計部分,面向對象就涉及到程序的方方面面。對象、類和方法使得整個程序形成一個復雜的關系網,與原先的程序開發思想形成了鮮明的對比。

⑵ 消息驅動機制

傳統的編程方式主要是過程式的結構,從一個部分到另一個部分一目了然。比如在程序中運行一個函數,必須有代碼顯式調用該函數。因此,僅僅讀程序就可以獲得程序完整的流程。

但是消息驅動機制改變了傳統的結構。在這種驅動機制下,程序的流向與當前獲得的消息有關,這樣,每次運行程序時的消息不同會造成不同的運行結果。消息的種類有好多種,其中最常用的是用戶的鼠標、鍵盤交互動作。因此想要更好地掌握Windows程序的設計的結構,理解消息驅動機制是必不可少的。

⑶ API和MFC開發的區別和聯系

API和MFC是實現Windows程序設計的兩種基本途徑。兩者都能實現具體的編程目的,都是基于消息驅動的,但在實現過程中有較大的區別。

API開發方式沒有對程序進行過多封裝,功能的實現都必須調用相應的API函數實現,樣樣事都需要親力親為,優點是開發人員對設計程序的實現有清晰的認識。而MFC則封裝了較多的內容,優點是使開發者集中精力在具體實現上,而不是糾結于界面設計、消息處理的細節,缺點則是初學者不了解程序的流向,不能有效掌控整個程序。

⑷ 對Windows程序設計的結構理解不夠

由于Windows程序設計是基于消息驅動的,編程的時候需要考慮的是如何調用消息處理程序。API比較簡單,一般就是處理窗口的消息。而MFC將這些內容封裝起來,很難直接看到內部的結構。

⑸ API數量龐大,難以記憶

功能強大帶來的副作用就是需要更多的函數實現具體功能。Windows中的API函數多達數千個,隨著Windows的發展,數量還在不斷增加,這給初學者造成了較大的負擔。如何分門別類記憶這些API函數,是Windows程序設計中必須面對的問題。

2 解決方案

Windows程序設計課程中遇到的問題并不是孤立的,它們之間緊密聯系。對這些問題進行深入分析研究,本文提出這樣的教學模式:先掌握程序的框架結構,然后再考慮細節的“磚瓦”。先導課程中有相關程序設計語言課程已訓練過學生的編程思想,本課程主要希望教會學生借助Windows程序設計工具開發結構復雜和功能強大的Windows程序,因此程序整體結構在本課程中具有意義。

面向對象的思想不能僅靠講解對象和類的概念,應該放到具體程序中講解,比如程序的主體中的對象和類。而MFC中更是充滿了類的概念,從整個框架到小的控件都是類的具體對象。當學生知道了這些部分都是對象的時候,他們會恍然大悟。這些類的具體方法也會隨著教學的深入而不斷被提到。

對構架的理解可以通過分析一個樣板程序獲得,并且在隨后的課程中逐漸加深理解。API創建程序的結構比較清晰,一般是創建窗體后進入消息循環。MFC創建的程序主要有三類:對話框、單文檔和多文檔,這三類的結構略有區別。“文檔/視圖”結構是MFC程序的基本結構,它將數據和顯示分開,使程序開發更容易。但是只會往這種結構中填寫程序,則會在文件是如何打開、保存,以及送到屏幕顯示等具體問題上迷惘,因此需要從基本結構入手,深入剖析其程序的消息響應機制。

解決了程序的框架問題,接下來需要進一步訓練學生的面向過程的程序思想,即如何實現一個個程序塊的功能。這些功能塊構建了程序需要的“磚塊”,填入之前設計的結構中就形成了完整的程序。構建“磚塊”就會用到相應的API函數,這時不能一下子將所有API拋給學生。API太多,結構也比較復雜。適宜采用的方法是讓學生掌握部分常用的API函數,然后拓展范圍,教會他們使用MSDN查找具有相應功能的API函數。

3 實驗設計

作為一門實踐性的課程,光靠理論是不能夠讓學生掌握課程的基本內容的,良好的實驗設計可以使學生將書本知識轉化為自己的技術。經過這些整理,設計的實驗包含以下幾個部分。

⑴ Windows應用程序的框架

該實驗主要用于熟悉使用API編寫Windows應用程序的框架,首先實現單窗口程序及其消息處理,并在此基礎上添加其他窗體、對話框,及其消息處理函數。通過API掌握數據的流向。

⑵ Windows應用程序對各種消息的響應

這部分的消息主要包括:鼠標、鍵盤、菜單等。主要掌握各種常見的消息處理,以及這些消息處理中使用的API函數。

⑶ Windows應用程序的圖形和文字輸出

這部分主要訓練學生使用API函數實現輸出功能。

⑷ MFC創建程序的框架

這部分內容包括使用MFC創建單文檔、多文檔和對話框程序,文檔打開、保存,消息傳遞。要著重理解MFC程序的“文檔/視圖”框架。

⑸ MFC創建菜單

菜單中的消息響應機制是這部分的重點,需要掌握手動添加菜單及其相應函數。

⑹ MFC程序中其他控件的使用

如果前面已經掌握了MFC程序的框架,這部分就是在添磚加瓦。每個部分相對獨立,學習的難度不大。

其實驗的安排與書本順序恰恰相反,它遵循了從整體到局部的理念。通過這些實驗,可以讓學生充分掌握Windows程序設計的框架,同時掌握每個細節的編寫方法,實現對Windows程序的全面掌控。

4 結束語

本文針對Windows程序設計課程內容繁多、結構復雜的特點,分析了課程的難點,提出了從結構入手,逐步了解各個細節的學習方法,并配合該方法提出了一套實驗方案。在近些年的教學實踐中,這些方法取得了較好的教學效果。

參考文獻:

[1] 何軍.面向對象思想在Windows程序設計課程中的教學研究[J].福建

電腦,2013.8:186-187

[2] 劉智,張金榮,王森.深入淺出講解“Windows程序設計—Visual C++”

課程[J].計算機時代,2012.9:57-59

[3] 虞芬,鄒睿娟.以學生為中心,培養學習能力—《Windows程序設

計》課程的教學改革與實踐[J].九江職業技術學院學報,2011.2:

46-48

主站蜘蛛池模板: 成人国产精品网站在线看| 欧美国产综合视频| 亚洲日韩精品无码专区| 超清无码一区二区三区| 好紧太爽了视频免费无码| 久久中文电影| 台湾AV国片精品女同性| 亚国产欧美在线人成| 91九色视频网| 天天综合网色| 午夜毛片免费看| 亚洲动漫h| 国产小视频a在线观看| 久久综合九色综合97婷婷| 成人亚洲国产| 亚洲 欧美 中文 AⅤ在线视频| 欧美成人看片一区二区三区 | 日本爱爱精品一区二区| 9久久伊人精品综合| 国产91熟女高潮一区二区| 天天色天天综合| 91日本在线观看亚洲精品| 99在线观看国产| 91精品aⅴ无码中文字字幕蜜桃| 成人伊人色一区二区三区| 中文字幕在线免费看| 国内精品视频区在线2021| 好紧好深好大乳无码中文字幕| 亚洲国产精品VA在线看黑人| 丁香婷婷久久| 青草精品视频| 国产人成乱码视频免费观看| 欧美三级不卡在线观看视频| 美女被躁出白浆视频播放| 白浆免费视频国产精品视频| 欧美成人午夜视频免看| 免费a在线观看播放| 亚洲二三区| 在线观看免费黄色网址| 亚洲欧美日韩中文字幕一区二区三区| 国产尤物视频在线| 国产成人久视频免费| 精品一区二区三区中文字幕| 国产精品第一区在线观看| 亚洲综合激情另类专区| 国产女人爽到高潮的免费视频| 国产91视频观看| 亚洲美女操| 国产精品九九视频| 亚洲中文无码av永久伊人| 亚洲午夜天堂| 国产久草视频| 国产视频自拍一区| 国产超薄肉色丝袜网站| 欧美一级一级做性视频| 99国产精品国产高清一区二区| 亚洲不卡影院| 国产交换配偶在线视频| 波多野结衣视频网站| 一级毛片在线免费视频| a毛片在线| 尤物亚洲最大AV无码网站| 亚洲欧洲日韩久久狠狠爱| 在线观看网站国产| 999在线免费视频| 国产成年女人特黄特色大片免费| 国产手机在线小视频免费观看 | 嫩草国产在线| 欧美视频在线播放观看免费福利资源| 国产视频久久久久| 亚洲日韩精品综合在线一区二区 | 日本黄网在线观看| 精品撒尿视频一区二区三区| 丁香亚洲综合五月天婷婷| 日本成人精品视频| 又污又黄又无遮挡网站| 亚洲免费播放| 91免费国产在线观看尤物| 91视频区| 欧美一级爱操视频| 午夜福利在线观看成人| 国产91在线|中文|