登入

課程

學年/學期 Academic Year/Semester 105 學年 第 2 學期
課程名稱 Course Name
207047-001
(中 Ch.)計算機程式設計
(英 Eng.)Computer Programming
授課教師 Instructor 詹進發
修別 Type of Credit 必修 學分數No. of Credits 3.0
備註 Note
N/A
課程簡介 Course Description
本課程介紹程式設計之基本概念,透過Python程式語言讓學生了解如何運用程式設計的技術解決實務的問題。
課程目標與學習成效 Course Objectives & Learning Outcomes
完成本課程所有教材內容後,學生能夠達成以下學習成效:
1.    能了解Python之語法結構,撰寫完整的程式,有除錯的能力。
2.    具備邏輯思考能力,可以分析問題的解決方法,透過程式以解決問題。
3.    能運用演算法與資料結構之技術設計有效率的程式。
4.    具備搜尋網路上軟體資源的能力。
5.    養成自主與終身學習的態度。
6.    具有閱讀英文教材的能力。
每週課程進度與作業要求【請詳述每週課程內容/授課方式與學生預習內容/學習活動/課後作業】
1.以下為本學期課程之預定進度,將視實際情況調整課程內容與進度。
2.本課程正課於課堂講授三小時,另安排每週一個小時(預定在每週星期四中午12:10-13:10),由助教講解軟體操作,以及作業、考試的問題,以期能達到最佳的學習效果。
3.TA課將針對同學有疑問處及作業、考試進行講解及討論,並讓同學們互相觀摩彼此的程式,且加入一些有趣的範例程式,增加同學撰寫程式的興趣。
4.本課程除教師在課堂上講解之外,亦將使用大量網路上的輔助教材,例如:MOOCS (磨課師)、Coursera、Udacity、YouTube等,以培養同學自主學習網路上的教材之能力。



週次    課程內容與指定閱讀    教學活動與課前、課後作業    學生學習投入時間
(含課堂教學時數)
1    Introduction and overview    課程與軟體介紹、網頁撰寫    3+4
2    Variables, expressions and statements, software installation    Python基本語法結構、軟體安裝、作業練習    3+5
3    Functions    Function設計、作業練習    3+6
4    Case Study    Interface設計、作業練習    3+6
5    Conditionals and recursion    Conditionals and recursion用法、作業練習    3+6
6    Fruitful functions    Fruitful Function設計、作業練習    3+6
7    Iteration    Iteration設計、作業練習    3+6
8    First Midterm Exam    第一次期中考、作業練習    3+6
9    Strings, word play    Strings用法、作業練習    3+6
10    Lists    Lists用法、作業練習    3+6
11    Dictionaries    Dictionaries用法、作業練習    3+6
12    Tuples    Tuples用法、作業練習    3+6
13    Second Midterm Exam    第二次期中考、作業練習    3+6
14    Case study: data structure selection    Case study、作業練習    3+6
15    Files    Files用法、作業練習    3+6
16    Classes and Objects    Classes用法、作業練習    3+6
17    Case study: GUI    GUI設計、作業練習    3+6
18    Final Exam    期末考    3
評量工具與策略、評分標準 Evaluation Criteria
1. 兩次期中考各占:20%;期末考:30%;平時成績:30%(含作業、4-8次不定期小考、上課出席及參與等)。
2. TA課將針對同學有疑問處及作業進行講解及討論,並讓同學們互相觀摩彼此的程式,且加入一些有趣的範例程式,增加同學撰寫程式的興趣。TA課除了講解作業、測驗和帶領同學上機練習之外,在考試前有模擬測驗題,可以讓同學們瞭解考試的準備方向,增進學習的成效。參加TA課亦屬於課程參與的一部分,為學期末綜合考量是否加分的考慮因子之一。
3. 測驗的方式分兩種:(1)筆試:測驗方式為簡答題與撰寫程式碼,測驗內容為課堂上講解之程式設計的重要觀念,以及範例程式與作業練習的相關主題。(2)上機測驗:與上課講解及作業練習相關的主題之程式設計。
4. 測驗的重點:(1)Python程式設計的基本語法;(2)程式設計的邏輯觀念;(3)對於問題的分析能力;(4)解題的演算法;(5)自主學習的能力;(6)對於課程內容的瞭解程度。
5. 測驗藍圖:程式設計的學習必須循序漸進,按照每週的進度學習,充分了解教材內容便能將基礎打好,測驗的方式綜合幾個面向:(1)記憶(10%):Python專有術語及程式的語法;(2)理解(30%):對於課程內容與程式範例的理解;(3)獨立思考(50%):綜合Python語言學習與問題分析的能力、演算法設計、程式設計技巧等之學習成效;(4)應用(10%):舉一反三的能力,能將課程中所學到的技術應用於解決實務問題。
授課教師 Office Hours、地點 Office Location
星期二:8:00-9:00,綜合院館271647
星期三:08:10-09:10,綜合院館270610
教學助理基本資料 Teaching assistant tasks
地政系研究所周子凱(信箱:105257029@nccu.edu.tw),負責講解作業與批改試卷,以及解答選課同學的問題。
指定/參考書目 Textbook & references
(為維護智慧財產權,請務必使用正版書籍)
Downey, A., 2015. Think Python 2e: How to Think Like a Computer Scientist, Green Tea Press. http://greenteapress.com/wp/think-python-2e/
https://www.tenlong.com.tw/items/1491939362?item_id=1009843
課程相關連結 Course related links
moodle.nccu.edu.tw
本課程附件 Course attachments
課程大綱-程式設計105B-20170114.pdf
課程進行中,是否禁止使用智慧型手機、平板等隨身設備。

需經教師同意始得使用



 
學生自評核心能力填答率: 65.96% (31/47)
能力項目說明:
A.具備地政相關專業知能 B.具備地政相關實務應用與創新之能力
C.具備領導與團隊合作並進之精神與國際觀