Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
RWC2013
Search
Kuniaki IGARASHI
November 21, 2013
Technology
900
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
RWC2013
「広がるRubyの学びの場」
RubyWorldConference2013
at 松江 くにびきメッセ
2013.11.21
Kuniaki IGARASHI
November 21, 2013
More Decks by Kuniaki IGARASHI
See All by Kuniaki IGARASHI
RailsTokyo 4 GarnetTech373
igaiga
0
180
ActiveJobUpdates
igaiga
1
810
roppongirb_20250911
igaiga
1
830
igaiga Ruby Association Activity Report 2025 LT
igaiga
1
190
KaigiOnRails2024
igaiga
16
26k
RuboSensei
igaiga
0
390
Shibuya.rb-2023-04-27-igaiga
igaiga
1
630
Ginza Rails27 igaiga
igaiga
9
14k
tork09igaiga
igaiga
2
450
Other Decks in Technology
See All in Technology
Content Mapper APIの応用例~CSS Modules、言語ファイル~
uhyo
2
490
複雑な業務システムを高速でつくるため、チーム全員をつくれる人へ
ayakurabuchi
0
120
Devin プロモコードの受け取りと適用(2026.10.27)
kinopeee
1
820
「作れる」と「リリースできる」の間にあったもの── PdMを外して見えた、PdMがやるべき仕事/Buildable ≠ Shippable: What Removing the PM Taught Me About the PM’s Job
yappli_developers
0
420
素人でもできた!AIを使った短編小説創作入門
delhi09
PRO
0
280
仕様駆動開発の、その先へ。決める力と確かめる仕組み
inariku
1
160
Agent 活用環境の構築・運用のための AWS サービスのご紹介/agentcore-for-building-and-operating-agents
ren8k
1
310
構造で守らせる データ・法務・セキュリティ・開発チームとつくる AI時代のデータガバナンスとデータ基盤のリアル
legalontechnologies
PRO
3
720
AX時代の自治体支援リソース再配分と役割分担の再構成:戦略とロードマップ(概要)
sishi2026
0
170
クラウドエージェントの先駆け Devin。今も最先端を走る、他との違い
kinopeee
1
540
Don't write the architecture only in the prompt.
neohsu
0
290
ひとりで始めた AI駆動開発、チームに広げて何が変わったのか
kenichiodo
1
210
Featured
See All Featured
The Curious Case for Waylosing
cassininazir
1
600
Java REST API Framework Comparison - PWX 2021
mraible
34
9.8k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
610
Abbi's Birthday
coloredviolet
4
11k
The Limits of Empathy - UXLibs8
cassininazir
2
750
YesSQL, Process and Tooling at Scale
rocio
174
15k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
750
Side Projects
sachag
456
43k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
1
300
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
540
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
Paper Plane (Part 1)
katiecoart
PRO
2
12k
Transcript
ͻΖ͕Δ3VCZͷֶͼͷ 8JEFTQSFBE3VCZ-FBSOJOH4QBDF ޒेཛྷ໌,VOJBLJ*("3"4)* 3VCZ8PSME$POGFSFODFTU0DU ! HJUIVCJHBJHB UXJUUFSJHBJHB GBDFCPPLIUUQXXXGBDFCPPLDPNLVOJBLJJHBSBTIJ
ޒेཛྷ໌ גࣜձࣾTQJDFMJGF Ұڮେֶඇৗۈߨࢣ HJUIVCJHBJHB UXJUUFSJHBJHB IUUQXXXGBDFCPPLDPNLVOJBLJJHBSBTIJ
ΤϯδχΞɺσΟϨΫλʔɺ σβΠφʔɺαϙʔτελοϑ ืूத IUUQCJUMZUNJYHPSCZ
͋ͱͰ 3BJMT ʘTQPUMJHIUTʗ ΤϯδχΞɺσΟϨΫλʔɺ σβΠφʔɺαϙʔτελοϑ ืूத
͢͜ͱ 3VCZڭҭʹ͍ͭͯͷܦݧஊ ͍͔ͭ͘ͷ3VCZͷֶͼʹ͍ͭͯͷࣄྫ ڞ௨ͷ՝ɺϙΠϯτ ! ͞ͳ͍͜ͱ ٕज़ͷਂ͍ ͜ͷൃදͰ͢͜ͱɾ͞ͳ͍͜ͱ
࠷ॳʹ࣭Ͱ͢ ͆ 2VFTUJPO
Έͳ͞Μ͕3VCZͱΓ߹ͬͨ ͖͔͚ͬͳΜͰ͔͢ʁ )PXEJEZPV NFFU3VCZ
IUUQXXXqJDLSDPNQIPUPTJHBJHB IUUQXXXqJDLSDPNQIPUPTITCU 3BJMT(JSMT 3BJMTࣉࢠ3BJMT5FSBLPZB ͦͷଞͷ౦ژͷࣄྫ ,JET3VCZJO50,:0 4UVEFOUTSC 6ϓϩάϥϛϯά͘ΒͿʢ3VCZࡾୋڭࣨʣ ! ౡࠜɺদߐͷࣄྫ
ౡࠜ3VCZ߹॓ ʙ ౡࠜେֶͰͷߨٛ ʙ দߐதֶੜ3VCZڭࣨ 3VCZ+S ৽ֶ͍͠ͼͷ͕ͨ͘͞ΜͰ͖ͨͷ͕ ͜͜ఔͷ3VCZΤίγεςϜͷϗοττϐοΫͷͭ ͦ͜Ͱ3VCZΛ࢝ΊΔਓͨ͘͞Μग़͖ͯ·ͨ͠ Ұڮେֶߨٛ-FDUVSFJO)JUPUTVCBTIJ6OJW
͏࣭ͭͰ͢ 0OFNPSFRVFTUJPO
Έͳ͞Μ3VCZΛ Ͳ͏ֶͬͯͼ·͔ͨ͠ʁ )PXEJEZPV MFBSO3VCZ
IUUQXXXqJDLSDPNQIPUPTJHBJHB IUUQXXXqJDLSDPNQIPUPTITCU 3BJMT(JSMT 3BJMTࣉࢠ Ұڮେֶߨٛ-FDUVSFJO)JUPUTVCBTIJ6OJW ͦΕͧΕͷͰͦΕͧΕͷతͱํ๏ ͭͷࣄྫʹ͍ͭͯৄ͓͘͠͠͠·͢
3VCZ3BJMT ඇৗۈߨࢣۀ Ұڮେֶ3VCZߨٛ -FDUVSFJO)JUPUTVCBTIJ6OJW
తɿϓϩάϥϛϯάاըͰ͖ΔਓࡐΛҭͯΔ จܥͷֶՊɺϓϩάϥϛϯάະܦݧऀ͚ ߨٛظؒؒɻબՊɻֶ෦ʙେֶӃ͚ɻ લظ3VCZɺޙظ3BJMTɻ ݄ΑΓࢲ͕ඇৗۈߨࢣͰ୲ ʢߨ࠲ࣗମ͔Βʣ ผ్ɺ-FXJTڭतͷ3BJMTͰͷ8FCΞϓϦߨٛ͋Γ ֶੜͷౡࠜ3VCZ߹॓ͷࢀՃ ୯Ґͱͯ͠ೝఆ
ҰڮେֶχϑςΟגࣜձࣾدෟߨٛ 3VCZߨٛ
ߨٛ࣌ؒɻ࠲ֶɺԋशɻ ֶੜਓ͔Βਓ 1$ֶੜ͕࣋ͪࠐΈ ି͠ग़͋͠Γ 5"ͱਓͰ࣭ରԠɺԋश՝ͷ࠾ 3VCZPS 3BJMT ߨٛํ๏
ࣗ࡞ࢿྉIUUQTHJUIVCDPNJHBJHBIJUPUTVCBTIJSVCZ ͨͷ͍͠3VCZୈ൛*4#/ 8FCͷࢿྉ 3VCZ3FGFSFODF.BOVBM υοτΠϯετʔϧ IUNM DTT
IUUQEPUJOTUBMMDPN $PEFDBEFNZIUUQXXXDPEFDBEFNZDPN ڭՊॻ
ࣗ࡞ࢿྉͰ͖Δ͚ͩਤΛଟ͘ɺ͔Γқ͘ IUUQTHJUIVCDPNJHBJHBIJUPUTVCBTIJSVCZ
՝ྫɿίʔυΛࣸܦ࣮ͯ͠ߦ͢Δ ͭ·͖͍ͮ͢Օॴ ΩʔϘʔυΛଧͭ z@d ΤσΟλͰϑΝΠϧΛࢦఆͨ͠ϑΥϧμʹอଘ͢Δ TIFMMͰ࣮ߦ͢Δ ελʔτ࣌ ϲ݄΄ͲͰશһίʔυΛࣸܦ࣮ͯ͠ߦͰ͖ΔΑ͏ʹͳΔ
ߨٛ༰ɹ3VCZฤ 3VCZޠͷੈքɺTIFMMޠͷੈք ࢛ଇԋࢉɺจࣈίʔυɺม ݅அɺ܁Γฦ͠ɺ.FUIPE "SSBZ )BTI 0CKFDU $MBTT *OTUBODF 8JLJQFEJBΞΫηεղੳ
UXJUUFSEBUBͷղੳ IUUQTHJUIVCDPNJHBJHBIJUPUTVCBTIJSVCZ
ߨٛ༰ɹ3BJMTฤ Ұ൪খ͞ͳ3BJMTΞϓϦͭ͘Γ DPOUSPMMFS WJFX TDBGGPMEͰͰ͖ͨͷͷղઆ ϦΫΤετ SPVUFT DPOUSPMMFS WJFX
NPEFM 3BJMTΞϓϦͷಈ͖Λ؍͢Δ $ISPNFͰϦΫΤετΛ؍ɺMPHɺQɺQSZ "DUJWF3FDPSE %# 1BB4 $4" Ͱωοτʹެ։ IUUQTHJUIVCDPNJHBJHBIJUPUTVCBTIJSVCZ
גࣜձࣾχϑςΟͷ1BB4$4" ϒϥβ͔ΒίʔυฤूՄೳ ϩʔΧϧڥෆཁ 3BJMTରԠ IUUQDTBOJGUZDPN
ؒͷՌ ൃද༰ͷྫ ɾUXJUUFSσʔλΛղੳͯ͠ͲͷӺ͕ʹ͗Θ͍ͬͯΔ͔ΛௐΔ ɾਓͰϓϨΠͰ͖ΔγϡʔςΟϯάήʔϜͷ࡞ ɾ&YDFMͱΈ߹Θͤͨμʔπಘܭࢉ ɾFMFBSOJOH8FCΞϓϦ ɾ࠲͍8FCΞϓϦ ɾͷग़ɺͷೖͷ࣌ࠁΛJ1IPOF1VTI௨ IUUQJHBSBTIJLVOJBLJOFUEJBSZIUNM ࠷ޙʹࣗͰ՝Λઃఆͯ͠िͰ࣮ɺൃද
None
ཧղ͕͍͠ͱ͜Ζ TIFMMͷੈքɺ3VCZͷੈքͷཧղ λʔϛφϧʹ3VCZͷίʔυΛॻ͍ͯ͠·͏ จ๏ΑΓΞϧΰϦζϜ͕͍͠
FBDIͷ༻ྫͱͯ͠ɺ< >ͷΛٻΊΔ खͰղ͚ΔͷಘҙUIHTVC UI TU TU )BTIۤख ࢿྉ͕ͳ͍ ϓϩάϥϚʔ͚ͷࢿྉɾຊͨ͘͞Μ͋Δ͕ɺ ϓϩάϥϛϯάΛ࢝ΊΔਓ͚ͨͷ͋·Γͳ͍ ΤϯδχΞ͕ڭ͑Δ ࠷৽ͷ3VCZքͷঢ়گʹ͋Θͤͯڭ͑ΒΕΔ ରͱͳΔֶՊͷઌੜͱೋਓࡾ٭ͩͱ૬ஊͰ͖ͯྑ͍ 5%%ڭҭʹ༗ޮ ؾ͖ͮ ˞େֶߨٛʹ͍ͭͯৄͪ͘͜͠Β͝ࢀর͍ͩ͘͞IUUQTTQFBLFSEFDLDPNJHBJHBLZVTIV
3BJMT(JSMT
ʮΑΓଟ͘ͷঁੑ͕ϓϩάϥϛϯάʹ͠ΈɺΞΠσΞ ΛܗʹͰ͖Δٕज़Λʹ͚ͭΔखॿ͚Λ͢ΔϫʔΫγϣο ϓͱͦͷίϛϡχςΟʯ ! ʹϔϧγϯΩͰ࢝·ΓɺຊͰ݄͔Β ౦ژͰݱࡏ·Ͱճ։࠵ɻ΄͔ɺژɺࡳຈͰɻ দߐ໌͔Βͷ ۚ
Ͱ։࠵ ֤ճͷࢀՃऀਓલޙ 3BJMT(JSMT
3BJMTΛ ͋·Γ ͬͨ͜ͱ͕ͳ͍ํ ϓϩάϥϛϯάΛ ͋·Γ ͬͨ͜ͱ͕ͳ͍ํ ରऀ 8FCσβΠφʔɺσΟϨΫλʔɺଞݴޠͷϓϩάϥϚͳͲ ଟ࠼ͳ৬ۀͷํɺֶੜ͕ࢀՃ
ؒͷ8PSLTIPQ ։ൃڥߏங ࣸਅߘػೳ͖ϛχϒϩάΞϓϦ 1BB4αʔϏεΛར༻ͯ͠ެ։ ༰ 8FCʹࢿྉ ຊޠ༁ ͕ެ։͞Ε͍ͯΔ ˞͜ͷ8PSLTIPQͷࡐͱࢿྉ͔Γқ͍ͷͰ͓קΊ IUUQSBJMTHJSMTKQ
"QQMJDBUJPO 4DSFFOTIPU
None
ҰॹʹࣄΛ͍ͯ͠Δಉ྅ͷϓϩάϥϚ͕ ͍ͬͯΔ͜ͱΛΓ͍ͨ ύʔτφʔͷࣄΛΓ͍ͨ ࣗͰαʔϏεΛ࡞Γ͍ͨ ࢀՃͷಈػ
3BJMT (JSMT .PSF ຖ݄ճ։࠵ ܧଓ
ίϛϡχςΟΛܗͯ͠ܧଓ։࠵ ॳճͷࢀՃऀ͕ίʔνͱͯ͠ࢀՃ Ռ
IUUQCMPHQBQJQVQFQVKJJDPN தଜҮ͞Μ!TPNBMJ IUUQTHJUIVCDPN:BZPJ,BSVUB IUUQXXXGBDFCPPLDPNZBZPJUBLFNVSB (VONB3VCZ,BJHJ !TIPLPMBUFEBZ
3BJMT5FSBLPZB IUUQSBJMTUFSBLPZBJP
ֶੜ͚ͨ3BJMTֶशϫʔΫγϣοϓ ݄ʹ౦ژʹͯୈճɺͦͷޙ݄ʹ։࠵ɻ࣍ճ݄ʹ։࠵ɻ ࢀՃऀʙਓ ֶੜࣾձਓ ɺࢣൣ ίʔν ਓ ݱࡏಛʹߴઐͷֶੜɾଔۀੜΛରʢߴઐΧϯϑΝϨϯείϛϡχςΟͱڞ࠵ʣ ࢀՃऀશࠃ͔Β 3BJMTࣉࢠ
ߴઐߴߍ େʹ͋ͨΔؒͷڭҭػؔ ʙࡀ ߴઐ ใܥͷֶՊ Ͱϓϩάϥϛϯάͷ࣮शΛଟ͘ͷ࣌ؒΛ͔͚ͯऔΓΉ ͔͠͠8FCٕज़ͷߨٛɺ3VCZͷߨٛগͳֶ͍ߍ͕΄ͱΜͲ ࠷ઌͷ8FCٕज़ΛֶͿػձΛͭ͘Γ͍ͨ !
ڭ৬һ͚ͨϫʔΫγϣοϓΛ։࠵͢Δ͜ͱඪ ಠཱߦ๏ਓࠃཱߴઐֶߍػߏڠྗΛ͓ئ͍ ࢣൣͷߍ࿈བྷ 3BJMTࣉࢠͷ։࠵ಈػ
Ͱߦ͏ϫʔΫγϣοϓ ! 3BJMT(JSMTࢿྉ େֶߨٛग़ு൛ (JU)VC1VMM3FRVFTUಓ ίʔυେتར ༰
؆୯ͳ3BJMTΞϓϦΛࢣൣ͕༻ҙ͓ͯ͘͠ ͦ͜ػೳՃ͢ΔܗͰࢀՃऀQVMMSFRVFTU ػೳ Ճئ͍ Λ͢Δ ࢣൣͦΕΛ֬ೝ͠ɺίʔυϨϏϡʔΛ͠ɺϚʔδ͢Δ (JU)VC1VMM3FRVFTUಓ
ૂ͍ ؆୯ͳػೳΛ࣮͠ɺ3BJMTͰͷ։ൃΛ࣮ફ ࢣൣ͕ώϯτΛग़ͨ͠ΓɺҰॹʹ։ൃͨ͠Γ͢Δ 044ߩݙʹॏཁͳٕज़(JUIVCQVMMSFRVFTUΛ࣮ମݧ ා͞Λͳ͘͢ɺ׳ΕΔ
(JU)VC1VMM3FRVFTUಓ $PNNJU-PH ࢣൣ͕ϕʔεʹͳΔ ΞϓϦΛ࡞ ࢀՃऀ͕৽ػೳ࣮ QVMMSFRVFTUΛૹΔ ࢣൣ͕NFSHF ‑PME ‐OFX
ࢀՃऀͷ QVMMSFRVFTU (JU)VC 1VMM3FRVFTU ಓ
(JU)VC 1VMM3FRVFTU ಓ ࢣൣͷରԠ
ίʔυେتར TFSWJDFECZ!TPSB@I
Βͳ͍ॻ͖ํ͕ग़͖ͯͯʢࢣൣʣษڧʹͳΔ ඞཁʹԠͯ͡ϦϑΝϨϯεΛࢀর͢ΔͳͲ ࢣൣαʔϏεͷ੬ऑੑ୳͠ʹۈ͠Έ͕ͪ ηΩϡϦςΟٕज़ʹ͍ͭͯղઆ ίʔυେتར
Ռ ࣗͰ࡞͍͚ͬͯΔͨΊͷجૅྗशಘ ࢣൣͱͷͭͳ͕Γ ࢀՃऀ͔Βࢣൣ 3BJMTࣉࢠɹ·ͱΊ ඪ ઌੜͷڭҭࢧԉ
IUUQXXXqJDLSDPNQIPUPTJHBJHB IUUQXXXqJDLSDPNQIPUPTITCU 3BJMT(JSMT 3BJMTࣉࢠ Ұڮେֶߨٛ-FDUVSFJO)JUPUTVCBTIJ6OJW ڞ௨ͷ՝
͓קΊͷ3BJMTڥߏஙํ๏ ͪ͜Βͷϖʔδ͕·ͱ·͍͔ͬͯͯΓ͍͢Ͱ͢ɻIUUQSBJMTHJSMTKQJOTUBMM 8JOEPXT3BJMT*OTUBMMFSIUUQSBJMTJOTUBMMFSPSH 8JOͰڥࠩʹΑΔτϥϒϧ΄΅ͳ͍ OBUJWFFYUFOTJPOHFNͷΠϯετʔϧͰҰ෦ࣦഊ͢Δͷ͋Δ .BD3BJMT*OTUBMMFSPSSCFOWIPNFCSFX τϥϒϧ͕ى͖Δͷ.BD͕ଟ͍
࣋ͪࠐΈ࣌ͷঢ়ଶ͕·ͪ·ͪ ! Α͘ى͖Δτϥϒϧ &YFD+43VOUJNF&SSPS 0QFO44-ূ໌ॻظݶΕIUUQRJJUBDPNTBUPDPDPBJUFNTCEBEFFGG τϥϒϧରԠ͜ͷϖʔδʹࣄྫ͕ू·͍ͬͯ·͢ɻIUUQTHJUIVCDPNSBJMTHJSMTKQSBJMTHJSMTKQHJUIVCDPNXJLJ5SPVCMFTIPPUJOH ՝3BJMT։ൃڥߏஙͷ͠͞
τϥϒϧൃੜ࣌ʹରԠͰ͖ΔਓͱҰॹʹڥߏங ! 7JSUVBM.BDIJOF-JOVY 7JSUVBM#PY8JO.BD-JOVYڥͰແྉͰ͑Δ7.ڥ ༻ҙ͕ͨ͠ɺࢲͷߨٛͷֶੜ͋·Γͬͯ͘Εͳ͔ͬͨ 3BJMTΠϯετʔϧࡁ*NBHFΛެ։͍ͯ͠·͢ɻIUUQTHJUIVCDPNJHBJHBIJUPUTVCBTIJSVCZ
! $4" /JGUZ1BB4 IUUQDTBOJGUZDPN 8FCϒϥβ্͚ͩͰ3BJMTΞϓϦͷ։ൃ͕Մೳ ݱࡏ3BJMTରԠ ڥߏஙͷରԠ
ڞ௨ͷϙΠϯτ
ϙΠϯτɿ ΰʔϧະདྷʹઃఆ
ΰʔϧͲ͔͜ʁ ֶߍͷ߹ ݄ ߨٛ։࢝ ݄ લظमྃ ݄ ޙظमྃ
ֶੜ ݄ ߨٛ։࢝ ݄ લظमྃ ݄ ޙظमྃ ͦͷઌʹ͘͘ଓ͘ະདྷ͕ ࣾձਓ ܧଓ͢Δɺ͍͔ͭࢥ͍ग़ͯ͠Β͏
ΰʔϧະདྷʹઃఆ
ͨͷ͠͞ ࣮ࡍʹಈ͔ͯ͠ޭମݧ ͨͷ͍͠งғؾ ܧଓ͢Δڥ ࣭Ͱ͖Δਓɺ͕ؒͦʹ͍Δ ܧଓ͢Δɺ͍͔ͭࢥ͍ग़ͯ͠Β͏ͨΊʹ
ͨͷ͠͞ɺޭମݧ ఱؾ༧ใ 1VTI௨ ! ࣗͷͨΊͷ ϓϩάϥϛϯά ! 3VCZͰߦఔ ࣌ؒఔͰ࡞Մೳ IUUQTTQFBLFSEFDLDPNJHBJHBJQIPOFQVTIOPUJpDBUJPO
3BJMT(JSMT ը૾ߘ ϛχϒϩάΞϓϦ ! ͷϫʔΫγϣοϓ Ͱ࡞ɺ1BB4Ͱެ։
ܧଓ͢Δڥ GBDFCPPLHSPVQ ࣭ɾ૬ஊ ! ܧଓ։࠵ ! ͭͳ͕Γ ίʔνͱ ࢀՃऀͱ
ϙΠϯτɿ ॴ͕͋Δͱ͍͏͜ͱͷॏཁੑ
ॴ͕͋Δ͜ͱॏཁ ࠷ॳͷͱ͔͔ͬΓ͕Ұ൪͍͠ ڥߏங࣌ͷτϥϒϧ ษڧํ๏ΛΔ
Կ͕Ͱ͖Δͷ͔ΛΔɺମݧ͢Δ ! ʮϓϩάϥϛϯάͱ͍͏ݴ༿ฉ͍ͨ͜ͱ͕͕͋ͬͨɺͲ͜ߦ ͚श͏͜ͱ͕Ͱ͖Δͷ͔͔Βͳ͔ͬͨɻ͔ͩΒ͜ͷߨٛΛΈ ͚ͭͯɺऔΓ͍ͨͱࢥͬͨɻʯ ! ʮϓϩάϥϛϯάʹڵຯ͕͕͋ͬͨɺॳ৺ऀͰͦͷ͖͔͚͕ͬ ͔ͭΊͳ͔ͬͨͷͰɺ͜ͷߨٛΛ͖͔͚ͬʹ͠Α͏ͱࢥͬͨɻʯ डߨֶͨ͠ੜͷ
࣍ͷҰา
ಉ྅ɾؒͱษڧձɺಡॻձɺ͓ձ ͓ۙ͘ͷΠϕϯτɺίϛϡχςΟ IUUQTHJUIVCDPNSVCZOPLBJPGpDJBMXJLJ3FHJPOBM3VCZJTU.FFU6Q ֶͼΛͭͬͯ͘ΈΔ ! ڭࡐɺࢿྉΛ࡞ͯ͠ެ։ ! ӳޠࢿྉͷ༁ 3BJMT(JSMTIUUQTHJUIVCDPNSBJMTHJSMTKQSBJMTHJSMTKQHJUIVCDPN
3BJMT5VUPSJBMIUUQSBJMTUVUPSJBMKQ ڭ͑ͯΈ͍ͨͱࢥͬͨํ࣍ͷҰา
͓ۙ͘ͷΠϕϯτɺίϛϡχςΟ IUUQTHJUIVCDPNSVCZOPLBJPGpDJBMXJLJ3FHJPOBM3VCZJTU.FFU6Q ࢿྉɾຊ େֶߨٛࢿྉ ڥߏங 3VCZ 3BJMT IUUQTHJUIVCDPNJHBJHBIJUPUTVCBTIJSVCZ
3VCZ ͨͷ͍͠3VCZୈ൛*4#/ ελʔτΞοϓ3VCZ*4#/ 3BJMT 3BJMT(JSMTࢿྉIUUQSBJMTHJSMTKQ 3BJMT5VUPSJBMIUUQSBJMTUVUPSJBMKQ 3BJMT(VJEFTIUUQHVJEFTSVCZPOSBJMTPSH ͜Ε͔Β3VCZΛ࢝ΊΔํ࣍ͷҰา
࠷ޙʹ
ʮΈͳ͞Μ͕3VCZͱΓ߹ͬͨ ͖͔͚ͬͳΜͰ͔͢ʁʯ ͜ͷൃදͷ࠷ॳͷ࣭ ʮΈͳ͞Μ3VCZΛ Ͳ͏ֶͬͯͼ·͔ͨ͠ʁʯ l)PXEJEZPVNFFU3VCZ z l)PXEJEZPVMFBSO3VCZ z
ࣾձਓʹͳΓϓϩάϥϚʹͳͬͨͱ͖ʹɺ ઌഐ͕3VCZͱU%JBSZΛ͔͍ͭͬͯͨɻ ࢲͷ͑ ձࣾ3VCZձٞษڧձͰ ͍ΖΜͳਓʹٕज़Λڭ͑ͯΒͬͨɻ ͦͷ͕࣌ؒͱͯͨͷ͍͠ͷͩͬͨɻ ͔ͩΒͨ͘͞Μͷਓʹ3VCZΛͬͯ΄͍͠ ͦͷͨΊͷॴΛఏڙ͍͖͍ͯͨ͠
ΑΓଟ͘ͷਓ͕ϓϩάϥϛϯάͰࣗͷ Λղܾ͠ɺرΛ͑ΔΑ͏ʹͳ͍ͬͯ͘ ! 3VCZͷͨͷ͠͞Λମݧ͢Δॴ ͖ͬͱ·͢·͢૿͍͑ͯ͘ 3VCZΑΓଟ͘ͷਓͷखʹ
-FXJTڭतɺᖛ࡚͞Μɺ͞ΜɺҰڮେֶͷडߨֶੜͷΈͳ͞Μ χϑςΟגࣜձࣾླ͞Μɺٶ͞Μ ৬ͷΈͳ͞Μ 3BJMT(JSMT 3BJMTࣉࢠͷελοϑɺίʔνɺࢀՃऀͷΈͳ͞Μ ँࣙ5IBOLT -JOL େֶߨٛࢿྉIUUQTHJUIVCDPNJHBJHBIJUPUTVCBTIJSVCZ େֶߨٛʹ͍ͭͯৄ͘͠IUUQTTQFBLFSEFDLDPNJHBJHBLZVTIV UXJUUFSJHBJHB
HJUIVCJHBJHB U%JBSZIUUQJHBSBTIJLVOJBLJOFU BCPVUNF
2VFTUJPOʁ ࣭ͨ͠ํ,VOJBLJSCεςοΧʔ͋͛͞͠·͢
͜ͷ1ͷRubyΤίγεςϜͷϗοττϐοΫͷ1ͭ ৽ֶ͍͠ͼͷ͕ͨ͘͞ΜͰ͖ͨ