2014年10月8日 星期三

20141008 今日學習

昨天去代班機率,這班畢竟只有兩節課的時間可以相處,並不太熟,中間有下去稍微了解一下部分同學的學習狀況,大都是說學期才剛開始三個禮拜,還沒開始念書,帶了三個我自己想的比較需要思考的例題:全機率定理、貝氏定理、圖解繁複機率。在過去的紀錄曾提到,用血條的方式來訓練同學每一步的邏輯
在與同學聊的過程中我覺得,除了做好遊戲之外,有必要再為每個觀念設計基本題目來引導同學做練習,就像打電動遊戲都會有個新手村,來訓練同學,畢竟以前沒有過這樣的方式,還是需要引導才對。

2014/10/7代班,經由題目訓練引導思考的投影片

條件機率:



圖解繁複機率




一開始並沒有想到這點,想說就只要教同學如何設計題目,接著讓他們互相出題考對方就好了,後來回想葉丙成老師的BJOnline與PaGamO,在台大實施遊戲教學時,BJOnline是只有讓同學互相設計題目互相出,而PaGamO則是用了台大同學出過的題目與一位研究生不斷生題目出來給全球的華人修課學生做。

現在我當然是無法採用PaGamO的模式,沒時間拼命生題目出來給同學玩,畢竟每天都還是要研究code構思遊戲,先前準備周二教材浪費了不少時間,現在該補回來,但是如果只做到要求自己每天花半小時複習機率,一個禮拜出個一題兩題題目,那麼還是有機會達成的,基本上我是不打算要求兩個碩一學弟去做出題目這種事,如果他們有興趣再讓他們練習出題目吧,畢竟每天寫張元翔的作業應該就花不少時間了。

程式碼解析


學習threex.animation.js,頓時有種好久不見的感覺 XD 。看了一下紀錄,回想起過去在為this._keyframes這種寫法苦惱


看了這幾篇後才想起以前曾看過
在閱讀threex.animation.js裡面的code時發現一件有趣的事

THREEx.Animation.prototype.pushKeyframe = function(duration, position){
this._keyframes.push({  
duration : duration,
position : position
});
return this; // for chained API
};

為什麼push()裡面是傳{ duration: duration,   position: position }
回頭去看W3School
回頭看在Array裡面element的定義
  • JavaScript Arrays
  • You Can Have Different Objects in One Array
  • JavaScript variables can be objects. Arrays are special kinds of objects.
  • Because of this, you can have variables of different types in the same Array.
  • You can have objects in an Array. You can have functions in an Array. You can have arrays in an Array.

有趣了,再來讓我們看看Javascript裡大括號"curly braces或curly bracket{"的意義吧
小括號讀做"parenthesis,( )",中括號讀做"square brackets [ ]",大括號讀做"braces { }"

這篇的解釋恰好是我要的
閱讀threex.animation.js發現一個有趣的名詞 chained API


threex.animation.js這裡定義的method幾乎都用在threex.minecraftcharheadanim.jsthreex.minecraftcharbodyanim.js裡面,來進行method chaining

稍微思考一下,我並不需要去另外寫一個像threex.animation.js的底層code,只需要寫像是threex.minecraftcharheadanim.jsthreex.minecraftcharbodyanim.js的.js檔,在這.js檔裡寫我要的code來實作出連續技的動作即可


沒有留言:

張貼留言