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
0
120
はじめてのRuby 第2章 / Ruby Practice 02
muttan
October 18, 2016
Tweet
Share
More Decks by muttan
See All by muttan
さわやか待ち時間LINE botを作った話 / Sawayaka LINE bot
bath_poo_
0
120
コンテナ開発入門 1回目/Introduction to Container Development 1
bath_poo_
0
180
ISUCONってなんだ / What is ISUCON
bath_poo_
0
380
Web技術の基本 8回目 / Introduction to Web technologies 8th class
bath_poo_
0
210
Web技術の基本 7回目 / Introduction to Web technologies 7th class
bath_poo_
0
170
Web技術の基本 6回目 / Introduction to Web technologies 6th class
bath_poo_
1
280
Web技術の基本 5回目 / Introduction to Web technologies 5th class
bath_poo_
0
150
Web技術の基本 4回目 / Introduction to Web technologies 4th class
bath_poo_
0
230
Web技術の基本 3回目 / Introduction to Web technologies 3rd class
bath_poo_
0
260
Other Decks in Programming
See All in Programming
Symfony + NelmioApiDocBundle を使った スキーマ駆動開発 / Schema Driven Development with NelmioApiDocBundle
okashoi
0
220
Pythonデータ分析コトハジメinFukuoka
kanan
0
100
へんな働き方
yusukebe
5
2.8k
AI 開発合宿を通して得た学び
niftycorp
PRO
0
170
20260228_JAWS_Beginner_Kansai
takuyay0ne
5
610
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
980
今年もTECHSCOREブログを書き続けます!
hiraoku101
0
120
Angular-Apps smarter machen mit Gen AI: Lokal und offlinefähig - Hands-on Workshop!
christianliebel
PRO
0
130
AI活用のコスパを最大化する方法
ochtum
0
320
生成 AI 時代のスナップショットテストってやつを見せてあげますよ(α版)
ojun9
0
300
Linux Kernelの1文字のミスで 権限昇格ができた話
rqda
0
2.1k
それはエンジニアリングの糧である:AI開発のためにAIのOSSを開発する現場より / It serves as fuel for engineering: insights from the field of developing open-source AI for AI development.
nrslib
1
520
Featured
See All Featured
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
490
Optimizing for Happiness
mojombo
378
71k
Building Applications with DynamoDB
mza
96
7k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.2k
A Tale of Four Properties
chriscoyier
163
24k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.4k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
840
BBQ
matthewcrist
89
10k
How to Ace a Technical Interview
jacobian
281
24k
Evolving SEO for Evolving Search Engines
ryanjones
0
170
For a Future-Friendly Web
brad_frost
183
10k
The Spectacular Lies of Maps
axbom
PRO
1
640
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ͷΈِ ͱஅ͞ΕɺͦΕҎ֎ਅͱஅ͞ΕΔ ʢԿճ͔ޙʹ͜ͷ֓೦͕Ͱ͖ͯ·͢ʣ