《Java程序設計》教學進程

《Java程序設計》教學進程

目錄

考覈方式

參考「《Java程序設計》 課程教學」中的考覈方式。php

返回目錄
html

課前準備

課程基礎

預備做業

  • 預備做業01:你指望的師生關係是什麼?: 讓同窗們瞭解「Trainer/Trainee」是最好的師生關係,讓同窗們對即將到來的翻轉課堂有個心理準備,讓同窗們對即將到來學習任務,學習壓力有個心理準備,反作用是讓同窗們學會了Markdown。

  • 預備做業02 : 體會作中學(Learning By Doing):讓同窗們瞭解「作中學(Learing By Doing)」的學習方法與刻意訓練在技能獲取中的重要性,進一步理解有學習壓力的必要性,反作用是讓同窗們展現本身,老師瞭解學生,同窗們之間加深交流了解。

  • 預備做業03:課程基礎:利用搜商,打下課程的Linux基礎,初步體會什麼叫學習上的觸類旁通,融會貫通。老師教十個你會六個就及格了?不,應該是老師教十個,你會一百個個乃至更多,至少具有這樣的潛能。

返回目錄

教學進程

學習方法

  1. 進度很重要:注意前緊後鬆,必須跟上每週的進度,教材閱讀與總結,教材上的練習,問答小組,項目。我和助教們會認真對待每一位同窗,請你不要由於困難而放棄,堅持下來,會發現本身的難以想象。

  2. 問答很重要:遇到知識難點請多多提問,這是你的權利更是您對本身負責的義務。問答到課程討論小組,提問請閱讀一下「如何提問」,答疑注意事項.

  3. 實踐很重要:解決書中習題,實踐教材中實例,完成我的和團隊項目,纔算真的消化了課程內容。能夠經過實驗樓課程配套環境或本身安裝的虛擬機在實踐中進行學習.實踐時參考「積極主動敲代碼,使用Junit學習Java程序設計」。

  4. 學習總結、實驗報告很重要:總結學習與實踐中的問題,獲得老師和同窗們的反饋,是進步的捷徑。學習完成後在博客園中把學習過程經過博客(隨筆)發表,博客標題「學號 2016-2017-2 《Java程序設計》第x周學習總結」

總結模板(Markdown)以下:

# 學號 2016-2017-2 《Java程序設計》第X周學習總結

## 教材學習內容總結

儘可能簡單的總結一下本週學習內容
儘可能不要抄書,浪費時間
看懂就過,看不懂,學習有心得的記一下

## 教材學習中的問題和解決過程

教材學習有問題先去[https://shimo.im/doc/1i1gldfsojIFH8Ip/](https://shimo.im/doc/1i1gldfsojIFH8Ip/)看看,若是別人沒有提出相同問題,能夠編輯文檔添加,而後把本身提出的問題複製到下面:

- 問題1:XXXXXX
- 問題1解決方案:XXXXXX
- 問題2:XXXXXX
- 問題2解決方案:XXXXXX
- ...

## 代碼調試中的問題和解決過程

教材中代碼調試有問題先去[https://shimo.im/doc/1i1gldfsojIFH8Ip/](https://shimo.im/doc/1i1gldfsojIFH8Ip/)看看,若是別人沒有提出相同問題,能夠編輯文檔添加,而後把本身提出的問題複製到下面:

- 問題1:XXXXXX
- 問題1解決方案:XXXXXX
- 問題2:XXXXXX
- 問題2解決方案:XXXXXX
- ...

## [代碼託管](碼雲學習項目連接)

(statistics.sh腳本的運行結果截圖)

## 上週考試錯題總結
- 錯題1及緣由,理解狀況
- 錯題2及緣由,理解狀況
- ... 

## 結對及互評

### 評分標準

1. 正確使用Markdown語法(加1分):
    - 不使用Markdown不加分
    - 有語法錯誤的不加分(連接打不開,表格不對,列表不正確...)
    - 排版混亂的不加分
2. 模板中的要素齊全(加1分)
    - 缺乏「教材學習中的問題和解決過程」的不加分
    - 缺乏「代碼調試中的問題和解決過程」的不加分
    - [代碼託管](連接)不能打開的不加分
    - 缺乏「結對及互評」的不能打開的不加分
    - 缺乏「上週考試錯題總結」的不能加分
    - 缺乏「進度條」的不能加分
    - 缺乏「參考資料」的不能加分

3. 教材學習中的問題和解決過程, 一個問題加1分

4. 代碼調試中的問題和解決過程, 一個問題加1分

5. 本週有效代碼超過300分行的(加2分)
    - 一週提交次數少於20次的不加分
    
6. 其餘加分:
    - 週五前發博客的加1分
    - 感想,體會不假大空的加1分
    - 排版精美的加一分
    - 進度條中記錄學習時間與改進狀況的加1分
    - 有動手寫新代碼的加1分
    - 課後選擇題有驗證的加1分
    - 代碼Commit Message規範的加1分
    - 錯題學習深刻的加1分
    - 點評認真,能指出博客和代碼中的問題的加1分
    - 結對學習狀況真實可信的加1分
    
7. 扣分:
    - 有抄襲的扣至0分
    - 代碼做弊的扣至0分
    - 遲交做業的扣至0分

### 點評模板:

- 博客中值得學習的或問題:
    - xxx
    - xxx
    - ...
- 代碼中值得學習的或問題:
    - xxx
    - xxx
    - ...
    
- 基於評分標準,我給本博客打分:XX分。得分狀況以下:xxx

- [參考示例](http://www.cnblogs.com/haoliberale/p/6580822.html#3650972) 

### 點評過的同窗博客和代碼

- 本週結對學習狀況 
    - [結對同窗學號1](博客連接)
    - 結對照片
    - 結對學習內容
        - XXXX
        - XXXX
        - ...
- 上週博客互評狀況(只要連接,具體點評放相應博客下)

    - [學號1](博客連接)
    - [學號2](博客連接)
    - [學號3](博客連接)
    - [學號4](博客連接)
    - ...
    
## 其餘(感悟、思考等,可選)

xxx
xxx

## 學習進度條

|            | 代碼行數(新增/累積)| 博客量(新增/累積)|學習時間(新增/累積)|重要成長|
| --------   | :----------------:|:----------------:|:---------------:  |:-----:|
| 目標        | 5000行            |   30篇           | 400小時            |       |
| 第一週      | 200/200           |   2/2            | 20/20             |       |
| 第二週      | 300/500           |   2/4            | 18/38             |       |
| 第三週      | 500/1000          |   3/7            | 22/60             |       |
| 第四周      | 300/1300          |   2/9            | 30/90             |       |


嘗試一下記錄「計劃學習時間」和「實際學習時間」,到期末看看能不能改進本身的計劃能力。這個工做學習中很重要,也頗有用。
耗時估計的公式
:Y=X+X/N ,Y=X-X/N,訓練次數多了,X、Y就接近了。

參考:[軟件工程軟件的估計爲何這麼難](http://www.cnblogs.com/xinz/archive/2011/04/05/2005978.html),[軟件工程 估計方法](http://www.cnblogs.com/xinz/archive/2011/04/06/2007294.html)

- 計劃學習時間:XX小時

- 實際學習時間:XX小時

- 改進狀況:

(有空多看看[現代軟件工程 課件 
軟件工程師能力自我評價表](http://www.cnblogs.com/xinz/p/3852177.html))


## 參考資料

-  [Java學習筆記(第8版)](http://book.douban.com/subject/26371167/) 

-  [《Java學習筆記(第8版)》學習指導](http://www.cnblogs.com/rocedu/p/5182332.html)
-  ...

上面模板中用Markdown寫的總結的渲染效果以下:

xr

返回目錄

第0周學習指導

學習目標

  1. 瞭解課程上課方式
  2. 作好心理預期

學習資源

  1. 現代軟件工程講義 0 課程概述
    • 師生關係:trainer/trainee
    • 負擔與壓力:如今辛苦是由於欠賬,如今的努力能夠發現本身的難以想象
  2. 現代軟件工程 習而學的軟件工程教育
    • 編程也同樣
    • 學習科學日益主流的觀念:從「情景學習」出發,當一名「認知學徒」,它的要點有:
      • 找到學習共同體:由於大量知識存在於學習共同體的實踐中,不是書本中,因此有效的學習不是關門苦練,而是找到屬於本身的學習小團體。如程序員在相似於github這樣的網站練習編程。
      • 隱性知識顯性化:隱性知識是令人們有能力利用概念、事實以及程序來解決現實問題的知識。
      • 模仿榜樣:榜樣能夠是現實生活中的導師,也能夠是網上的導師;
      • 培養多樣性:在多種情境中實踐,以此強調學習廣闊的應用範圍。如裁縫出師並非已經練習了一萬小時,而是可以縫製出足夠好的,各類各樣的衣服。
  3. 現代軟件工程講義 1 軟件工程概論: 程序和軟件的不一樣

  4. 爲何必定要自學?:善於自學的人,最終會造成一個重要的能力:融會貫通。

  5. 作中學

學習任務

  • 閱讀以上博客

返回目錄

第一週學習指導(2.20-2.26)

學習目標

  • 瞭解Java基礎知識
  • 瞭解JVM、JRE與JDK,並下載、安裝、測試JDK
  • 瞭解PATH、CLASSPATH、SOURCEPATH的做用並會設置
  • 初步使用IDE(推薦IDEA),會編譯、運行、調試簡單的Java程序

學習資源

學習任務

  • 瀏覽教材,根據本身的理解每章提出一個問題
  • 認真學習教材第一章、第二章
  • 代碼託管到git@OSC, 這樣老師和助教才能看到,參考一下使用開源中國託管代碼
  • 參考上面的學習總結模板,把學習過程經過博客(隨筆)發表,博客標題「學號 2016-2017-2 《Java程序設計》第一週學習總結

返回目錄

第二週(2.27-3.05)

學習目標

  1. 瞭解Java編程風格
  2. 認識Java的類型與變量
  3. 掌握Java流程控制的方法(分支、循環)

學習資源

學習任務

返回目錄

第三週(3.06-3.12)

學習目標

  • 區分基本類型與類類型
  • 理解對象的生成與引用的關係
  • 掌握String類和數組
  • 理解封裝的概念
  • 掌握構造方法的定義
  • 理解重載的概念
  • 掌握static的應用

學習資源

學習任務

返回目錄

第四周(3.13-3.19)

學習目標

  • 理解封裝、繼承、多態的關係
  • 理解抽象類與接口的區別
  • 掌握S.O.L.I.D原則
  • 瞭解模式和設計模式
  • 能正確覆蓋方法
  • 瞭解垃圾回收機制
  • 掌握Object類
  • 掌握enum

學習資源

學習任務

返回目錄

第五週(3.20 - 3.26)

學習目標

  • 理解異常架構
  • 牚握try...catch...finally處理異常的方法
  • 會用throw,throws
  • 理解Collection和Map架構
  • 會用常見的數據結構和算法
  • 瞭解Lambada和泛型

學習資源

學習任務

返回目錄

第六週(3.27 - 4.02)

學習目標

  • 理解流與IO
  • 理解InputStream/OutPutStream的繼承架構
  • 理解Reader/Writer繼承架構
  • 會使用裝飾類
  • 會使用多線程進行併發程序設計

    學習資源

  • 教材:學習指導在這,重點內容,考試內容都有
  • 視頻:下載地址 密碼:nws1

學習任務

返回目錄

第七週(4.03 - 4.09)

學習目標

  • 瞭解Lambda語法
  • 瞭解方法引用
  • 瞭解Fucntional與Stream API
  • 掌握Date與Calendar的應用
  • 會使用JDK8新的時間API

學習資源

學習任務

返回目錄

第八週(4.10 - 4.16)

學習目標

  • 瞭解NIO
  • 會使用Channel、Buffer與NIO2
  • 會使用日誌API、國際化
  • 會使用正則表達式
  • 瞭解JDK8加強功能

學習資源

返回目錄

第九周(4.17 - 4.23)

學習目標

  • 瞭解JDBC架構
  • 掌握JDBC架構
  • 掌握反射與ClassLoader
  • 瞭解自定義泛型和自定義枚舉
  • 會使用標準註解

學習資源

學習任務

返回目錄

第十週(4.24 - 4.30)

學習目標

  • 瞭解計算機網絡基礎
  • 掌握Java Socket編程
  • 理解混合密碼系統
  • 掌握Java 密碼技術相關API的使用

學習資源

學習任務

  • 完成學習資源中相關內容的學習

  • 參考上面的學習總結模板,把學習過程經過博客(隨筆)發表,博客標題「學號 2016-2017-2 《Java程序設計》第十週學習總結

返回目錄

第十一週(5.01 - 5.07)

學習任務

返回目錄

第十二週(5.08 - 5.14)

學習任務

  • 團隊項目
    • 在本週日(5.22) 24:00前發博客介紹項目進展、成員貢獻、與計劃相符狀況、改進措施等

返回目錄

第十三週(5.15 - 5.21)

學習目標

學習資源

學習任務

  • 參考實驗四 Andoid開發基礎 完成實驗並在本週日 24:00前發實驗報告博客
    • 基於Android Studio開發簡單的Android應用並部署測試;
    • 瞭解Android組件、佈局管理器的使用;
    • 掌握Android中事件處理機制。
    • AndroidStudio安裝
  • 團隊項目

返回目錄

第十四周(5.22 - 5.28)

學習目標

學習資源

學習任務

返回目錄

第十五週(5.29 - 6.04)

學習目標

學習資源

學習任務

課程總結要求

  • 課程總結:這個總結寫的好的會被選出來出成一本博客書,你們認真寫一下,被選中的會送你一本。
  • 文中的連接都要配上二維碼,可使用草料二維碼工具或博客園的功能,點擊本身每篇文章的最下面的微信圖標就有二維碼:

發表一篇博客

  • 學號 2017-2018-2《Java程序設計》課程總結

    • (按順序)每週做業連接彙總

    • 自認爲寫得最好一篇博客是?爲何?
    • 做業中閱讀量最高的一篇博客是?談談經驗
    • 做業中與師生交互最多的一篇博客是?談談收穫

    • (按順序)實驗報告連接彙總

    • 代碼託管連接:
      • 給出statistic.sh的運行結果,說明本學期的代碼量目標達到沒有?
      • 加點代碼,改點代碼是理解的最好方式,參考編程的智慧,談談你的心得
      • 積極主動敲代碼作到沒?教材實踐上有什麼經驗教訓?
    • 課堂項目實踐
    • 你有什麼項目被加分,談談你的經驗
      • 優秀做業(給出連接)
      • 總結(給出連接)
      • 項目(給出連接)
      • 教程(給出連接)
      • ...
    • 你有什麼項目被扣分,談談你的教訓
      • 不動手實踐
      • 遲交做業
      • 不驗收代碼
      • ...
    • 課程收穫與不足
      • 本身的收穫(投入,效率,效果等)
      • 本身須要改進的地方
      • 結對學習是否是真正貫徹了?寫一下你提供的幫助或接受了什麼幫助,並對老師提供參考建議
    • 給開學初的你和學弟學妹們的學習建議
      • 若是從新學習這門課,怎麼作才能夠學的更好
      • 下學期有什麼可行的計劃提高學習效果?
    • 問卷調查
      • 你平均每週投入到本課程有效學習時間有多少?
      • 每週的學習效率有提升嗎?你是怎麼衡量的?
      • 藍墨雲班課的使用對你的學習有促進嗎?有什麼建議和意見嗎?
      • 你以爲這門課老師應該繼續作哪一件事情?
      • 你以爲這門課老師應該中止作哪一件事情?
      • 你以爲這門課老師應該開始作什麼新的事情?
    • 其餘任意發揮
    • 給出你的總結中涉及到的連接的二維碼

返回目錄

第十六週(6.05 - 6.11)

學習目標

學習資源

學習任務

返回目錄

我的項目

四則運算

詞頻統計

  • 收集近二十年CET-4(or CET-6)的試題
  • 統計最經常使用的1000詞彙
  • 調用詞典API製做電子書

其餘

返回目錄

團隊項目

基本要求

  • 單元測試要很多於產品代碼的行數
  • git 提交在函數級別上
  • 對系統進行UML建模
  • 團隊合做要有代碼規範,風格要一致

    逆向Android項目

要求:

  • 至少兩人一個團隊(總分25*人數)

移動學習之網站(作的好有開發費用支持)

移動學習之Android App(作的好有開發費用支持)

博客園客戶端

返回目錄

課程學習資源

教材與參考資料

Java API

MOOC & 視頻

其餘

返回目錄


歡迎關注「rocedu」微信公衆號(手機上長按二維碼)

作中教,作中學,實踐中共同進步!

rocedu



若是你以爲本文對你有幫助,請點一下左下角的「好文要頂」和「收藏該文

相關文章
相關標籤/搜索