iii. 業務驅動,從一開始就分析一個即定的業務,學習數據抽象的能力。
iv. 服從架構設計,了解和使用UML和Design Pattern,學會簡單的分析架構,更重要的是在給出Class的要求後能夠使用C#進行實現,在實現功能時能找到合適的控件;實現完後能正確把程序編譯為合適的組件。讓學生們養成習慣,拿到一個任務後是先抽象Class和分析架構,然後再動手寫程序。
2.課時技術分配——共6次課
i. IDE的使用;C# Lang Spec的使用;MSDN的使用;Class的核心意義(各種成員的意義)
ii. 給出一個小任務,先分析架構,然後再用C#實現,最後編譯(有類庫)。任務中,類、成員數據、成員方法、屬性(先不講特性)、委托+事件、繼承、多態,都要有體現。
iii. C#與多種項目的接口,如什麼時候使用P/Invoke、什麼時候使用GDI+、什麼時候使用XML和Regex等。同節課講解Web程序從靜態Htmlà客戶端腳本àCGIàWeb ServeràASP.Net的進化。
iv. 學習使用C#連接SQL Server。再給出一個任務,先進行架構分析。
v. 使用三層結構和MVC理論,讓學生先實現數據層和業務層(學習Web Service),然後再使用WinForm和WebForm來實現表示層。
vi. 分析公司現有項目的從需求到實現,總結三周來學習的內容。如果時間足夠,進行驗收考試。
六.學生務必具備的四個能力
1.文檔內導航能力:因為C#語言部分需要快速學習,而最快的方法莫過於讀grammar productions(第一節課內容),讀grammar productions需要很強的、在文檔中跳躍的能力,還需要有最基本的“調用展開”和“遞歸”思想。
2.MSDN內導航能力:從搜索或者Index開始,找到一個類,然後閱讀相關類,然後返回主類——要能在MSDN中進退自如。
3.代碼導航能力:在多文件代碼中能夠快速定位到一個類/成員的聲明/定義處,在各種程序元素和作用域中跳躍而不迷失方向並能進退自如。
4. 在網絡中快速搜索需要的內容(我會介紹一些優秀的網點給學生)
大家如果有什麼好的建議和討論,也請回復在後面。本文的構成內容就不止是我一個人想出來的,還有阿虎的指導。希望本文這塊磚能引出大家更多的“玉”來。