每一支程式,都有它的任務及使命!
有程式負責餵鴿子;
有程式負責控制日出、日落;
有程式負責控制流水、行雲。
太陽、流水、行雲都是 Entity object;太陽、流水、行雲,有它各自的 method(能力),它可以日昇、日落;流水可以開一個 API,讓雲雨及太陽 call,傳入雲雨及太陽的狀況,讓流水可以依傳入的參數控制水流的速度。雲雨亦如此,和上昇的水氣、溫度等等互相影響,形成一個大自然的體系。
這些集合起來,可以包成一個大自然的 Package。
母體內的『人』都是一支叫做『人』class,它有一組相同的 Attribute(特徵),也有相同的基本 method(能力)。
但某些人卻有不同的 method,因為具有不同的能力,所以,在設計上,會有一個父類別,它具有『人』基本的 Attribute 及 method;有些特殊的人,再繼承父類別,成為子類別,並給它不同的 method,它的能力,就會多於一般人。
如,那位尼歐先生,他就有特殊能力,所以,他的 method 應該會比別多或特殊!
結論:
1. 依 Architector 的說法,Oracle (祭師),是一支 exception,
所謂的 exception,就是不在預期範圍內的邏輯,都會跑到
exception 那一段程式去,所以,為了避免程式太多
exception,程式邏輯要寫清楚,KiKi 媽咪建議,用 case 的寫
法,不要用太多 if - else;且預期範圍要大一點,表示 use
case 中的 Alternative 要多考慮一點情境。
2.發生 exception 的處理,必須要寫完整,不要只丟一堆 system
log,Oracle (祭師)說的話,就是一堆 system log,所以
Oracle (祭師)總是和尼歐說:「看你的選擇!」但都不說清
楚,因為不同的 case(Alternative),丟出來的 system log 不
同,所以尼歐必須去看 懂 system log 才能解出 bug 在那裡,
可見尼歐也是 debug 高手。對了,發生 exception 一定要
disconnection 很多 relationship,不然,每次有 exception,
Oracle (祭師)就和尼歐見面。
3.至於那至病毒,我想應是程式設計師不小心用了 public 變
數,跑到『碰到別人』這支 method,就把自己的 attribute 及
method 全給 replace 掉了,所以說,不能為了省工,亂用
public 變數。但是這個程式設計師也有一個很好的習慣,程式
目的達到了,會將此 object destroy(自我刪除),才不會佔
太多 memory。
4.這是一部很好的物件導向教學影片。
留言列表