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.3k
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
One Enishi After Another
snoozer05
PRO
0
150
ソフトウェアアーキテクトのための意思決定術: Software Architecture and Decision-Making
snoozer05
PRO
26
7.6k
WHOLENESS, REPAIRING, AND TO HAVE FUN: 全体性、修復、そして楽しむこと
snoozer05
PRO
8
19k
スタッフエンジニアの道: The Staff Engineer’s Path
snoozer05
PRO
55
20k
ソフトウェアアーキテクチャメトリクスの基礎: Software architecture metrics in a nutshell
snoozer05
PRO
35
14k
これから学ぶ人のための ソフトウェアアーキテクチャ入門: Software architecture is a tool to enhance our humanity
snoozer05
PRO
44
27k
ソフトウェアアーキテクチャ・ ハードパーツ: Software Architecture The Hard Parts
snoozer05
PRO
12
6.2k
ソフトウェアアーキテクチャの基礎: Software Architecture in a Nutshell
snoozer05
PRO
70
45k
Ready Player One: 『ユニコーン企業のひみつ』に学べること
snoozer05
PRO
10
12k
Other Decks in Technology
See All in Technology
RDS の負荷が高い場合に AWS で取りうる具体策 N 連発/a-series-of-specific-countermeasures-available-on-aws-when-rds-is-under-high-load
emiki
7
4.5k
CNCFの視点で捉えるPlatform Engineering - 最新動向と展望 / Platform Engineering from the CNCF Perspective
hhiroshell
0
130
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
9k
Data Hubグループ 紹介資料
sansan33
PRO
0
2.2k
コンパウンド組織のCRE #cre_meetup
layerx
PRO
1
230
serverless team topology
_kensh
3
180
OSSで50の競合と戦うためにやったこと
yamadashy
3
950
Wasmの気になる最新情報
askua
0
180
Kubernetes self-healing of your workload
hwchiu
0
380
CREが作る自己解決サイクルSlackワークフローに組み込んだAIによる社内ヘルプデスク改革 #cre_meetup
bengo4com
0
290
生成AIを安心して活用するために──「情報セキュリティガイドライン」策定とポイント
gree_tech
PRO
1
260
Digitization部 紹介資料
sansan33
PRO
1
5.7k
Featured
See All Featured
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Navigating Team Friction
lara
190
15k
Building Applications with DynamoDB
mza
96
6.7k
Designing for humans not robots
tammielis
254
26k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
The World Runs on Bad Software
bkeepers
PRO
72
11k
Thoughts on Productivity
jonyablonski
70
4.9k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
54k
Speed Design
sergeychernyshev
32
1.2k
How to Ace a Technical Interview
jacobian
280
24k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
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.