Swift のプロトコル宣言で記載するプロパティーやメソッドなどがカスタマイズポイントに当たります。ここに記載された機能は、プロトコル自体に既定の実装があったとしても、プロトコルを適用する型で独自の機能に差し替えられるようになります。
カスタマイズポイントに記載しないで既定の実装として用意した機能は、それを差し替えるようなことはできなくて、型に独自に実装を用意しても、既定の実装を上書きせずに独立したものとして存在することになります。この違いは、ジェネリクスを活用したプログラミングにおける動作の違いとして現れてきたりします。



