【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選課系統進行報名。

📌 若是學期課加開的微學分課程,我可以修學期課又修微學分嗎?

完全不可。學生不得同一學期選修學期課及微學分,僅能二擇一。微學分若成功認計僅可計於【自由學分】,而非【必修學分】。

補充說明:學期課是學校課務系統上選的3學分課程,微學分則是在ICT系統上報名的課程,兩者的永久課號不同。有的學期課微學分將會分成-1,-2,-3或A,B,C三階段來進行,每完成一階段,需再報名下一階段選課。若是課程內容設計具連貫性,則未修-1或A者,不得選修-2,-3或B,C課程。

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

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

📌 若已經畢業/在職中,可以選課嗎?

校內/校外的【非學生】身份者,請在選課前寄信詢問授課教師是否可以參與課程,獲教師同意後再進行選課報名,修課名額將以【校內在學學生】為優先。

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

請於選課截止的隔日至選課系統查詢選課結果。

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

① 若選課報名未截止,可直接在ICT選課系統上點擊【取消報名】。
② 若報名已截止至開課日前,請寄信給助理corlyn@nycu.edu.tw 告知退選意願並說明原因。
③ 若開課當日/課程已進行中,請寫信給授課教師,經老師同意後,截圖/轉寄信件內容給助理。

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

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

📌 若無法出席課程,該如何請假呢?

若學生因故無法出席課程,請於上課前兩日寫信給授課教師說明請假原因(請附上姓名、學號及請假事由)。

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

可以。惟請留意該學分是否認計為畢業學分,將由您的系所決定。為避免學分爭議,請於抵免前詢問系所該門課的學分是否可以認計。研究生修習之微學分不得採計於畢業學分。

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

無需。

📌 課程會有成績嗎?

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

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

請至微學分課程頁面查詢完修證明申請表,並於結課日前提交申請,詳細規定請參閱表單內容。

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

否,兩者是分開的,授課教師提供成績後,由創創工坊核檢學生修課結果,確認同學【通過】課程後,會在2-4週內以電子檔寄出。而學分登錄表,則需到選課系統下載。

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

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

Edit