【112-2微學分課程】物件導向程式設計-1 Object-Oriented Programming-1

選課日期:113/02/21截止

課程名稱

物件導向程式設計-1

授課教師

電機系電控所 王學誠 副教授

課程概述與目標

  • 學習使用高階程式語言Python 熟悉從C++到Python的使用。 Python為人工智慧、資料科學領域重要程式語言,有助於銜接未來課程或研究。
  • 物件導向程式設計基礎
  • 熟悉工作站系統(Linux/Ubuntu)基本操作
  • 使用Vim編輯器、GitHub Copilot。
  • 了解Unit Test & PyTest、Debugger (PDB)
  • 熟悉使用Jupyter Notebook


課程日期

2/19、 2/26、 3/4、 3/11、 3/18、 3/25(一) 56abc

課程總時數

授課18小時、實驗18小時

上課地點

EE635

修課人數上限

15人

先修科目或先備能力

 UEE1302 (Introduction to Computer Science and Programming (in C/C++) or equivalent course_之相關知識或能力

學生自備物品

筆電

作業、考試、評量

In-Class Lab/Tutorials (85%),
Class Participations (GitHub Commits 10%, Others: 5%)

課程大綱

單元主題 內容綱要講授示範習作其他
Python程式語言Python Decomposition, Abstractions, Functions
Tuples, Lists, Aliasing, Mutability, Cloning
Recursion, Dictionaries
Testing, Debugging, Exceptions, Assertions
12hr
物件導向Object Oriented Programming
Python Classes and Inheritance, C++ vs. Python
6hr
程式設計工具Command-line Environment (Ubuntu), Version Control (GitHub)
Vim, Parallel Coding, Debugger (PDB)
Build System (CMake)
12hr
軟硬整合實作Microcontroller Arduino Python6hr

課程進度表

日期課程進度
02/19Lecture: Introduction
Decomposition, Abstractions, Functions
Lab 01: Ubuntu Machine Preparations
02/26Lecture: Tuples, Lists, Aliasing, Mutability, Cloning
Lab 02: Command-line Environment (Ubuntu), Version Control (GitHub)
03/04Lecture: Recursion, Dictionaries
Lab 03: Vim, Parallel Coding, Debugger (PDB)
03/11Lecture: Testing, Debugging, Exceptions, Assertions
Lab 04: Microcontroller Arduino Python
03/18Lecture: Object Oriented Programming
Lab 05: Microcontroller Arduino Python II
03/25Lecture: Python Classes and Inheritance, C++ vs. Python
Lab 06: Build System (CMake)

課程教材

Introduction to Computation and Programming Using Python, third edition: With Application to Computational Modeling and Understanding Data by John Guttag

微學分課程Q&A

📌 我想修微學分課程,該如何報名/進行選課?

每門課程將於開課前三週至前一週間開放選課,請同學於選課截止日前至ICT選課系統進行報名。

📌 我是校外學生,請問可以選課嗎?

校外學生請點擊ICT選課系統頁面右上角【非本校學生申請賬號】,完成註冊後可以進入系統選課。若該課程不開放給校外學生選課,則無法進行報名。

📌 如何得知是否選上了該課程?

請於選課截止的隔日至選課系統查詢選課結果。若中選成功,請於3日內至E3平台查詢是否有無出現該門課程名稱。

📌 我已經選了課程,該如何退選?

若是選課報名還沒有截止,可直接在ICT選課系統上點擊【取消報名】。若是報名已經截止,請寄信給助理corlyn@nycu.edu.tw 告知退選意願。若是已經開始上課的課程,請寫信給授課教師,經老師同意後,截圖/轉寄信件內容給助理。

📌 若沒有退選/無故缺席課程會如何?

未依規定辦理課程退選或無故未到課,將取消該同學兩月內之ICT選課權益,即2個月內無法報名選課系統上的任何課程。

📌 我是碩士/博士生,可以報名選修微學分課程嗎?

可以。惟請留意該學分是否認計為畢業學分,將由您的系所決定。為避免學分爭議,請於抵免前詢問系所該門課的學分是否可以認計。

📌 修微學分課程需要繳學分費嗎?

不需要。

📌 課程會有成績嗎?

微學分的修課方式比照一般課程,必須通過課堂之作業、測驗、討論、實驗或成果發表等教學活動規定,經授課教師認證,該修課結果通過或不通過。

📌 微學分完修證明該如何申請?

請至該門課程的E3公告區查詢申請表單連結,並詳細閱讀相關規定。

📌 修課結果會直接出現在成績單上嗎?

不會!請同學必須於畢業當學期統一提出抵免申請。請至ICT選課系統上【匯出學分登錄表】,經系所認計及各單位簽核完成後,才會出現在成績單上。

📌 申請完修證明就表示匯出學分了嗎?

不是!兩者是分開的,完修證明是授課教師給了成績,創創這邊確認同學【通過】課程後,就會在兩周內寄出。而學分登錄表,則是需要同學自己到系統上下載的唷。

Edit