プロパティファイル(エンドユーザーがOAuth2コンシューマキーとコンシューマシークレット値を扱う)を処理するクラスがあります。私はこのような方法で持って、このクラスで値が異なってもメソッドが異なる必要がある場合のメソッドのコード複製
:
// Get the consumer key or secret value
public String getConsumerKeyOrSecret(String keyOrSecret)
{
String value = properties.getProperty(keyOrSecret);
if (value == null || value.isEmpty())
{
value = null;
}
return value;
}
が、これはこれを実装するための最良の方法ですか?私の意見では別のクラスでこれらの値を取得するためのより便利な方法は、あなたが必要とするキー、およびこのように実装する方法のための2つの別々のメソッドを呼び出すために、次のようになります。
public String getConsumerKey()
{
String consumerKey = properties.getProperty("consumer_key");
if (consumerKey == null || consumerKey.isEmpty())
{
consumerKey = null;
}
return consumerKey;
}
public String getConsumerSecret()
{
String consumerSecret = properties.getProperty("consumer_secret");
if (consumerSecret == null || consumerSecret.isEmpty())
{
consumerSecret = null;
}
return consumerSecret;
}
をしかし、これは、コードの重複とはみなされないでしょうか?これにアプローチする最善の方法は何ですか?
このタイプのチェック(つまり「== null」など)を行うプライベートメソッドを作成し、このチェックが必要な他のすべての場所からプライベートメソッドを呼び出す – ochi