tohoku open source conference 2008

19
Rubyと Ruby on Railsとは 片平裕市(Rails東北/日本Rubyの会) 藤岡岳之(Rails東北/日本Rubyの会)

Upload: xibbar

Post on 19-Jan-2015

1.400 views

Category:

Technology


1 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Tohoku Open Source Conference 2008

RubyとRuby on Railsとは

片平裕市(Rails東北/日本Rubyの会)藤岡岳之(Rails東北/日本Rubyの会)

Page 2: Tohoku Open Source Conference 2008

Ruby担当

藤岡岳之(Rails東北/日本Rubyの会)

Page 3: Tohoku Open Source Conference 2008

アジェンダ

すでに使われているRubyサイトRubyとは?Ruby関係コミュニティ紹介

irbで簡潔スクリプトをやってみる

Page 4: Tohoku Open Source Conference 2008

Rubyで動いているサイト

TwitterCookpad楽天食べログaboutme

まだまだたくさんあるはず

Page 5: Tohoku Open Source Conference 2008

Rubyとはプログラミング言語オープンソースRuby on Railsで一躍有名に

Page 6: Tohoku Open Source Conference 2008

プログラミング言語

FORTRANCLISPCOBOL

#include <stdio.h> int main(void){ printf("Hello, World!\n"); return 0;}

Page 7: Tohoku Open Source Conference 2008

オブジェクト指向言語

SmalltalkJavaPythonRuby

class Sample def initialize(str) @str=str end def str @str end def str=(str) @str=str endend

Page 8: Tohoku Open Source Conference 2008

Rubyの特長

シンプルな文法オブジェクト指向(クラス、メソッド)特殊なオブジェクト指向(Mix-in 特異メソッド)演算子オーバーロード例外イテレータとクロージャガベージコレクション

いちいち話しても時間ないのでささっとスルー

Page 9: Tohoku Open Source Conference 2008

Rubyの欠点

実行スピードが遅いリファレンスマニュアルが古い言語仕様が明文化されていない

Page 10: Tohoku Open Source Conference 2008

Love/Hate ratio言語 1a 1b 2a 2b 3a 3b 4a 4b Love/Hate

Ratio

Ruby 10800 11700 914 9850 3140 3970 150 173 7.189

Lisp 758 528 7010 5650 2620 8 216 149 4.536

Python 9420 9860 9340 11600 6820 5430 316 388 4.356

Smalltalk 191 200 2060 3020 8 6 116 647 3.806

Perl 14500 705 15600 916 7060 4930 801 1410 2.859

JavaScript 949 1170 5410 4280 1890 1480 1300 941 1.773

Java 813 23000 955 20800 13900 506 800 13600 1.605

C 6520 6550 795 651 14900 12500 2450 1850 0.766

PHP 852 759 668 652 4260 5170 1110 1180 0.324

http://www.rubyist.net/~matz/20071013.html より

googleでLove、Like、Hateを検索して集計Rubyは愛されている

Page 11: Tohoku Open Source Conference 2008

なぜ愛されているんだろ?

書かなければならないコードが少ないpublic static void main ... 長い

日本語の扱いが得意プログラミングが楽しい気持ちよくプログラミングできる魔法がかかっている by Matz

やりたいことと、やるまでの障壁の低さ

発表者の主観なので多めにみてください

Page 12: Tohoku Open Source Conference 2008

Hello worldJava Ruby

class Sample{ public static void main(String[] argv) { System.out.println(“Hello world”); }}

print “Hello world¥n”

省略できるところは出来る限り省略するという思想が見える

Perl Rubyif ($a==0) { print “Hello world¥n”;}

if a==0 print “Hello world¥n”end

カッコもセミコロンも省略省略

Page 13: Tohoku Open Source Conference 2008

Rubyは楽しい

おそらく、使っている人の多くが、プログラミングが楽しい言語だと思っている

Page 14: Tohoku Open Source Conference 2008

Rubyコミュニティ1

日本Rubyの会るびま(Rubyist Magazine)RubyKaigi

RubyアソシエーションRuby検定

RubyビジネスコモンズイケテルRails勉強会

活動が全国区

http://www.flickr.com/photos/88413250@N00/780869683/より

Page 15: Tohoku Open Source Conference 2008

Rubyコミュニティ2

Ruby札幌書き初め

Rails勉強会@東北月1回の勉強会

北海道・東北

http://d.hatena.ne.jp/monyakata/20070925より

Page 16: Tohoku Open Source Conference 2008

Rubyコミュニティ3

Rails勉強会@東京月1回の勉強会

toRuby(栃木)不定期

akasaka.rb各読書会Rubyの本読書会RHG(Rubyソースコード完全解説)

関東

Page 17: Tohoku Open Source Conference 2008

Rubyコミュニティ4

Ruby関西Ruby勉強会Rails勉強会各読書会るびま(Rubyist Magazine)Ruby Cookbook

Rubyist九州

関西・九州

Page 18: Tohoku Open Source Conference 2008

少しだけやってみましょう

irbを使ってやってみます

1.Wikipediaで都道府県を引っ張る2.エディタにコピペして保存3. irbで加工1.読み込む2.加工3.書き出し

あなたは都道府県の一覧が欲しくなりました

all.split("\n").map{|ary|ary.split(/\t/)[1].split(/\| | \| /)}.each{|ary|ary.each{|str|puts str}}

Page 19: Tohoku Open Source Conference 2008

私の担当おしまい

Rubyを使ってシンプルで気持ちいいプログラミングを楽しんでいます私たちがどう思ってプログラムを組んでいるか、雰囲気だけでも掴んでもらえたら幸いです

Happy Ruby Programming!