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
Continuous Architecting and Rails: From rails n...
Search
Koji SHIMADA
PRO
July 30, 2021
Technology
16
4.2k
Continuous Architecting and Rails: From rails new to Your Own Architecture
銀座Rails#35での発表資料です
https://ginza-rails.connpass.com/event/216491/
Koji SHIMADA
PRO
July 30, 2021
Tweet
Share
More Decks by Koji SHIMADA
See All by Koji SHIMADA
ソフトウェアアーキテクトのための意思決定術: Software Architecture and Decision-Making
snoozer05
PRO
24
7k
WHOLENESS, REPAIRING, AND TO HAVE FUN: 全体性、修復、そして楽しむこと
snoozer05
PRO
7
17k
スタッフエンジニアの道: The Staff Engineer’s Path
snoozer05
PRO
55
19k
ソフトウェアアーキテクチャメトリクスの基礎: Software architecture metrics in a nutshell
snoozer05
PRO
34
13k
これから学ぶ人のための ソフトウェアアーキテクチャ入門: Software architecture is a tool to enhance our humanity
snoozer05
PRO
43
27k
ソフトウェアアーキテクチャ・ ハードパーツ: Software Architecture The Hard Parts
snoozer05
PRO
11
6.1k
ソフトウェアアーキテクチャの基礎: Software Architecture in a Nutshell
snoozer05
PRO
67
41k
Ready Player One: 『ユニコーン企業のひみつ』に学べること
snoozer05
PRO
10
12k
Competing with Unicorns: take away the excuses
snoozer05
PRO
3
3.4k
Other Decks in Technology
See All in Technology
非root化Androidスマホでも動く仮想マシンアプリを試してみた
arkw
0
120
Datadog のトライアルを成功に導く技術 / Techniques for a successful Datadog trial
nulabinc
PRO
0
130
Terraform にコントリビュートしていたら Azure のコストをやらかした話 / How I Messed Up Azure Costs While Contributing to Terraform
nnstt1
1
450
AIによるコードレビューで開発体験を向上させよう!
moongift
PRO
0
420
ペアーズにおける評価ドリブンな AI Agent 開発のご紹介
fukubaka0825
9
2.5k
Why Platform Engineering? - マルチプロダクト・少人数 SRE の壁を越える挑戦 -
nulabinc
PRO
4
370
Global Azure2025(GitHub Copilot ハンズオン)
tomokusaba
2
710
Как мы автоматизировали интеграционное тестирование с Gonkey и не пожалели. Паша Егорычев, Кирилл Поляков
lamodatech
0
2k
Ninno LT
kawaguti
PRO
1
110
Microsoft の SSE の現在地
skmkzyk
0
300
Azure Maps Visual in PowerBIで分析しよう
nakasho
0
210
Coding Agentに値札を付けろ
watany
3
390
Featured
See All Featured
Music & Morning Musume
bryan
47
6.5k
A designer walks into a library…
pauljervisheath
205
24k
How to Think Like a Performance Engineer
csswizardry
23
1.6k
The Pragmatic Product Professional
lauravandoore
33
6.6k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
Adopting Sorbet at Scale
ufuk
76
9.4k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Building Better People: How to give real-time feedback that sticks.
wjessup
368
19k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.2k
Transcript
ౡాߒೋ !TOPP[FS ۜ࠲3BJMT ܧଓతΞʔΩςΫςΟϯάͱ3BJMT FROM rails new TO YOUR
OWN ARCHITECTURE ENISHI TECH INC.
ࠓɺ͓͢͠Δ͜ͱ
Տ͞Μ͔Β͍͍ͨͩͨΦϑΝʔ 3BJMTͷܦݧ͘ɺϚΠΫϩαʔϏεʹؔ͢Δॻ੶༁͍ͯ͠Δ ౡా͞Μʹɺ3VCZ3BJMTͷΤϯδχΞ͕ϚΠΫϩαʔϏεʹͭ ͍ͯΔ͖͜ͱɺ͓͍ͬͯͨํ͕ྑ͍Α͏ͳΛͯ͠΄͍͠ l
ϚΠΫϩαʔϏεʹؔ͢Δॻ੶
㾎ϞϊϦεμϝͰɺ͜Ε͔ΒϚΠΫϩαʔϏεͳͷʁ 㾎3BJMTϞϊϦεͷ໊ࢺͷΑ͏ʹݴΘΕΔ͚Ͳɺ8FCΞ ϓϦ͏3BJMTͰॻ͔ͳ͍ํ͕͍͍ͷʁ Α͋͘Δ࣭
㾎ϞϊϦεμϝͰɺ͜Ε͔ΒϚΠΫϩαʔϏεͳͷʁ 㾎3BJMTϞϊϦεͷ໊ࢺͷΑ͏ʹݴΘΕΔ͚Ͳɺ8FCΞ ϓϦ͏3BJMTͰॻ͔ͳ͍ํ͕͍͍ͷʁ ͦΜͳ͜ͱͳ͍Ͱ͢ɻͳͥͳΒʜ Α͋͘Δ࣭
ͲͪΒ͕ྑ͍ѱ͍ͱ͍͏Ͱͳ͍͔Β w ϞϊϦεͱϚΠΫϩαʔϏεͷͲͪΒΛબͿ͔ ΞʔΩςΫνϟ্ͷܾఆ w ࣗͨͪͷγεςϜʹͱͬͯదͳߏΛબͿ͜ͱ͕େ
⚠ͦΕΑΓ։ൃऀͱͯ͠ؾΛ͚ͭͳ͍ͱ͍͚ͳ͍͜ͱ
⚠ͦΕΑΓ։ൃऀͱͯ͠ؾΛ͚ͭͳ͍ͱ͍͚ͳ͍͜ͱ "SDIJUFDUVSFJOEJGGFSFOUEFTJHO ΞʔΩςΫνϟʹແؔ৺ͳઃܭ
"SDIJUFDUVSFJOEJGGFSFOUEFTJHO ։ൃऀ͕ΞʔΩςΫνϟΛؾʹͤͣʹઃܭΛਐΊΔ͜ͱ ΞʔΩςΫνϟʹແؔ৺ͳઃܭ
"SDIJUFDUVSFJOEJGGFSFOUEFTJHO ։ൃऀ͕ΞʔΩςΫνϟΛؾʹͤͣʹઃܭΛਐΊΔ͜ͱ ΞʔΩςΫνϟʹແؔ৺ͳઃܭ ಛʹߟ͑ͳ͠ʹΞʔΩςΫνϟ͕ܾఆ͞ΕΔ 㾎աڈͷϓϩδΣΫτͷΞʔΩςΫνϟΛ୯ʹίϐʔ͢Δ 㾎Α͋͘ΔΞʔΩςΫνϟ͔ͩΒͱ͔ձࣾͷඪ४͔ͩΒͱ ͍͏ཧ༝ͰΞʔΩςΫνϟ͕બΕΔ
"SDIJUFDUVSFJOEJGGFSFOUEFTJHOʹΑͬͯҾ͖ى͜͞ΕΔ͜ͱ w γεςϜʹద͞ͳ͍ΞʔΩςΫνϟ͕બΕΔ ❌ظ͢ΔΑ͏ͳγεςϜΛߏஙͰ͖ͳ͍
"SDIJUFDUVSFJOEJGGFSFOUEFTJHOʹΑͬͯҾ͖ى͜͞ΕΔ͜ͱ w γεςϜʹద͞ͳ͍ΞʔΩςΫνϟ͕બΕΔ ❌ظ͢ΔΑ͏ͳγεςϜΛߏஙͰ͖ͳ͍ w ͨ·ͨ·దͳΞʔΩςΫνϟ͕બΕΔ ❌։ൃ͕ਐΉ͏ͪʹΞʔΩςΫνϟ͕ܦྼԽ͠ɺϝϯςφϯεͰ ͖ͳ͘ͳͬͯ͠·͏
"SDIJUFDUVSFJOEJGGFSFOUEFTJHOʹΑͬͯҾ͖ى͜͞ΕΔ͜ͱ w γεςϜʹద͞ͳ͍ΞʔΩςΫνϟ͕બΕΔ ❌ظ͢ΔΑ͏ͳγεςϜΛߏஙͰ͖ͳ͍ w ͨ·ͨ·దͳΞʔΩςΫνϟ͕બΕΔ ❌։ൃ͕ਐΉ͏ͪʹΞʔΩςΫνϟ͕ܦྼԽ͠ɺϝϯςφϯεͰ ͖ͳ͘ͳͬͯ͠·͏ ❌ޙ͔ΒੳͰ͖ͣɺϏοΫόϯϦϥΠτͤ͟ΔΛಘͳ͘ͳΔ
େࣄͳͷ"SDIJUFDUVSFGPDVTFEEFTJHO
ΞʔΩςΫνϟʹؔ৺Λ࣋ͭ
ࠓɺ͓͢͠Δ͜ͱ wιϑτΣΞΞʔΩςΫνϟͱ
ࠓɺ͓͢͠Δ͜ͱ wιϑτΣΞΞʔΩςΫνϟʹ͍ͭͯ
ࠓɺ͓͢͠Δ͜ͱ wιϑτΣΞΞʔΩςΫνϟʹ͍ͭͯ wΞʔΩςΫςΟϯάʹ͍ͭͯ
ࠓɺ͓͢͠Δ͜ͱ wιϑτΣΞΞʔΩςΫνϟʹ͍ͭͯ wΞʔΩςΫςΟϯάʹ͍ͭͯ wΞʔΩςΫςΟϯάͱ3BJMTʹ͍ͭͯ
ౡాߒೋ !TOPP[FS
Vision IT Systems Teams Organization Management Execution Management Business Process
Talent Development ENISHI TECH INC.
Ruby no Kai
None
ࠓɺ͓͢͠Δ͜ͱ wιϑτΣΞΞʔΩςΫνϟʹ͍ͭͯ wΞʔΩςΫςΟϯάʹ͍ͭͯ wΞʔΩςΫςΟϯάͱ3BJMTʹ͍ͭͯ
ࠓɺ͓͢͠Δ͜ͱ wιϑτΣΞΞʔΩςΫνϟʹ͍ͭͯ wΞʔΩςΫςΟϯάʹ͍ͭͯ wΞʔΩςΫςΟϯάͱ3BJMTʹ͍ͭͯ
ιϑτΣΞΞʔΩςΫνϟʁ
ΞʔΩςΫνϟ ͋Δڥʹ͓͚ΔγεςϜͷجຊతͳ֓೦ੑ࣭Λɺγες ϜͷཁૉؔɺઃܭਐԽͷݪଇͱͯ͠۩ݱԽͨ͠ͷ ʢ*40*&$*&&&ʣ
ΞʔΩςΫνϟ ͋Δڥʹ͓͚ΔγεςϜͷجຊతͳ֓೦ੑ࣭Λɺγες ϜͷཁૉؔɺઃܭਐԽͷݪଇͱͯ͠۩ݱԽͨ͠ͷ ʢ*40*&$*&&&ʣ
ΞʔΩςΫνϟ ͋Δڥʹ͓͚ΔγεςϜͷجຊతͳ֓೦ੑ࣭Λɺγες ϜͷཁૉؔɺઃܭਐԽͷݪଇͱͯ͠۩ݱԽͨ͠ͷ ʢ*40*&$*&&&ʣ ΞʔΩςΫνϟͷݩͱͳΔͷ
ΞʔΩςΫνϟͷݩͱͳΔͷ ΞʔΩςΫνϟܾఆཁҼ
ΞʔΩςΫνϟܾఆཁҼ wٕज़తͳ੍ wϏδωε্ͷ੍ wػೳཁ݅ w࣭ಛੑ
ΞʔΩςΫνϟܾఆཁҼ wٕज़తͳ੍ wϏδωε্ͷ੍ wػೳཁ݅ w࣭ಛੑ Ұ൪ੳ͕͘͠ɺݟམͱ͞Ε͕ͪͳཁૉ
࣭ಛੑ wػೳͱڞʹιϑτΣΞγεςϜʹඋΘ͍ͬͯΔ͜ͱ͕ظ ͞ΕΔ࣭ཁૉ wʮʙੑʯʮΠϦςΟʢJMJUZʣʯͱݺΕΔ อकੑɺՄ༻ੑɺোੑɺ৴པੑɺύϑΥʔϚϯεɺςετ༰қ ੑɺ֦ுੑɺΞδϦςΟɺεέʔϥϏϦςΟɺϢʔβϏϦςΟʜ
ػೳཁ݅Λຬ͍࣭ͨͯͯ͠ಛੑ͕උΘ͍ͬͯͳ͍ͱ γεςϜͱͯ͠ेͰͳ͍
ΞʔΩςΫνϟ ͋Δڥʹ͓͚ΔγεςϜͷجຊతͳ֓೦ੑ࣭Λɺγες ϜͷཁૉؔɺઃܭਐԽͷݪଇͱͯ͠۩ݱԽͨ͠ͷ ʢ*40*&$*&&&ʣ
ΞʔΩςΫνϟ ͋Δڥʹ͓͚ΔγεςϜͷجຊతͳ֓೦ੑ࣭Λɺγες ϜͷཁૉؔɺઃܭਐԽͷݪଇͱͯ͠۩ݱԽͨ͠ͷ ʢ*40*&$*&&&ʣ
ΞʔΩςΫνϟ ͋Δڥʹ͓͚ΔγεςϜͷجຊతͳ֓೦ੑ࣭Λɺγες ϜͷཁૉؔɺઃܭਐԽͷݪଇͱͯ͠۩ݱԽͨ͠ͷ ʢ*40*&$*&&&ʣ
ߏɺ͋ΔཁૉͱผͷཁૉΛؔͰܨ͙͜ͱʹΑͬͯੜ ·ΕΔɻʢதུʜʣཁૉɺιϑτΣΞͷجຊతͳߏ ୯Ґͩɻͦͯ͠ɺؔɺཁૉ͕ࣄΛߦ͏ࡍʹͲͷΑ͏ʹ ࿈ܞ͢Δ͔Λࣔͨ͠ͷͩɻ γεςϜͷཁૉؔߏ
ιϑτΣΞΞʔΩςΫνϟʹ͓͚Δߏ w Ϟδϡʔϧʢઃܭཁૉʣͷߏ w ίϯϙʔωϯτʢ࣮ߦཁૉʣͷߏ w Πϯϑϥʢཧཁૉʣͷߏ
ιϑτΣΞΞʔΩςΫνϟʹ͓͚Δߏ w Ϟδϡʔϧʢઃܭཁૉʣͷߏ w ίϯϙʔωϯτʢ࣮ߦཁૉʣͷߏ w Πϯϑϥʢཧཁૉʣͷߏ
ιϑτΣΞΞʔΩςΫνϟʹ͓͚Δߏ w Ϟδϡʔϧʢઃܭཁૉʣͷߏ w ίϯϙʔωϯτʢ࣮ߦཁૉʣͷߏ w Πϯϑϥʢཧཁૉʣͷߏ
ιϑτΣΞΞʔΩςΫνϟʹ͓͚Δߏ w Ϟδϡʔϧʢઃܭཁૉʣͷߏ w ίϯϙʔωϯτʢ࣮ߦཁૉʣͷߏ w Πϯϑϥʢཧཁૉʣͷߏ
ιϑτΣΞΞʔΩςΫνϟʹ͓͚Δߏ w Ϟδϡʔϧʢઃܭཁૉʣͷߏ w ίϯϙʔωϯτʢ࣮ߦཁૉʣͷߏ w Πϯϑϥʢཧཁૉʣͷߏ ͲΕ͔͚ͩͰμϝ શ෦ΛରԠ͚ͮͯ దʹػೳ͢ΔܗΛߟ͑Δ
ΞʔΩςΫνϟ ͋Δڥʹ͓͚ΔγεςϜͷجຊతͳ֓೦ੑ࣭Λɺγες ϜͷཁૉؔɺઃܭਐԽͷݪଇͱͯ͠۩ݱԽͨ͠ͷ ʢ*40*&$*&&&ʣ
ΞʔΩςΫνϟ ͋Δڥʹ͓͚ΔγεςϜͷجຊతͳ֓೦ੑ࣭Λɺγες ϜͷཁૉؔɺઃܭਐԽͷݪଇͱͯ͠۩ݱԽͨ͠ͷ ʢ*40*&$*&&&ʣ
ઃܭਐԽͷݪଇ ΞʔΩςΫνϟܾఆ
ΞʔΩςΫνϟܾఆ ҎԼʹӨڹΛ༩͑ΔΑ͏ͳࣄʹର͢Δܾఆ wߏ w࣭ಛੑ wґଘؔ wΠϯλʔϑΣΠε wߏஙํ๏
ΞʔΩςΫνϟܾఆ ҎԼʹӨڹΛ༩͑ΔΑ͏ͳࣄʹର͢Δܾఆ wߏ w࣭ಛੑ wґଘؔ wΠϯλʔϑΣΠε wߏஙํ๏ ʮͳͥʯ͕ॏཁ
ΞʔΩςΫνϟ ͋Δڥʹ͓͚ΔγεςϜͷجຊతͳ֓೦ੑ࣭Λɺγες ϜͷཁૉؔɺઃܭਐԽͷݪଇͱͯ͠۩ݱԽͨ͠ͷ ʢ*40*&$*&&&ʣ
ΞʔΩςΫνϟ ͋Δڥʹ͓͚ΔγεςϜͷجຊతͳ֓೦ੑ࣭Λɺγες ϜͷཁૉؔɺઃܭਐԽͷݪଇͱͯ͠۩ݱԽͨ͠ͷ ʢ*40*&$*&&&ʣ
ΞʔΩςΫνϟʹ͍ͭͯͷ·ͱΊ ΞʔΩςΫνϟͱɺΞʔΩςΫνϟܾఆཁҼʹج͍ͮͯͳ ͞ΕͨɺγεςϜͷߏ࣭ಛੑɺґଘؔɺΠϯλʔϑ ΣΠεɺߏஙख๏ͳͲʹର͢Δܾఆ
ΞʔΩςΫνϟʹؔ৺Λ࣋ͭͨΊͷ ΞΫςΟϏςΟ
ʢ̍ʣ࣭ಛੑ ͕ࣗࠓܞΘ͍ͬͯΔγεςϜʹͱͬͯ ಛʹॏཁͳ࣭ಛੑΛڍ͛ͯΈΑ͏
ʢ̎ʣߏ ͕ࣗࠓܞΘ͍ͬͯΔγεςϜͷ ͦΕͧΕͷߏΛඳ͍ͯΈΑ͏
ʢ̏ʣΞʔΩςΫνϟܾఆ ͕ࣗࠓܞΘ͍ͬͯΔγεςϜͷ ΞʔΩςΫνϟܾఆΛڍ͛ͯΈΑ͏
ࠓɺ͓͢͠Δ͜ͱ wιϑτΣΞΞʔΩςΫνϟʹ͍ͭͯ wΞʔΩςΫςΟϯάʹ͍ͭͯ wΞʔΩςΫςΟϯάͱ3BJMTʹ͍ͭͯ
ࠓɺ͓͢͠Δ͜ͱ wιϑτΣΞΞʔΩςΫνϟʹ͍ͭͯ wΞʔΩςΫςΟϯάʹ͍ͭͯ wΞʔΩςΫςΟϯάͱ3BJMTʹ͍ͭͯ
ΞʔΩςΫςΟϯά γεςϜͷϥΠϑαΠΫϧΛ௨ͨ͡ΞʔΩςΫνϟͷߏɺ ఆٛɺදݱɺจॻԽɺୡɺదͳ࣮ͷೝূɺҡ͓࣋Α ͼվળͷϓϩηε ʢ*40*&$*&&&ʣ
ݱʹ͓͚ΔΞʔΩςΫςΟϯάͷલఏ
ݱʹ͓͚ΔΞʔΩςΫςΟϯάͷલఏ ϓϩδΣΫτ։ൃˠϓϩμΫτ։ൃ
ݱʹ͓͚ΔΞʔΩςΫςΟϯάͷલఏ ϓϩδΣΫτ։ൃˠϓϩμΫτ։ൃ
ݱʹ͓͚ΔΞʔΩςΫςΟϯάͷલఏ ϓϩδΣΫτ։ൃˠϓϩμΫτ։ൃ wະ͕গͳ͍ˠະ͕ଟ͍ w༗ظݶͷ׆ಈˠແظݶͷ׆ಈ wʢଓ͖ʰϢχίʔϯاۀͷͻΈͭʱͰʣ
ݱʹ͓͚ΔΞʔΩςΫςΟϯάͷલఏ ϓϩδΣΫτ։ൃˠϓϩμΫτ։ൃ wະ͕গͳ͍ˠະ͕ଟ͍ w༗ظݶͷ׆ಈˠແظݶͷ׆ಈ wʢଓ͖ʰϢχίʔϯاۀͷͻΈͭʱͰʣ
ະ͕ଟ͍ ͬͯͷ௨Γɺطͷͱ͍͏ͷ͕͋Δɻ͜Εզʑ͕͍ͬͯΔ ͱ͍ͬͯΔ͜ͱͩɻ·ͨɺطͷະ͋Δɻ͢ͳΘͪɺݱ࣌Ͱ طͰͳ͍ͱΘ͔͍ͬͯΔࣄฑͩɻ͔͠͠ɺະͷະ͋Δɻ͜Ε զʑ͕Βͳ͍ͱ͍͏͜ͱ͑͞Βͳ͍͜ͱͩɻ l ʵ%POBME3VNTGFME
lιϑτΣΞΞʔΩςΫνϟͱॏཁͳઃܭஅΛද͠ɺͦͷॏཁ ੑมߋͷίετʹΑܾͬͯ·Δ IUUQTUXJUUFSDPN(SBEZ@#PPDITUBUVT ʵ(SBEZ#PPDI ҰํͰΞʔΩςΫνϟܾఆॏ͍
ίπɿܾఆΛ࣋ͯΔݶΓΒͤΔ w࠷ऴ࣌ʢMBTUSFTQPOTJCMFNPNFOUʣ wܾఆΛԼ͠ଛͶΔͱɺॏཁͳସҊ͕ͳ͘ͳΔ࣌ w࠷େ࣌ʢNPTUSFTQPOTJCMFNPNFOUʣ wܾఆ͢Δ͜ͱͰ࠷ྑ͍લ͖ͳӨڹΛ༩͑Δ࣌
ݱʹ͓͚ΔΞʔΩςΫςΟϯάͷલఏ ϓϩδΣΫτ։ൃˠϓϩμΫτ։ൃ wະ͕গͳ͍ˠະ͕ଟ͍ w༗ظݶͷ׆ಈˠແظݶͷ׆ಈ wʢଓ͖ʰϢχίʔϯاۀͷͻΈͭʱͰʣ
ݱʹ͓͚ΔΞʔΩςΫςΟϯάͷલఏ ϓϩδΣΫτ։ൃˠϓϩμΫτ։ൃ wະ͕গͳ͍ˠະ͕ଟ͍ w༗ظݶͷ׆ಈˠແظݶͷ׆ಈ wʢଓ͖ʰϢχίʔϯاۀͷͻΈͭʱͰʣ
ϓϩμΫτ։ൃऴΘΒͳ͍
ϓϩμΫτ։ൃऴΘΒͳ͍ wʮҡ͓࣋Αͼվળͷϓϩηεʯ͕ΞʔΩςΫςΟϯάͷओʹͳΔ γεςϜʹ࣮ݱ͞ΕͨΞʔΩςΫνϟΛอޢ͍ͯ͘͠ඞཁ͕͋Δ wϏδωεςΫϊϩδʔಈ͍͍ͯ͘ ΞʔΩςΫνϟܾఆཁҼͷมԽʹରԠ͍ͯ͘͠ඞཁ͕͋Δ
ϓϩμΫτ։ൃऴΘΒͳ͍ wʮҡ͓࣋Αͼվળͷϓϩηεʯ͕ΞʔΩςΫςΟϯάͷओʹͳΔ γεςϜʹ࣮ݱ͞ΕͨΞʔΩςΫνϟΛอޢ͍ͯ͘͠ඞཁ͕͋Δ wϏδωεςΫϊϩδʔಈ͍͍ͯ͘ ΞʔΩςΫνϟܾఆཁҼͷมԽʹରԠ͍ͯ͘͠ඞཁ͕͋Δ
ϓϩμΫτ։ൃऴΘΒͳ͍ wʮҡ͓࣋Αͼվળͷϓϩηεʯ͕ΞʔΩςΫςΟϯάͷओʹͳΔ γεςϜʹ࣮ݱ͞ΕͨΞʔΩςΫνϟΛอޢ͍ͯ͘͠ඞཁ͕͋Δ wϏδωεςΫϊϩδʔಈ͍͍ͯ͘ ΞʔΩςΫνϟܾఆཁҼͷมԽʹରԠ͍ͯ͘͠ඞཁ͕͋Δ
ϓϩμΫτ։ൃऴΘΒͳ͍ wʮҡ͓࣋Αͼվળͷϓϩηεʯ͕ΞʔΩςΫςΟϯάͷओʹͳΔ γεςϜʹ࣮ݱ͞ΕͨΞʔΩςΫνϟΛอޢ͍ͯ͘͠ඞཁ͕͋Δ wϏδωεςΫϊϩδʔಈ͍͍ͯ͘ ΞʔΩςΫνϟܾఆཁҼͷมԽʹରԠ͍ͯ͘͠ඞཁ͕͋Δ
ݱʹ͓͚ΔΞʔΩςΫςΟϯάͷલఏ ϓϩδΣΫτ։ൃˠϓϩμΫτ։ൃ wະ͕গͳ͍ˠະ͕ଟ͍ w༗ظݶͷ׆ಈˠແظݶͷ׆ಈ wʢଓ͖ϢχίʔϯاۀͷͻΈͭͰʣ
Ͳ͏ΞʔΩςΫςΟϯά͍͔ͯ͘͠
ݱͷΞʔΩςΫςΟϯά w ඞཁेͳΞʔΩςΫνϟ͔Β࢝ΊΔ w γεςϜͷΞʔΩςΫνϟ͕ܦྼԽ͠ͳ͍Α͏อޢ͠ଓ͚Δ w ΞʔΩςΫνϟܾఆγεςϜ͕αϙʔτ͠ͳͯ͘ͳΒͳ͍࣭ ಛੑΛఆظతʹݟ͠ɺܧଓతʹϦΞʔΩςΫςΟϯά͍ͯ͘͠
ݱͷΞʔΩςΫςΟϯά w ඞཁेͳΞʔΩςΫνϟ͔Β࢝ΊΔ w γεςϜͷΞʔΩςΫνϟ͕ܦྼԽ͠ͳ͍Α͏อޢ͠ଓ͚Δ w ΞʔΩςΫνϟܾఆγεςϜ͕αϙʔτ͠ͳͯ͘ͳΒͳ͍࣭ ಛੑΛఆظతʹݟ͠ɺܧଓతʹϦΞʔΩςΫςΟϯά͍ͯ͘͠
ݱͷΞʔΩςΫςΟϯά w ඞཁेͳΞʔΩςΫνϟ͔Β࢝ΊΔ w γεςϜͷΞʔΩςΫνϟ͕ܦྼԽ͠ͳ͍Α͏อޢ͠ଓ͚Δ w ΞʔΩςΫνϟܾఆγεςϜ͕αϙʔτ͠ͳͯ͘ͳΒͳ͍࣭ ಛੑΛఆظతʹݟ͠ɺܧଓతʹϦΞʔΩςΫςΟϯά͍ͯ͘͠
ݱͷΞʔΩςΫςΟϯά w ඞཁेͳΞʔΩςΫνϟ͔Β࢝ΊΔ w γεςϜͷΞʔΩςΫνϟ͕ܦྼԽ͠ͳ͍Α͏อޢ͠ଓ͚Δ w ΞʔΩςΫνϟܾఆΞʔΩςΫνϟܾఆཁҼʢಛʹ࣭ಛੑʣ Λఆظతʹݟ͠ɺͦΕʹ߹ΘͤͯܧଓతʹϦΞʔΩςΫςΟϯ ά͍ͯ͘͠
ܧଓతΞʔΩςΫςΟϯά
$POUJOVPVTBSDIJUFDUVSF
ਐԽతΞʔΩςΫνϟ
ϞϊϦε͔Β࢝ΊͯΞʔΩςΫνϟΛਐԽ͍ͤͯ͘͞
ΞʔΩςΫςΟϯάܧଓతͳ׆ಈ w ඞཁेͳΞʔΩςΫνϟ͔Β࢝ΊΔ w γεςϜͷΞʔΩςΫνϟ͕ܦྼԽ͠ͳ͍Α͏อޢ͠ଓ͚Δ w ΞʔΩςΫνϟܾఆΞʔΩςΫνϟܾఆཁҼʢಛʹ࣭ಛੑʣ Λఆظతʹݟ͠ɺͦΕʹ߹ΘͤͯܧଓతʹϦΞʔΩςΫςΟϯ ά͍ͯ͘͠
ࠓɺ͓͢͠Δ͜ͱ wιϑτΣΞΞʔΩςΫνϟʹ͍ͭͯ wΞʔΩςΫςΟϯάʹ͍ͭͯ wΞʔΩςΫςΟϯάͱ3BJMTʹ͍ͭͯ
ࠓɺ͓͢͠Δ͜ͱ wιϑτΣΞΞʔΩςΫνϟʹ͍ͭͯ wΞʔΩςΫςΟϯάʹ͍ͭͯ wΞʔΩςΫςΟϯάͱ3BJMTʹ͍ͭͯ
ΞʔΩςΫςΟϯά͔Βݟͨ3BJMT
ΞʔΩςΫςΟϯά͔Βݟͨ3BJMTʢ̍ʣ ։ൃॳظʹ࠷খݶͷΞʔΩςΫνϟܾఆΛ༩͑ͯ͘ΕΔ
None
$POWFOUJPOPWFS$POGJHVSBUJPO 3BJMTͷϛογϣϯͷҰ෦ɺ8FC༻ͷใγεςϜΛ࡞͢Δ։ൃऀ͕໘͢ Δɺްͯ͘૿͑ଓ͚͍ͯΔ෮తͳҙࢥܾఆͷδϟϯάϧʹᭊΛৼΔ͏͜ͱͰ ͢ɻ͜ͷΑ͏ͳҙࢥܾఆԿઍ͋Γ·͕͢ɺຊདྷҰͰࡁΉ͜ͱͰ͢͠ɺ ୭͔͕ΘΓʹͬͯ͘ΕΔͷͰ͋ΕɺͦΕʹӽͨ͜͠ͱ͋Γ·ͤΜɻ l ຊޠ༁ɿIUUQTRJJUBDPNUBLBIBTIJNJUFNTE ff FFDCEBDઃఆΑΓنDPOWFOUJPOPWFSDPO fi
HVSBUJPO IUUQTSVCZPOSBJMTPSHEPDUSJOF
5IFNFOVJTPNBLBTF Կ͕ඒຯ͍͔͔͠Βͳ͍ͷʹɺϨετϥϯͰԿΛจ͢Ε͍͍ͷ͔ɺͲ͏ͬ ͯΘ͔ΔͷͰ͠ΐ͏͔ʁɹͦ͏Ͱ͢ͶɺγΣϑʹબΜͰΒ͑ɺԿ͕ʮඒຯ͍͠ ͷʯ͔Θ͔Βͳ͍͏͔ͪΒɺͨͿΜʮඒຯ͍͠ͷʯʹ͋Γ͚ͭ·͢ ɻͦΕ͕ ʮ͓·͔ͤʯͰ͢ ɻྉཧͷୡਓͰͳͯ͘ɺ҉தࡧͷӡͤͰͳͯ͘ɺඒຯ͠ ͍ͷΛ৯ΔͨΊͷํ๏ͳͷͰ͢ ɻ l
ຊޠ༁ɿIUUQTRJJUBDPNUBLBIBTIJNJUFNTE ff FFDCEBDϝχϡʔ͓·͔ͤUIFNFOVJTPNBLBTF IUUQTSVCZPOSBJMTPSHEPDUSJOF
7BMVFJOUFHSBUFETZTUFNT ౷߹γεςϜͰɺͨ͘͞ΜͷෆඞཁͳநԽΛݮ͠ɺϨΠϠʔؒ ͷॏෳΛݮΒ͠ʢαʔόʔͱΫϥΠΞϯτͷ྆ํͷςϯϓϨʔτͷΑ ͏ͳʣɺԿΑΓɺͲ͏ͯ͠ඞཁʹͳΔ·ͰɺγεςϜΛࢄ͢ Δ͜ͱΛආ͚Δ͜ͱ͕Ͱ͖·͢ ɻ l ຊޠ༁ɿIUUQTRJJUBDPNUBLBIBTIJNJUFNTE ff FFDCEBDՁͷ౷߹͞ΕͨγεςϜWBMVFJOUFHSBUFETZTUFNT
IUUQTSVCZPOSBJMTPSHEPDUSJOF
ΞʔΩςΫςΟϯά͔Βݟͨ3BJMTʢ̍ʣ ։ൃॳظʹ࠷খݶͷΞʔΩςΫνϟܾఆΛఏڙͯ͘͠ΕΔ w ߏ.7$ɺϞϊϦεɺσΟϨΫτϦߏ w ࣭ಛੑΞδϦςΟ w ґଘؔϞϊϦε෦Ͱͷ݁߹ w ΠϯλʔϑΣΠε3&45GVMͳ"1*ઃܭɺ"DUJWF3FDPSEύλʔϯʜ
w ߏஙํ๏ϞϊϦεͷ୯ҰσϓϩΠ
ΞʔΩςΫςΟϯά͔Βݟͨ3BJMTʢ̎ʣ ܧଓతͳΞʔΩςΫςΟϯάʹରͯ͠։͔Ε͍ͯΔ
/PPOFQBSBEJHN Ұͭͷத৺తͳΞ ΠσΞΛܝ͛ͯɺ͔ͦ͜Βཧతؼ݁ͱͯ͠ΞʔΩςΫνϟͷج൫ Λಋ͜͏ͱ͢Δڧ͘৺ͳओு͕͋Γ·͢ ɻ ʜུʜ 3BJMTͦ͏Ͱ͋Γ·ͤΜɻҰຕͷᘳͳͰ͋Γ·ͤΜɻΩϧτͰ͢ ɻଟ͘ͷ ҟͳΔΞ
ΠσΞύϥμΠϜͷෳ߹ମͰ͢ ɻͦͷଟ͘ͷͷɺ୯ಠͰҰͭҰͭରൺ ͤ͞Εɺ௨ৗରཱ͍ͯ͠ΔͱݟΒΕΔΑ͏ͳͷ͔͠Ε·ͤΜɻͰɺࢲͨͪ ͕Ζ͏ͱ͍ͯ͠ΔͷͦͷΑ͏ͳରཱͰ͋Γ·ͤΜɻ l ຊޠ༁ɿIUUQTRJJUBDPNUBLBIBTIJNJUFNTE ff FFDCEBD།ҰͷύϥμΠϜͳ͍OPPOFQBSBEJHN IUUQTSVCZPOSBJMTPSHEPDUSJOF
1SPHSFTTPWFSTUBCJMJUZ 3BJMTͷΑ͏ʹҎ্લ͔Βଘࡏ͍ͯ͠ΔγεςϜͰɺࣗવͱߗԽʹ͔͏͕͋Γ ·͢ ɻͲΜͳมߋͰɺաڈͷڍಈʹґଘ͍ͯͨ͠୭͔ʹͱͬͯɺʹͳΔՄೳੑ͍͘ ΒͰ͋Γ͑·͢ ɻͦͯ͠ɺ࣮ࡍʹͦΕ͕ͯ·Δਓʹͱͬͯެฏͳཧ༝Ͱ͢ ɻ ͔͠͠ɺ͋·ΓอकతͳʹࣖΛ͚͗ͯ͢͠·͏ͱɺͦͷରଆʹԿ͕͋Δ͔͕ݟ͑ͳ͘ ͳͬͯ͠·͍·͢ ɻࢲͨͪɺਐԽͱͷͨΊʹɺ࣌ʹ͋͑ͯյͨ͠ΓɺΓํΛม͑
ͨΓ͠ͳ͚ΕͳΓ·ͤΜɻ l ຊޠ༁ɿIUUQTRJJUBDPNUBLBIBTIJNJUFNTE ff FFDCEBD҆ఆੑΑΓਐาQSPHSFTTPWFSTUBCJMJUZ IUUQTSVCZPOSBJMTPSHEPDUSJOF
ΞʔΩςΫςΟϯά͔Βݟͨ3BJMTʢ̎ʣ ܧଓతͳΞʔΩςΫςΟϯάʹରͯ͠։͔Ε͍ͯΔ w ಉظͰॲཧ͖͔͢ɺඇಉظͰॲཧ͖͔͢ w "DUJWF+PC w ߏͷਐతͳΓସ͑ w 3BJMT&OHJOFɺ7JFX$PNQPOFOU
w ʜ
͕͜͏ͨ͠ಛΛඋ͍͑ͯΔཧ༝ʢԾઆʣ
3BJMTɺ%))ͨͪʹͱͬͯͷ࣮ΞʔΩςΫνϟͰ͋Δ͔Β w ͱͱ͕#BTFDBNQͷ࣮ΞʔΩςΫνϟʢΛநԽͨ͠ͷʣ w %))ͷΞʔΩςΫνϟܾఆ͕ө͞Ε͍ͯΔ w ࠓͬͱଟ͘ͷ3BJMT։ൃνʔϜʹͱͬͯͷ࣮ΞʔΩςΫνϟʹ ͳ͍ͬͯΔ
࣮ΞʔΩςΫνϟ͔ͩΒܧଓతʹΞʔΩςΫςΟϯά͞Εଓ͚͍ͯΔ w ٕज़తͳ੍ʢΞʔΩςΫνϟܾఆཁҼʣ͕มΘΕɺΞʔΩςΫν ϟܾఆมΘΔ w 3BJMT͕ਐԽ͢Δඞવੑ w 3BJMTΛΞοϓσʔτ͢Δ͜ͱͰɺΞʔΩςΫνϟܾఆͷ࠷৽ͷબࢶ Λखʹ͠ଓ͚ΒΕΔ w
ࢲ͕ͨͪ3BJMTΛΞοϓσʔτ͠ଓ͚Δඞવੑ
·ͱΊΔͱ Α͘Ͱ͖ͯΔ
ͳͷ͚ͩΕͲʜ
⚠։ൃऀͱͯ͠ؾΛ͚ͭͳ͍ͱ͍͚ͳ͍͜ͱ "SDIJUFDUVSFJOEJGGFSFOUEFTJHO ΞʔΩςΫνϟʹແؔ৺ͳઃܭ
"SDIJUFDUVSFJOEJGGFSFOUEFTJHOʹͳΒͳ͍Α͏ʹؾΛ͚ͭΔ w 3BJMT͕༩͑ͯ͘ΕΔͷ͋͘·Ͱ࠷খݶͷΞʔΩςΫνϟܾఆ w ͦ͜ʹࣗͨͪͷγεςϜͷΞʔΩςΫνϟܾఆཁҼߟྀ͞Ε͍ͯ ͳ͍ ඞཁेͳΞʔΩςΫνϟࣗͨͪͰఆٛ͠ͳͯ͘ͳΒͳ͍ ܧଓతʹࣗͨͪͰࣗͨͪͷΞʔΩςΫνϟΛΞʔΩςΫςΟϯά ͍͔ͯ͠ͳͯ͘ͳΒͳ͍
"SDIJUFDUVSFJOEJGGFSFOUEFTJHOʹͳΒͳ͍Α͏ʹؾΛ͚ͭΔ w 3BJMT͕༩͑ͯ͘ΕΔͷ͋͘·Ͱ࠷খݶͷΞʔΩςΫνϟܾఆ w ͦ͜ʹࣗͨͪͷγεςϜͷΞʔΩςΫνϟܾఆཁҼߟྀ͞Ε͍ͯ ͳ͍ ඞཁेͳΞʔΩςΫνϟࣗͨͪͰఆٛ͠ͳͯ͘ͳΒͳ͍ ͦͯͦ͠ΕΛࣗͨͪͰܧଓతʹΞʔΩςΫςΟϯά͍͔ͯ͠ͳͯ͘ ͳΒͳ͍
ࣗͨͪͷΞʔΩςΫνϟʹؔ৺Λ࣋ͪ ܧଓతʹΞʔΩςΫςΟϯά͍ͯ͜͠͏
ౡాߒೋ !TOPP[FS ۜ࠲3BJMT ܧଓతΞʔΩςΫςΟϯάͱ3BJMT FROM rails new TO YOUR
OWN ARCHITECTURE ENISHI TECH INC.