Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
型安全性で考えること
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Naka Sho
September 15, 2025
40
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
型安全性で考えること
型安全性で考えること
Naka Sho
September 15, 2025
Transcript
11 slides
型安全性で考えること 中尾正剛 https://x.com/web_shogo_nakao
目次 はじめに 01 02 03 04 05 型安全性とは 動的型付けと静的型付けの違い 型安全性で考えること
まとめ
型安全性とは プログラム側で型エラーを検知し、コンパイルエラーや実行時エラーを出してくれる。 データの型を明示的に指定して(型宣言)、その型通りにプログラムが動作すること
型安全性とは // Javaで型宣言 int count = 0; String name =
"Alice"; count = “aaa” // エラー intに文字列は入らない name = 1 // エラー 文字列に intは入らない
型安全性とは // PHPで型宣言なし $count = 0; var_dump($count); $count = "aaa";
var_dump($count); php test.php int(0) string(3) "aaa"
型安全性とは // PHPで型宣言あり function demonstrateTypeSafety(int $count): void { var_dump($count); }
demonstrateTypeSafety(0); demonstrateTypeSafety("aaa"); TypeError: Argument 1 passed to demonstrateTypeSafety() must be of the type int, string given, called
動的型付けと静的型付けの違い PHP ソースコードをインタプリタに読ませて処理が 実行されます。 要するに 実行時に型が決まる Java コードをコンパイラに読ませて中間生成物に変 換してビルドして実行可能な形式になり実行し ます。
要するに コンパイル時に型が決まる
型安全性で考えること っというのが最近よく見る意見の一つです。 静的型付け言語が良い!
型安全性で考えること プロジェクトの要件、チームの特性、開発フェーズなどを総合的に判断して、 適切な選択をすることが重要です。
型安全性で考えること 動的型付け言語に型ヒントを導入したり、静的型付け言語でも型推論を活用したりと、 両者の良いところを取り入れる方向に進んでいます。
まとめ 喧嘩はよくありません。 仲よくしましょう。
More Decks by Naka Sho
See All by Naka Sho
claudeをサブドライバーに<br>システム移行した体験
shogonakao
0
160
ローカルLLMで自動レビューの仕組み
shogonakao
0
100
無料で使える「LM Studio」でローカルLLM入門
shogonakao
0
190
単体テストの精度を高めるための guideline
shogonakao
0
360
Javaはレガシーではない!
shogonakao
0
470
アプリケーションログをs3に転送するとき個人情報気をつけてますか?
shogonakao
0
64
コーディングエージェントと 筋トレ
shogonakao
0
99
SpringBootでAPI開発
shogonakao
0
190
エキサイトブログ刷新に向けて
shogonakao
0
160
Featured
See All Featured
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
550
How to build a perfect <img>
jonoalderson
1
6.2k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
560
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
350
Speed Design
sergeychernyshev
33
2.2k
KATA
mclloyd
PRO
35
16k
Site-Speed That Sticks
csswizardry
13
1.6k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
320
SEO for Brand Visibility & Recognition
aleyda
0
4.9k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
1
240