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
9
12k
RuboSensei
igaiga
0
240
Shibuya.rb-2023-04-27-igaiga
igaiga
1
470
Ginza Rails27 igaiga
igaiga
9
13k
tork09igaiga
igaiga
2
290
Road to white mages
igaiga
1
640
Road to white mages
igaiga
8
3.9k
dive_into_code_rails_ruby_books
igaiga
0
210
ginza_rails_vol3_igaiga
igaiga
0
4.9k
Other Decks in Technology
See All in Technology
大幅アップデートされたRagas v0.2をキャッチアップ
os1ma
2
520
5分でわかるDuckDB
chanyou0311
10
3.2k
レンジャーシステムズ | 会社紹介(採用ピッチ)
rssytems
0
150
Snykで始めるセキュリティ担当者とSREと開発者が楽になる脆弱性対応 / Getting started with Snyk Vulnerability Response
yamaguchitk333
2
180
ブラックフライデーで購入したPixel9で、Gemini Nanoを動かしてみた
marchin1989
1
520
OpenAIの蒸留機能(Model Distillation)を使用して運用中のLLMのコストを削減する取り組み
pharma_x_tech
4
550
新機能VPCリソースエンドポイント機能検証から得られた考察
duelist2020jp
0
220
サイバー攻撃を想定したセキュリティガイドライン 策定とASM及びCNAPPの活用方法
syoshie
3
1.2k
C++26 エラー性動作
faithandbrave
2
720
Storage Browser for Amazon S3
miu_crescent
1
140
社内イベント管理システムを1週間でAKSからACAに移行した話し
shingo_kawahara
0
180
ずっと昔に Star をつけたはずの思い出せない GitHub リポジトリを見つけたい!
rokuosan
0
150
Featured
See All Featured
Dealing with People You Can't Stand - Big Design 2015
cassininazir
365
25k
Automating Front-end Workflow
addyosmani
1366
200k
Optimizing for Happiness
mojombo
376
70k
Scaling GitHub
holman
458
140k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
127
18k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
8.3k
RailsConf 2023
tenderlove
29
940
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
28
900
Building Adaptive Systems
keathley
38
2.3k
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" ͱࡢɺࠓͷडߨऀͰ͢ ɾॻ͖ࠐΈࢀՃऀͷΈݟ͑·͢ ɾرऀΞΫηεͯ͠ࢀՃਃ͍ͯͩ͘͠͞
ɾࡶஊɺ࣭ɺٞͳͲԿͰؾʹͤͣͲ͏ͧʙ ɾ࣭ʹ͑ΒΕΔਓ͍͑ͯ͋͛ͯͩ͘͞ ɾߨࢣਞ͓͑͠·͢ ɾೖͬͨΒܰࣗ͘ݾհ͓Ͷ͕͍͠·͢