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
もう、例外投げたくないねん neverthrow
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
gizm000
June 12, 2024
470
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
もう、例外投げたくないねん neverthrow
2024/06/12 登壇資料@関西Node学園
gizm000
June 12, 2024
More Decks by gizm000
See All by gizm000
NestJSを実運用してみて.pdf
gizm000
1
180
XStateでReactに秩序を与えたい
gizm000
0
1.3k
営業製作所_採用ピッチ資料_202407
gizm000
3
5.5k
React_TypeScript_LT.pdf
gizm000
0
210
サーバーサイドもTSにしたらモノレポになった.pdf
gizm000
2
190
レガシー業界を乗り越える
gizm000
1
68
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.9k
Why Our Code Smells
bkeepers
PRO
340
58k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
A Tale of Four Properties
chriscoyier
163
24k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.1k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.6k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
340
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6k
Testing 201, or: Great Expectations
jmmastey
46
8.2k
Are puppies a ranking factor?
jonoalderson
1
3.7k
How to build a perfect <img>
jonoalderson
1
5.7k
Transcript
もう、例外投げたくないねん neverthrow 営業製作所 白石 卓馬
会社紹介:営業製作所 ・設立 2020年4月 ・本社 大阪 (肥後橋駅 徒歩3分) ・従業員数 約150名 (2024年4月時点)
・目的 日本の製造業を支える ・特徴 泥臭い中にこそ本質がある
自己紹介 ・なまえ 白石 卓馬 (gizm000) ・出身地 大阪 ・職種 ソフトウェアエンジニア ・経歴
SIer → 受託 → SaaS
営業製作所のざっくり技術スタック ・フロントエンド:Next.js ・サーバーサイド:NestJS ・IasC:Terraform (CDKじゃないヨ) 業務で使う80%以上がTypeScript
None
せっかくTSで 書いてるのに 例外って暗黙的
どんな例外が来るのかわからない... ハンドリングして明示的にログを出すべ き?ちゃんとキャッチできる? うああぁっぁぁぁぁぁぁぁぁっ
_人人人人人人人人人人人_ > < > 関数型言語でお馴染み < > Result型 < > <  ̄Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^Y^ ̄
Result型って何?
3行で説明
Result型について3行で教えてください Result型は「成功」(Ok)と「失敗」(Err)の2つの状態を表します。 成功ならOk(成功結果)、失敗ならErr(エラー情報)が入ります。 エラーチェックが簡単になり、安心してプログラムを作れます。
Result型について3行で教えてください Result型は「成功」(Ok)と「失敗」(Err)の2つの状態を表します。 成功ならOk(成功結果)、失敗ならErr(エラー情報)が入ります。 エラーチェックが簡単になり、安心してプログラムを作れます。
TypeScriptでも Result型したい!
None
Neverthrow
導入してみた!
・・・
導入結果 ・起こりうる事象をResult型で表現できるようになった ・メソッドチェーンの書き味が気持ちよい ・肩こりが解消されて頭痛が減った ・宝くじが当たった!
良いことばかり なわけではない
導入結果(マイナスな意見) ・Result型の意味がよくわからない ・非同期処理の書き方がわからない ・お腹空いた
導入結果(マイナスな意見) ・Result型の意味がよくわからない ・非同期処理の書き方がわからない ・お腹空いた
特訓あるのみ🔥
None
None
特訓リポジトリを作成中 💦 https://github.com/gizm000/neverthrow-training
さいごに ・絶賛採用活動中です❗ → X, LinkedIn, Green, LAPRAS, … ご応募お待ちしております 😆