2006/06/08

期末教學意見調查

各位應該知道有時候「文章標題」帶有連結吧 :)。

星期三是補強課程,從 thread 生成動作複習這個老師所謂的 "OO concepts"。OOP 老師這節課剛好列出這個學期的「重點」,以下是上課時老師列的原始內容,註解是我加上的:

concept of OO // 雖說是 concept of "OO",實際上只講了最粗淺的 (Java) OOP。
class vs. instance
variable vs. methods
static vs. instance
instance creation + constructor

method (constructor) overloading

encapsulation // 有講等於沒講。Access modifier 幾分鐘帶過後,再也不曾強調相關概念。

inheritance // 著重於「superclass 的成員會被複製到 subclass」、hiding & overriding rules、以及 object layout。

reference variable vs. object
polymorphism // 僅強調「subclass reference 可被指派給 superclass reference」。
hiding vs. overriding
type value // 即 JavaPL4e 的 "reference type" (static type) & "actual type" (dynamic type),這個老師用詞奇特。
else instance methods

virtual method invocation

這份綱要精確反映這個老師一學期的主要內容 ─ 相當低階。

至於 IS:Bruce Eckel 的 blog 有一篇《UML vs OO Design》對這段引言抒發感想:

Getting a book or taking a course that focuses on UML, becoming certified in UML 2.0 notation, or knowing how to use a UML CASE tool has nothing to do with being able to think or analyze in objects or creating well-designed, object-oriented systems.

這正好針對這個 IS 老師的缺失。Bruce Eckel 後面再來一段:

The pitfall is that people have often come to believe that knowing UML would solve the problem of creating a good program. That's like saying that knowing some words and some grammar rules will solve the problem of writing good prose. It's necessary, but not sufficient.

OOP 老師的「寫出的程式滿足編譯器就是 OO 程式」也有這種味道。不談 OO 的思維精神、運用法門,僅介紹繁雜的符號,本末倒置,(對初學者)一點幫助也沒有。IS 是我進大學以來上過最糟的一門課。

今天開始為期一週的期末教學意見調查,於網路上填答。這個週末會花點時間,好好地寫些意見。問卷有選擇題(滿意程度之類)以及意見欄,填這種負面意見即使強加修潤,仍然傷感情,可是又不能不填 :(,因為實在不想讓他們兩位明年再以相同水準上場。(請注意:我已經把條件放寬了:若他們兩位半年後有辦法達到「至少」讓我認同的水準(which is quite impossible :P),那麼儘管教下去無妨。但不要沒那個能力佔那個位置。)