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
RxSwiftに対応したバリデーションをGenericなProtocolで実装してみた / G...
Search
Yuto Yazaki
February 28, 2019
Programming
3
1.4k
RxSwiftに対応したバリデーションをGenericなProtocolで実装してみた / Generic Validation Protocol with RxSwift
https://github.com/yutoyazaki/RxValidationSample
Yuto Yazaki
February 28, 2019
Tweet
Share
More Decks by Yuto Yazaki
See All by Yuto Yazaki
デザインシステム上の画像リソースを 自動エクスポートする / Automate image export from Figma to iOS and Android using figma-export
yutoyazaki
0
950
Firebase Remote Config ベストプラクティス
yutoyazaki
0
860
Other Decks in Programming
See All in Programming
Server Side Kotlin Meetup vol.16: 内部動作を理解して ハイパフォーマンスなサーバサイド Kotlin アプリケーションを書こう
ternbusty
3
230
AkarengaLT vol.38
hashimoto_kei
1
110
AI駆動で0→1をやって見えた光と伸びしろ
passion0102
1
780
Introduce Hono CLI
yusukebe
6
3.1k
エンジニアインターン「Treasure」とHonoの2年、そして未来へ / Our Journey with Hono Two Years at Treasure and Beyond
carta_engineering
0
410
NixOS + Kubernetesで構築する自宅サーバーのすべて
ichi_h3
0
1.1k
チームの境界をブチ抜いていけ
tokai235
0
210
Webサーバーサイド言語としてのRustについて
kouyuume
1
4.3k
XP, Testing and ninja testing ZOZ5
m_seki
3
810
Vueのバリデーション、結局どれを選べばいい? ― 自作バリデーションの限界と、脱却までの道のり ― / Which Vue Validation Library Should We Really Use? The Limits of Self-Made Validation and How I Finally Moved On
neginasu
2
490
Cursorハンズオン実践!
eltociear
2
1.2k
Google Opalで使える37のライブラリ
mickey_kubo
3
130
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.6k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
How GitHub (no longer) Works
holman
315
140k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
Faster Mobile Websites
deanohume
310
31k
Navigating Team Friction
lara
190
15k
A Tale of Four Properties
chriscoyier
161
23k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
10
880
Building an army of robots
kneath
305
46k
Being A Developer After 40
akosma
91
590k
Transcript
3Y4XJGUʹରԠͨ͠όϦσʔγϣϯΛ (FOFSJDͳ1SPUPDPMͰ࣮ͯ͠Έͨ QPUBUPUJQT 㟒༤ਓ:B[BLJ:VUP
ࣗݾհ w ͓͍͍͠ʂΛ࡞ΔϨγϐಈըϝσΟΞʮNPHVOBʯͷJ04ΤϯδχΞ w ৽ଔ✨ w ֶੜ࣌ʹษڧձӡӦͯ͠·ͨ͠ʢࣾձਓʹͳͬͯൃදॳΊͯʣ άϦʔגࣜձࣾ ࠂɾϝσΟΞࣄۀຊ෦ϥΠϑελΠϧࣄۀ෦ ϝσΟΞάϧʔϓ։ൃνʔϜ
㟒༤ਓ:B[BLJ:VUP
3Y4XJGUʹରԠͨ͠όϦσʔγϣϯΛ (FOFSJDͳ1SPUPDPMͰ࣮ͯ͠Έͨ
3Y4XJGUʹରԠͨ͠όϦσʔγϣϯΛ࡞Γ͍ͨ w Ϣʔβͷೖྗ༰ΛόϦσʔγϣϯ͍ͨ͠ w ྫOจࣈҎ ෆਖ਼ͳॻࣜͷνΣοΫ FUD w Τϥʔͷཧ༝Λఏࣔͯ͠Ϣʔβʹमਖ਼ͯ͠Β͏ w
3Y4XJGUͰόΠϯυ͍ͤͨ͞ w δΣωϦΫεͰ͍͍ײ͡ʹ w όϦσʔγϣϯ͢Δ044ϥΠϒϥϦ͋Δ͕ w ϥΠϒϥϦಋೖ͢Δ΄ͲͰͳ͍͠ w 3Y4XJGUʹରԠͯ͠ͳ͍͠ (FOFSJDͳ1SPUPDPMͰ 3Y4XJGUʹରԠͨ͠7BMJEBUPSΛ࣮͠Α͏
Πϝʔδ Ϣʔβͷೖྗͨ͠จࣈྻ͕ ༗ޮͳͰ͋Ε ૹ৴ϘλϯΛԡͤΔΑ͏ʹ͢Δ
7BMJEBUPSϓϩτίϧ ValueTypeɿόϦσʔγϣϯ͢Δͷܕ ErrorType ɿෆਖ਼ͳͷ߹ͷΤϥʔ validate() ɿόϦσʔγϣϯ݁ՌΛฦ͢
7BMJEBUJPO3FTVMU όϦσʔγϣϯͷਖ਼ޡΛද͢FOVN
7BMJEBUPSͷ࣮ྫ Ϣʔβ໊ͷೖྗཝΛఆͯ͠ ΤϥʔΛఆٛ͢Δ όϦσʔγϣϯͷϩδοΫΛॻ͘ 4USJOH Λೖྗʹ͢Δ
7BMJEBUPSͷ༻ྫ ୯ମͰಈ͘Α͏ʹͳͬͨ ͜ΕΛ3Y4XJGUʹରԠͤ͞Δ
3Y4XJGUͷ0CTFSWBCMF5ZQFʹ WBMJEBUFΦϖϨʔλΛੜ͢ Ҿʹ7BMJEBUPSΛͯ͠ɺ ετϦʔϜʹྲྀΕ͖ͯͨΛόϦσʔγϣϯ͠ɺ ݁ՌΛ7BMJEBUJPO3FTVMUܕͰฦ͢ɻ
ͬͯΈΔ όϦσʔγϣϯʹҾ͔͔ͬͬͨΒˠΤϥʔ༰Λදࣔ ༗ޮͳͰ͋Εˠ4VCNJUϘλϯ͕ԡͤΔΑ͏ʹͳΔ
None
·ͱΊ w όϦσʔγϣϯ͢ΔϓϩτίϧΛఆٛ w Ϣχοτςετ͕ॻ͖͍͢ w 3Y4XJGUʹόϦσʔγϣϯͷΦϖϨʔλΛੜ͢ w γϯϓϧͳهड़Ͱݟ௨͠ͷΑ͍ίʔυʹͳΔ w
δΣωϦΫεͷษڧʹͳͬͨ w αϯϓϧίʔυ w IUUQTHJUIVCDPNZVUPZB[BLJ3Y7BMJEBUJPO4BNQMF
5IBOLT