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
はじめてのRuby 第2章 / Ruby Practice 02
Search
muttan
October 18, 2016
Programming
120
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
はじめてのRuby 第2章 / Ruby Practice 02
muttan
October 18, 2016
More Decks by muttan
See All by muttan
さわやか待ち時間LINE botを作った話 / Sawayaka LINE bot
bath_poo_
0
130
コンテナ開発入門 1回目/Introduction to Container Development 1
bath_poo_
0
200
ISUCONってなんだ / What is ISUCON
bath_poo_
0
390
Web技術の基本 8回目 / Introduction to Web technologies 8th class
bath_poo_
0
210
Web技術の基本 7回目 / Introduction to Web technologies 7th class
bath_poo_
0
200
Web技術の基本 6回目 / Introduction to Web technologies 6th class
bath_poo_
1
290
Web技術の基本 5回目 / Introduction to Web technologies 5th class
bath_poo_
0
160
Web技術の基本 4回目 / Introduction to Web technologies 4th class
bath_poo_
0
240
Web技術の基本 3回目 / Introduction to Web technologies 3rd class
bath_poo_
0
270
Other Decks in Programming
See All in Programming
過去最大のMCPアップデート! 2026-07-28 RC版の謎に迫る
licux
6
350
3Dシーンの圧縮
fadis
1
780
AIだと陥りがちなJakarta EE最新技術への移行時の落とし穴と解決策
tnagao7
0
110
AI 時代のソフトウェア設計の学び方
masuda220
PRO
29
13k
エージェンティックRAGにAWSで入門しよう!
har1101
8
1.6k
Honoでのサプライチェーン侵害対策 〜 3つのライブラリに学ぶ
yusukebe
6
1.3k
The NotImplementedError Problem in Ruby
koic
1
810
AIとASP.NET Coreで雑Webアプリを作った話
mayuki
0
650
代数的データ型って何が嬉しいの? #frontend_phpcon_do
kajitack
8
3.7k
New "Type" system on PicoRuby
pocke
1
960
Signal Forms: Details & Live Coding @enterJS 2026 in Mannheim
manfredsteyer
PRO
0
140
Composerを使ったサプライチェーン攻撃の様子を眺めてみる #phpstudy
o0h
PRO
2
250
Featured
See All Featured
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
160
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.2k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
160
The untapped power of vector embeddings
frankvandijk
2
1.8k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
The SEO identity crisis: Don't let AI make you average
varn
0
490
WENDY [Excerpt]
tessaabrams
11
38k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
170
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.7k
Transcript
ͨͷ͍͠3VCZୈষ
ศརͳΦϒδΣΫτ w จࣈྻͷΑ͏ͳΦϒδΣΫτΛ࡞ͨ͠ ʢୈষʣ͕ɺ࣮ࡍʹ͏গ͠ෳࡶͳΦϒδΣ ΫτΛѻ͏ඞཁ͕ग़ͯ͘Δ w ࠓճͷষͰɺ༷ʑͳσʔλߏʹֶ͍ͭͯͿ
ྻ "SSBZ
ྻ "SSBZ w ෳͷΦϒδΣΫτΛॱং͖Ͱ֨ೲ͢Δσʔ λߏ w جຊతʹ$ͱΞΫηεํ๏ಉ͡
ྻΛ࡞Ζ͏ w ྻ<>ͰશମΛғΈɺΧϯϚ۠ΓͰཁૉΛฒ Δ͜ͱͰ࡞Ͱ͖Δ w ۭͷྻ࡞͢Δ͜ͱ͕Ͱ͖Δ OBNFT<༑ ٢ా ॏ lञҪz>
OBNFT<>
ΦϒδΣΫτͷऔΓग़͠ ΦϒδΣΫτͷೖ w ྻͷΞΫηε$ͱಉ༷ʹߦ͏ w ఴࣈ͔Β࢝·Δ͜ͱʹҙ͢Δ w ೖΛ͏͜ͱͰߦ͏͜ͱ͕Ͱ͖Δ OBNFT<༑ ٢ా
ॏ lञҪz> QVUTOBNFT<>༑͕ग़ྗ͞ΕΔ QVUTOBNFT<>٢ా͕ग़ྗ͞ΕΔ 1ྫΛ࣮ߦ OBNFT<>lౡాz
ྻͷத w จࣈྻ͚ͩͰͳ͘ ࣈͷྻͪΖΜ࡞Δ͜ ͱՄೳ w ෳͷΦϒδΣΫτΛࠞͥͯྻʹ֨ೲ͢Δ͜ ͱ͕Ͱ͖Δ w ࣌ࠁϑΝΠϧΛද͢ΦϒδΣΫτ֨ೲՄೳ
NJYFE< l͠z l·z lz lΜz>
ྻͷαΠζ w ྻͷαΠζΛऔಘ͢Δʹɺ0CKTJ[Fͱͯ͠औ ಘ͢Δ͜ͱ͕Ͱ͖Δ JSC NBJO NJYFE< ͠ ·
Μ> < ͠ · Μ> JSC NBJO QNJYFETJ[F
ྻͱ܁Γฦ͠ w FBDIϝιουͱ͍͏ΠςϨʔλ͕༻ҙ͞Ε͍ͯ Δ w ྻͷཁૉͯ͢ʹରͯ͠ΞΫηε͍ͨ͠ͱ͖ ʹศརͳํ๏ "SZFBDIEPcWBSc FYQSFTTJPO FOE
ྻͱ܁Γฦ͠ w EPʜFOEͰғ·Ε͍ͯΔ෦ ΛϒϩοΫͱ͍͏ w cWBScͷ෦ʹɺऔΓग़ͨ͠ ྻͷཁૉ͕֨ೲ͞Ε͍ͯΔ w FBDIϝιουΦϒδΣΫτ ͷཁૉͭͭऔΓग़͠ɺ͢
ͯऔΓग़ͨ͠Βऴྃ͢Δ w ΄͔ʹ͋Δ͚ͲͦΕষ Ͱ "SZFBDIEPcWBSc FYQSFTTJPO FOE
ྻͱ܁Γฦ͠ʢ࣮ߦྫʣ OBNFT<༑ ٢ా ॏ ञҪ> OBNFTFBDIEPcOBNFc QVUTlOBNF\OBNF^\OBNF^มల։ FOE ίʔυྫ OBNF༑
OBNF٢ా OBNFॏ OBNFञҪ ࣮ߦ݁Ռ
ϋογϡ )BTI
ϋογϡ w ྻΦϒδΣΫτɺΦϒδΣΫτͷΞΫη εʹࣈΛΩʔͱͯ͠ΞΫηε͢Δ BSSBZ<> w ϋογϡΩʔͱͯ͠ɺࣈ͚ͩͰͳ͘จࣈྻ γϯϘϧʢ˞ޙड़ʣΛར༻͢Δ͜ͱ͕Ͱ͖Δ ྫ
PCK<lTIJNBEBz>ͱ͔TDPSF<lTIJNBEBz>ल
γϯϘϧͱ w ϝιουͳͲͷ໊લΛࣝผ͢ΔͨΊͷϥϕϧΛ ΦϒδΣΫτʹͨ͠ͷʢE ?@?P ʁʁʁʁʁʁʣ w γϯϘϧઌ಄ʹʢίϩϯʣΛ͚ͯද͢ w ͳʹΛݴ͍ͬͯΔ͔Α͘Θ͔Βͳ͍ͷͰ࣮ݧ
for i in 1..10 puts'hoge'.object_id end 83889020 83888970 83888940 83888910
83888880 83888850 83888820 83888790 83888760 83888730 ίʔυ ग़ྗ ˢશ෦ҧ͏*%
for i in 1..10 puts :hoge.object_id end 212008 212008 212008
212008 212008 212008 212008 212008 212008 212008 ίʔυ ग़ྗ ˢશ෦ಉ͡*%
จࣈྻͱϋογϡͷҧ͍ w จࣈྻੜ͢ΔͨͼʹҟͳΔΦϒδΣΫτΛੜ͍ͯ͠Δ ʢPCKFDU@JE͕ຖճҟͳ͍ͬͯͨʣ w ϋογϡΦϒδΣΫτΛੜ͢Δͱɺಉ໊͡લͰ͋Δ ݶΓಉ͡ΦϒδΣΫτΛࢀর͢Δ ʢจࣈྻͷΑ͏ʹຖੜ͢Δख͕ؒͳ͍ͷͰޮ͕ྑ͘ߴ Ͱ͋Δʣ w
ϋογϡͷΩʔʹ࠷ద w ৄͪ͘͜͠Β IUUQTEPDTSVCZMBOHPSHKBMBUFTUDMBTT4ZNCPMIUNM
ϋογϡΛ࡞Δ w ϋογϡͷ࡞ํ๏ྻͱࣅ͍ͯΔ͕ <>Ͱ ͳ͘\^ͰσʔλΛғΉඞཁ͕͋Δ w γϯϘϧʹؔͯ͠ҎԼͷΑ͏ʹॻ͘͜ͱՄೳ TPOH\UJUMFlγϚμϚαγz BSUJTUlUBJLPz^ QFSTPO\l໊લzlౡాz
lԾ໊zl·͞͠z^ NBSL\l+BDLz l2VFFOz l,JOHz^ TPOH\UJUMFlγϚμϚαγz BSUJTUlUBJLPz^
ϋογϡͷૢ࡞ w ϋογϡʹ֨ೲ͞ΕͨΦϒδΣΫτͷΞΫη εɺྻͱಉ༷ʹߦ͏͜ͱ͕Ͱ͖Δ )BTIΦϒδΣΫτ<Ωʔ> )BTIΦϒδΣΫτ<Ωʔ>֨ೲ͍ͨ͠ΦϒδΣΫτ 1ྫΛ࣮ߦ
ϋογϡͷ܁Γฦ͠ w ϋογϡΦϒδΣΫτFBDIϝιουʢΠςϨʔ λʣΛར༻͢Δ͜ͱͰͯ͢ͷཁૉʹΞΫηε͢ Δ͜ͱ͕Ͱ͖Δ 1ྫΛ࣮ߦ HashObj.each do |key, value|
expression end
ਖ਼نදݱ 3FHFYQ
ਖ਼نදݱ w ਖ਼نදݱΛͬͯ࠷ߴͷϚονϯάੜ׆ΛૹΖ ͏ w ਖ਼نදݱΛ͏͜ͱͰɺಛఆͷจࣈύλʔϯΛ ؆୯ ʹهड़͢Δ͜ͱ͕Ͱ͖Δ w ৄͪ͘͜͠Β
IUUQTEPDTSVCZMBOHPSHKBMBUFTUEPD TQFDGSFHFYQIUNM
ύλʔϯͱϚονϯά w 3VCZͰɺQBUUFSOͱ͍͏ܗͰਖ਼نදݱΛه ड़͢Δ ྫ ਖ਼نදݱ Ϛον͢Δจࣈྻ 3VCZ 3VCZ K3VCZ
BCD3VCZIJK 3VCZJ SVCZ 36#: S6CZ 8<BFJPV>SE 8BSE 8FSE 8JSE 8PSE 8VSE <?BE> F G H I BEҎ֎ͷจࣈ
ύλʔϯͱϚονϯά w ύλʔϯϚονΛߦ͏ࡍ ͱॻ͘Ϛονͨ͠߹ͦͷҐஔ Ϛον͠ͳ ͍߹OJM͕ฦΔ ྫ ਖ਼نදݱdϚονϯά͍ͨ͠จࣈྻ
JSC NBJO 3VCZdK3VCZ JSC NBJO 3VCZdKUVCZ OJM JSC NBJO 3VCZJdlKSVCZେจࣈখจࣈΛ۠ผ͠ͳ͍
ͱ͜ΖͰOJMͬͯͳʹʁ
OJMͱ w ΦϒδΣΫτ͕ଘࡏ͠ͳ͍͜ͱΛࣔ͢ಛผͳ w ϝιου͕ҙຯͷ͋ΔΛฦ͞ͳ͍ͱ͖ʹฦ ͞ΕΔ w 3VCZͰ݅ذ͢ΔࡍʹɺGBMTFͱOJMͷΈِ ͱஅ͞ΕɺͦΕҎ֎ਅͱஅ͞ΕΔ ʢԿճ͔ޙʹ͜ͷ֓೦͕Ͱ͖ͯ·͢ʣ