明示と暗黙 ー PHPとGoのインターフェイスの違いを知る by しまぶ

PHP Conference Japan 2025
レギュラートーク(25分)

明示と暗黙 ー PHPとGoのインターフェイスの違いを知る

shimabox しまぶ shimabox
5

私は主にPHPを書いてきたエンジニアですが、業務でGoを触る機会が増えています。
その中で、最も大きな衝撃を受け、書く上で一番苦労したのが「インターフェイス」の実装方法と思想の違いでした。
(PHPでimplementsに慣れた私にとって、Goの暗黙的に満たすインターフェイスは衝撃的でした)

このセッションでは、私なりの理解を基に、PHPとGoのインターフェイスの仕組みを比較しながら、それぞれの思想、メリット・デメリットをサンプルコードを交えて解説します。
PHPエンジニアがGoを書く上で躓くであろう最初のハードルを乗り越えるきっかけをお届けします。

PHPエンジニアでGoも書いてみたいなと思っている方、PHPとGoのインターフェイスの違いに興味がある方におすすめです!

話すこと

  • 明示的な実装(PHP)と暗黙的な実装(Go)の違い
  • PHPとGoそれぞれのコード例を交えた実装方法の解説
  • PHPとGoのインターフェイスの置き場所の違い
    • 例)RepositoryのインターフェイスはPHPではDomain層、Goでは実装近くに置きがちなのはなぜか、など

話さないこと

  • PHPとGoの基本的な文法
  • PHPとGoの深い設計思想