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
Keigo Ebihara
October 25, 2023
Programming
0
1k
バリデーションライブラリをフォームバリデーション以外で活用する
Keigo Ebihara
October 25, 2023
Tweet
Share
More Decks by Keigo Ebihara
See All by Keigo Ebihara
tRPCを実務に導入して分かった旨味と苦味
misoton665
5
2.3k
しんどくならないモジュール分割
misoton665
1
1.8k
Animated APIを使ってスクロールで隠れる“あのバー”を作る
misoton665
0
380
Other Decks in Programming
See All in Programming
LLM Çağında Backend Olmak: 10 Milyon Prompt'u Milisaniyede Sorgulamak
selcukusta
0
150
インターン生でもAuth0で認証基盤刷新が出来るのか
taku271
0
110
[AtCoder Conference 2025] LLMを使った業務AHCの上⼿な解き⽅
terryu16
6
1k
生成AIを利用するだけでなく、投資できる組織へ
pospome
2
440
コマンドとリード間の連携に対する脅威分析フレームワーク
pandayumi
1
160
Navigation 3: 적응형 UI를 위한 앱 탐색
fornewid
1
530
AIエージェント、”どう作るか”で差は出るか? / AI Agents: Does the "How" Make a Difference?
rkaga
0
230
TestingOsaka6_Ozono
o3
0
270
Grafana:建立系統全知視角的捷徑
blueswen
0
280
AIの誤りが許されない業務システムにおいて“信頼されるAI” を目指す / building-trusted-ai-systems
yuya4
7
4.3k
実は歴史的なアップデートだと思う AWS Interconnect - multicloud
maroon1st
0
310
AI Agent の開発と運用を支える Durable Execution #AgentsInProd
izumin5210
0
180
Featured
See All Featured
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
590
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
0
2.3k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
A Soul's Torment
seathinner
4
2.1k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.1k
Rails Girls Zürich Keynote
gr2m
95
14k
Designing for Timeless Needs
cassininazir
0
110
A better future with KSS
kneath
240
18k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
280
The World Runs on Bad Software
bkeepers
PRO
72
12k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
SEO for Brand Visibility & Recognition
aleyda
0
4.2k
Transcript
גࣜձࣾθετւݪ όϦσʔγϣϯϥΠϒϥϦΛ ϑΥʔϜόϦσʔγϣϯҎ֎Ͱ׆༻͢Δ #VZ$FMM%FW4UVEZϑϩϯτΤϯυษڧձ
ࣗݾհ w ւݪܓޗʢ!NJTPUPOʣ w גࣜձࣾθετ։ൃຊ෦ w 8FCΞϓϦέʔγϣϯΤϯδχΞ w ओʹϑϩϯτΤϯυΛ୲͍ͯ͠·͢ɻ w
લճ+4$POGKQͰొஃͯ͠·ͨ͠ɻ w ͔ͳΓٱ͠ͿΓͳͷͰ͓खॊΒ͔ʹʜ
ࡐʹ͢ΔόϦσʔγϣϯϥΠϒϥϦ w ;PEͰ͔͠Ͱ͖ͳ͍͜ͱ͠·ͤΜͷͰ҆͝৺͍ͩ͘͞🙋
;PEͱ BDDPVOU4DIFNB \GJSTU/BNF MBTU/BNF^ \GJSTU/BNF MBTU/BNF^ PS 7BMJEBUJPO&SSPS *OQVU
4DIFNB 0VUQVU όϦσʔγϣϯͷ༰Λએݴతʹ4DIFNBͰఆٛɻ
;PEͱ BDDPVOU4DIFNB \GJSTU/BNF MBTU/BNF^ \GVMM/BNF^ PS 7BMJEBUJPO&SSPS 💡4DIFNBʹΑͬͯ*OQVUͱ0VUQVUͷܕ͕ҟͳΔɻ 4DIFNBʹͷมΛؚΊΔ͜ͱ͕Ͱ͖Δɻ
*OQVU 4DIFNB 0VUQVU
;PEʢόϦσʔγϣϯϥΠϒϥϦʣͷ͍ಓ w ओͳ͍ಓ w ϑΥʔϜʹΑΔೖྗͷόϦσʔγϣϯ w "1*ϦΫΤετϨεϙϯεϘσΟͷόϦσʔγϣϯ w ࠓճ͜ΕΒҎ֎ͷ͍ಓΛ͝հ͠·͢ɻ
Ϗϧυ࣌ىಈ࣌ͷ ڥมͷόϦσʔγϣϯʹ͏
ڥม͋Δ͋Δ w 8FCΤϯδχΞɺ୭͠ڥมͰΤϥʔΛىͨ͜͜͠ͱ͋Δઆ w ʮىಈ͚ͨ͠Ͳ࣮ߦ࣌Τϥʔ͕ग़ͯಈ͔ͳ͍ʂʯ w ͋Δڥมͷઃఆ͕࿙Ε͍ͯͨɻ w ʮࠓσϓϩΠͨ͠ΒͳΜ͔ಈ͔ͳ͘ͳͬͯΔʂʯ w
ظ͢Δ͕มΘ͍ͬͯͨͷʹɺڥଆͷΛม͍͑ͯͳ͔ͬͨɻ
ڥมͷόϦσʔγϣϯ w ϦϞʔτڥͰ৽ೖࣾһͷڥߏஙΛख͏࣌ͳͲɺຯʹେมɻ w ΤϥʔΛಡΜͰରͷίʔυΛಡΜͰڥม͕ݪҼͩͱΘ͔Δ·Ͱͷ͕࣌ؒ ͔͔͍ͬͯͨͷ͕ɺϏϧυ࣌ىಈޙʹؾ͚ͮΔɻ w ڥมz֎෦͔ΒͷೖྗzͳͷͰόϦσʔγϣϯ͕ʹཱͭɻ
ڥมͷόϦσʔγϣϯ FOW4DIFNB QSPDFTTFOW ظ͢Δڥม PS 7BMJEBUJPO&SSPS *OQVU 4DIFNB 0VUQVU
1IBOUPNUZQFͷఆٛʹ͏
w ʹΘΕͳ͍ܕҾΛ༩ͨ͠ܕͷ͜ͱɻ w ݩͱͳΔܕಉ͕ͩ͡zׂz͕ҧ͏ͷಉ࢜Λ۠ผ͢ΔͨΊʹ͏ɻ 💡/BNFͷ෦͕3BXͱ&ODPEFEͰҟͳΔͨΊܕΤϥʔʹͳΔɻ 1IBOUPNUZQFͱ ˞5ZQF4DSJQUͰ͋Γ·ͤΜ
5ZQF4DSJQUͰͷ1IBOUPNUZQF w ߏత෦ܕͱ͍͏ΈͰೖՄೳ͔Ͳ͏͔Λݕࠪ ͍ͯ͠Δɻ w ܕͷ໊લͰͳ͘ɺܕ͕ࢦ͢ߏʹΑͬͯαϒλΠϓ ؔ 㲈ܧঝؔ ೖՄೳੑ ͕ܾ·Δɻ
w "ͱ#ؔΛ͍࣋ͬͯͳ͍͕ܕͷࢦ͢ߏ͕αϒ λΠϓؔʹͳ͍ͬͯΔͷͰɺ#ܕͷมʹ"ܕͷΛ ೖͰ͖Δɻ
5ZQF4DSJQUͰͷ1IBOUPNUZQF w ܕ͕ࢦ͢ߏʹ͢ΔͨΊɺ/BNFΛͲ͏ม͑ͯTUSJOHͱղऍ͞ΕΔɻ w 3BX4USJOH&ODPEFE4USJOHTUSJOHͳͷͰɺ54ͰܕΤϥʔʹͳΒͳ͍ɻ w ߏ/BNFΛݩʹͯ͠ม͑Δඞཁ͕͋Δɻ
w z࣮ࡍͷߏzΛม͑ͣʹܕ͕ࢦ͢ߏΛݟ্ͨͰม͑Δϝιουɻ w #SBOEFEUZQFͱݺΕ͍ͯΔͷͰɺ;PEݻ༗ͷͷͰ͋Γ·ͤΜɻ w l3BXzͷ෦Λม͑Δͱߏʹࠩҟ͕ੜ·ΕΔͷͰܕΤϥʔʹͳΔɻ ;PEͷCSBOEϝιου 💡TUSJOHͱҧ͏ߏΛ࣋ͬͨܕʹͳ͍ͬͯΔ
/BNFE4USJOHΛ࣮͢Δ OBNFE4USJOH4DIFNB/BNF TUSJOH TUSJOH#3"/%/BNF PS 7BMJEBUJPO&SSPS *OQVU 4DIFNB 0VUQVU
/BNF ܕҾ
࣮ͨ͠/BNFE4USJOHΛ͏ w [JOGFSεΩʔϚ͔Β0VUQVUͷܕΛಋग़͢ΔͨΊͷͷɻ w OBNFE4USJOH4DIFNBΛͬͯ1IBOUPNUZQFͷΑ͏ʹܕΤϥʔʹͰ͖Δɻ
࠷ޙʹ w ͓ͨ͠ɺ͋Δ͋ΔͳόϦσʔγϣϯҎ֎ͷ͍ಓ w Ϗϧυ࣌ىಈ࣌ͷڥมͷόϦσʔγϣϯʹ͏ɻ w 1IBOUPNUZQFͷఆٛʹ͏ɻ w ଞͷ͍ಓΛ͝ଘͷํੋඇڭ͍͑ͯͩ͘͞😎 w
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ
None