Open2
一問一答メモ
プログラミング
Q. インターフェースのメリットは何か?
- 疎結合の実現、仕様の強制を行えること
- クラスに対してメソッドの仕様を強制するため、呼び出し元が呼び出し先を意識しなくてもよくなる。そのため、疎結合を実現できる。
- なお、複数人での開発ではないとき、再利用性がないクラスであるときなど、インターフェースを利用するメリットが薄い場合も存在する。
DB
Q. シャーディングとは何か?
- データベースの負荷分散手法の1つ。IDなどを一定の規則で別々のDBに振り分け、DBへのリクエストを分散させることで負荷分散を行う。
- ただし、シャードを跨ぐクエリやデータ分割ルールの構築・実装が難しい。