| 課程大綱 Syllabus |
學生學習目標 Learning Objectives |
單元學習活動 Learning Activities |
學習成效評量 Evaluation |
備註 Notes |
序 No. | 單元主題 Unit topic |
內容綱要 Content summary |
| 1 | Introduction to computers, the Internet and Java |
1, computer organization
2, Machine VS assembly VS high-level languages
3, Programming and Java
4, A typical Java development environment |
1, 能述敘計算機組織之六大單元
2, 區別各種不同階層的語言
3, 能說明Java語言的特性
4, 能操作Java開發環境之基本功能 |
|
|
|
| 2 | Introduction to Java Applications: I/O and OPs |
1, First program in Java
2, printf
3, Data types
4, E-Tutor testing environment |
1, 能完成具簡單輸入/出的程式
2, 能了解printf常用格式參數 |
|
|
|
| 3 | Introduction to Java Applications: I/O and OPs |
1, Memory concepts
2, Arithmetic
3, Equality and relational Ops
4, E-Tutor testing environment |
1, 能了解變數與記憶體配置
2, 會E-Tutor的基本操作 |
|
|
|
| 4 | Control statements 1 |
1, Algorithms
2, Pseudo code
3, Control structures
4, if ... else statement |
1, 能設計出簡單問題的演算法,並以虛擬碼表示
2, 能活用if ... else敘述於程式設計 |
|
|
|
| 5 | Control statements 2 |
1, while repetition
2, counter-controlled repetition vs sentinel-controlled repetition |
1, 能運用重覆結構於程式設計
2, 能區別計數器控制與哨兵控制迴圈之不同 |
|
|
|
| 6 | Control statements 3 |
1, nested control statements
2, compound assignment operators
3, increment and decrement operators
4, primitive types |
1, 能設計出巢狀的控制結構
2, 能區別遞增、遞減運算子出現位置不同之不同
3, 熟記8種基本型態 |
|
|
|
| 7 | Program Debugging |
1, what are bugs
2, single step execution
3, assert |
1, 能辨別編譯期與執行期錯誤
2, 能活用單步追蹤
3, 適時使用斷言 |
|
|
|
| 8 | Control statements 4 |
1, designing counter-controlled repetition
2, for repetition statement
3, examples using the for statement |
1, 能設計出計數器控制的迴圈
2, 能活用for迴圈 |
|
|
|
| 9 | Mid. Exam. |
Mid. Exam. |
1, 驗證半學期的學期成果 |
|
|
|
| 10 | Control statements 5 |
1, designing sentinel-controlled repetition
2, do ... while repetition statement
3, more examples of repetition statements |
1, 能設計出哨兵控制的迴圈
2, 能活用do ... while迴圈
3, 能適當使用三種迴圈結構 |
|
|
|
| 11 | Control statements 6 |
1, switch multiple-selection statement
2, break and continue statements
3, logical operators
4, structured programming summary |
1, 能活用switch ... case
2, 能活用break & continue於迴圈中
3, 能區別 &, &&; |, || 之不同 |
|
|
|
| 12 | Methods 1 |
1, program modules in Java
2, static method, static variables and class Math
3, declaring methods |
1, 能將模組化的概念實踐於程設
2, 會運用Java提供的數學函式
3, 能自行宣告方法於程設 |
|
|
|
| 13 | Methods 2 |
1, method-call stack
2, argument promotion and casting
3, Java API packages
4, scope of declarations
5, method overloading |
1, 能將模組化的概念實踐於程設
2, 會運用Java提供的數學函式
3, 能自行宣告方法於程設 |
|
|
|
| 14 | Arrays 1 |
1, introduction
2, primitive types vs reference types
3, Arrays
4, declaring and creating arrays
5, examples using arrays |
1, 能辨別基本與參考型態
2, 能解釋為什麼需要陣列
3, 能宣告並配置陣列 |
|
|
|
| 15 | Arrays 2 |
1, examples using arrays
2, processing the array index out of bounds exception and the negative array size exception
3, passing arrays to methods |
1, 能運用陣列當作程設時之資料結構
2, 能處置使用陣列時所發生之常見例外
3, 能分辨基本與參考型態於引數傳遞時之差異 |
|
|
|
| 16 | Arrays 3 |
1, multidimensional arrays
2, variable-length argument lists
3, using command-line arguments
4, class Arrays
5, introduction to class ArrayList |
1, 能宣告、配置、運用多維陣列當作程設時之資料結構
2, 能活運Java提供的Arrays
3, 能活運Java提供的ArrayList當需要可變動大小的陣列 |
|
|
|
| 17 | Integration practices |
1, Integration practices of this semaster |
1, 能將本學期所學整合運用於程設時 |
|
|
|
| 18 | Final Exam. |
Final Exam. |
1, 驗證整學期的學期成果 |
|
|
|
|