Java Programming
Time: 0930 ~ 1230, Monday to Friday
Location: Room 108, 德田館
``Java is C++ without the guns, knives, and clubs.''
-- James Gosling, co-inventor of Java (1955-)
Course Description
To the students,
This course is designed for the students who want to learn Java programming without any experiences before. We will start with the very beginning of program design and the fundamental concepts of how the programs execute the instructions. You are expected to be capable to implement your idea with Java independently after 30 hours of lectures. Furthermore, I wish you could learn other programming languages without suffering from starting over.
Enjoy your coding time.
- Textbook
- References
- Java
- Introduction to Java Programming: Comprehensive Version, Y. Daniel Liang, 10/e, 2014
- Beginning Java 8 Fundamentals, Kishori Sharan, 2014
- Java: The Complete Reference, Herbert Schild, 9/e, 2014
- Effective Java, Joshua Bloch, 2/e, 2008
- Java Performance: The Definitive Guide, Scott Oaks, 2014
- Data structures and algorithms
- Object-oriented design
- Eclipse
- Additional readings
- 為什麼要學各種程式語言, NiwaSho Lin, 2012.11.21
- 資深開發者給後輩的七個 Coding 學習心得, TechOrange, 2013.11.29
- 大企業都在用哪些程式語言?圖解程式語言編年史, T客邦, 2013.12.16
- 如何成為一個偉大的開發者?, TechOrange, 2014.6.20
- 前蘋果高層史丹佛畢典演講:想換工作,別在辦公室等著別人幫你下決定, TechOrange, 2014.7.7
- 沒神奇公式和捷徑,這11步驟就是成為頂尖Coder的必備條件, TechOrange, 2014.7.9
- 高生產力工程師的兩個特徵:聰明、懶惰, INSIDE, 2014.7.14
- 笑傲「演算法」江湖的獨孤九劍, INSIDE, 2014.8.14
- Google工程師親授:菜鳥開發者一定要投資的十大標的, TechOrange, 2014.9.17
- 在美國,寫什麼程式收入最高?答案是:Java, T客邦, 2014.10.9
- 我們之前說錯了嗎?Coding 竟不是新世代必備能力, TechOrange, 2015.2.6
The major topics covered in the short course, time permitting, are listed below for your reference.
- Overview of Java: installation, Java Virtual Machine
- Data types, variables, arrays
- Operators
- Control statements: selections, loops
- Classes and objects
- Object-oriented programming (OOP) paradigm: encapsulation, inheritance, and polymorphism
- Interfaces and generic
- Exception handling
- File I/O
- GUI programming using Swing
- Multi-threaded programming
Lecture Notes
[
247,
250
]
Sample Codes
As a beginner, avoid to copy but write the code on your own.
Grading Policy
- Programming Assignments (40 points)
- Final Exam (60 points)
You will get the certificate for this course if you acquire more than 60 points in total.