Ruby + JS to Roptotype

2,163 views
2,097 views

Published on

KPF勉強会 vol.1でのrosylillyの発表

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,163
On SlideShare
0
From Embeds
0
Number of Embeds
121
Actions
Shares
0
Downloads
2
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Ruby + JS to Roptotype

  1. 1. Ruby で遊ぶ !! - エセ Rubyist のお遊戯 - <ul><ul><li>Sho KUSANO / rosylilly </li></ul></ul>
  2. 2. Agenda <ul><li>Profile </li></ul><ul><li>Ruby について </li></ul><ul><li>言い訳 </li></ul><ul><li>Javascript が羨ましい </li></ul><ul><li>Ruby は出来る子 </li></ul><ul><li>まさかできると思わなかった </li></ul><ul><li>最後に </li></ul>
  3. 3. Profile <ul><li>rosylilly / 草野 翔 </li></ul><ul><li>脳にゆとりある 16 才 </li></ul><ul><li>HSP->C->C++->Ruby(← イマココ ) </li></ul><ul><li>XHTML+CSS が Love い </li></ul><ul><li>数学の知識がないので正直辛い </li></ul><ul><li>平日朝 6 時から 12 時くらいに下通りのサンマルクカフェに来ると会えます </li></ul>
  4. 4. Ruby について <ul><li>HSP から C へ </li></ul><ul><ul><ul><li>超挫折 </li></ul></ul></ul><ul><li>C から C++ へ </li></ul><ul><ul><ul><li>プログラミングとか爆発しろ </li></ul></ul></ul><ul><li>Ruby </li></ul><ul><ul><ul><li>each の書き方が気持ち悪いという理由でおそらく 1 年は放置した </li></ul></ul></ul><ul><ul><ul><li>ねみんぐ!をきっかけに書き始める </li></ul></ul></ul>
  5. 5. 言い訳 <ul><ul><li>当初 </li></ul></ul><ul><ul><li>「 Ruby でできる Twitter スクレイピング」 </li></ul></ul><ul><ul><li>をやる予定でした。が。 </li></ul></ul><ul><ul><li>2-02 あたりに突如 HTML が書き変わる。 </li></ul></ul><ul><ul><li>今まで書いておいたコードが動かない。 </li></ul></ul><ul><ul><li>もう Twitter 爆発すればいいのに…… </li></ul></ul><ul><ul><li>と思いながら 2-04 05:30 に </li></ul></ul><ul><ul><li>このスライドを作りました。 </li></ul></ul>
  6. 6. Javascript が羨ましい <ul><li>無名関数を変数に代入すると関数になる </li></ul><ul><li>オブジェクトにメソッドをぼこぼこ追加できる </li></ul><ul><ul><ul><li>勝手に拡張できる </li></ul></ul></ul><ul><ul><ul><li>Ruby みたいにわざわざ def...end とか要らない </li></ul></ul></ul><ul><li>Ruby だってそのくらいできるっつーの </li></ul><ul><ul><ul><li>def...end だけじゃない proc{} の真髄を思い知るべき </li></ul></ul></ul><ul><ul><ul><li>でも Ruby で proc{} ってあんまし使わない ( そうでもない? ) </li></ul></ul></ul><ul><ul><ul><li>使い勝手が悪い </li></ul></ul></ul><ul><li>もっと簡単に追加して、使えればいい! JS みたく! </li></ul>
  7. 7. Ruby は出来る子 <ul><li>まず、 class_eval というメソッドがある </li></ul><ul><li>また、 define_method というメソッドを定義できるメソッドもある </li></ul><ul><li>class_eval 内で define_method をすることでメソッドの追加が可能 </li></ul><ul><li>define_method にブロックを渡さないといけない?そうでもなかったぜ! </li></ul><ul><li>どうせだから Hash 的 に扱えるようにしようぜ </li></ul>
  8. 8. <ul><li>参考にした URL は以下 </li></ul><ul><ul><ul><li>http://d.hatena.ne.jp/javascripter/20081121/1227216175 </li></ul></ul></ul><ul><ul><ul><li>http://d.hatena.ne.jp/keyesberry/20081022/p1 </li></ul></ul></ul><ul><ul><ul><li>http://www.google.com/ </li></ul></ul></ul><ul><ul><ul><ul><ul><li>だいすきぐーぐるせんせい </li></ul></ul></ul></ul></ul><ul><li>意外にちょろいかと思いきや継承・マージで問題発生 </li></ul><ul><li>俺が悪かったゆるしてくれ Ruby 子!俺が JS に浮気なんてしたから! </li></ul>
  9. 9. ここからはコード http://gist.github.com/57747
  10. 10. まさかできるとは思わなかった <ul><li>正直時間つぶし程度にやるつもりだった </li></ul><ul><li>思いのほか成功、しかも Ruby 的なキモイこともできた </li></ul><ul><li>問題点はいくつかのこってる </li></ul><ul><ul><ul><li>yield でのブロック引き渡しができない </li></ul></ul></ul><ul><ul><ul><li>省略引数が使えない </li></ul></ul></ul>
  11. 11. 最後に <ul><li>Ruby は楽しい! </li></ul><ul><li>メソッドチェーンができる! </li></ul><ul><li>RoR ばっかり取り上げられるけど、 Ruby の本質は RoR ではなく自由度 </li></ul><ul><li>洗脳言語とか言われてるだけあって、書き方で悩むことは少ない </li></ul><ul><li>でもそれは、可能性がないことではない </li></ul><ul><li>Love Ruby! </li></ul>
  12. 12. 聞き苦しい話にお付き合いいただきありがとうございました。 名刺は刷る時間がなかったので手書きで良いですか ( ´ ・ ω ・ ` ) Enjoy Proguramming!

×