本書以microsoft visual studio 2005為開發環境,通過三個學習情境的多個生動有趣的例項,培養學生的程式邏輯思維,完成c#程式的入門學習;以五個實際專案為載體,從計算機專業人員在實際工作中所需的基礎能力和技術出發,培養學生開發桌面型和中小c/s架構程式的職業能力和職業素養。本書主要覆蓋的知識面包括:c#2.
0語法、物件導向基礎知識、控制台應用程式、windows基礎控制項的應用程式、windows擴充套件控制項的應用程式、資料庫訪問技術、三層架構等。
本書共分為三個學習情境和五個專案
學習情境一:入門的必要知識。讓讀者熟悉visual studio 2005環境;能運用c#編寫.
***命令列程式;能運用c# winforms編寫.***視窗程式;能使用輸出函式writeline輸出各種格式的文字;能建立簡單的窗體並新增常用工具;會在程式中正確地使用資料並互動;學會讓程式幫我們完成繁瑣的計算工作。編碼量達到190行。
學習情境二:物件導向程式設計。讓讀者學會物件的建立和物件引用變數的使用;了解.
***框架類提供的服務——string類、random類和math類;能進行類的基本設計,掌握成員的新增、編寫方法;可過載建構函式、繼承和封裝。編碼量達到180行。
學習情境三:控制台互動程式程式設計,讓讀者能夠使用if語句和switch語句進行判斷;能夠使用while語句和for語句處理迴圈,能夠使用跳轉語句增加迴圈的靈活性;學會讓程式幫我們完成繁瑣的工作。編碼量達到160行。
專案一:我的sdi記事本。讓讀者理解窗體類的屬性和方法的作用;能夠使用基本控制項設計窗體介面;能夠編寫簡單的事件處理程式;能夠使用簡單的檔案流進行檔案處理;會使用sdi單文件介面設計。
編碼量達到450行。
專案二:我的mdi記事本。在專案一的基礎上使用mdi窗體及richtextbox控制項重構「我的sdi記事本」,讓讀者理解窗體類的屬性和方法的作用;能夠使用擴充套件控制項設計窗體介面;能夠編寫簡單的事件處理程式;會使用mdi多文件介面設計。
編碼量達到600行。
專案三:學生管理系統。讓讀者能夠用基本控制項設計窗體介面;能夠使用資料介面卡sqldataadapter控制項進行資料的匯入與更新;能夠將資料集dataset中的資料顯示在datagridview中;能夠對資料集dataset中的資料進行增加、刪除、修改;能夠進行資料的查詢。
編碼量達到230行。
專案四:考試管理系統。讓讀者能夠使用基本控制項設計窗體介面;能夠使用資料連線類sqlconnection連線資料庫;能夠將資料庫中的資料通過資料讀取類sqldatareader顯示在listview中;能夠使用命令類sql***mand對資料庫中的資料進行增加、刪除、修改;能夠進行資料的模糊查詢。
編碼量達到523行。
專案五:三層架構重構考試管理系統。讓讀者在實體類myschoolmodels專案中建立admin類、class類、grade類和student類;在資料訪問層介面myschooldal專案中建立iadminservice介面、iclassservice介面、igradeservice介面和istudentservice介面;在資料訪問層myschooldal專案中建立adminservice類、classservice類、gradeservice類和studentservice類;在聯機工廠myschooldalfactory專案中建立abstractdalfactory類、accessdalfactory類和sqldalfacoty類;在業務邏輯層myschoolbll中建立clas**anager類、grademanager類、loginmanager類和studentmanager類。
編碼量達到1377行。
本書是國家示範性高職院校建設的重要成果,是基於工作過程的課程開發的重要成果,是漳州職業技術學院的資助出版教材。
本書可作為本科計算機相關專業及高職高專計算機類專業的程式入門教材,也可作為計算機程式設計培訓的教程或相關技術人員的入門參考書。本書突破了傳統的教學模式,體現了以實際工作過程為導向進行教學設計的思想。建議實施一體化教學。
本書的實際教學可分兩學期進行:第一學期快速熱身,學習c#基礎語法、基本的控制台和windows應用程式,重點培養學生的程式邏輯思維能力;第二學期專案實戰,通過五個經典專案學習c#的實踐應用,培養學生開發桌面型和中小c/s架構程式的職業能力和職業素養。
本書第一部分由吳慧君整理編寫;專案
一、二由謝世煊編寫;專案
三、四、五由王燕貞編寫。其他參與本書材料整理、**除錯的人員有林靜、翁炳雄、王瑋。本書的編寫還得到楊文元等領導的幫助和支援,在此對大家的辛勤勞動表示衷心的感謝。
參與本書編寫的三位作者均是長期教授該語言的一線教師,經驗豐富,但由於時間倉促,書中疏漏在所難免,敬請讀者諒解,並歡迎批評指正。
學習情境一入門的必要知識 1
1.1 任務一:第乙個控制台程式 1
1.1.1 功能描述 1
1.1.2 任務步驟 2
1.1.3 知識點1——注釋及空白符的使用 4
1.1.4 知識點2——write和writeline方法、字串連線 4
1.1.5 知識點3——執行與除錯:逐語句除錯 6
1.2 任務二:第乙個windows程式 6
1.2.1 visual studio c# ide簡介 6
1.2.2 功能描述 8
1.2.3 任務步驟 9
1.2.4 **展示 13
1.3 任務三:在程式中使用資料 16
1.3.1 功能描述 16
1.3.2 **展示 16
1.3.3 知識點1——變數、常量和賦值 17
1.3.4 知識點2——互動式程式 18
1.3.5 知識點3——資料型別及轉換 18
1.4 任務四:讓程式為我們計算 20
1.4.1 功能描述 20
1.4.2 **展示 20
1.4.3 知識點1——表示式和優先順序 21
1.4.4 知識點2——除錯:斷點和檢視變數內容 23
1.5 舉一反三 24
學習情境二物件導向程式設計 25
2.1 任務一:學會使用已有資源 25
2.1.1 功能描述 25
2.1.2 **展示 25
2.1.3 知識點1——.***框架類之math類 28
2.1.4 知識點2——.***框架類之random類 29
2.1.5 知識點3——.***框架類之string類 29
2.2 任務二:學生類的初步設計 32
2.2.1 功能描述 32
2.2.2 **展示 33
2.2.3 知識點1——方法的解析 36
2.2.4 知識點2——域和屬性 39
2.2.5 知識點3——除錯:檢視物件變數的內容 41
2.3 任務三:學生類的高階設計 42
2.3.1 功能描述 42
2.3.2 **展示 42
2.3.3 知識點1——建構函式和析構函式 43
2.3.4 知識點2——封裝(encapsulation) 44
2.3.5 知識點3——繼承 44
2.3.6 知識點4——除錯:step into、step out、step over 46
2.4 舉一反三 46
學習情境三控制流程 47
3.1 任務一:選擇控制流程 47
3.1.1 功能描述 47
3.1.2 **展示 47
3.1.3 知識點1——if語句 49
3.1.4 知識點2——巢狀的if語句 50
3.1.5 知識點3——switch語句 50
3.2 任務二:while迴圈語句的應用 52
3.2.1 功能描述 52
3.2.2 **展示 52
3.2.3 知識點1——while語句 54
3.2.4 知識點2——do-while語句 54
3.2.5 知識點3——跳轉語句:break、continue、goto 55
3.3 任務三:for迴圈的基本應用及巢狀 56
3.3.1 功能描述 56
3.3.2 **展示 57
3.3.3 知識點1——for語句 58
3.3.4 知識點2——巢狀的迴圈 58
3.4 任務四:for迴圈在陣列上的應用 59
3.4.1 功能描述 59
3.4.2 **展示 59
3.4.3 知識點1——c#的陣列 60
3.4.4 知識點2——foreach語句 61
3.4.5 知識點3——除錯:監視視窗 62
3.5 舉一反三 62
專案一我的sdi記事本 63
ⅰ.1 任務一:「我的sdi記事本」主窗體設計 63
ⅰ.1.1 功能描述 63
ⅰ.1.2 設計步驟及要點解析 64
ⅰ.1.3 知識庫 65
ⅰ.2 任務二:「我的sdi記事本」功能實現 67
ⅰ.2.1 功能描述 67
ⅰ.2.2 設計步驟及要點解析 67
ⅰ.2.3 知識庫 74
ⅰ.3 任務三:「我的sdi記事本」的修飾一——關於窗體 76
ⅰ.3.1 功能描述 76
ⅰ.3.2 設計步驟及要點解析 77
ⅰ.3.3 功能實現 78
ⅰ.3.4 知識庫 78
ⅰ.4 任務四:「我的sdi記事本」的修飾二——歡迎窗體 79
ⅰ.4.1 功能描述 79
ⅰ.4.2 設計步驟 79
ⅰ.4.3 功能實現及要點解析 80
ⅰ.4.4 知識庫 81
ⅰ.5 專案案例 81
專案二我的mdi記事本 82
ⅱ.1 任務一:「我的mdi記事本」主窗體及子窗體設計 82
ⅱ.1.1 功能描述 82
ⅱ.1.2 設計步驟及要點解析 83
ⅱ.1.3 知識庫 85
ⅱ.2 任務二:「我的mdi記事本」功能實現 87
ⅱ.2.1 功能描述 87
ⅱ.2.2 功能**展示及要點解析 87
ⅱ.2.3 知識庫 100
ⅱ.3 任務三:「我的mdi記事本」的修飾——** 101
ⅱ.3.1 功能描述 101
ⅱ.3.2 設計步驟及要點解析 101
ⅱ.3.3 知識庫 102
專案三學生管理系統 103
ⅲ.1 任務一:「學生管理系統」各窗體設計 103
ⅲ.1.1 功能描述 103
ⅲ.1.2 設計步驟 103
ⅲ.2 任務二:「登入窗體」資料庫連線操作的功能實現 106
ⅲ.2.1 功能描述 106
ⅲ.2.2 功能步驟及**解析 106
ⅲ.2.3 知識庫 107
ⅲ.3 任務三:「學生管理系統」增刪改查操作的實現 108
ⅲ.3.1 功能描述 108
ⅲ.3.2 設計步驟及**解析 108
ⅲ.3.3 知識庫 116
專案四考試管理系統 117
ⅳ.1 任務一:「考試管理系統」各窗體設計 117
ⅳ.1.1 功能描述 117
ⅳ.1.2 各窗體設計步驟及技術要點分析 117
ⅳ.2 任務二:「登入介面」窗體資料庫連線操作的功能實現 123
ⅳ.2.1 功能描述 123
ⅳ.2.2 功能**展示及功能實現技術要點分析 123
ⅳ.2.3 知識庫 127
ⅳ.3 任務三:在adminform窗體中顯示子窗體 127
ⅳ.3.1 功能描述 127
ⅳ.3.2 **解析 127
ⅳ.4 任務四:增加新的學員 129
ⅳ.4.1 功能描述 129
ⅳ.4.2 設計步驟及**解析 129
ⅳ.4.3 知識庫:sqldatareader 136
ⅳ.5 任務五:學員資訊列表及修改學員資訊 136
ⅳ.5.1 功能描述 136
ⅳ5.2 設計步驟及**分析 137
ⅳ.6 任務六:查詢學員資訊 139
ⅳ.6.1 功能描述 139
ⅳ.6.2 設計步驟及**解析 139
專案五三層架構重構考試管理系統 145
ⅴ.1 任務一:實體層myschoolmodels的設計 145
ⅴ.1.1 功能描述 145
ⅴ.1.2 設計步驟及**解析 146
ⅴ.1.3 知識庫 150
ⅴ.2 任務二:配置檔案的設定 150
ⅴ.2.1 功能描述 150
ⅴ.2.2 設計步驟 150
ⅴ.3 任務三:資料訪問層介面的設計 151
ⅴ.3.1 功能描述 151
ⅴ.3.2 設計步驟 151
ⅴ.3.3 知識庫 152
ⅴ.4 任務四:資料訪問層的設計 152
ⅴ.4.1 功能描述 152
ⅴ.4.2 設計步驟及**解析 152
ⅴ.4.3 知識庫 168
ⅴ.5 任務五:聯機工廠的設計 169
ⅴ.5.1 功能描述 169
ⅴ.5.2 設計步驟及**解析 169
ⅴ.5.3 知識庫 170
ⅴ.6 任務六:業務邏輯層的設計 171
ⅴ.6.1 功能描述 171
ⅴ.6.2 設計步驟及**解析 171
ⅴ.6.3 知識庫 180
參考文獻 181(收縮
基於工作過程的課程觀
長期以來,職業教育課程改革止步不前的原因在於,課程微觀內容的設計與編排遠未跳出學科體系的藩籬,因而在這一傳統觀念束縛下編寫的教材始終不能適應職業工作的需要。無疑,課程內容的序化已成為制約職業教育課程改革成敗與否的關鍵。按照工作過程的順序開發課程,是凸顯職業教育特色的課程開發的突破口。課程開發有兩個基...
基於工作過程導向的課程設計
三 充分體現高職教育特徵 高職教育以進行職業定向教育為基本特徵,職業的內涵規範了職業教育的標準。因此,高職教育的課程應使學生能夠獲得結構完整的工作過程中所涉及到的程式性知識 職業技能和相關的職業體驗,以促進職業能力的形成為目的。基於工作過程的課程以工作範圍為課程內容的組織邊界 以工作過程為課程內容的...
基於工作過程《C程式設計》課程設計
摘要 以 c 程式設計 課程的課程設計為例,闡述了基於工作過程課程設計的一般思路和方法,這對高職院校的課程改革有很好的借鑑意義。關鍵詞 基於工作過程課程設計典型工作任務教學情境 中圖分類號 g712 文獻標識碼 a 文章編號 1674 098x 2012 06 b 0142 03 高職教育承擔著為社...