【日本一わかりやすいTypeScript入門】ハンズオンで理解するInterfaceとType Aliasの違い

Поділитися
Вставка
  • Опубліковано 5 вер 2024

КОМЕНТАРІ • 9

  • @AtelierRitz
    @AtelierRitz 3 роки тому +4

    この問題ずっと気になっていたのですが、まさかの動画解説…!ありがたやー

    • @1492tiger
      @1492tiger  3 роки тому

      僕も気になってたので調べましたw

  • @nthdthdyjsehsnw4ethwbt
    @nthdthdyjsehsnw4ethwbt 3 роки тому +6

    自分も違いがよくわからず、interfaceでよくね?って感じで使ってましたが、typescriptだと、同名インターフェースでマージ出来ちゃうの初めて知りました。これだと意図せず名称が被って誤って拡張してしまう可能性ありますよね・・・。
    多分他のオブジェクト指向言語は同名インターフェースで定義すると勝手にマージされる事は無かったと思うし、機能追加は基本的にextendsまたはimplementsで追加して使うと思ってた自分からするとそこが凄く気持ち悪いと思いました・・・。
    型エイリアスだと明示的にマージしようとしない限り出来ないので、ほんとに使い所がありますね!非常に勉強になりました!

    • @gamiike
      @gamiike 3 роки тому +2

      「同名インターフェースでマージ出来ちゃう」これがまさにハイライトだと思いました。同じ名前でエラーにならないんですね。知らなかったらハマりそうです。ありがとうございました。

  • @shintarok1969
    @shintarok1969 3 роки тому +6

    細かくて恐縮なのですが、11:02の交差型は英語名としては
    union型でなくIntersection型が正しいのではないでしょうか🙃

    • @1492tiger
      @1492tiger  3 роки тому +2

      たしカニ!!!🦀
      ご指摘ありがとうございます!
      unionは合併型ですね🙏

  • @DM-tw6ww
    @DM-tw6ww 3 роки тому +3

    麻婆丼僕もすきです

    • @1492tiger
      @1492tiger  3 роки тому +1

      山椒ゴリゴリに効いたやつが好きです🔥

  • @mse121
    @mse121 3 роки тому +3

    TypeScript歴が浅いので間違っているかもしれないけど、interfaceはオブジェクト指向のSOLID原則などで語られる、クラスのクライアントに対して実装に依存させるのではなく抽象に依存させるためのものという認識
    インターフェース指向プログラミングをするために、interfaceを使用する
    TypeAliasはデータの型を定義するためのもので、こちらはメソッドをもたないデータクラスを定義するためのものだと思っている
    そもそもの使用目的が違うため、全く別のものだと思う