関数とメソッド
余分なパラメータを渡さない
引数をバリデーションする
assert()をバリデーションに利用しない
セキュリティチェックを行うメソッドはfainalかprivateで宣言する
隠蔽されたメソッド・プロパティへのアクセス性を拡張しない
スーパークラスのメソッドを隠すメソッドを定義しない
性能目的でパラメータ・戻り値を参照渡しにしない
met