Successfully reported this slideshow.

CoffeeScript+enchant.jsでクロージャが気持よくかけた話

8

Share

Loading in …3
×
1 of 28
1 of 28

More Related Content

Related Books

Free with a 14 day trial from Scribd

See all

CoffeeScript+enchant.jsでクロージャが気持よくかけた話

  1. 1. それ、CoffeeScriptで 簡単に書けるよ(仮) @hidesuke
  2. 2. hidesuke (表) • ISPとかネトゲ屋さんで スマホ向けゲームを作っ ている人 • ここ2年間くらい仕事で 特殊なjsしか書いてない – Sencha Touch – ngGame – node.js – Unity
  3. 3. Osaki.js • 会社の有志で集まって楽しくプログラミ ングする会 • 別名:『enchant.js部』
  4. 4. hidesuke (裏) • シャチクミィという同人 サークルで社畜グッズを 作っている • http://please.shachiku.me/
  5. 5. CoffeeScript
  6. 6. CoffeeScript • JSにコンパイル(変換?)して使う • Better JavaScript – JavaScriptの悪いところの多くが解決してい る – JSのバッドノウハウとかいちいち覚えてられ ん • 簡潔な記述 • とても小さな言語なのですぐ覚えること ができる
  7. 7. 詳しくはググれ
  8. 8. で、
  9. 9. 今日は
  10. 10. クロージャ の話をします。
  11. 11. CoffeeScript + enchant.js で 気持ちよく クロージャが書けた話
  12. 12. クロージャ クロージャはある関数全体が他の関数(以下、エ ンクロージャ)の内部で宣言されたときに発生し、 内部の関数はエンクロージャのローカル変数(レ キシカル変数)を参照する。実行時に外部の関数 が実行された際、クロージャが形成される。ク ロージャは内部の関数のコードとエンクロージャ のスコープ内の必要なすべての変数への参照から なる。 -- Wikipediaより
  13. 13. なるほど、まったくわからん。
  14. 14. わかりやすい解説が!
  15. 15. で、
  16. 16. ある日、 enchant.jsと きゃっきゃうふふ してるときに 気付いた
  17. 17. シューティングゲームのN連射弾
  18. 18. かク けロ るー !ジ ャ で
  19. 19. クロージャで書いてみた ご自慢のクロージャ部分
  20. 20. 解説(クロージャ部分) 弾の種類を表すcallback関 N連発の指定 数 初期値はn = 5 弾が発射される間隔のフレーム数 初期値は10フレーム 条件を満たすと弾を発射する 前の弾をうってからの 関数を戻り値として返却する 経過フレーム数
  21. 21. 解説(呼び出し部分) this.curtainFire(さっきのクロージャが返却した 関数)が定義されていれば毎フレーム呼び出す さっきのクロージャにわたす Callback関数(弾を作ってSceneに追加する) 180フレームに一回、クロージャを呼び 出す 弾を打つ関数を作ってもらう
  22. 22. N連射弾がうてた!
  23. 23. JSで書いたらこうなった
  24. 24. まとめ • かるい気持ちでCoffeeScriptとか発言する と刺される • クロージャは全然怖くない • https://github.com/hidesuke/danmaku.enc hant.js
  25. 25. まとめ • かるい気持ちでCoffeeScriptとか発言する と刺される • クロージャは全然怖くない • https://github.com/hidesuke/danmaku.enc hant.js
  26. 26. 宿題 • 『slideshare hidesuke』 でググる • 『CoffeeScript』でググる • 『猿でもわかるクロージャ』でググる 私にもクロージャ が書ける!
  27. 27. 参考文献 • CoffeeScript – http://coffeescript.org/ • CoffeeScript入門 – プログラムdeタマゴ – http://d.hatena.ne.jp/nodamushi/20110108/1294518316 • [JavaScript] 猿でもわかるクロージャ超入門 まとめ - DQNEO 起業日記 – http://dqn.sakusakutto.jp/2009/01/javascript_5.html • スライド中の画像は以下を使わせていただきました – http://simapantu.blog130.fc2.com/blog-entry-140.html • Osaki.js (ステマ) – http://osakijs.blogspot.jp/

×