2006年11月8日星期三

IHLS

完全隔離地獄式休閒工作進度(Isolated Hellish-Leisurable Schedule)仍然持續著。

因為我一直都在改前任AS魔人Doris的程式,現在要改阿頭Adrain的程式時,才發現我原來比較喜歡Doris的coding方法…因為,她寫的比較整齊。

以人體為例子,我以前是以功能來寫程式的:一個「吃」的程式,然後分成不同的function,包括「用手把食物送到口中」、「口咀嚼食物」、「食喉下嚥食物」等等,比較程序化。

Adrain的程式就是物件導向,同樣是吃的程式會拆成好像人體器官一樣,各司其職,上面的例子就會變成:

進食(x) {
 導入 上肢, 口, 喉嚨;
 x=食物 {
  上肢(移動; 食物; 口);
  口(上下移動);
  喉嚨(下嚥, 食物)
 }
}


括號內的變數全部都是根據使用者的指令而變化,例如如果x是垃圾,那可能會變成:
 x=垃圾 {
  上肢(移動; 食物; 口);
  口(吐出);
 }


而Doris的就更加神奇,她不是拆成上肢、口、喉嚨,而是拆成肌肉、神經、骨骼和腦... ="=

動作(動作a, y) {
 a=進食 {
  腦.分析動作(進食, y);
 }
 a=拿起 {
  肌肉.手臀的肌肉.伸張();
  肌肉.手指的肌肉.收縮();
 }
}

腦() {
 導入骨骼, 肌肉, 神經;
 分析動作(x, y) {
  x=進食 {
   神經.傳送訊息(拿起, y);
  }
 }
}

神經 {
 傳送訊息(指令, y) {
  指令=拿起 {
   動作.(拿起, y);
  }
 }
}


...這應該就是把食物拿起為止的程序... ="=
看慣了就會覺得很合邏輯和很整齊,但叫我寫實在...="=

2 則留言:

  1. 果然是魔人...完全看不懂@@

    回覆刪除
  2. 看得懂我就不用待在那了^^"

    回覆刪除