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
5分でTypeScript入門!〜既存JS環境に引導を渡そう〜
Search
nsym-m
April 23, 2021
Programming
0
35
5分でTypeScript入門!〜既存JS環境に引導を渡そう〜
TypeScriptあんまり触ったことないですが、TS入門のLT資料を作ってみました。
nsym-m
April 23, 2021
Tweet
Share
More Decks by nsym-m
See All by nsym-m
Flutter入門してみた
nsym
0
110
O’ReillyでGo言語入門
nsym
0
130
Other Decks in Programming
See All in Programming
iOSエンジニア向けの英語学習アプリを作る!
yukawashouhei
0
200
AI Agent 時代的開發者生存指南
eddie
3
1.8k
技術的負債の正体を知って向き合う
irof
0
180
Go言語の特性を活かした公式MCP SDKの設計
hond0413
1
240
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
410
理論と実務のギャップを超える
eycjur
0
140
20251016_Rails News ~Rails 8.1の足音を聴く~
morimorihoge
2
480
登壇は dynamic! な営みである / speech is dynamic
da1chi
0
340
私はどうやって技術力を上げたのか
yusukebe
44
19k
Range on Rails ―「多重範囲型」という新たな選択肢が、複雑ロジックを劇的にシンプルにしたワケ
rizap_tech
0
6.7k
Six and a half ridiculous things to do with Quarkus
hollycummins
0
180
Web フロントエンドエンジニアに開かれる AI Agent プロダクト開発 - Vercel AI SDK を観察して AI Agent と仲良くなろう! #FEC余熱NIGHT
izumin5210
3
550
Featured
See All Featured
How STYLIGHT went responsive
nonsquared
100
5.8k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
How to train your dragon (web standard)
notwaldorf
97
6.3k
Optimising Largest Contentful Paint
csswizardry
37
3.5k
Building Adaptive Systems
keathley
44
2.8k
Statistics for Hackers
jakevdp
799
220k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
980
Scaling GitHub
holman
463
140k
Git: the NoSQL Database
bkeepers
PRO
431
66k
The Power of CSS Pseudo Elements
geoffreycrofte
79
6k
Transcript
5分でTypeScript入門! 〜既存JS環境に引導を渡そう〜
TypeScriptとは? • JavaScriptの静的型付け版の言語 • Microsoftがオープンソースで開発している • Googleでも社内標準言語として利用されている • TypeScriptをJavaScriptにコンパイルして実行する
なぜTypeScript? • 型が保証されている(型推論も使える) • 型があることで改修時のバグ発生率が下がり保守性の向上 • 型を書けるので気持ちがいい(Developer eXperience) • エディタの入力補完を受けられることで開発効率の向上
• 型チェックの厳しさをプロジェクトごと決められる ◦ → 導入障壁が低い!!!
TypeScriptを導入してみよう 弊社のお掃除ロボットるんばちゃんの状況をリアルタイムで知らせる「る んばちゃんbot」のチャットを投稿しているJavaScriptのプログラムに TypeScriptを導入してみようと思います。
ざっくり手順 1. typescriptのinstallとtsconfig.jsonの作成 2. tsconfig.jsonの設定を緩めに指定 3. ファイルの拡張子を .js → .ts
に変更する 4. コンパイルエラーを修正する とっても簡単!!!!(?)
typescriptのinstallと tsconfig.jsonの作成 • typescriptはTypeScriptのコンパイラのモジュール • tsconfig.jsonはTypeScriptコンパイルの設定ファイル
tsconfig.jsonの設定を緩めに指定① • 最初は型チェックに関する設定を緩めにする
tsconfig.jsonの設定を緩めに指定② ☆ポイント • 優先すべきは「TypeScript」導入を完了させること ◦ 「厳密な型を使う」のはあとからでも追加できる • any型を許容する(大事) • 型を緩くしていてもJavaScriptよりも堅い型チェックやエディタによる
補完などのサポートを受けられる
ファイル拡張子を.js → .tsに変更 • `rename`コマンドは追加する必要あり(Mac) • Linuxの`rename`コマンドとは若干違うらしい(未検証) • Windowsの場合は`ren`コマンドが使えそう?(未検証)
コンパイルエラーを修正①
コンパイルエラーを修正② • プロパティを定義していない状態でオブジェクトを作成していたの で、オブジェクト定義の時にプロパティも同時に定義する • ついでに「type」でオブジェクトの型も定義する(必須ではない)
コンパイルエラーを修正③
エラーが出なければOK!! これであなたもTypeScripterの仲間入り!! いざ、ビルド!
ご清聴ありがとうございました。 良いTypeScriptライフを!!!! 参考記事: https://eh-career.com/engineerhub/entry/2019/04/16/103000 https://tech.raksul.com/2019/07/22/introduce-typescript-to-existing-product/ https://komiyak.hatenablog.jp/entry/20170421/1492752232