Upgrade to Pro — share decks privately, control downloads, hide ads and more …

TypeScriptで入門するGenerics / intro-generics-by-typescript

TypeScriptで入門するGenerics / intro-generics-by-typescript

TypeScriptとGenericsを雰囲気でやってるので入門し直しました

Kazuki Higashiguchi

May 08, 2019
Tweet

More Decks by Kazuki Higashiguchi

Other Decks in Technology

Transcript

  1. @hgsgtk Kazuki Higashiguchi job is … Back-end Engineer work with

    ... PHP, Go, Python, Docker, AWS, TypeScript ...etc motivation of this talk... - 雰囲気でやってるTypeScriptを 理解したい - Go 2 の Genericsについて深遠 な意見を持つ足かせへ 2
  2. = • TypeScript is a superset of JavaScript that compiles

    to clean JavaScript output. ◦ https://github.com/microsoft/TypeScript ◦ 現在、3.4.5 • Microsoftが作ったJavaScriptのスーパーセット言語 • 静的型付け言語 • コンパイル時に型検査 • tsc でコンパイルして .js へ 4 TypeScript
  3. = • Go 1.x では Generics はないが、Go 2 にて Generics

    の Draft が出ている • Draft にて追加されるとされるのが Type Parameter・Type Argument・Contract • See also ◦ https://go.googlesource.com/proposal/+/master/design/go2draft-ge nerics-overview.md ◦ https://go.googlesource.com/proposal/+/master/design/go2draft-co ntracts.md 11 Extra Talk: Go 2 Generics Draft
  4. = 12 Extra Talk: Go 2 Type Parameter Type Parameter

    Type Argument https://go.googlesource.com/proposal/+/master/design/go2draft-contracts.md
  5. = 13 Extra Talk: Go 2 Type Parameter TはStringを持っていないので Invalid

    https://go.googlesource.com/proposal/+/master/design/go2draft-contracts.md
  6. = 14 Extra Talk: Go 2 Type Parameter contract によって必要な条件を

    表明する https://go.googlesource.com/proposal/+/master/design/go2draft-contracts.md contract を追加する