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

Scalaの型クラスを完全に理解する

Jun Tomioka
August 23, 2018

 Scalaの型クラスを完全に理解する

Jun Tomioka

August 23, 2018
Tweet

More Decks by Jun Tomioka

Other Decks in Technology

Transcript

  1. JsonEncoder 型クラスのイメージ • def toJson(value: ???): Json • こんなことができそう ◦

    toJson(1) ◦ toJson(“hoge”) ◦ toJson(User(userId = 1, name = “jooohn”))
  2. 5. 解決する課題の違い モチベーション 利用時の型 subtyping 複数の型のインスタン スを、抽象型として扱い たい。 abstract: val

    strategy: Strategy = SimpleStrategy type classes 任意の型に関して行う 共通処理を提供した い。 concrete: toJson(1: Long)
  3. 5. 解決する課題の違い 0, 100, -50 Int JsonEncoder データ 型 型クラス

    インスタンス インスタンス クラス クラス subtyping