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
DMMで新規サービス作ったらフロントエンドエンジニアの重要性が浮き彫りになった話 - DMM ...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
usagi-f
November 26, 2015
Technology
0
110
DMMで新規サービス作ったらフロントエンドエンジニアの重要性が浮き彫りになった話 - DMM Study night
usagi-f
November 26, 2015
Tweet
Share
More Decks by usagi-f
See All by usagi-f
フロントエンド実装から見たAtomic Design開発のポイント
usagif
3
6.9k
Take into Accessibility in React
usagif
1
690
platoを使ったコードメトリクス生成
usagif
0
310
How Github works and How Google works
usagif
0
120
良いUIをエンジニアに作ってもらうために、デザイナーができること
usagif
1
83
Frontend summary in 2015 summer
usagif
0
54
なるべく噛み砕いたGit基礎講習
usagif
1
82
position: fixed;を上手に飼う方法
usagif
2
360
Other Decks in Technology
See All in Technology
SchooでVue.js/Nuxtを技術選定している理由
yamanoku
3
210
StrandsとNeptuneを使ってナレッジグラフを構築する
yakumo
1
130
量子クラウドサービスの裏側 〜Deep Dive into OQTOPUS〜
oqtopus
0
150
CDKで始めるTypeScript開発のススメ
tsukuboshi
1
590
Bill One急成長の舞台裏 開発組織が直面した失敗と教訓
sansantech
PRO
2
410
モダンUIでフルサーバーレスなAIエージェントをAmplifyとCDKでサクッとデプロイしよう
minorun365
4
230
22nd ACRi Webinar - NTT Kawahara-san's slide
nao_sumikawa
0
120
Webhook best practices for rock solid and resilient deployments
glaforge
2
310
20260208_第66回 コンピュータビジョン勉強会
keiichiito1978
0
210
顧客の言葉を、そのまま信じない勇気
yamatai1212
1
370
AIエージェントを開発しよう!-AgentCore活用の勘所-
yukiogawa
0
200
M&A 後の統合をどう進めるか ─ ナレッジワーク × Poetics が実践した組織とシステムの融合
kworkdev
PRO
1
530
Featured
See All Featured
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.1k
Stop Working from a Prison Cell
hatefulcrawdad
273
21k
Embracing the Ebb and Flow
colly
88
5k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
470
30 Presentation Tips
portentint
PRO
1
230
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
0
260
Designing for Timeless Needs
cassininazir
0
130
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
190
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Fireside Chat
paigeccino
41
3.8k
How to Ace a Technical Interview
jacobian
281
24k
Raft: Consensus for Rubyists
vanstee
141
7.3k
Transcript
%..Ͱ৽نαʔϏε࡞ͬͨΒ ϑϩϯτΤϯυΤϯδχΞͷॏཁੑ͕ ු͖ூΓʹͳͬͨ ੴڮܒଠ %..4UVEZ/JHIU
ࣗݾհ %..DPN-BCP ʙ 6*σβΠφʔϑϩϯτΤϯυΤϯδχΞ ੴڮܒଠ
աڈͷ%..ͷαʔϏεߏஙͱ
աڈͷ%..ͷαʔϏεߏஙͱ چདྷͷ8FCαʔϏε cc αʔϏεશମʹରͯ͠ߴͳ+BWB4DSJQU͕ඞཁແ͍
աڈͷ%..ͷαʔϏεߏஙͱ چདྷͷ8FCαʔϏε cc αʔϏεશମʹରͯ͠ߴͳ+BWB4DSJQU͕ඞཁແ͍ ϑϩϯτΤϯυΤϯδχΞ ͱ͍͏৬छ͕ଘࡏ͠ͳ͔ͬͨ
σβΠφʔ͕ͳΜͱ͔͠ͳ͍ͱʜ
ͩΒ͚ ࣝࠩʹΑΔ࣭Լ ϦϑΝΫλϦϯά͠ͳ͍ɾͰ͖ͳ͍ ์ஔ͞ΕΔόά +4࣮Ͳ͕ͬͪΔ ϝϯςφϯεੑͷԼ
ʮͱΓ࣮͋͑ͣʯ͕ ҲΕ͔͍͑ͬͯͨ ͦͦzઃܭzΛ͢ΔจԽ͕ແ͍ʜ
ʀƅЧƅ ŜƄŞŜƄŞŲƄſŲƄſŜƄŦŜƄŦŲƄſŲƄſ
৽نαʔϏε্ཱͪ͛ʜɻ ͔̍Βߏங͢Δνϟϯεʂ ཁ݅ఆٛͱମ੍ͮ͘Γ
ཁ݅ఆٛ
࠷ऴతͳαʔϏεنະ อकରԠऀͷεΩϧײෆ໌ ϦϦʔεݫक લఏ݅
֦ுͷ͢͠͞ ࣭ͷอ࣋ ։ൃεϐʔυ αʔϏεن ରԠऀͷεΩϧײ ϦϦʔεݫक લఏ݅ ඞཁཁ݅
ମ੍ͮ͘Γ
ϑϩϯτΤϯυΤϯδχΞ )5.-$44+BWB4DSJQU σβΠφʔ 14%࡞ίϯηϓτϨΪϡϨʔγϣϯ όοΫΤϯυΤϯδχΞ 1)1 σβΠφʔͱόοΫΤϯυͷؒʹೖΔ
ϦʔυσβΠφʔ σβΠφʔ ϦʔυΤϯδχΞ ΤϯδχΞ ϦʔυΤϯδχΞ ΤϯδχΞ σβΠϯηΫγϣϯ ϑϩϯτΤϯυηΫγϣϯ όοΫΤϯυηΫγϣϯ σΟϨΫλʔ
1-ɾ1.
ཁ݅Λຬͨ͢ͷΛͭ͘ΔͨΊʹ ʢ֦ுʴ࣭ʴεϐʔυʣ
ίʔσΟϯάϧʔϧ ʴ υΩϡϝϯςʔγϣϯ ʴ ։ൃڥ
શମϧʔϧ )5.-ϧʔϧ $44ϧʔϧ +BWB4DSJQUϧʔϧ ը૾ϧʔϧ
શମϧʔϧ )5.-ϧʔϧ $44ϧʔϧ +BWB4DSJQUϧʔϧ ը૾ϧʔϧ খ খ େ த খ
ॏཁ
શମϧʔϧ )5.-ϧʔϧ ը૾ϧʔϧ +BWB4DSJQUϧʔϧ $44ϧʔϧ খ খ খ த େ
ॏཁ େࣄͳ࠷ޙʹ͠·͢ʂʂʂ
શମϧʔϧ ɾ৮ΔϑΝΠϧͷ໌֬ԽʢTPVSDFEFTUJOBUJPOʣ ɾϫʔΫϑϩʔఆٛʢ(JU'MPX(JU)VC'MPXʣ ɾॻࣜఆٛʢFEJUPSDPOpHʣ ɾۓٸରԠ࣌ͷϑϩʔ ɾҙࣄ߲ͳͲ
)5.-ϧʔϧ ɾ໋໊نଇʢϋΠϑϯɾΞϯμʔόʔͳͲʣ ɾஅʹࠔΓͦ͏ͳλάͷΈ͍ํΛఆٛ ɹIʙIɺTFDUJPOɺOBWɺTQBOɺͳͲ ɾج४͕ᐆດͳλά͋͑ͯඇਪ ɹBTJEFɺBSUJDMFɺJɺͳͲ ɾجຊXFCඪ४ʹ४ڌ
ը૾ϧʔϧ ɾQOHKQHTWH͍͚ج४ ɾ໋໊نଇʢ಄ࣙɾඌࣙʣ ɾඞͣѹॖ͢Δ͜ͱ
+BWB4DSJQUϧʔϧ ɾK2VFSZʢ6*্ͷදݱʹͱͲΊΔʣ ɾॻࣜ-JOUFSͰ੍ޚ ɾCPXFSͰϥΠϒϥϦཧ ɾϞδϡʔϧ୯ҐͰ࡞͠ɺXFCQBDLͰཧ
+BWB4DSJQUϧʔϧ +BWB4DSJQU෦ͷॏཁ͕தͳཧ༝ ɾϞδϡʔϧཧ͞Ε͍ͯΕɺϦϑΝΫλϦϯά͍͢͠ ɾΞαΠϯ͞ΕΔਓһɺҰఆͷεΩϧ͕ظͰ͖Δ
;͎ʜЏʌ ʅЏʆʀ ʍ
$44ϧʔϧ ɾ4BTTΛ࠾༻ ɾઃܭ'-0$44Λ࠾༻ ɾ֮͑ͮΒ͍ϧʔϧۃྗഉআ ɾॻࣜ-JOUFSͰ੍ޚ ɾ໋໊نଇ#&. ɾελΠϧΨΠυͷ࡞
4BTT
$44ϧʔϧ4BTT ̋ ʷ ࣝΛͦΕ΄Ͳඞཁͱ͠ͳ͍ͷͷΈ༻ ม ωετ ηϨΫλͷܧঝ ίϝϯτ ؔ NJYJOFYUFOE
ϓϨʔεϗϧμʔ ݅ذ ܁Γฦ͠ ࢛ଇԋࢉ
ઃܭɿ'-0$44 IUUQTHJUIVCDPNIJMPLJqPDTT
͡Ίʹʜ '-0$44ͷಛΛগ͠આ໌͠·͢
$44ϧʔϧઃܭɿ'-0$44 େ͖̏ͭ͘ͷϨΠϠʔʹ͔Ε͍ͯΔ ɾ'PVOEBUJPO ɾ-BZPVU ɾ0CKFDU ᴸ ᴸ ᴸ ॳظԽͳͲͷϕʔε େɾϑϨʔϜ෦
ίϯςϯπΤϦΞ
$44ϧʔϧઃܭɿ'-0$44 ͞Βʹɺ0CKFDUͷԼʹ̏ͭͷࢠϨΠϠʔ ɾ0CKFDU ɹɾ$PNQPOFOU ɹɾ1SPKFDU ɹɾ6UJMJUZ ᴸ ᴸ ᴸ ࠶ར༻Ͱ͖Δύʔπ
ύʔπͷू߹ମ ൚༻Ϋϥε
$44ϧʔϧઃܭɿ'-0$44 'PVOEBUJPO -BZPVUͰ࡞ͬͨԼʹ 0CKFDUΛஔ͍ͯ͘͠Πϝʔδ $PNQPOFOUΛ࡞ͬͯɺ6UJMJUZɾ1SPKFDUΛ ͏·ͬͯ͘ཁૉͮ͘Γ
$44ϧʔϧઃܭɿ'-0$44 'PVOEBUJPO -BZPVU $PNQPOFOU 6UJMJUZ 1SPKFDU 0CKFDU
$44ϧʔϧઃܭ ͯ͢ͷ࡞ۀऀʹɺ'-0$44ͷ֓೦ΛΩνϯͱཧղ͠ ӡ༻ͯ͠Β͏ͷ͍͠
$44ϧʔϧઃܭ ͯ͢ͷ࡞ۀऀʹɺ'-0$44ͷ֓೦ΛΩνϯͱཧղ͠ ӡ༻ͯ͠Β͏ͷ͍͠ Ͱ $PNQPOFOUϕʔεͷઃܭࢥ׆༻͍ͨ͠
$44ϧʔϧઃܭ ࡞ۀऀʹର͢ΔϧʔϧΛεέʔϧμϯ ɾ'PVOEBUJPO ɾ-BZPVU ɾ0CKFDU ɾ$PNQPOFOU ɾ6UJMJUZ ɾ1SPKFDU ઃܭऀ͕৮Δൣғ ࡞ۀऀ͕৮Δൣғ
$44ϧʔϧઃܭ ࡞ۀऀʹର͢ΔϧʔϧΛεέʔϧμϯ ɾ$PNQPOFOU ɾ6UJMJUZ ɾ1SPKFDU ύʔπͯ͢ίί ઃܭऀ͕༻ҙɾ࡞ۀऀ͏͚ͩ ύʔπͱແؔͳಠཱϖʔδ༻
$44ϧʔϧઃܭ ࡞ۀऀʹର͢ΔϧʔϧΛεέʔϧμϯ ɾ$PNQPOFOU ɾ6UJMJUZ ɾ1SPKFDU ύʔπͯ͢ίί ઃܭऀ͕༻ҙɾ࡞ۀऀ͏͚ͩ ύʔπͱແؔͳಠཱϖʔδ༻
$44ϧʔϧઃܭ ࡞ۀऀʹର͢ΔϧʔϧΛεέʔϧμϯ $PNQPOFOUʴ6UJMJUZͰجຊશͯΛ·͔ͳ͏ ɾ$PNQPOFOU ɾ6UJMJUZ ɾ1SPKFDU ύʔπͯ͢ίί ઃܭऀ͕༻ҙɾ࡞ۀऀ͏͚ͩ ύʔπͱແؔͳಠཱϖʔδ༻
$44ϧʔϧઃܭ ࡞ۀऀʹର͢ΔϧʔϧΛεέʔϧμϯ $PNQPOFOUʴ6UJMJUZͰجຊશͯΛ·͔ͳ͏ ɾ$PNQPOFOU ɾ6UJMJUZ ɾ1SPKFDU ύʔπͯ͢ίί ઃܭऀ͕༻ҙɾ࡞ۀऀ͏͚ͩ ύʔπͱແؔͳಠཱϖʔδ༻ Θ͔Γ͍͢ʂ
$44ϧʔϧઃܭ $44ઃܭɺӡ༻อकͷ։ൃεϐʔυͷཁ
$44ϧʔϧઃܭ $44ઃܭɺӡ༻อकͷ։ൃεϐʔυͷཁ ਖ਼֬ͳ$PNQPOFOUԽʹɺ σβΠφʔͱͷີͳίϛϡχέʔγϣϯ͕ඞਢ
$44ϧʔϧઃܭ $44ઃܭɺӡ༻อकͷ։ൃεϐʔυͷཁ σβΠφʔ ϑϩϯτΤϯυ όοΫΤϯυ ਖ਼֬ͳ$PNQPOFOUԽʹɺ σβΠφʔͱͷີͳίϛϡχέʔγϣϯ͕ඞਢ
ελΠϧΨΠυ
$44ϧʔϧελΠϧΨΠυ TDTTϑΝΠϧ͔ΒελΠϧΨΠυΛࣗಈੜ͢ΔΑ͏ʹ (VMQΛͬͯ։ൃڥΛߏங src/*.scss dest/*.css styleguide/*.html ݁߹ɾѹॖͳͲΛͨ͠ $44ϑΝΠϧ ελΠϧΨΠυ ʢ$PNQPOFOUҰཡʣ
࣮ࡍͷϑϩϯτ։ൃڥ
*.js JS (modules) *.js JS (library) *.html スタイル ガイド *.scss
CSS (source) *.min.css CSS (dest) *.min.js JS (entry point) lib.min.js JS (library minify) hologram sass webpack Gulp controller(php) Viewファイル *.volt(php)
*.js JS (modules) *.js JS (library *.html スタイル ガイド *.scss
CSS (source) *.min.css CSS (dest) *.min.js JS (entry point) lib.min.js JS (library minify) hologram sass webpack Gulp controller(php Viewファイル *.volt(php) ࡞ۀऀ͕৮ΔϑΝΠϧ
ઃܭऀʢϑϩϯτΤϯυΤϯδχΞʣ͕ཧΛ͢ΔͨΊʹ ɾ$44JNQPSU ɾ8FCQBDL&OUSZ1PJOU ɾXFCQBDLDPOpHKT ɾQBDLBHFKTPO ɾCPXFSKTPO ཧ༻ϑΝΠϧΛΩνϯͱ࡞͓ͬͯ͘ˡ݁ߏେࣄͩͬͨ
ϑϩϯτΤϯυΤϯδχΞͷॏཁੑͱ ·ͱΊ
ͱʹ͔͘Ϋιίʔυ͕ݮΔ
ͱʹ͔͘Ϋιίʔυ͕ݮΔ ɾϝϯς͍͢͠ ɾύϑΥʔϚϯεߴ͍ ɾόά͕ग़ʹ͍͘ ɾؾ͍͍࣋ͪ ɾָ͍͠
ϝϦοτͩΒ͚
5IBOL:PV %..4UVEZ/JHIU