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
デザイナー・エンジニアのコンポーネント分類基準とその理想郷
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Xuesu Li
December 10, 2018
Programming
4.2k
8
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
デザイナー・エンジニアのコンポーネント分類基準とその理想郷
Xuesu Li
December 10, 2018
More Decks by Xuesu Li
See All by Xuesu Li
手書きSVGいいよ
resessh
0
240
Other Decks in Programming
See All in Programming
ADKを使って簡単にAIエージェントを作ってみよう
k1mu21
0
270
net-httpのHTTP/2対応について
naruse
0
490
肥大化するレガシーコードに立ち向かうためのインターフェース分離と依存の逆転 / JJUG CCC 2026 Spring
hirokunimaeta
0
570
jQueryをバージョンアップする前に使いたいjQuery Migrate
matsuo_atsushi
0
520
Dataformのリポジトリを立ち上げるときにまずやること / dataform-day0-2026
snhryt
0
160
Performance Engineering for Everyone
elenatanasoiu
0
140
LLM本来の能力を解き放つサンドボックス技術とAI民主化への適用
yukukotani
3
4.1k
キャリア迷子上等 ─ "ない道"は自分で作ればいい
16bitidol
3
2.1k
Oxlintのカスタムルールの現況
syumai
6
1.1k
Developing with AI Agents — Codex, Claude Code & Cowork Practical Guide
x5gtrn
PRO
0
1.3k
AIだと陥りがちなJakarta EE最新技術への移行時の落とし穴と解決策
tnagao7
0
110
生成AI時代にこそ効くGo | Why Go Works in the Age of Generative AI
mom0tomo
8
3.2k
Featured
See All Featured
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Designing for humans not robots
tammielis
254
26k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
210
Believing is Seeing
oripsolob
1
150
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
170
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
240
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.5k
Building an army of robots
kneath
306
46k
Code Review Best Practice
trishagee
74
20k
It's Worth the Effort
3n
188
29k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
870
Transcript
σβΠφʔɾΤϯδχΞͷ ίϯϙʔωϯτྨج४ͱ ͦͷཧڷ ཥઇॗ!SFTFTTI ɹୈ̍ճ"UPNJD%FTJHOʹ͍ͭͯߟ͑Δձ
✋Ξϯέʔτ w σβΠφʔ w ϑϩϯτΤϯυΤϯδχΞ w όοΫΤϯυΤϯδχΞ w ͷൺ͕Γ͍ͨͷͰڍख͓Ͷ͕͍͠·͢ʢෳڍखՄʣ
"ࣗݾհ w Γͤͬ͠Ύ ཥઇॗ !SFTFTTI w 3FUUZגࣜձࣾ w ڕհܥϥʔϝϯ୲
w $44ΤϯδχΞϑϩϯτΤϯυσβΠφʔ w )5.-$44+BWB4DSJQU7VFKTͳͲ
͜Μͳ͜ͱ͋Γ·ͤΜ͔ʁ ୈҰճ"UPNJD%FTJHOΛߟ͑ΔձΞϯέʔτ݁ՌΑΓ
͜Μͳ͜ͱ͋Γ·ͤΜ͔ʁ ୈҰճ"UPNJD%FTJHOΛߟ͑ΔձΞϯέʔτ݁ՌΑΓ
ͦΕͳʂ
&ࠓ͢͜ͱ w ίϯϙʔωϯτΛྨ͢Δཧ༝ɾج४ w σβΠφʔฤ w ΤϯδχΞฤ w ͦΕͧΕͷج४Λ߹ମͤ͞Δ
ίϯϙʔωϯτΛ ྨ͢Δཧ༝ɾج४ 'σβΠφʔฤ
r#SBE'SPTU ͦͦ l"UPNJDEFTJHOJTBNFUIPEPMPHZGPSUIJOLJOHBCPVU VTFSJOUFSGBDFT OPU$44BSDIJUFDUVSFz l"UPNJDEFTJHOϢʔβΠϯλʔϑΣʔεΛߟ͑Δ ͨΊͷํ๏Ͱɺ$44ΞʔΩςΫνϟͰͳ͍ɻz IUUQTXFCEFTJHOUVUTQMVTDPNBSUJDMFTTUSVDUVSJOHTBTTTBZJOHHPPECZFUPBUPNJDEFTJHOBNCJHVJUZDNTDPNNFOU
"UPNJD%FTJHOͷྨ ໎ͬͨΒσβΠϯͷج४Ͱ ߟ͑ͨ΄͏͕Αͦ͞͏
σβΠφʔ͕ίϯϙʔωϯτ Λྨ͢Δཧ༝ ෳਓͷσβΠφʔ͕ڞಉ࡞ۀΛͯ͠τϯϚφΛ౷Ұ ͍ͨ͘͢͠͠ ίϯϙʔωϯτΛ࠶ར༻͢Δࡍʹ୳͍ͨ͘͢͠͠ ίϯϙʔωϯτ͕ͲͷϢʔβߦಈͷϑΣʔζʹର͢Δ ͳͷ͔ɺΛ໌֬ʹ͢Δ͜ͱͰɺʹରͯ͠վળΛ
ߦ͏ίϯϙʔωϯτΛ୳͍ͨ͘͢͠͠
ϢʔβߦಈͷϑΣʔζ w ը໘શମ͔Βؔ৺ͷ͋ΔίϯςϯπΛ୳͢ w ίϯςϯπͷ֓ཁΛेʹཧղ͢Δ w ߦ͍͍ͨΞΫγϣϯͷखॱΛཧղ͢Δ w ΞΫγϣϯͷ࣮ߦঢ়گɾ݁ՌΛཧղ͢Δ ཻେ
ཻখ
ϢʔβߦಈͷϑΣʔζΛ ϕʔεʹج४Λ࡞Δͱ ྨͷҙຯ͕͋Γͦ͏
ίϯϙʔωϯτΛ ྨ͢Δཧ༝ɾج४ )ΤϯδχΞฤ
ΤϯδχΞ͕ίϯϙʔωϯτ Λྨ͢Δཧ༝ ґଘͷํੑΛ࡞Δ͜ͱͰɺมߋͷӨڹൣғΛڱΊ͍ͨ ࠷খ୯Ґͷྨ͕͖ͪΜͱ্࣮ͷ࠷খ୯ҐͰແ͍ͱɺ࣮ ӡ༻͕ਏ͍ɻ·ͨɺ࠷খ୯Ґඞͣίϯϙʔωϯτݺ ͼग़͠ʹͳͬͯ΄͍͠ ϖʔδίϯςϯπͷϨΠΞτͱϖʔδίϯςϯπ֎ͷ
ϖʔδશମͷϨΠΞτͰ͚͍ͨ σʔλιʔε͕ܾ·ͬͨίϯϙʔωϯτͱͦ͏Ͱͳ͍ίϯ ϙʔωϯτΛ͚Δ͜ͱͰ࠶ར༻ੑΛߴΊ͍ͨ
ϖʔδίϯςϯπͷϨΠΞτͱϖʔδίϯ ςϯπ֎ͷϖʔδશମͷϨΠΞτͰ͚͍ͨ άϨʔεέʔϧͷ෦
σʔλιʔε͕ܾ·ͬͨίϯϙʔω ϯτͱͦ͏Ͱͳ͍ίϯϙʔωϯτ w 4UPSFʹΞΫηεͰ͖ͨΓɺ"1*ΛݺΔͱɺσʔ λιʔεʹґଘ͢ΔͷͰ࠶ར༻͕ͮ͠Β͘ͳΔ w σʔλιʔε͕ܾ·ͬͨίϯϙʔωϯτˠ$POUBJOFS $PNQPOFOUT w ͦ͏Ͱͳ͍ίϯϙʔωϯτˠ1SFTFOUBUJPOBM
$PNQPOFOUT ʮ1SFTFOUBUJPOBMBOE$POUBJOFS$PNQPOFOUTʯ IUUQTNFEJVNDPN!EBO@BCSBNPWTNBSUBOEEVNCDPNQPOFOUTDBGBDE
$POUBJOFS$PNQPOFOUTͱ 1SFTFOUBUJPOBM$PNQPOFOUT͕ ྨͰ͖Εɺ͋ͱ֤ͬΆ͍
ͦΕͧΕͷج४Λ ߹ମͤ͞Δ
1BHFT5FNQMBUFT w 'ը໘શମ͔Βؔ৺ͷ͋ΔίϯςϯπΛ୳ͤΔͨΊͷཻ w )ϖʔδίϯςϯπͷϨΠΞτͱϖʔδίϯςϯπ֎ͷϨ ΠΞτͰ͚͍ͨ w ϖʔδίϯςϯπ֎ͷϨΠΞτ-BZPVUT͕σϑΝΫτͳ ͷͰɺ1BHFT-BZPVUTͰ໋໊͢Δͱ࣮ଆָ͕ͳ͜ͱ w
)࠶ར༻ੑ͍ɻ w ಛఆͷσʔλιʔεʹґଘ͢Δ
1BHFT
5FNQMBUFT -BZPVUT
0SHBOJTNT w 'ίϯςϯπΛेʹཧղ͠ɺ࣍ͷΞΫγϣϯΛىͨ͜͢Ί ͷཻɻ w ίϯςϯπ͕͜ͷίϯϙʔωϯτҰͭͰ݁͢Δɻ63-Λ ͍࣋ͬͯΔ͜ͱ͕ଟ͍ w ΞΫγϣϯਵ͍ͯ͠Δ͜ͱ͕ଟ͍ w
)࠶ར༻ੑͯ͘Α͍ɻ w ඞཁͰ͋Εಛఆͷσʔλιʔεʹґଘ͢Δ͜ͱ͕Ͱ͖Δɻ
0SHBOJTNT
0SHBOJTNT ಛఆͷσʔλιʔεʹґଘ͠ͳ͍ 0SHBOJTNT͕0SHBOJTNTΛؚΉύλʔϯ
0SHBOJTNT
0SHBOJTNT 0SHBOJTNT͕0SHBOJTNTΛؚΉύλʔϯ
.PMFDVMFT w 'ίϯςϯπͷಛఆͷใͷཧղΛਂΊͤ͞ΔͨΊͷཻ w ίϯςϯπ͕ҰͭͰ݁͠ͳ͍ίϯϙʔωϯτ w 'ߦ͍͍ͨΞΫγϣϯͷखॱΛཧղͤ͞ΔͨΊͷཻ w ಛఆͷΞΫγϣϯΛߦ͏6* w
)࠶ར༻͘͢͢͠Δ w ಛఆͷσʔλιʔεʹґଘ͍͚ͯ͠ͳ͍ʂ
.PMFDVMFT
.PMFDVMFT
"UPNT w 'ෳਓͷσβΠφʔ͕ڞಉ࡞ۀΛͯ͠τϯϚφΛ౷Ұ͘͢͠ ͢ΔͨΊͷཻ w )5.-ͷλάʹରԠ͢Δ͜ͱ͕ଟ͍ w 5SBOTJUJPOίϯϙʔωϯτͳͲ w )࠶ར༻͘͢͢͠Δ
w ಛఆͷσʔλιʔεʹґଘ͍͚ͯ͠ͳ͍ʂ w )࠷খ୯Ґඞͣίϯϙʔωϯτݺͼग़͠ʹͳͬͯ΄͍͠
"UPNT
͓·͚ 'PVOEBUJPOT ͜͏͍͏༰$44ϓϦϓϩηοαͷ ఆʹஔ͍ͨ΄͏ָ͕ IUUQTLBSSJTBBSJOFODPNQPTUTCVJMEJOHBJSCOCEFTJHOTZTUFNΑΓ
+͔͠͠ɺஅʹ໎͏ Τοδέʔεͱͯଟ͍
ίϯϙʔωϯτ ྨج४ͷཧڷ
-σβΠφʔͱΤϯδχΞ͕ ίϯϙʔωϯτྨͷཧ༝Λ࣋ͪɺ ରΛ͢Δڥ
r#SBE'SPTU ͦͦ l#VUBUPNJDEFTJHOJTOPUSJHJEEPHNB6MUJNBUFMZ XIBUFWFS UBYPOPNZZPVDIPPTFUPXPSLXJUITIPVMEIFMQZPVBOEZPVS PSHBOJ[BUJPODPNNVOJDBUFNPSFF⒎FDUJWFMZJOPSEFSUPDSBGUBO BNB[JOH6*EFTJHOTZTUFNz l͔͠͠ɺ"UPNJD%FTJHOݫ֨ͳڭٛͰͳ͍ɻڀۃత ʹɺͲΜͳUBYPOPNZΛબ΅͏ͱɺ͋ͳͨͱ͋ͳͨͷ ৫͕ΑΓޮՌతʹɺૉΒ͍͠6*σβΠϯγεςϜΛ
࡞ΔͨΊͷίϛϡχέʔγϣϯͷॿ͚ʹͳΔɻz IUUQBUPNJDEFTJHOCSBEGSPTUDPNDIBQUFSXIBUTJOBOBNF
"MUFSOBUJWF"UPNJD%FTJHO w ࡞ΔΞϓϦέʔγϣϯνʔϜͷڥʹΑͬͯɺྨ͢Δ ཧ༝ྨ໊ͷϞνϕʔγϣϯҧ͏ɻ w ସͱͳΔྨํ๏ΛνʔϜͰ࡞Γɺڞ௨ݴޠΛ໌֬ʹ͠ ͍ͯ͘ ʮ"MUFSOBUJWF"UPNJD%FTJHOΛ͕ͯ͞͠ʯ IUUQTZPSZEFTJHOOPUFBMUFSOBUJWFBUPNJDEFTJHO
ཧڷͷྑཱྀ͍࿏Λ