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
ruby17
Search
Kuniaki IGARASHI
September 28, 2013
Technology
1
3.5k
ruby17
第17回 Rails開発環境構築
2013.10.10
Kuniaki IGARASHI
September 28, 2013
Tweet
Share
More Decks by Kuniaki IGARASHI
See All by Kuniaki IGARASHI
KaigiOnRails2024
igaiga
11
15k
RuboSensei
igaiga
0
260
Shibuya.rb-2023-04-27-igaiga
igaiga
1
490
Ginza Rails27 igaiga
igaiga
9
13k
tork09igaiga
igaiga
2
310
Road to white mages
igaiga
1
660
Road to white mages
igaiga
8
3.9k
dive_into_code_rails_ruby_books
igaiga
0
220
ginza_rails_vol3_igaiga
igaiga
0
4.9k
Other Decks in Technology
See All in Technology
ExaDB-XSで利用されているExadata Exascaleについて
oracle4engineer
PRO
3
260
エンジニアリング価値を黒字化する バリューベース戦略を用いた 技術戦略策定の道のり
kzkmaeda
6
2.8k
Ruby on Railsで持続可能な開発を行うために取り組んでいること
am1157154
3
160
Snowflake ML モデルを dbt データパイプラインに組み込む
estie
0
100
アジャイルな開発チームでテスト戦略の話は誰がする? / Who Talks About Test Strategy?
ak1210
1
610
脳波を用いた嗜好マッチングシステム
hokkey621
0
290
ABWG2024採択者が語るエンジニアとしての自分自身の見つけ方〜発信して、つながって、世界を広げていく〜
maimyyym
1
180
OSS構成管理ツールCMDBuildを使ったAWSリソース管理の自動化
satorufunai
0
650
AWSではじめる Web APIテスト実践ガイド / A practical guide to testing Web APIs on AWS
yokawasa
8
710
Amazon Q Developerの無料利用枠を使い倒してHello worldを表示させよう!
nrinetcom
PRO
2
120
いまからでも遅くない!コンテナでWebアプリを動かしてみよう!コンテナハンズオン編
nomu
0
160
IoTシステム開発の複雑さを低減するための統合的アーキテクチャ
kentaro
1
120
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.1k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
27
1.9k
Music & Morning Musume
bryan
46
6.4k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
The Cost Of JavaScript in 2023
addyosmani
47
7.4k
Statistics for Hackers
jakevdp
797
220k
Fireside Chat
paigeccino
34
3.2k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7.1k
Building Adaptive Systems
keathley
40
2.4k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
430
Transcript
3VCZPO3BJMTߨٛ ୈճ3BJMT։ൃڥߏங ޒेཛྷ໌ UXJUUFSJHBJHB IUUQXXXGBDFCPPLDPNLVOJBLJJHBSBTIJ BUҰڮେֶ χϑςΟגࣜձࣾدෟߨٛ ࣾձՊֶʹ͓͚Δใٕज़ͱ ίϯςϯπ࡞*7
χϑςΟגࣜձࣾ ఏڙ
ޒेཛྷ໌ ߨࢣ גࣜձࣾTQJDFMJGF UXJUUFSJHBJHB IUUQTHJUIVCDPNJHBJHB IUUQXXXGBDFCPPLDPNLVOJBLJJHBSBTIJ
ᖛ࡚݈ޗ 5FBDIJOH"TTJTUBOU qVYqFY JOD ถࠃ๏ਓ UXJUUFSINTL IUUQTHJUIVCDPNINTL IUUQXXXGBDFCPPLDPNIBNBDIBOH
ࠓΔ͜ͱ ߨٛʹ͍ͭͯ 3BJMT։ൃڥͮ͘Γ ͡Ίͯͷ8FCΞϓϦͮ͘Γ
ධՁํ๏ ԋश՝Λఏग़͍͖ͯͨͩ͠ධՁΛߦ͍·͢ɻ ·ͨɺतۀͷߩݙධՁͷରͱ͠·͢ɻ ग़੮͕तۀճͷͷʹຬͨͳ͍߹ʮ'ʯͱ͠·͢ɻ
ࣗश༻3BJMTࢿྉ ಛʹڭՊॻ͍·ͤΜ͕ɺࣗश༻ʹҎԼͷࢿྉΛ͓קΊ͠·͢ɻ 3BJMT5VUPSJBM XFC IUUQSBJMTUVUPSJBMKQ WFSTJPO 3BJMT(VJEF XFC &OHMJTI
IUUQHVJEFTSVCZPOSBJMTPSH 3BJMTʹΑΔΞδϟΠϧ8FCΞϓϦέʔγϣϯ։ൃୈ൛ IUUQXXXBNB[PODPKQEQ վగ৽൛جૅ3VCZPO3BJMT IUUQXXXBNB[PODPKQEQ ͨͷ͍͠3VCZ IUUQXXXBNB[PODPKQEQ
ߨٛࢿྉஔ͖ աڈͷࢿྉ͕%-Ͱ͖·͢ɻ IUUQTHJUIVCDPNJHBJHBIJUPUTVCBTIJSVCZ
ࡶஊɾ࣭༻GBDFCPPLάϧʔϓ ޙظͦͷ··͑·͢ɻࢥ͍ग़ͨ͠ͱ͖ʹࡶஊ࣭ͯ͠Βͬͯ0,ɻ अຐͳΑ͏ͳΒάϧʔϓ͔Βୀձ͍ͯͩ͘͠͞ɻ IUUQTXXXGBDFCPPLDPNHSPVQTIJUPUTVCBTIJSC ɾՃೖඇՃೖࣗ༝Ͱ͢ ɾՃೖඇՃೖʹؔ͠·ͤΜ ɾࢀՃऀҰཡެ։͞Ε·͢ ɾॻ͖ࠐΈࢀՃऀͷΈݟ͑·͢ ɾرऀΞΫηεͯ͠ࢀՃਃ͍ͯͩ͘͠͞ ɾࡶஊɺ࣭ɺٞͳͲԿͰؾʹͤͣͲ͏ͧʙ
ɾ࣭ʹ͑ΒΕΔਓ͍͑ͯ͋͛ͯͩ͘͞ ɾߨࢣਞ͓͑͠·͢ ɾೖͬͨΒܰࣗ͘ݾհ͓Ͷ͕͍͠·͢
3VCZPO3BJMTͱ 3VCZͰॻ͔Εͨ8FCΞϓϦϑϨʔϜϫʔΫ
$00,1"% 3BJMT
৯ϩά 3BJMT
8FC1BZ 3BJMT
0INZ(MBTTFT 3BJMT
UNJY 3BJMT
͋ͱͰ 3BJMT
UXJUUFSݩ3BJMT
3VCZͷجૅ͕ʹ͖ͭɺ؆୯ͳϓϩάϥϜΛॻ͚Δ ɹXJLJQFEJBΞΫηεղੳ࣮श 3VCZPO3BJMTͷجૅ͕ʹ͖ͭɺ؆୯ͳΞϓϦΛ࡞ΕΔ 3VCZʹؔ͢Δෆ໌͕͋ͬͨͱ͖ʹௐΒΕΔ ͜ͷߨٛΛड͚Δͱ ͜Ε͕Ͱ͖ΔΑ͏ʹͳΔ ༧ఆ
3VCZͷجૅ͕ʹ͖ͭɺ؆୯ͳϓϩάϥϜΛॻ͚Δ ɹXJLJQFEJBΞΫηεղੳ࣮श 3VCZPO3BJMTͷجૅ͕ʹ͖ͭɺ؆୯ͳΞϓϦΛ࡞ΕΔ 3VCZʹؔ͢Δෆ໌͕͋ͬͨͱ͖ʹௐΒΕΔ ͜ͷߨٛΛड͚ͨΒ ͜Ε͕Ͱ͖ΔΑ͏ͳͬͨ Նֶظ
3VCZͷجૅ͕ʹ͖ͭɺ؆୯ͳϓϩάϥϜΛॻ͚Δ ɹXJLJQFEJBΞΫηεղੳ࣮श 3VCZPO3BJMTͷجૅ͕ʹ͖ͭɺ؆୯ͳΞϓϦΛ࡞ΕΔ 3VCZʹؔ͢Δෆ໌͕͋ͬͨͱ͖ʹௐΒΕΔ ͜ͷߨٛΛड͚ͨΒ ͜Ε͕Ͱ͖ΔΑ͏ͳΔ ౙֶظ
͜Μͳ͜ͱΛΔ༧ఆͰ͢ 3BJMTͷجૅ ࣸਅΞοϓϩʔυΞϓϦ࡞Γ ࣗ࡞ΞϓϦͷωοτެ։ ࣗ༝՝ΞϓϦ੍࡞ԋश ΄͔ߟ͑த
IUUQXXXqJDLSDPNQIPUPTVTGCQT ࡞ͬͨͷཤྺॻʹॻ͚·͢ɻ γεςϜؔ࿈ͷ৬Λड͚Δਓ͚
લظͷ༰Λཧղ͍ͯ͠Δ͜ͱΛલఏ ʹͯ͠ਐΊ·͢ͷͰɺલظΛडߨͯ͠ ͍ͳ͍߹͍͠ͱࢥ͍·͢ɻ डߨ͞ΕΔ߹ɺߨٛࢿྉஔ͖ϖ ʔδΛಡΜͰલظΛࣗश͓͍ͯͯ͠ ͍ͩ͘͞ɻ डߨ݅ IUUQTHJUIVCDPNJHBJHBIJUPUTVCBTIJSVCZ
ٳߨ࿈བྷ ݄ ͷߨٛ ٳߨͰ͢ɻ
ҎԼͷڥߏஙΛߦ͍·͢ɻ ڥߏங 8JOEPXT .BD 3BJMT*OTUBMMFS·ͨ7.6CVOUV ͲͪΒΛ͔ͬͯ·Θͳ͍Ͱ͢ɻ ՆֶظͰڥߏஙͨ͠ํͦͷڥʹগ͠ίϚϯυΛଧͭ͜ ͱͰڥߏஙͰ͖·͢ɻ ʢৄ͘͠ޙड़ͷʮڥߏஙࢿྉʯࢀরʣ HFNVQEBUFSBJMTOPSJOPSEPD
SBJMTW ֬ೝ 3BJMTYͱग़Ε0, ࢿྉ࡞࣌࠷৽
ҎԼͷόʔδϣϯΛఆ͍ͯ͠·͕͢ɺߨٛ ظؒதʹόʔδϣϯΞοϓ͢ΔͷͰ৽͍͠ ͷʹมߋʹͳΔ͔͠Ε·ͤΜɻ 3VCZPO3BJMT։ൃڥ 3VCZQPSQ 3VCZPO3BJMT ݄ݱࡏͷ࠷৽
3VCZ 3BJMTڥߏங ͷࢿྉΛݟͯڥߏஙΛ͍ͯͩ͘͠͞ɻ ˞͏·͘Ͱ͖ͳ͍߹ϑΥϩʔ͠·͢ͷͰ Λ͔͚͍ͯͩ͘͞ IUUQTTQFBLFSEFDLDPNJHBJHBCVJMEJOHSVCZEFWFOW ڥߏஙࢿྉ
8FCΞϓϦͷΈͷ ؆୯ͳઆ໌
8FC4FSWFS 8FC"QQ #SPXTFS ϦΫΤετ 63-IUUQDPPLQBEDPN 8FCΞϓϦͷجຊಈ࡞ IUUQDPPLQBEDPN ϒϥβʹ63-Λ ೖྗͯ͠&OUFS ϦΫΤετ͕ඈͼ·͢ɻ
8FC4FSWFS 8FC"QQ #SPXTFS ϦΫΤετ Ϩεϙϯε 63-IUUQDPPLQBEDPN )5.- 8FCΞϓϦͷجຊಈ࡞ IUUQDPPLQBEDPN Ϩεϙϯεͱͯ͠)5.-͕ฦͬͯ͘Δ
)5.- )ZQFS5FYU.BSLVQ-BOHVBHF 8FCϖʔδΛهड़͢ΔͨΊͷݴޠ
ϒϥβͰ)5.-දࣔ ӈΫϦοΫ͔ΒιʔεΛදࣔ
8FC4FSWFS 8FC"QQ #SPXTFS ϦΫΤετ Ϩεϙϯε 63-IUUQDPPLQBEDPN )5.- ϒϥβͷओͳػೳ IUUQDPPLQBEDPN ϦΫΤετΛඈ͢
ϨεϙϯεͰΒͬͨ)5.-Λਓ͕ݟΔܗࣜͰදࣔ͢Δ
8FC4FSWFS 8FC"QQ #SPXTFS ϦΫΤετ Ϩεϙϯε )5.- ΠϯλʔωοτͷΞΫηε 8FC4FSWFSωοτͷ͜͏ʹ͋Δ *OUFSOFU
8FC4FSWFS 8FC"QQ #SPXTFS ϦΫΤετ Ϩεϙϯε 63- )5.- ։ൃ࣌ͷߏ ͷϚγϯͷதͰ։ൃɺΞΫηεՄೳͰ͢ɻ ࣗͷ1$
8FC4FSWFS 8FC"QQ #SPXTFS ϦΫΤετ Ϩεϙϯε 63- )5.- 3BJMTΞϓϦ ͜Ε͔Β࡞Δͷ͜ͷ෦ ࣗͷ1$
3BJMT"QQ ϒϥβͰಈ࡞ ֬ೝ͠ͳ͕Βਐ Ί·͢ɻ
Ͱɺ3BJMTΞϓϦΛ ͭͬͯ͘Έ·͠ΐ͏
͡Ίͷ 8FCΞϓϦͮ͘Γ
3BJMTΞϓϦΛͭͬͯ͘ಈ͔ͯ͠ΈΔ 3BJMTΞϓϦΛͭ͘Δ 3BJMTΞϓϦ 8FC4FSWFS Λىಈ͢Δ ϒϥβ͔ΒΞΫηε͢Δ
3BJMTΞϓϦΛͭ͘Δ SBJMTOFXTBNQMF@BQQ ུ SBJMTOFXΞϓϦ໊ Ͱ3BJMTΞϓϦΛ࡞Γ·͢ɻ 3BJMT͕ΞϓϦ໊ͷϑΥϧμΛ࡞ ΓɺͦͷதʹඞཁͳϑΝΠϧΛͨ͘ ͞Μ࡞͠·͢ɻը໘ʹදࣔ͞ΕΔ ͷ࡞͞ΕͨϑΝΠϧ܈Ͱ͢ɻ ͦͷޙɺඞཁͳHFNΛࣗಈͰηο
τΞοϓ͠·͢ɻ ͪΐͬͱ͔͔࣌ؒΓ·͢ɻ ్தͰ&OUFSZPVSQBTTXPSEUP JOTUBMMUIFCVOEMFE3VCZ(FNTUP ZPVSTZTUFN ͱݴΘΕͨΒύιίϯͷύεϫʔυΛೖྗ͠ ͍ͯͩ͘͞ɻ
8FC4FSWFSͱ3BJMTΞϓϦΛىಈͯ͠ɺϒϥβ͔ΒΞΫηε Մೳʹ͠·͢ɻ ىಈதTIFMM͔ΒίϚϯυͳͲೖྗͰ͖ͳ͍ͷͰɺඞཁͳ߹ ผͷλʔϛφϧը໘Λ։͖·͢ɻ ऴྃ$USMΩʔΛԡ͠ͳ͕ΒDΩʔΛԡ͍ͯͩ͘͠͞ɻ 8JOEPXTͰ$USM DͰऴྃ͠ͳ͍߹ɺ$USM 1"64&Λࢼ͍ͯͩ͘͠͞ɻ ͦΕͰμϝͳ߹ɺλʔϛφϧը໘Λด͍ͯͩ͘͡͞ɻ DETBNQMF@BQQ
CVOEMFFYFDSBJMTTFSWFS 8FC4FSWFSͱ3BJMTΞϓϦΛىಈ͢Δ TFSWFSTͱ ུ͢͜ͱՄೳͰ͢ɻ
͜Μͳը໘͕ग़Ε3BJMTΞϓϦΞΫηεޭͰ͢ɻ ։ൃ͢ΔͨΊͷา͕౿Έग़͍ͤͯΔ͜ͱʹͳΓ·͢ɻ IUUQMPDBMIPTU ϒϥβ͔ΒҎԼͷ63-ʹΞΫηε͢Δ
MPDBMIPTU ಛผͳΞυϨεͰ͢ɻࣗͷϚγϯΛࢦ͠·͢ɻ IUUQMPDBMIPTU 63-ͷઆ໌ ϙʔτ൪߸Ͱ͢ɻ൪ϙʔτΛࢦ͠·͢ɻ ΞυϨε ϙʔτ ϙʔτɺಉ͡ΞυϨεͰ௨৴ઌΛಛఆ͢Δ൪߸Ͱ͢ɻ ྫ͑ɺΞυϨε͕Ӻͷ໊લɺϙʔτ͕ӺͷϗʔϜ˓൪ઢɺ
ͱΠϝʔδ͢Δͱ͔Γ͍͔͢ɻ
8FC4FSWFS 8FC"QQ #SPXTFS ϦΫΤετ IUUQMPDBMIPTU Ϩεϙϯε )5.- ࣗͷ1$ MPDBMIPTU CVOEMFFYFDSBJMTT
͖ͬ͞ͷΞΫηεͷΠϝʔδਤ TBNQMF@BQQ
͍ͭͮͯɺ ؆୯ͳϖʔδΛ࡞ͬͯΈ·͢ɻ σϞ։ൃͷͨΊͷͻͳܗΛ࡞ΔͨΊͷTDBGGPME ͱ͍͏ػೳΛར༻͠·͢ɻ͜ΕΛ͏ͱɺҰؾʹϒ ϩάͷΑ͏ͳػೳΛ࡞Δ͜ͱ͕Ͱ͖·͢ɻ ˞TDBGGPMEͱ͍͏ҙຯͰ͢ɻ ࣄݱͰ·ΕͯΔ͋ͷͰ͢
CVOEMFFYFDSBJMTHTDBGGPMECPPLUJUMFTUSJOHNFNPUFYU ؆୯ͳϖʔδΛͭͬͯ͘ΈΔ CVOEMFFYFDSBLFECNJHSBUF TDBGGPMEͰϖʔδΛͭ͘Δ σʔλΛ͠·͏σʔλϕʔεΛͭ͘Δ IUUQMPDBMIPTUCPPLT ϒϥβ͔ΒҎԼͷ63-ʹΞΫηε͢Δ ຊͷλΠτϧͱϝϞΛొͰ͖ΔϖʔδΛͭ͘Γ·͢ɻ CVOEMFFYFDSBJMTT ˞SBJMTTFSWFSΛ$USMDͰఀࢭ͍ͯͨ͠Βɺ·ͨىಈ͢Δ
λʔϛφϧͰSBJMTTFSWFS͕ىಈ͍ͯ͠Δ߹ɺऴྃ͢Δ͔ɺผͷλʔ ϛφϧΛ։͍͍ͯͩ͘͞ɻTBNQMF@BQQϑΥϧμҠಈ͓͖ͯ͠·͢ɻ ʢ͜ͷϑΥϧμͷ͜ͱΛ3BJMT3PPUͱݺͼ·͢ɻʣ ˞HHFOFSBUFͷུͰ͢ɻ
͜Μͳը໘͕ग़ΕޭͰ͢ɻ/FX#PPLϦϯΫ͔ Βొͨ͠Γฤूͨ͠Γআͨ͠Γͯ͠Έ͍ͯͩ͘͞ɻ IUUQMPDBMIPTUCPPLT ϒϥβ͔ΒҎԼͷ63-ʹΞΫηε͢Δ
3BJMT3PPUϑΥϧμҠಈ TBNQMF@BQQϑΥϧμҠಈ͓͖ͯ͠·͢ɻ TBNQMF@BQQϑΥϧμΛ3BJMT3PPUͱݺͼ·͢ɻ CVOEMFJOTUBMM 3BJMTΞϓϦͰ͏HFNΛηοτΞοϓͯ͘͠ΕΔ͓·͡ͳ͍ɻ ಉ͡ΞϓϦΛ࿈ଓͯ͠ಈ͔͍ͯ͠Δ߹ෆཁͰ͢ɻ 8FC4FSWFSͱ3BJMTΞϓϦΛىಈ͢Δ ϒϥβ͔ΒΞΫηε͢Δ 3BJMTΞϓϦΛճҎ߱ʹىಈ͢Δ߹ͷखॱ CVOEMFJOUBMM
IUUQMPDBMIPTUCPPLT CVOEMFFYFDSBJMTT CVOEMFJOTUBMMCVOEMFͱলུՄೳͰ͢ɻ
2VFTUJPO
None
ࢀߟࢿྉ
BCD ࣮ߦ݁Ռ QVUTBCD ॻࣜ 3VCZίʔυ ࣮ߦ݁Ռ TIFMMίϚϯυ MT Q
จதͰͰॻ͖·͢
ࣗश༻3BJMTࢿྉ ಛʹڭՊॻ͍·ͤΜ͕ɺࣗश༻ʹҎԼͷࢿྉΛ͓קΊ͠·͢ɻ 3BJMT5VUPSJBM XFC IUUQSBJMTUVUPSJBMKQ WFSTJPO 3BJMT(VJEF XFC &OHMJTI
IUUQHVJEFTSVCZPOSBJMTPSH 3BJMTʹΑΔΞδϟΠϧ8FCΞϓϦέʔγϣϯ։ൃୈ൛ IUUQXXXBNB[PODPKQEQ վగ৽൛جૅ3VCZPO3BJMT IUUQXXXBNB[PODPKQEQ ͨͷ͍͠3VCZ IUUQXXXBNB[PODPKQEQ
ߨٛࢿྉஔ͖ աڈͷࢿྉ͕%-Ͱ͖·͢ɻ IUUQTHJUIVCDPNJHBJHBIJUPUTVCBTIJSVCZ
ࡶஊɾ࣭༻GBDFCPPLάϧʔϓ IUUQTXXXGBDFCPPLDPNHSPVQTIJUPUTVCBTIJSC ɾՃೖඇՃೖࣗ༝Ͱ͢ ɾՃೖඇՃೖʹؔ͠·ͤΜ ɾࢀՃऀҰཡެ։͞Ε·͢ ɾࢀՃऀελοϑ ߨࢣɾ5" ͱࡢɺࠓͷडߨऀͰ͢ ɾॻ͖ࠐΈࢀՃऀͷΈݟ͑·͢ ɾرऀΞΫηεͯ͠ࢀՃਃ͍ͯͩ͘͠͞
ɾࡶஊɺ࣭ɺٞͳͲԿͰؾʹͤͣͲ͏ͧʙ ɾ࣭ʹ͑ΒΕΔਓ͍͑ͯ͋͛ͯͩ͘͞ ɾߨࢣਞ͓͑͠·͢ ɾೖͬͨΒܰࣗ͘ݾհ͓Ͷ͕͍͠·͢