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
TypeScript と ORM / ORM with TypeScript
Search
dojineko
June 18, 2019
Technology
0
750
TypeScript と ORM / ORM with TypeScript
dojineko
June 18, 2019
Tweet
Share
More Decks by dojineko
See All by dojineko
iOSのWebViewとClipboardAPI / WebView and ClipboardAPI on iOS
dojineko
0
42
最近のUnityとVRChat / About Unity and VRChat recently
dojineko
0
130
WebXRでポートフォリオを作ろう/Let's make your portfolio with WebXR!
dojineko
0
150
ペパボ ホスティング事業部のWebフロントエンドについて 2022 / About Web Frontend of Pepabo Hosting division 2022
dojineko
1
9k
Viteはいいぞ/Vite is Good
dojineko
1
710
はじめてでもできた!VR登壇への道 / Let's VR speech!
dojineko
0
400
gRPC-WEBを使ったWEBアプリ開発/Development web-app with gRPC-WEB
dojineko
1
880
もう俺には関係なくないTypeScript/Our TypeScript
dojineko
3
330
TypeScript ではじめる Clean Architecture / Let's start Clean Architecture with TypeScript
dojineko
2
3.2k
Other Decks in Technology
See All in Technology
モジュラーモノリスでスケーラブルなシステムを作る - BASE のリアーキテクチャのいま
panda_program
7
2k
非エンジニアにも伝えるメールセキュリティ / Email security for non-engineers
ykanoh
13
3.9k
コード品質向上で得られる効果と実践的取り組み
ham0215
2
200
20250326_管理ツールの権限管理で改善したこと
sasata299
1
380
大規模プロジェクトにおける 品質管理の要点と実践 / 20250327 Suguru Ishii
shift_evolve
0
280
Tirez profit de Messenger pour améliorer votre architecture
tucksaun
1
140
Keynote - KCD Brazil - Platform Engineering on K8s (portuguese)
salaboy
0
120
サーバシステムを無理なくコンテナ移行する際に伝えたい4つのポイント/Container_Happy_Migration_Method
ozawa
1
100
Amazon GuardDuty Malware Protection for Amazon S3を使おう
ryder472
2
100
お問い合わせ対応の改善取り組みとその進め方
masartz
1
370
ソフトウェアプロジェクトの成功率が上がらない原因-「社会価値を考える」ということ-
ytanaka5569
0
130
年末調整プロダクトの内部品質改善活動について
kaomi_wombat
0
210
Featured
See All Featured
Fireside Chat
paigeccino
37
3.3k
Speed Design
sergeychernyshev
28
860
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Product Roadmaps are Hard
iamctodd
PRO
52
11k
Done Done
chrislema
183
16k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
12
610
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.4k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
The Language of Interfaces
destraynor
157
24k
Scaling GitHub
holman
459
140k
Making Projects Easy
brettharned
116
6.1k
Gamification - CAS2011
davidbonilla
81
5.2k
Transcript
!EPKJOFLP(.01FQBCP *OD 'VLVPLBUT 5ZQF4DSJQUͱ03.
ΑΖͣ݉੩తܕ͚͓͡͞Μ !EPKJOFLP
࠷ۙͷൃද5ZQF4DSJQUͩΒ͚ ੩తܕ͚͓͡͞ΜͳͷͰɺฐࣾͰͷ5ZQF4DSJQUීٴ׆ಈʹʑ҉༂͍ͯ͠·͢ɻ IUUQTTQFBLFSEFDLDPNEPKJOFLP
ͱ͍͏ ϫέͰ
5ZQF4DSJQU͔Β͑Δ 03.ʹ͍ͭͯ͝հ͠·͢
࣍ 4FRVFMJ[Fͱ 4FRVFMJ[Fͷ5ZQF4DSJQUαϙʔτঢ়گ 5ZQF4DSJQUͰ͏·͍ͬͯ͘͘ํ๏ 4FRVFMJ[F$-*ͷ5ZQF4DSJQUରԠঢ়گ 5ZQF03.ͱͷൺֱ ·ͱΊ
None
4FRVFMJ[Fͱʁ w/PEFKTͰݹ͔͘Β͑Δ03. OQN্࠷ݹͷϦϦʔεલ w.Z42-ɺ.BSJB%#ɺ1PTUHSF42-ɺ.442-ɺ42-JUFʹରԠ wຊޠɺӳޠؚΊࣄྫใ͕๛ʂࣄྫ͕ଟ͍ w࣮࣭ϑΝΫτελϯμʔυ ˞ཁग़య
W͔Β5ZQF4DSJQUΛਖ਼ࣜʹαϙʔτ wW͔Β5ZQF4DSJQUΛਖ਼ࣜʹαϙʔτ։࢝ʂ wܕఆ͕ٛެࣜύοέʔδ͔Βڙڅ͞ΕΔΑ͏ʹʂ w͔͠͠ɾɾɾ
W͔Β5ZQF4DSJQUΛਖ਼ࣜʹαϙʔτ ɾɾɾ 4FRVFMJ[F࣮ߦ࣌ʹϓϩύςΟͷׂΓͯΛߦ͏͜ͱʹɺ͔ͳΓ ґଘ͍ͯ͠ΔͷͰɺ5ZQF4DSJQUͦͷ··Ͱ͋·Γʹཱͪ·ͤΜɻ ϞσϧΛ࣮ߦՄೳʹ͢Δʹɺ͔ͳΓͷྔͷखಈܕએݴ͕ඞཁͰ͢ɻ
ਖ਼ࣜରԠͬͯݴͬͨ͡ΌΜʂ ٽ
ެࣜͷ5ZQF4DSJQUͰͷॻ͖ํ $MBTT൛
ʲࢀߟʳ+BWB4DSJQUͰͷϞσϧఆٛ wʮDMBTT1SPKFDUFYUFOET.PEFMʯͰଘࡏΛએݴ w1SPKFDUJOJUͰதΛ࣮ߦ࣌ʹධՁ͠ΈࠐΜͰ͍Δ wܕਪͳͲͳ͍ੈքͳͷͰ͜ΕͰ͓͠·͍ʜ
$MBTT൛αϯϓϧͷൈਮ 4FRVFMJ[F.PEFMΛ&YUFOEͯ͠ϝϯόʔΛఆٛɻ ίίͰఆٛͨ͠%#ͷΧϥϜʹରԠ͢Δϝϯόʔɺ $POTUSVDUPSͰϝϯόʔͷॳظԽ͕ग़དྷͳ͍ɻ ʜͷͰʮʯΛ༩ͯ͠ະॳظԽϝϯόʔΛڐ༰͢Δ Ϟσϧͷ4UBUJD.FUIPEͷJOJUϝιουΛݺͼग़ͯ͠ %#ͷΧϥϜͱϝϯόʔͷରԠΛ࣮ߦ࣌ʹඥ͚Δɻ ͜ΕΫϥεͷએݴͱ·ͨผʹߦ͏ඞཁ͕͋Δ ϚχϡΞϧͷ࣮ߦ࣌ʹґଘ͢Δͱ͍͏ͷओʹ͜ͷ
Πϝʔδ $MBTTFYUFOET.PEFM 4FRVFMJ[FJOJU .PEFM ˙ίϯύΠϧϑΣʔζ੩తղੳɺܕਪ ˙ϥϯλΠϜϑΣʔζ4FRVFMJ[Fͷಈ࡞Λܾఆ͢Δ
ެࣜͷ5ZQF4DSJQUͰͷॻ͖ํ EFpOF൛ JOUFSGBDFΛॻ͍ͯϝϯόʔͷଘࡏΛએݴ 4FRVFMJ[Fͷ༷ࣜʹԊ͏ͨΊ4UBUJDઐ༻ܕΛએݴ ࣮ߦ࣌ʹ4FRVFMJ[FͷϞσϧΛએݴ
ެࣜͷ5ZQF4DSJQUରԠͷ՝ wલఏͱͯ͠ɺ4FRVFMJ[F͕Ϟσϧͷఆٛؔ࿈͚Λ࣮ߦ࣌ʹ ΞάϨογϒʹॲཧ͢Δઃܭ ޙํޓͷͨΊͱࢥΘΕΔ w5ZQF4DSJQUͰॻ͍ͨͱ͖ʹɺΫϥεͰϞσϧΛએݴͰ͖Δ͕ɺ %#ͷΧϥϜͷώϞผʹߦ͏ඞཁ͕͋Δ wએݴͨ͠ϞσϧΛ4FRVFMJ[FͰ༻͢ΔͨΊͷಓͷΓ͕ԕ͘ ͦͦ5ZQF4DSJQU͕Θ͔͍ͬͯͳ͍ͱֶशίετ͕ߴ͍ wޓੑͷͨΊʹ͞ΕͨҰ෦ͷػೳ͕ܕ҆શʹͳΒͳ͍߹͕͋Δ
ͭΒ͍
͏ͪΐͬͱ͍͍ײ͡ʹΓ͍ͨʜ
TFRVFMJ[FUZQFTDSJQU
TFRVFMJ[FUZQFTDSJQUͱ w4FRVFMJ[FͷϞσϧͷ࣮Λɺ%FDPSBUPSΛۦͭͭ͠ ΄΅ΫϥεͷએݴͷΈͰ࣮ݱ͢ΔϥΠϒϥϦ wґଘͷՃͱ5ZQF4DSJQUͷઃఆมߋͰಋೖՄೳ wSFqFDUNFUBEBUBύοέʔδͷՃ wUTDPOpHKTPOͰFYQFSJNFOUBM%FDPSBUPSTΛ༗ޮ wSFGIUUQTHJUIVCDPN3PCJO#VTDINBOOTFRVFMJ[FUZQFTDSJQU
ͪͳΈʹʜ wSFqFDUNFUBͱʁ w ʮ.FUBEBUB3FqFDUJPO"1*ʯΛ࣮ݱ͢Δ1PMZpMM w $+BWBͷΑ͏ʹσίϨʔλΛ༻ͯ͠ɺΫϥεؔʹɺ ଐੑऍͳͲͷϝλσʔλΛ༩औಘ͢Δػߏ w 1SPQPTBMͳͷͰݱ࣌Ͱඇެࣜͳػೳ wFYQFSJNFOUBM%FDPSBUPSTͱʁ
w &$."4DSJQU4UBHFͷ1SPQPTBM w ΫϥεؔʹػೳΛʮՃʯ͢Δ͜ͱ͕Ͱ͖Δ
Ϟσϧͷఆٛ $MBTTʹΑͬͯϞσϧΛఆٛͰ͖ɺΧϥϜͱͷώϞ %FDPSBUPSͰߦ͑ΔͷͰɺએݴͱJOJUΛΘ͚ͯߦ͏ΑΓ؆୯ʂ
Ϟσϧͷొ 4FRVFMJ[FͷॳظԽTFRVFMJ[FUZQFTDSJQU͕ͬͯ͘ΕΔɻ ઃఆڞ௨ େຊ͕4FRVFMJ[FͳͷͰΓ࣮ߦ࣌ʹϞσϧͷొ͕ඞཁ͕ͩɺ 4FRVFMJ[FຊମͷΓํͱൺֱ͔ͯ͠ͳΓ؆ུԽ͞Ε͍ͯΔɻ ˞5ZQF4DSJQUͷόʔδϣϯʹΑͬͯ54ͰϏϧυΤϥʔʹͳΔ߹͕͋Γ·͢ BEE.PEFMTʹ͢ྻͷܕΛʮBOZ<>ʯʹΩϟετ͢ΔͱճආͰ͖·͢
4FRVFMJ[F$-* ϚΠάϨʔγϣϯ͋ΔΑ
4FRVFMJ[F$-*ͱʁ w4FRVFMJ[FͷαϒϓϩδΣΫτͷίϚϯυϥΠϯπʔϧ wNJHSBUJPOTFFEΛ/PEFKT͔Βߦ͏͜ͱ͕Ͱ͖Δ w"DUJWF3FDPSEΆ͍งғؾ w͔͠͠ɾɾɾ
4FRVFMJ[F$-*ͷؾʹͳΔͱ͜Ζ wNJHSBUJPOTFFEͰ͑ΔએݴϑΝΠϧ+BWB4DSJQUͷΈ w5ZQF4DSJQUͰॻ͖͍ͨ߹UTDͰࣄલʹίϯύΠϧ͕ඞཁ wඪ४ͰͷରԠ1VMM3FRVFTUʹͳ͍ͬͯΔ༷ࢠ w͋͘·Ͱ͓·͚ͬΆ͍ͷͰɺෳͷ%#ͷछผΛ ԣஅ͠ͳ͍߹ଞͷखஈΛݕ౼͍͍͔ͯ͠ʁ w ྫ͑ɺHPMBOHNJHSBUFNJHSBUFͳͲͷ5JOZͳΈͳͲ
None
5ZQF03.ͱͷൺֱ w5ZQF03.5ZQF4DSJQUͰॻ͘͜ͱΛલఏʹॻ͔Εͨ03. w࣮ߦ࣌ͷධՁΛલఏͱ͍ͯ͠ͳ͍ͷͰ੩తղੳͳͲͱͷ૬ੑόπάϯ wTFRVFMJ[FUZQFTDSJQUͱಉ͘͡ΫϥεͱσίϨʔλʹΑΔϞσϧ࣮ w&$."4DSJQUͷ࠷৽ͷػೳΛΞάϨογϒʹऔΓࠐΜͰ͍Δ
5ZQF03.ɺ/PEF+4ɺϒϥβɺ$PSEPWBɺ1IPOF(BQɺ*POJDɺ3FBDU/BUJWFɺ /BUJWF4DSJQUɺ&YQPɺ͓Αͼ&MFDUSPOϓϥοτϑΥʔϜͰ࣮ߦͰ͖Δ03.Ͱ͋Γɺ 5ZQF4DSJQU͓Αͼ+BWB4DSJQUʢ&4ɺ&4ɺ&4ɺ&4ʣͱڞʹ༻Ͱ͖·͢ɻͦͷඪɺ ৗʹ࠷৽ͷ+BWB4DSJQUػೳΛαϙʔτ͠ɺσʔλϕʔεΛ༻͢Δ͋ΒΏΔछྨͷΞϓϦέʔ γϣϯΛ։ൃ͢ΔͷʹཱͭՃػೳΛఏڙ͢Δ͜ͱͰ͢ɻςʔϒϧ͕গͳ͍খنΞϓϦ έʔγϣϯ͔Βෳσʔλϕʔε͕͋ΔେنΤϯλʔϓϥΠζΞϓϦέʔγϣϯ·Ͱɻ 5ZQF03.ͷϞνϕʔγϣϯ
4FRVFMJ[Fͱ5ZQF03.Ͳ͕͍͍ͬͪͷʁ w৽نҊ݅Ͱ͋Ε5ZQF03.ʹνϟϨϯδ͢ΔՁ͋Γ w5ZQF4DSJQUͰॻ͔ΕΔ͜ͱ͕ϕʔεʹͳ͍ͬͯΔͷͰϋϚΓʹ͍͘ wͨͩɺใ͕ൺֱతগͳΊͰ͢ w҆ఆੑτϥϒϧγϡʔτɺपลπʔϧΛॏࢹ͢ΔͳΒ4FRVFMJ[F w4FRVFMJ[Fͷࢿ࢈͕͢Ͱʹ͋ΔͳΒɺTFRVFMJ[FUZQFTDSJQUΛ Ճ͢Ε5ZQF03.MJLFͷΑ͏ͳ͜ͱͰ͖·͢ wνʔϜͷख़5ZQF4DSJQUͷཧղʹԠͯ͡બఆ͠·͠ΐ͏ʂ
(PPHMF5SFOETͰͷൺֱ
·ͱΊ w4FRVFMJ[F/PEFKTͰͷ03.ͷฮ wW͔Β5ZQF4DSJQUਖ਼ࣜαϙʔτ ͔ͭ͠͠Β͍ͱ͜Ζ͋Δʜ w5ZQF4DSJQUͰ4FRVFMJ[F͏ͳΒTFRVFMJ[FUZQFTDSJQUΦεεϝ wNJHSBUJPOʹTFRVFMJ[FDMJΛ͏ͷ͋͘·ͰΦϓγϣϯ wผͷϚΠάϨʔγϣϯπʔϧΛͬͯશવ0,ʂ w৽نҊ݅5ZQF03.ݕ౼ͯ͠ΈΑ͏ʂ w
૬ޓʹҠߦ͕Ͱ͖Δͷ͔ݕূதଟΤΠϠοͱΔඞཁ͋Γ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠