Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
Rubyを始めたときに つまずいてしまった 5つのこと
Slide 2
Slide 2 text
自己紹介 @tdakak PHP をメインに Web システム開発を数年。 Ruby もちょっと。 現在は自宅で手乗り文鳥といっしょに PHP のソースコードを読んだりしています。
Slide 3
Slide 3 text
自己紹介 絶賛無職中。
Slide 4
Slide 4 text
今日話したいこと
Slide 5
Slide 5 text
話したいこと プログラミングのセンスがいまいちで、 学生時代に C と COBOL、 実務ではほぼ PHP しか書いてなくて、 OOP をきちんと理解しきれていない人が Ruby を始めたときにつまづいたところ。
Slide 6
Slide 6 text
つまづいてしまったところ
Slide 7
Slide 7 text
1. Object
Slide 8
Slide 8 text
1. Object Ruby の変数は すべてオブジェクト
Slide 9
Slide 9 text
1. Object 文字列の長さを取得したいとき たとえば PHP ではこう書く。 echo strlen('foo'); #=> 3
Slide 10
Slide 10 text
1. Object 文字列の長さを取得したいとき Ruby ならこう書く。 p 'foo'.length #=> 3
Slide 11
Slide 11 text
1. Object ?
Slide 12
Slide 12 text
1. Object PHP で文字列長を調べるときは Strlen 関数に値を渡してその戻り値を得る。
Slide 13
Slide 13 text
1. Object Ruby では変数はすべてオブジェクト。 文字列だろうと数値だろうと とにかくオブジェクト。 文字列なら文字列としての ふるまいを持ち合わせて いることが期待できる
Slide 14
Slide 14 text
1. Object PHP でも OOP の概念はあるが 変数=オブジェクトではないので ちょっと戸惑った…
Slide 15
Slide 15 text
2. Symbol
Slide 16
Slide 16 text
2. Symbol Hash['hoge'] Hash[:hoge]
Slide 17
Slide 17 text
2. Symbol ??
Slide 18
Slide 18 text
3. yield
Slide 19
Slide 19 text
3. yield ???
Slide 20
Slide 20 text
3. yield PHP でも次のバージョン(5.5)から Ruby の yield と似たような機能を持つ ジェネレータが実装されるが、 今のところまだ馴染みのない機能なので ちょっと戸惑う。かも。
Slide 21
Slide 21 text
4. Black magic
Slide 22
Slide 22 text
4. Black magic
Slide 23
Slide 23 text
一家に 一冊
Slide 24
Slide 24 text
5. Simple!!
Slide 25
Slide 25 text
5. Simple!! $ とか ; とか {} とか ないから落ち着かない…
Slide 26
Slide 26 text
5. Simple!! みんなワンライナーだし イディオムわからない…
Slide 27
Slide 27 text
5. Simple!! あーこれ PHP なら あの関数呼べば済むのに…
Slide 28
Slide 28 text
5. Simple!! でも Ruby 書き続けた後に PHP 書くと Ruby ならもっとシンプルに 書けるのになー ってつい思ってしまう…
Slide 29
Slide 29 text
5. Simple!! ふしぎ!!!!!
Slide 30
Slide 30 text
困ったときどうする?
Slide 31
Slide 31 text
困ったときどうする? 調べてみる ・Ruby のドキュメント http://www.ruby-lang.org/ja/documentation/ ・ 書籍を見てみる ・ ソースコードを読む ・ ぐぐる
Slide 32
Slide 32 text
困ったときどうする? とにかく動かしてみる ・ 小さくても動くものを作ると楽しい ・ ちょっとしたことを確認したいとき irb 便利
Slide 33
Slide 33 text
困ったときどうする? 誰かに聞いてみる でももし身近に聞ける人がいなかったら? ・ ネットで聞いてみるとか ・ *.rb とかに出掛けてみるとか ・ プログラミング経験の少ない女性なら Rails Girls もあるよ!
Slide 34
Slide 34 text
まとめ
Slide 35
Slide 35 text
まとめ 理解したあとではどれも何てことないものです。 でも、腑に落ちるまでは何となく気持ち悪い。 Ruby 分からないなーって思ってる人も 些細なところでつまずいてるだけかも。
Slide 36
Slide 36 text
まとめ これから Ruby を始めたい人へ 新しい言語を知るのって楽しいよ! どこかでつまずいてしまったときには どこかのコミュニティに足を運んでみるのも 何かのきっかけになるかもしれません。
Slide 37
Slide 37 text
まとめ Rubyist さんたちへ Ruby でコード書けずに悩んでいる人、 もしかしたら Rubyist の皆さんにとっては 何でもないところでつまづいてるのかも。 ぜひ話を聞いてあげてほしいです。
Slide 38
Slide 38 text
ありがとうございました。