Download pptx - 2013 4-ruby

Transcript
Page 1: 2013 4-ruby

プログラミング言語 Ruby

シンプルで生産性の高くエレガントかつ動的な国産オブジェクト指向スクリプト言語

(公式サイトより、一部改変 )「 Rubyの言語仕様策定において最も重視しているのはプログラミングを楽しむことである」

(ルビー )

Page 2: 2013 4-ruby

Rubyの基本

Page 3: 2013 4-ruby

Rubyの基本プログラミング言語

プログラムを書くための言語。コンピューターに命令するときは、普通はプログラミング言語を使う。

Page 4: 2013 4-ruby

Rubyの基本インタープリタ型言語

プログラムをその場で直接実行する。完成した後は、遅い。開発中、頻繁に確認ができる。?インタープリタ 開発 :速い ,本番 :遅い?コンパイラ 開発 :遅い ,本番 :速い動的→自由度が高い。

Page 5: 2013 4-ruby

Rubyの基本オブジェクト指向 (OOP)言語

プログラムを役割分担させる。自分が全ての物の情報を知っている必要がなく、必要な情報のみをその物に聞けば良い。

分かりやすく使いやすい先人の知恵を活用しやすい

Page 6: 2013 4-ruby

なぜ Rubyか

Page 7: 2013 4-ruby

なぜ Rubyかプログラミング言語は沢山ある

例 :

Page 8: 2013 4-ruby

なぜ RubyかA,A+,ABAP,ABC,ABCL,ActionScript,ActiveBasic,Ada,Ada 95,ABEL,Agena

AHDL,ALGOL,Alice,ash,APL,AppleScript,as,Atom,AutoIt,AWK,B,Bash

BASIC,BCPL,Befunge,BF-BASIC'n,Bioera,BLISS,Bluespec,Boo

BrainCrash,Brainfuck,C,C#,C++,C@,CAL,Caml,Cantata,CAP-X,CASL

Cecil,CFScript,Cg,Chapel,Chef,CHILL,Clipper,Clojure,CLU

Co-array Fortran,COBOL,CoffeeScript,ColdFusion,Common Lisp

Component Pascal,Concurrent Clean,Concurrent Prolog

Constraint Handling Rules,CPL,csh,Curl,Curry,Cω,D,Dart,Delphi

DMDScript,Dylan,ECMAScript,Eiffel,Enterprise Generation Language

Erlang,Escapade,Esterel,Euclid,Euphoria,F#,Factor,False,Fantom,Ferite

Ficl,Flavors,FlowDesigner,Forth,FORTRAN,Fortress,Gas,GLSL,Go,Groovy

Page 9: 2013 4-ruby

なぜ RubyかGuarded Horn Clauses,HAL/S,Hardware Join Java,Haskell,HDCaml

HLASM,HLSL,HML,HOLON,HSP,HQ9+,HQ9F+,Hydra,HyperTalk,Icon,ID

IDL,Inform,InScript,INTERCAL,Io,IPL,ISWIM,J,Java,JavaScript

JavaFX Script,JHDL,JScript .NET,JSX,KEMURI,KL1,ksh,KRC,LabVIEW

Lazy K,Lava,Light Game Programming,Limbo,Linda,LSL,Lingo,Lisaac

LISP,LOGO,Lola,LotusScript,Lua,Lucid,Lush,Lustre,Malbolge,Mana

MASM,Mathematica,Max,Mercury,Mesa,MIL/W,Mind,Mindscript,Miranda

Misa,MixJuice,ML,Modula-2,Modula-3,MONAmona,Mops,MSIL,MyHDL,M

NASM,Nemerle,Noop,Oberon,Oberon-2,Object Pascal,Object REXX

Object Tcl (OTcl),Objective-C,Objective Caml (OCaml),Occam,Ook!

OpenOffice.org Basic,OPS,Oz,Pacbase,PALASM,PARLOG,Pascal,PBASIC

Page 10: 2013 4-ruby

なぜ RubyかPCN,Perl,PHP,Pic,Piet,Pike,pine,PL/0,PL/I,Planner,pnuts,PostScript

PowerBuilder,PowerShell,Processing,Prograph CPX,Prolog,Pure Data

Pxem,Python,QtScript,R,REALbasic,REBOL,REXX,RHDL,roff,RPG

RubyRuby,Rust,SAL,SASL,Sather,Scala,Scheme,Seed7,Self,SFL,sh

Shakespeare,Simula,Simulink,SISAL,SKILL,Smalltalk,SMILEBASIC

SNOBOL,Squeak,Squirrel,superC,SystemC,SystemVerilog,t3x,TAL

Telescript,TeX,Tcl,tcsh,Tenems,TL/I,Tonyu System,TTS,TTSeno,Turing

UPC,Unlambda,UnrealScript,VBScript,Visual Basic .NET,VHDL,Whirl

WICS,WMLScript,X10,XQuery,XSLT,zsh

等々

Page 11: 2013 4-ruby

なぜ Rubyかプログラミング言語は沢山ある

例 :(前述 )

その中でなぜ Rubyが選ばれるのか ?

Page 12: 2013 4-ruby

Rubyの作者、まつもとゆきひろ氏

Page 13: 2013 4-ruby

なぜ RubyかRubyは国産

Rubyは、国産のプログラミング言語では間違いなく最も有名

? C:アメリカ (USA),C++:USA,C#:USA

? Java:USA,Lisp:USA,Perl:USA

? PHP:カナダ &イスラエル ,Python:オランダ

?Ruby:日本

Page 14: 2013 4-ruby

なぜ RubyかRubyはスクリプト言語

スクリプト言語とは、簡単な処理を簡単に記述できる言語。

それって普通じゃないの?

Page 15: 2013 4-ruby

否。

Page 16: 2013 4-ruby

「 Hello, world」と表示する簡単なプログラム

Page 17: 2013 4-ruby

Javapublic class Main{

public static void main(String[] args){

System.out.println(“Hello, world”);

}

}

Page 18: 2013 4-ruby

長い !

Page 19: 2013 4-ruby

C#include <stdio.h>

int main(){

puts(“Hello, world\n”);

return 0;

}

Page 20: 2013 4-ruby

普通 ?

Page 21: 2013 4-ruby

Perlprint“Hello, world\n”

Page 22: 2013 4-ruby

Pythonprint“Hello, world”

Page 23: 2013 4-ruby

Rubyputs“Hello, world”

Page 24: 2013 4-ruby

短い !!

Page 25: 2013 4-ruby

なぜ RubyかRubyはスクリプト言語

スクリプト言語とは、簡単な処理を簡単に記述できる言語。

それって普通じゃないの?→普通じゃないRubyはシンプル

Page 26: 2013 4-ruby

実用例

Page 27: 2013 4-ruby

実用例Ruby on Rails

Webサービスを簡単に作れるWebの最新標準に対応

Page 28: 2013 4-ruby

実用例Ruby on Railsの例

RedMine プロジェクト管理サービスNCAPA NPCAのプロジェクト管理

Unicorn サーバーGitHub 複数人の開発向けの共有サービスTwitter ツイッター

Page 29: 2013 4-ruby

RedMine

Page 30: 2013 4-ruby

NCAPA

Page 31: 2013 4-ruby

Unicorn

Page 32: 2013 4-ruby

GitHub

Page 33: 2013 4-ruby

Twitter

Page 34: 2013 4-ruby

Rubyにおいて、プログラミングはストレスではなく楽しいものである。Rubyの作者は、これを重視している。

Page 35: 2013 4-ruby

プログラミング言語 Ruby

ご清聴有り難うございました

(ルビー )