Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
第2課 Rubyでプログラミング
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
ひでシス
October 26, 2016
Programming
0
810
第2課 Rubyでプログラミング
http://onemonth.mantropy.net/
ひでシス
October 26, 2016
Tweet
Share
More Decks by ひでシス
See All by ひでシス
第4課 リレーショナルデータベース
hidesys
0
710
第3課 書いたコードを管理する(Git)
hidesys
0
810
第1課 Linuxことはじめ
hidesys
0
890
第1課 Linuxことはじめ 事前準備
hidesys
0
260
Other Decks in Programming
See All in Programming
責任感のあるCloudWatchアラームを設計しよう
akihisaikeda
3
120
なるべく楽してバックエンドに型をつけたい!(楽とは言ってない)
hibiki_cube
0
130
Pythonではじめるオープンデータ分析〜書籍の紹介と書籍で紹介しきれなかった事例の紹介〜
welliving
3
840
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
150
フルサイクルエンジニアリングをAI Agentで全自動化したい 〜構想と現在地〜
kamina_zzz
0
370
コマンドとリード間の連携に対する脅威分析フレームワーク
pandayumi
1
410
クラウドに依存しないS3を使った開発術
simesaba80
0
230
humanlayerのブログから学ぶ、良いCLAUDE.mdの書き方
tsukamoto1783
0
140
Vibe codingでおすすめの言語と開発手法
uyuki234
0
190
Grafana:建立系統全知視角的捷徑
blueswen
0
300
PostgreSQLで手軽にDuckDBを使う!DuckDB&pg_duckdb入門/osc25hi-duckdb
takahashiikki
0
260
AI Agent Dojo #4: watsonx Orchestrate ADK体験
oniak3ibm
PRO
0
130
Featured
See All Featured
GraphQLの誤解/rethinking-graphql
sonatard
74
11k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
620
Build The Right Thing And Hit Your Dates
maggiecrowley
38
3k
Code Reviewing Like a Champion
maltzj
527
40k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1k
Thoughts on Productivity
jonyablonski
74
5k
Bash Introduction
62gerente
615
210k
Side Projects
sachag
455
43k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
45
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
0
120
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
0
2.3k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Transcript
Rubyでプログラミング ひでシス(@hidesys)
第2課の内容 • Rubyでプログラミングを触ってみる • WebフレームワークであるRailsはRubyで書か れていて、弄るにはRubyの知識が必要なた め
サーバーへログイン • dti.mantropy.net に接続します。 一般的にはSSHのポートは22番ですが、DTIのVPSでは塞がれているので2222番を使っています
教材ファイルを手元にコピー • 教材: /home/hidesys/2-ruby • 各自のhomeディレクトリにコピーしてください • `pwd` #=> /home/hoge
– 自分がいる場所の確認 • `cp –r ../hidesys/2-ruby ./` – 一つ上のhidesysディレクトリの2-rubyを、./(現在 地)に、recursiveでコピー
教材ディレクトリに移動 • `cd 2-ruby` • `ls` – たくさんの.rbファイルが確認できますか?
Hello World! • 文字を表示します • `ruby 1-hello.rb` #=> Hello! –
Rubyというプログラムに1-hello.rbファイルを読ませています。 • `cat 1-hello.rb` – プログラムファイルの確認 – puts というrubyのメソッドで、”Hello!”という文字列を表示してい ます • `nano 1-hello.rb`で表示内容を「Hello World!」に変えてくだ さい
四則演算 • 四則演算をしてみましょう • `ruby 2-four-operations.rb` • `cat 2-four-operations.rb` –
putsで各計算結果を表示しています
ローカル変数 • 変数:箱のようなもの • `ruby 3-variables.rb` • `cat 3-variables.rb` –
a = 14 • aという名前に14を代入している – puts a * b • a, bの変数の中身を呼び出している – 同じものを使いまわせて便利でしょう?
メソッド(函数) • 自分で新しい機能を定義できます • `ruby 4-method.rb` • 平方を計算するsquareと、立法を計算する cubeを定義しました –
実はputsも、元から定義されている函数のうちの 一つです
配列 • たくさんの変数をひとまとめにして扱えます – 英語でArrayといいます • `ruby 5-array.rb` – 配列[数字]
で数字番目の中身を表示する • 平方・立方の計算が少しすっきりしましたね
ここでirbの紹介です • Interactive Ruby • 対話式にRubyを実行できる – 入力毎にputsが実行される感じ • `irb`
で起動! • 1とか1 + 1とかを入れて遊んでみよう!
イテレータ(each) • square(x) とcube(x)の書く回数を減らします • `ruby 6-iterator.rb` 配列.each do |配列の中身を入れる新変数|
~~この中が繰り返される~~ end
イテレータ(times) 数字.times do |回数目を入れる新変数| ~~この中が繰り返される~~ end • `ruby 7-times.rb` •
0から99を表示する(100回)
条件分岐(if) if ほげほげ ほげほげがtrueの時に実行される else ほげほげがfalseの時に実行される end • `ruby 8-condition.rb`
• `cat 8-conditions.rb`
Rubyのtrueとfalse true false true false 1 == 1 1 ==
2 “あああ” == “あああ” “あああ” == “あ ああ” 1 != “あ” 1 != 1 1 > 0 1 < 0 100 0 “あ” nil !false !true true && true true && false false || false true || false
繰り返し(while) while ほげほげ ほげほげがtrueの時のみ繰り返される end `ruby 9-while.rb`
課題 • FizzBuzzを99まで。 – 3で割り切れる場合は「Fizz」 – 5で割り切れる場合は「Buzz」 – 両者で割り切れる場合(すなわち15で割り切れる 場合)は「Fizz
Buzz」を数の代わりに発言 100.times do |i| if i % …
課題2 • 世界のナベアツ – 3の倍数、または3が値に含まれるときにアホになる 1 2 3!!!!!!! 4 ….
13!!!!!!!