問題タブ [setter]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
optimization - ゲッター/セッターまたは他の場所でのデータ検証?
getterとsetter、またはコードの他の場所で検証を行うことをお勧めします。
コードの最適化と高速化に関しては、これは驚くかもしれませんが、ゲッターとセッターではなく、ファイルまたはデータベースを更新しているコードで検証を行うべきだと思います。私が間違っている?
c# - Visual Studio でゲッターとセッターを生成するにはどうすればよいですか?
「生成」とは、特定の選択された (セットの) 変数に必要なコードの自動生成を意味します。
しかし、グッドプラクティスに関するより明確な説明やコメントは大歓迎です。
c# - C#の自動プロパティに初期値を与える最良の方法は何ですか?
C# の自動プロパティに初期値を与えるにはどうすればよいですか?
コンストラクターを使用するか、古い構文に戻します。
コンストラクターの使用:
通常のプロパティ構文の使用 (初期値あり)
より良い方法はありますか?
setter - ゲッターとセッターを使用している場合、プライベート メンバー変数にどのように名前を付ける必要がありますか?
接頭辞に関するこの質問の補足として、接頭辞が悪いというスレッドのほとんどの人に同意します。しかし、ゲッターとセッターを使用している場合はどうでしょうか? 次に、パブリックにアクセス可能な getter 名をプライベートに格納された変数から区別する必要があります。私は通常アンダースコアを使用しますが、より良い方法はありますか?
c++ - ゲッターとセッター、または関数のどちらがより適切ですか?
代替関数名が API をより明確にする場合、ゲッターとセッターの「getMyValue()」および「setMyValue()」パターンを放棄することは適切ですか?
たとえば、C++ に次のクラスがあるとします。
次のように「mIsVisible」を取得/設定する関数を追加できます。
}
ただし、代わりに次の方法を使用することも同様に可能です。
簡単に言えば、単一の「setVisible(bool)」メソッドと、「show()」と「hide()」メソッドのペアのどちらが良いですか? 慣習はありますか、それとも純粋に主観的なものですか?
java - セッターメソッドには1つの引数が必要ですか?
セッターメソッドには1つの引数が必要ですか?通常、セッターメソッドは、オブジェクトの特定のプロパティの値として1つの引数を受け入れます。ブール値である別の引数に依存する有効性を最初にテストしたい場合はどうなりますか。trueの場合は最初に検証し、そうでない場合は値を設定します。
ftpサーバーを介してクライアントから値を取得しています。これらのファイルにガベージ値が含まれている場合があります。たとえば、#3432838#9のような電話番号。したがって、値を設定する前に、これらのガベージ文字を削除する必要があります。セッターメソッドで実行できますか?それは有効なアプローチですか?
よろしくお願いします!
編集:
これは有効ですか:
entity - データ プロパティのエンティティ オブジェクトのゲッターとセッター
私は最近 Java で働き始め、すべてのゲッターとセッターのワイルドでクレイジーな世界を紹介されました。最初は嫌でしたが、すぐに慣れました。慣れすぎ。
私は最近、クラスの設計について考えることに多くの時間を費やしています。私がやろうとしていることの 1 つは、すべてに対してゲッターとセッターを実行するという罠を回避することです。ただし、私が行う作業の多くは、主にデータ コンテナーであるエンティティを使用するものであり、これらの場合にゲッターとセッターが実際に不適切であるかどうかはわかりません。
パブリック プロパティを使用した簡単な例を次に示します。
プライベート プロパティを使用し、ゲッターとセッターを使用する簡単な例を次に示します。
これらの例では、name
とdescription
フィールドの両方を変更できる必要があります。
name
ゲッター/セッターの例はより明確で、実装の詳細を隠しているように感じdescription
ます。必要に応じて、後でセットで検証することもできます。
ゲッターとセッターが悪であり、アンチパターンであるという議論をいくつか読みましたが、この状況には当てはまらないように感じます。
まだ検討していないオプションがいくつかあるかもしれません。提案をお待ちしています!
properties - セッター引数の変更 - ハックかどうか?
セッターの引数を変更するのは普通ですか? setString メソッドがあるとします。そして、文字列のトリミングされた形式を維持したいのです。したがって、末尾にスペースがある文字列は無効ですが、例外をスローしたくはありません。
最善の解決策は何ですか? たとえば、セッターの値をトリムするには
または、呼び出し元で(複数回)トリムします。
それとも何か他のものですか?
vb.net - Setterスコープを制限してからインターフェイスを適用すると、スコープは無視されます。
セッターにフレンドレベルのスコープを設定すると、次のようになります...
...そして別のプロジェクトからそれを呼び出すと、それは正しく機能します。MyClass.IsDirty=Trueのようなことはできません。
素晴らしい!それがまさに私が欲しいものです。
しかし、インターフェイスを定義すると、実際にそれを行う必要があります。
私は次のようなことができます:
...そして、奇妙なことに、それは実行されます!例外はスローされず、内部変数はTrueに設定されます。フレンドスコープを完全に無視します!
それは恐ろしいです。何が足りないの?
注: APIを設計しているため、これが必要です。内部APIでIsDirtyを設定できるようにしたいのですが、エンド開発者はそれに入ることができないはずです。現在、この機能を取得するためにクラス全体をファサードでラップしていますが、ファサードは不要である必要があります。
properties - Rhino モック - プロパティに Get がない場合のプロパティ セットの検証
プロパティをお持ちの場合:
それを確認するためにRhino Mocksをどのように使用しますか
と呼ばれます。
コンパイルしません。