12 8月 12 平日用 (苫小牧駅前 川沿ときわ線↓西高 …12 糸井駅北↓西高校前↓苫小牧駅前) (駒沢大学前↓錦西営業所↓錦岡駅前↓南高校↓
苫小牧高専 ソフトウェアテクノロジー部 Rubyで遊ぼう 1
-
Upload
takuya-mukohira -
Category
Technology
-
view
140 -
download
2
Transcript of 苫小牧高専 ソフトウェアテクノロジー部 Rubyで遊ぼう 1
テーマ2 Rubyで遊ぼう
(1)2015/07/08
苫小牧高専 ソフトウェアテクノロジー部
今日の予定1. Rubyとは
2. Rubyのインストール
3. はじめてのRubyプログラミング
4. Magical Ruby Tour
Rubyとは
Rubyとは• オープンソースのオブジェクト指向スクリプト言語。
• インタプリタ言語である。→ C言語のようにコンパイルする事なく サクッと書いてサクッと動かせる。
• 変数の型付けが柔軟である。変数宣言が不要である。→ 変数の型について心配する必要が無く、 手軽にプログラミングできる。
https://www.ruby-lang.org/ja/
どんな所で使われているの?• ちょっとしたツールから大規模Webサイトまで。
COOKPAD(http://cookpad.com)
GitHub(https://github.com)
こんなの作りました :)• クローラー→ Webサイトからデータを収集してデータベース化したりするプログラム。
• Webサイト→ 単なる自己紹介ページとしての役割以外に、ちょっとしたネタアプリを組み込んだりした。
• Twitter Bot→ 苫小牧高専News Botや、新着図書通知Botなど。
最終的に
• 夏休みの合宿で、部内プロコンをやりたいと思っています。
• その時にRubyを使ってみたいなという所存。
Rubyのインストール
Rubyのインストール• 今回は、学科内サーバー(jocalc1)にRubyをインストールします。
• TeraTermからjocalc1へログインしてください。
• 自分のPCを使う人は、各自インストールしておいてください。
Rubyのインストール• インストール方法をブログにまとめておいたので各自やってください :)http://mktakuya-dev.hatenablog.com/entry/2015/06/18/183331
• ユーザ名に注意! (Windowsにログインする時のユーザ名と同じです。)
• わからないことがあったら気軽に聞いてください。
Hello, Ruby!
Hello, Ruby!その前に
• ホームディレクトリに softech_ruby というディレクトリ(フォルダ)を作成しよう。
$ cd ~/ $ mkdir softech_ruby $ cd softech_ruby
• これから作るコードはここに保存していきましょう。
• cd コマンド: ディレクトリを移動するコマンド ~/ はホームディレクトリを表す。
• mkdir コマンド: ディレクトリを作成するコマンド
Hello, Ruby!• エディタを開いて以下のコードを入力し、hello.rbで保存。
puts "Hello, Ruby!"
• ruby hello.rb でコードを実行!
• C言語でやったHello, Worldと比べて サクッと書けてサクッと動くでしょ? :)
irbを使ってみよう• Rubyの実行方法はひとつじゃない!
• irbを起動してみよう。
$ irb irb(main):001:0> puts "Hello, Ruby!"
• サクッと書いてサクッと動くので、ちょっとしたコード片を実行するのに便利!
Magical Ruby Tour
Magical Ruby Tour• これからしばらくRubyの基礎をやっていきます。
• irbを起動しよう!
• コード中の#=> hogehogeは、出力結果を表します。
画面に出力する• 画面に出力する方法もひとつじゃない!
# 改行付き puts "Hello, Ruby!”
# 改行なし(自分で ”¥n” を入れなければならない) print “Hello, Ruby!”
• 他にはp, printfなどもある。(pは後で触れる。)
変数を使ってみる 1• C言語とは違い、変数宣言、型指定が不要。
name = “Takuya” puts name
age = 19 puts age
変数を使ってみる 2• C言語でいうprintf的な事もできます。
name = “Takuya” age = 19
puts “私は#{name}です。年齢は#{age}です。”
• puts 変数名 や、puts “#{変数名}” で変数の中身を出力できます。
変数を使ってみる 3• Rubyでは型についてのルールがゆるいので、変数名を的確につけてやらないとあとでコードを読む時に不便です。
• 適当にxやyと変数名をつけるのはやめて、nameやage、school_nameなど変数が何を示しているかわかるように命名しましょう。
• 変数名は以下のルールを守ること。
• 1文字目が英小文字、または ”_” で始まること。
• 予約語と呼ばれる、Ruby側ですでに定義されている単語は使えない。(ifやfor、endなど)
school_name = “苫小牧高専” end = 1535 # エラー! end_time = 1535
四則演算 1• 数値の四則演算ができます。
a = 8 b = 5
puts a + b puts a - b puts a * b puts a / b puts a % b
四則演算 2• 実数の四則演算もできます。
a = 8.0 b = 5.0
puts a + b puts a - b puts a * b puts a / b puts a % b
• ちょっとした電卓として使えます。
Rubyのクラスについて• RubyではC言語のように型を指定して変数を宣言する必要はないが、 クラスと呼ばれる型のような物がある。
• Rubyプログラミングで扱うものはすべてオブジェクトである。 クラスとは、オブジェクトの種類のことである。
name = “Takuya” age = 19 height = 168.5
name.class # 文字列クラス #=> String
age.class # 整数クラス #=> Fixnum height.class # 実数(浮動小数点数)クラス #=> Float
文字列について• “” や ‘’ で囲った表現は、文字列とみなされる。
• C言語では “” と ‘’ とで意味が違うが、Rubyではほとんど同じ。
name = “Takuya” puts name
name = ‘Takuya’ puts name
puts “My name is #{name}”
• “#{変数名}” の記法を使いたい場合は、 “” を使う。
文字列について• 文字列は、足し算や掛け算ができる。first_name = “Takuya” last_name = “Mukohira”full_name = first_name + “ “ + last_name puts full_name
message = “Go!” puts message * 5 # “Go!Go!Go!Go!Go!” と表示される
メソッド呼び出しをやってみる• Rubyでは扱うすべての物がオブジェクトである。各オブジェクトはメソッドを持つ。
name = “Takuya” # Stringクラスのオブジェクト
name.length() #=> 6
name.reverse #=> ayukaT
age = 19 # Fixnumクラスのオブジェクト age.odd? # age は 奇数かどうか調べる(true/false)#=> true
標準入力で遊んでみる• C言語でいうscanf的なものもある。
• nameの末尾には、改行が含まれるので、 文字列の末尾の改行文字を取り除く chomp! を使う。
name = STDIN.gets name.chomp!
puts “Hello, #{name}! How are you?”