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
リアーキテクトと開発生産性について
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Yosuke Furukawa
PRO
October 31, 2023
Programming
13k
24
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
リアーキテクトと開発生産性について
2023/10/31 @ Barフロントえんどう
で発表した「リアーキテクトと開発生産性について」です。
Yosuke Furukawa
PRO
October 31, 2023
More Decks by Yosuke Furukawa
See All by Yosuke Furukawa
AIがコードを書いてくれる時代、我々は何を確かめるのか
yosuke_furukawa
PRO
13
5.4k
AI時代のシニアエンジニアとは
yosuke_furukawa
PRO
14
11k
Webの地図
yosuke_furukawa
PRO
6
5.3k
XHTMLが残したもの
yosuke_furukawa
PRO
2
990
jsmini JavaScript Engine を作ってみた話
yosuke_furukawa
PRO
0
460
デザインシステムが必須の時代に
yosuke_furukawa
PRO
2
350
Node.js, Deno, Bun 最新動向とその所感について
yosuke_furukawa
PRO
10
5.4k
Welcome JSConf.jp 2024
yosuke_furukawa
PRO
1
4.9k
tc39 x jsconf.jp Panel Discussion 2024
yosuke_furukawa
PRO
0
390
Other Decks in Programming
See All in Programming
선언형 햅틱 라이브러리 진동을 소개합니다
l2hyunwoo
1
250
Enforcing Your Architecture with Unit Tests in the AI Era (Swift Connection X)
steliosf
PRO
1
110
Performance Optimization With LLMs
xleitix
0
230
月間100万人のサービス刷新で、 技術選定をHonoに振り切った話
yutobara
8
7.1k
우리의 Nitro Modules는 당신의 Turbo Modules보다 아름답다
l2hyunwoo
0
250
SODA - FACT BOOK(JP)
sodainc
1
40k
AIが生成したコードは読むべきか?抽象化設計とコードの品質保証 / abstraction-design-and-quality
minodriven
14
8.1k
あなたの await、OS まで届いてる? strace で覗く JavaScript の非同期
hasutosasaki
1
1.8k
AI駆動開発4年目の現在地(『あなたはFDEになるべきか?』イベント資料)
kumaiu
0
110
FactoryBotをやめればRSpecは速くなるのか?
yuta_onishi_97
0
1.2k
SFCで実現する病院・医療システムの動的組み立て式UI
koukimiura
1
160
sbt 2.0: takeoff
eed3si9n
0
180
Featured
See All Featured
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Facilitating Awesome Meetings
lara
57
7.2k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
2
2.1k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Building a Scalable Design System with Sketch
lauravandoore
464
34k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.9k
Odyssey Design
rkendrick25
PRO
2
910
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
620
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
350
Un-Boring Meetings
codingconduct
0
480
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
74
43k
Transcript
ϦΞʔΩςΫτͱ։ൃ ੜ࢈ੑʹ͍ͭͯ 2023/10/31 @ BAR ϑϩϯτ͑ΜͲ͏
X(Twitter): @yosuke_furukawa GitHub: yosuke-furukawa
ϦΞʔΩςΫτɹͱ ɹ ։ൃੜ࢈ੑʹ͍ͭͯ
ϦΞʔΩςΫτɹͱ ɹ ։ൃੜ࢈ੑʹ͍ͭͯ खஈ ϝτϦΫε
ϦΞʔΩςΫτͱ։ൃੜ࢈ੑʹ ͍ͭͯ • ։ൃੜ࢈ੑΛ্͛Δࣄ͕తͰ͋Δ߹ɺҰ ͭͷखஈͱͯ͠ϦΞʔΩςΫτ͕͋Δͱ͍͏ؔ • ϦΞʔΩςΫτ͕།ҰͷखஈͰͳ͍ • ٯʹϦΞʔΩςΫτ։ൃੜ࢈ੑͱ͍͏ϝτϦ
ΫεͷதͰԿΛ্ͤ͞Δࣄʹ͍͍ͯΔͷ͔
։ൃੜ࢈ੑͷΑ͋͘Δޡղ
։ൃੜ࢈ੑͷΑ͋͘Δޡղ • ։ൃੜ࢈ੑͱ։ൃऀຬͷࣄΛࢦ͢ • ։ൃऀຬ ≒ Developer Experience • ੜ࢈ੑͱີணͨؔ͠ੑ͕͋ΔͱΒΕ͓ͯΓɺେ
ࣄͰ͋Δ • ͨͩશͯͰͳ͍ • ։ൃऀຬ͕શͯʹͳΔͱऴΘΓͷͳཱྀ͍͕࢝·Δ
։ൃੜ࢈ੑͷΑ͋͘Δޡղ • ։ൃੜ࢈ੑͱActivityͷࣄΛࢦ͢ • Activity ͱ͍͏ͷίʔυͷϥΠϯΧϯτͩͬͨΓPRͩͬͨΓͱ͍ ͏։ൃ࡞ۀͷྔΛද͢ • ͜Εޡղͱ͍͏͔୯ʹϋοΫ͞Ε͍͢ •
ίϝϯτͨ͘͞Μॻ͍ͨΒɺվߦҐஔΛม͑ͨΒɺͱ͔Ͱ؆୯ʹՔ͛ͯ ͠·͏ • PRͱ͔Ϛʔδ͞Εͨճͱ͔ಉ༷ɺࡉ͔͘PRΕྑ͍ • ͭ·ΓɺActivity͚͕ͩ୯Ұͷ։ൃੜ࢈ੑΛද͢ࢦඪʹͳΒͳ͍
։ൃੜ࢈ੑͷΑ͋͘Δޡղ • ։ൃੜ࢈ੑͱPerformanceͷ͜ͱΛࢦ͢ • PerformanceγεςϜ͕ੜΈग़͢Ռ • ͏গ͠۩ମྫͰ͍͏ͱɺച্ɺސ٬ຬɺίετݮׂ ߹ͳͲ • ͜Ε͍͠։ൃ୯ମͷੜ࢈ੑ͚ͩͰୡͰ͖ͳ͍ͨΊ
• ͭ·ΓɺPerformance୯Ұͷ։ൃੜ࢈ੑΛද͢ࢦඪʹͳΒͳ ͍
։ൃੜ࢈ੑͷΑ͋͘Δޡղ • ։ൃੜ࢈ੑͱͲΕ͚ͩڠௐ͔ͨ͠Λࢦ͢ • ίϛϡχέʔγϣϯίϥϘϨʔγϣϯ͕͏·͍͍ͬͯ͘Δ ͔ • ྫ͑ίʔυϨϏϡʔͷޮੑɺυΩϡϝϯτͷݟ͚ͭ͢ ͞ɺ৽͍͠ϝϯόʔͷΦϯϘʔσΟϯάʹ͔͔Δ࣌ؒͳͲ •
͍ΘΏΔ৺ཧత҆શੑͱ͔ͦ͏͍͏ཁૉ͋Δ • ͪΖΜ͜Εॏཁ͕ͩɺશͯͰͳ͍
։ൃੜ࢈ੑͷΑ͋͘Δޡղ • ։ൃੜ࢈ੑͱνʔϜͷूதΛҾ͖ग़͢ޮΛࢦ͢ • ྫ͑ɿϛʔςΟϯάͳͲͰͷλεΫதஅ͕ଟ͍͔Ͳ͏͔ɺϓ ϩηεͰ͍߹Θͤͳ͍ͱ͍͚ͳ͍ճ͕ଟ͍͔গͳ͍ ͔ɺγεςϜͷػೳՃʹؔΘΔ࣌ؒͳͲ • ͏গ͠טΈࡅ͘ͱɺूதͰ͖Δڥʹ͍ΒΕΔ͔ɺ࣮ࡍʹ ֻ͔͕ͬͨ࣌ؒগͳ͍͔
• ແବͳϛʔςΟϯάΛഉআͯ͠ɺूதڥʹΛஔ͘ • ͨͩ͜ΕͪΖΜશͯͰͳ͍ɺҰཁૉͰ͋Δɻ
։ൃੜ࢈ੑͷΑ͋͘Δޡղ • ͭ·Γɺ։ൃੜ࢈ੑͱ୯ҰͷϝτϦΫε͚ͩͰ ଌΕͳ͍ • ෳͷཁૉʢ։ൃऀຬɺύϑΥʔϚϯεɺΞΫ ςΟϏςΟɺڠௐɺޮʣΛΈ߹Θͤͯදݱ͢Δ ඞཁ͕͋Δ • ୯ҰͷϝτϦΫε͚ͩͰΖ͏ͱ͢ΔͱɺϋοΫ͞
Ε͔ͬͨ͢ΓɺऴΘΓͳ͖ઓ͍͕࢝·ͬͨΓ͢Δ
SPACEʹ͍ͭͯ
SPACE ϑϨʔϜϫʔΫ • Satisfaction & Well being • Performance •
Activity • Communication & Collaboration • Ef fi ciency & Flow
SPACE ϑϨʔϜϫʔΫ • ෳͷࢦඪΛΈ߹Θͤͯੜ࢈ੑΛදݱ͢Δ • ͦ͏͢Δ͜ͱͰϋοΫ͞Εʹ͍ͯ͘͘͠Δ • ҰͭͷࢦඪΛ্͛Α͏ͱ͢ΔͱଞͷࢦඪʹӨ ڹ͕ग़Δ •
શ෦্͕ΔΑ͏ͳྨͷͷ͋Δ͕ඇৗʹك
SPACE ϑϨʔϜϫʔΫ • ྫ͑ɿػೳՃ͢ΔࡍʹʮࠂΛΞϓϦʹ ೖΕΔʯέʔε • ച্্͕Δʢͷͱ͢Δʣ • Layout Shift͕ى͖ͨΓɺݟ่͕ͨΕͨΓͰ։
ൃຬԼ͕Δ • ଞͷࢦඪʹӨڹ͕ͳ͍
SPACE ϑϨʔϜϫʔΫ • ྫ͑ɿʮγεςϜΛ҆ఆՔಇͤ͞ΔͨΊ։ൃπʔϧ ϑϨʔϜϫʔΫΛ׳ΕͨͷͰ౷Ұ͢Δʯέʔε • ҆ఆ͍ͯ͠ΔͨΊɺ Activity शख़ͱͱʹ্͕ͬ ͍ͯ͘
• Performance ҆ఆ͍ͯ͠Εݎௐ͢Δ • ҰํͰຬԼ͕Δʢֶͼ͕ͳ͍ʣ
SPACE ϑϨʔϜϫʔΫ • ྫ͑ɿGitHub͕࣮ࣾࡍʹ࣮ࢪͨ͠ Copilot Λಋೖ͢Δࡍͷੜ࢈ੑ • https://github.blog/2022-09-07-research-quantifying-github-copilots-impact-on-developer-productivity-and-happiness/
SPACE ϑϨʔϜϫʔΫ • ྫ͑ɿGitHub͕࣮ࣾࡍʹ࣮ࢪͨ͠ Copilot Λಋೖ͢Δࡍͷੜ࢈ੑ • ຬ্ ޮ্ ύϑΥʔϚϯεɺٴͼ
ΞΫςΟϏςΟ্ ίϛϡχέʔγϣϯෆ໌ https://github.blog/2022-09-07-research-quantifying-github-copilots-impact-on-developer-productivity-and-happiness/
SPACE ϑϨʔϜϫʔΫ • ෳͷϝτϦΫεΛͬͯ։ൃੜ࢈ੑΛද͢ ࣄ͕ੲ͔ΒओྲྀͰ͋Δ • ୯ҰͷϝτϦΫε͚ͩͰଌ͍͚ͬͯͳ͍ • ٯʹݴ͏ͱԿͷϝτϦΫεʹޮ͍ͯΔͷ͔Λ ߟ͑ͳ͕ΒࢪࡦΛଧͭඞཁ͕͋Δ
͡Ό͋ϦΞʔΩςΫτԿͷ ϝτϦΫεʹޮ͘ͷͳͷ͔
͡Ό͋ϦΞʔΩςΫτԿͷϝ τϦΫεʹޮ͘ͷ͔ • Α͘ʮੜ࢈ੑ্ͷͨΊʹϦΞʔΩςΫτ͠·͢ʯͱݴ͏͕ɺͲͷϝτϦΫε ͷࣄͳͷ͔Λ͖ͬΓ͍ͤͨ͞ • ϦΞʔΩςΫτ͞ΕͨΒ • ։ൃͷػೳՃ͕ૣ͘ͳΔʁʢEf fi
ciencyʣ • ։ൃͷຬ্͕͕ΔʁʢSatisfactionʣ • ։ൃͷΞτΧϜ্͕͕ΔʁʢPerformanceʣ • ։ൃͷڭҭ͕Ͱ͖ͯڠௐੑ͕͕͋ΔʁʢCommunicationʣ • ։ൃͷΞτϓοτ͕ଟ͘ͳΔʁʢActivityʣ
͡Ό͋ϦΞʔΩςΫτԿͷϝ τϦΫεʹޮ͘ͷ͔ • ։ൃͷػೳՃ͕ૣ͘ͳΔʁʢEf fi ciencyʣ • ٕज़తͳෛ࠴͕ͳ͘ͳΓɺෆ۩߹ʹΑΔखΓ͕ͳ͘ͳΔͨΊɺػೳՃ͕ૣ͘ͳΔ • ։ൃͷຬ্͕͕ΔʁʢSatisfactionʣ
• ݟ͕͕ΓɺϞνϕʔγϣϯ্͕͕Δɻ։ൃऀͷೝ͕Δɻ • ։ൃͷΞτΧϜ্͕͕ΔʁʢPerformanceʣ • ඇޮͳݴޠͰॻ͍͓ͯΓɺίετ͕ߴ͔ͬͨɻΠϯϑϥίετ͕Լ͕ΓɺΞτΧϜ্͕͕Δɻ • ։ൃͷڭҭ͕Ͱ͖ͯڠௐੑ͕͕͋ΔʁʢCommunicationʣ • શһͰ։ൃ͢Δ͜ͱͰݟͷڞ༗͕ߦΘΕɺίϥϘϨʔγϣϯٴͼίϛϡχέʔγϣϯ͕͕Δɻ • ։ൃͷΞτϓοτ͕ଟ͘ͳΔʁʢActivityʣ • ࠷৽ٕज़ʹΑΔ։ൃͷ্ͱ҆ఆ
͡Ό͋ϦΞʔΩςΫτԿͷϝ τϦΫεʹޮ͘ͷ͔ • ։ൃͷػೳՃ͕ૣ͘ͳΔʁʢEf fi ciencyʣ • ٕज़తͳෛ࠴͕ͳ͘ͳΓɺෆ۩߹ʹΑΔखΓ͕ͳ͘ͳΔͨΊɺػೳՃ͕ૣ͘ͳΔ • ։ൃͷຬ্͕͕ΔʁʢSatisfactionʣ
• ݟ͕͕ΓɺϞνϕʔγϣϯ্͕͕Δɻ։ൃऀͷೝ͕Δɻ • ։ൃͷΞτΧϜ্͕͕ΔʁʢPerformanceʣ • ඇޮͳݴޠͰॻ͍͓ͯΓɺίετ͕ߴ͔ͬͨɻΠϯϑϥίετ͕Լ͕ΓɺΞτΧϜ্͕͕Δɻ • ։ൃͷڭҭ͕Ͱ͖ͯڠௐੑ͕͕͋ΔʁʢCommunicationʣ • શһͰ։ൃ͢Δ͜ͱͰݟͷڞ༗͕ߦΘΕɺίϥϘϨʔγϣϯٴͼίϛϡχέʔγϣϯ͕͕Δɻ • ։ൃͷΞτϓοτ͕ଟ͘ͳΔʁʢActivityʣ • ࠷৽ٕज़ʹΑΔ։ൃͷ্ͱ҆ఆ ͍ɺ͜Μͳʹ͏·͘ߦ͔ͳ͍ɾɾɾ
͡Ό͋ϦΞʔΩςΫτԿͷϝ τϦΫεʹޮ͘ͷ͔ • ϦΞʔΩςΫτͨ͠Βͨ͠Ͱ৽͍ٕ͠ज़ελοΫʹ׳ΕΔඞཁ͕ ͋ΓɺڭҭίετҰ࣌తʹ্͕ΔʢCommunication: Φϯ ϘʔσΟϯάʹ͔͔Δ্͕͕࣌ؒΔʣ • शख़͕Լ͕͍ͬͯΔؒ ActivityٴͼEf
fi ciency Լ͕Δʢ։ൃ ʹ׳Ε͍ͯͳ͍/मਖ਼ίετ্͕͕ΔͨΊʣ • ͦΕͧΕ͕Լ͕Δͱ͍͏ͷͰ͋ΕύϑΥʔϚϯε্͕Γʹ͘ ͍ɻ • ։ൃऀͷຬ্͕Δ͔͠Εͳ͍ɻ
͡Ό͋ϦΞʔΩςΫτԿͷϝ τϦΫεʹޮ͘ͷ͔ • ϦΞʔΩςΫτͨ͠Βͨ͠Ͱ৽͍ٕ͠ज़ελοΫʹ׳ΕΔඞཁ͕ ͋ΓɺڭҭίετҰ࣌తʹ্͕ΔʢCommunication: Φϯ ϘʔσΟϯάʹ͔͔Δ্͕͕࣌ؒΔʣ • शख़͕Լ͕͍ͬͯΔؒ ActivityٴͼEf
fi ciency Լ͕Δʢ։ൃ ʹ׳Ε͍ͯͳ͍/मਖ਼ίετ্͕͕ΔͨΊʣ • ͦΕͧΕ͕Լ͕Δͱ͍͏ͷͰ͋ΕύϑΥʔϚϯε্͕Γʹ͘ ͍ɻ • ։ൃऀͷຬ্͕Δ͔͠Εͳ͍ɻ ͡Ό͋ҙຯͳ͍ͷ͔ʁ
͍ɺͦΜͳ͜ͱͳ͍
ϦΞʔΩςΫτԿͷͨΊ • ্ʹॻ͍ͨΑ͏ͳιϑτΣΞ্ͷ࣮རͪΖΜ ͋ΔɻͦΜͳ؆୯ʹϝϦοτ͕ಘΒΕͳ͍͚ͩɻ • ίετΛͬͨޙʹϝϦοτ͕ಘΒΕΔͷͰظత Ͱͳ͘ɺظతͳʹͳΔ • ͜͜Λޡղ͍ͯ͠Δͱ͍͠ɺظͰՌΛಘΑ͏ ͱ͍ͯ͠Δ৫ͰϦΞʔΩςΫτΛΔ࣌ʹޡղ
͕ͳ͍Α͏ʹ͠ͳ͍ͱ͍͚ͳ͍ɻ
ϦΞʔΩςΫτԿͷͨΊ • ٕज़Λঝ͠ͳ͍ͱ͍͚ͳ͍ • ͕ࣗͨͪίʔυͷΦʔφʔͰ͋Δͱ͍͏ ΦʔφʔγοϓΛ͓࣋ͬͯ͘ඞཁ͕͋Δ • ఆظతʹϦΞʔΩςΫτɾϦϑΝΫλϦϯά Λߦ͏͜ͱ͕ίʔυͷϒϥοΫϘοΫεԽΛ ͙͜ͱʹͳΔ
ϦΞʔΩςΫτԿͷͨΊ • ίʔυͷΦʔφʔγοϓΛ࣋ͭͱ͍͏ͷੜ࢈ੑ ͷதʹऩ·Βͳ͍ • ҰݴͰ͍͏ͱʮࣗͷࣄͰ͋Δʯͱ͍͏ײ֮ • ଞਓ͕ॻ͍ͨίʔυͰ͋ͬͯϝϯςφϯε͢ Δ͖Ͱ͋Δ͕ɺࣗͷॻ͍ͨίʔυͰ͋Ε ϝϯςφϯε͠ͳͪ͘Ό͍͚ͳ͍ͱ͍͏ؾ࣋ͪ
͕࣋ͯΔ
ϦΞʔΩςΫτԿͷͨΊ • ίʔυͷΦʔφʔγοϓ͕ॏཁ • ࣗͷίʔυͰ͋Δɺࣗͷ͜ͱͰ͋Δͱ͍͏ ҙࣝ • ʮ࡞Δ͚ͩ࡞ͬͯޙଞਓʹͤΔʯͱ͍͏Ϛ ΠϯυͰൃల͠ͳ͍ •
ࣗͷͷͩͱ͍͏ҙࣝΛ࣋ͭ
৫ͷٕज़ܧঝͷ • ࣜભٶͱ͍͏ߟ͑ํ • ࣜʢఆظతʹʣભٶʢ৽఼͍ࣾ͠ΛΓɺޚਆମΛભ͢ʣ • ۩ମతʹ20ʹҰඞͣߦ͏ɻભٶʹΑΔࣄۀඅ2013Ͱ550ԯԁ • ࣜભٶࣗମਖ਼ٶͷҠಈʢϝΠϯϞδϡʔϧͷҠ͠ସ͑ʣ͕ऴΘͬͨ ޙɺผٶͷҠಈʢαϒϞδϡʔϧͷೖΕସ͑ʣ͕͋Δɻ
• ͜ͷؒɺ2ؒ160໊ͷٕೳऀͷޏ༻͕ଓ͘ɻผٶͷભٶऴྃޙɺएख ٕೳ༏लऀ30໊΄ͲΛਆٶͷৗۈ৬һͱͯ͢͠ɻ • ࠃަ௨লͷίϥϜʮࣜભٶʹݟΔٕज़ܧঝͱٕज़ऀ֬อ https://www.mlit.go.jp/hakusyo/mlit/h25/hakusho/h26/html/ n1233c20.htmlʯΑΓ
৫ͷٕज़ܧঝͷ • ࣜભٶͰఆظతʹϦΞʔΩςΫτΛߦ͏͜ͱͰɺ ٕज़ऀͷҭͱΦʔφʔγοϓͷ֬อΛߦ͍ͬͯΔ • γεςϜͷϦΞʔΩςΫτ͕͜͜ૂ͍Ͱ͋Δࣄ͕ଟ ͍ • ୯७ʹظతͳ࣭վળ͕త͚ͩͩͱ͢Δͱظͷ අ༻ରޮՌͷ͚ͩʹͳͬͯ͠·͏͕ɺ͜͜ΛΘ͔ͬ
ͯ͘Ε͍ͯΔਓ͕ݱΛޙԡͯ͘͠͠ΕΔͱॿ͔Δ
ϑϩϯτΤϯυ ϦΞʔΩςΫτ
ϑϩϯτΤϯυϦΞʔΩςΫτ • όοΫΤϯυͱϑϩϯτΤϯυΛΓ͚Δ ͱ͜Ζ͔Βελʔτ • ͜ΕϨΨγʔιϑτΣΞվળΨΠυʹ ࡌͬͯΔํ๏ • ͦͷޙͲ͏͢Δͱྑ͍ͷ͔
ϑϩϯτΤϯυϦΞʔΩςΫτ • Α͋͘Δύλʔϯ • ಛఆͷը໘͚ܾͩΊ͔ͯͦ͜ΒऔΓΉ • ͬͱίϯϙʔωϯτΛׂͯ͠ڞ௨ͷίϯϙʔωϯ τʹΓग़͢ͱ͜Ζ͔Β࢝ΊΔʢύʔπΛ·ͣ࠷ॳʹ ࡞ͬͯ͠·͍ɺ͔ͦ͜ΒΈ্͍͛ͯ͘ʣ •
Ұؾʹϒϧυʔβʔ࡞ઓʢΧοͱͳͬͯશ෦ Next.js App Router ͰϦϥΠτ͠·ͨ͠Έ͍ͨͳౖΓۦಈʣ
ಛఆͷը໘ίϯϙʔωϯτ͚ܾͩ Ί͔ͯͦ͜Βখ࢝͘͞ΊΔύλʔϯ • Ұ൪ଟ͍ɺͱ͍͏ΑΓɺ͜ΕҎ֎͕ಛघ͗͢Δ • ଟ͘ͷػೳ͕͋ͬͯɺશ෦Λஔ͖͑Δͷ͕͠ ͘ɺঃʑʹஔ͖͑Δ͔͠ํ๏͕ͳ͍࣌ʹΔύ λʔϯ • ͍͖ͳΓϏοάϦϥΠτ͠Α͏ͱ͢Δͱࣦഊ͕͠
ͪͳͷͰɺطଘͷػೳՃΛ͠ͳ͕Β৽نϦΞʔ ΩςΫτΛซ༻͢Δ࣌ʹߦ͏
ͬͱίϯϙʔωϯτΛׂͯ͠ɺڞ௨ ύʔπΛ࡞Δͱ͜Ζ͔Β࢝Ίͯޙ͔Βঃʑ ʹڞ௨ύʔπʹدͤͯྑ͍ͯ͘͘͠ • ϘτϜΞοϓʹڞ௨ͷίϯϙʔωϯτ͔Β࣮ࢪ͢ΔΞ ϓϩʔν • ϨΠϠΛػೳ࣠Ͱׂ࣮ͯ͠ࢪ͢Δͷ͕̍ͭͷύλʔ ϯͩͱ͢Δͱɺ෦ͷಛੑͰׂ࣮ͯ͠ࢪ͢Δํ๏ •
౷Ұ͞Εͨίϯϙʔωϯτ͕ͪΌΜͱΑ͘Ͱ͖ͨͷ Ͱ͋Ε߹ੑ͑ΒΕΔ͠ɺ͏·͍͚͘ύʔπ ͷ࠶ར༻ੑ͕ߴ·Γੜ࢈ੑ্͕Δ
ͬͱίϯϙʔωϯτΛׂͯ͠ɺڞ௨ ύʔπΛ࡞Δͱ͜Ζ͔Β࢝Ίͯޙ͔Βঃʑ ʹڞ௨ύʔπʹدͤͯྑ͍ͯ͘͘͠ • ҰํͰڞ௨ίϯϙʔωϯτઃܭ͕͍͠ɻ • ޙʹ৮ΕΔ͕ɺϏοάϦϥΠτʹͳΓ͕ͪ • ͜ͷํ๏Ͱ͏·͍͘͘ύλʔϯ͋·Γݟͨ͜ ͱ͕ͳ͍
• ׂͷํ͕ஞ࣍తʹͳΒͣɺൈຊతͳׂʹ ͳΔࣄ͕͋Δ
Ұؾʹϒϧυʔβʔ࡞ઓ • Χοͱͳͬͯશ෦ͬͱ͖·ͨ͠ • Զʹ1ि͍ؒͩ͘͞ɻຊͷϦΞʔΩςΫτΛ ͓ݟͤ͠·͢Αύλʔϯ • ظతʹऴΘΔ͠ɺ෦࣭͕ؾʹͳΔ͕ɺ ϨϏϡʔ͕Ͱ͖ΔͳΒ࠷ߴ
Ұؾʹϒϧυʔβʔ࡞ઓ • ͦΜͳʹ͘ͳ͍ • ݸਓͷྗྔʹґଘͯ͠͠·͏ • ٕͦͦज़ͷܧঝΛ͍ͨ͠ͷʹɺ݁ہগͷ ਓʹ͔͠ܧঝ͞Εͳ͍ • ͨͩظతʹऴΘΒͤΔ͜ͱ͕Ͱ͖ͯɺ͕Ұ
ؾʹਐΉ
݁ہϦΞʔΩςΫτͷϑϩϯτ ΤϯυͰΔํ๏ͬͯ • ಛఆͷը໘ɾػೳɾίϯϙʔωϯτΛܾΊͯϦΞʔ ΩςΫτͯ͠ɺஞ࣍తʹม͍͑ͯ͘ํ๏͔͋͠· ΓϫʔΫͨ͠ͷΛݟͳ͍ • ϏοάϦϥΠτʹͳΒͳ͍Α͏ʹ͠ͳ͍ͱ͍͚ͳ ͍ •
ݸਓͷྗྔͰୡͰ͖Εྑ͍͕ɺ߹Αͦ͘͏ ͍͏ύϫʔͷ͋Δਓ͕͍ͳ͍͜ͱଟ͍
·ͱΊ
·ͱΊ • ʮ։ൃੜ࢈ੑΛ্͛Δʯͱͻͱͪ͘Ͱݴ͍͔ͬͯͭ͘ͷࢹ͕͋ΔɻS.P.A.C.E. ͦΕͧΕͲΕΛ্͛Α͏ͱ͍ͯ͠Δͷ͔ݕ౼ͷ༨͕͋Δɻ • ʮϦΞʔΩςΫτʯʮੜ࢈ੑΛ্͛ΔͨΊͷखஈʯͰ͋Δ͕ɺͦΜͳ؆୯ʹ ੜ࢈ੑ্͕ΔͷͰͳ͍ɻ͔͠Δ͖ίετΛ͏ඞཁ͕͋ΔɻͦͷఱṝΛ ։ൃϦʔμʔ͕࣋ͭͷॏཁ • ҰํͰʮϦΞʔΩςΫτʯʮੜ࢈ੑΛ্͛ΔʯͨΊ
*͚ͩ* ͷखஈͰͳ͍ɺͲ ͪΒ͔ͱ͍͏ͱʮίʔυͷΦʔφʔγοϓΛ࣋ͭʯͱ͍͏ͷ͕ॏཁɻ • ʮίʔυͷΦʔφʔγοϓʯʮࣗͷ͜ͱͰ͋Δʯͱ͍͏ײ֮ • ϦΞʔΩςΫτͷΓํ༷ʑɺΈΜͳ͍ΖΜͳΓํ͕͋Δ͕ɺըҰతʹͳ Βͳ͍ɺͳͥͳΒ৫͕શ෦ҧ͏͔Β