問題タブ [conventions]

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.

0 投票する
2 に答える
1034 参照

objective-c - 実装で自己キーワード(プロパティ)を使用する必要がありますか?

私はほとんどの部分でプロパティを理解していると思います。私の質問は、インスタンス変数のプロパティがあり、実装ファイルのメソッド内からそれを設定または取得している場合、使用する必要がありますself.myPropertyか、それとも単にmyPropertyですか?どちらかが機能することは知っていますが、規則が混在していることもあります。コードが変数に直接アクセスする場合と、プロパティを介してアクセスする場合があります。

これを行う技術的な理由はありますか?それは単なる慣習/個人的な好みですか?また、メソッドのパラメーター名がインスタンス変数名と衝突するインスタンスについては言及していません。これは、プロパティを使用する理由の1つである可能性があります(少なくとも、他の言語では、これについてはわかりません)。実装内でプロパティを使用する場合、プロパティを宣言した方法(つまり、非アトミック、retain)を利用したいと思うので、たとえばメソッドでは、次のことができます。

それ以外の:

これが理由ですか?それで、プロパティを使用するのが良いと思われる特定の状況だけがありますか?

私はObjective-Cを初めて使用しますが、これは私が混乱している数少ないことの1つです。これまでのところ、インスタンス変数に直接アクセスしましたが、プロパティを通過すると実際にメソッド/メッセージが呼び出されて送信され、不要なオーバーヘッドが追加されるという誤った仮定があります。私はこれが間違っていると確信していますが、オーバーヘッドの違いがごくわずかであっても(あるとしても)、変数に直接アクセスできるのに、なぜそれを追加することを選択するのでしょうか?

私は自分の考えが間違っていると確信しているので、ここで質問しています。

0 投票する
7 に答える
231 参照

actionscript - 数値の推奨初期値

いくつかのデフォルト値に初期化したいさまざまな数値または int ベースの変数があるとします。ただし、0 には意味があり、副作用が生じる可能性があるため、0 を使用すると問題が生じる可能性があります。

これに関する規則はありますか?

私は最近 Actionscript で作業しており、オプションのパラメーターを持つさまざまな値オブジェクトを持っているため、ほとんどの変数には null を設定しますが、数値または int には null を使用できません。例:

問題は、値が初期値から変更されていない場合、上記のコードで 0 を使用すると問題が発生する可能性があることです。変数に null 値があるかどうかは簡単に検出できます。しかし、0 は正当な値である可能性があるため、0 を検出するのはそれほど簡単ではない場合があります。パラメータをオプションにするためにデフォルト値を設定したいのですが、デバッグしにくい副作用なしに値がデフォルトから変更されたかどうかを後でコードで検出したいと考えています。

値に -1 のようなものを使用できると思います。この種のよく知られているコーディング規則があるかどうか疑問に思っていましたか? 変数とデータの性質に依存すると思います。

これは私のスタックオーバーフローに関する最初の質問です。うまくいけば、私の質問の要点は理にかなっています。

0 投票する
1 に答える
1322 参照

mysql - MySQL ENUMSはCakePHPでの使用を目的としていますか、それとも避けるべきですか?

つまり、これらのENUMがCakePHPスキャフォールディングでプルダウンメニューを生成しているのは見当たらないので、CakePHPはそれに対してアドバイスするかもしれないと思いますが、この問題に関するドキュメントは見つかりません。

ENUMを使用するかどうかを知っている人はいますか?

0 投票する
13 に答える
95622 参照

python - Python: インデントに 4 つのスペースを使用します。なんで?

Python のコーディング中、インデントに 2 つのスペースのみを使用していますが、PEP-8では実際に 4 つのスペースを使用することを推奨していますが、歴史的に私にとっては珍しいことです。

では、2 つではなく 4 つのスペースを使用するよう説得できる人はいますか? 長所と短所は何ですか?

PS 最後に、既存のすべてのコードベースを 2 つのスペースから 4 つのスペースに変換する簡単な方法は何ですか?


PPS PEP-8 また、インデントにタブを使用しないことを強く推奨します。ここを読む


要約すると、次のようになります。

長所:

  • 80 行を超える長さの文字列を折り返す場合は、配置するスペースを増やしてください。
  • スニペットからコードをコピーするだけで機能します。

短所:

  • ネストされたステートメントのレベルが深いと、実際のコード用のスペースが少なくなります。

ありがとう。

0 投票する
9 に答える
440 参照

c# - C#でメンバー変数にデフォルト値を割り当てる従来の方法は何ですか?

C#ではどちらがより一般的ですか?

また

0 投票する
3 に答える
135 参照

c# - PInvokeのものをラップするプロパティのget関数に多くのコードを入れるのは悪い習慣ですか?

私が知っている紛らわしいタイトル。説明させてください。

構造体の配列をマーシャリングする必要があります。その後、構造体はクラスの配列に変換されます(レガシー互換性)。例えば

0 投票する
3 に答える
2357 参照

fluent-nhibernate - 流暢な NHibernate。自動マッピングと規則

私は NHibernate を初めて使用しますが、その構成の側面は常に私にとって非常に面倒に思えました。昨日、Fluent NHibernate の Auto Mapping 機能に出会い、適切な印象を受けました。

自分自身を教育するために、 AutoMappings と Conventions を使用して「Getting Started First Project」( http://wiki.fluentnhibernate.org/show/GettingStartedFirstProject ) を試みるという課題を自分に課しました。運があまりないことを認めなければなりません。

私の手順を要約するには:

この例のデータベース スキーマに若干の変更を加えました。主に、外部キーからアンダースコア (Product_id から ProductId へ) を削除することです。これにより、データベースの命名基準がよりインラインになります。

Q1) 例として ForeignKeyConvention を使用して IHasManyConvention の実装を記述しようとしましたが、WithKeyColumn メソッドが存在しないようです (これは、昨日のビルドをダウンロードしたためであり、その後、記事が書かれてから設計が変更されたためだと思います)。これを修正するにはどうすればよいですか?

また、例のエンティティ レイヤーにいくつかのマイナーな変更を加えました。これにより、StoresStockedIn が Stores (Product.cs) に、Staff が Employees (Store.cs) に名前変更されました。

私のコードは次のようになります。

次に、開始例に従って、店舗、製品、および従業員をデータベースに追加してみます。私が得る例外はコミットで発生し、次のとおりです。

オブジェクトは保存されていない一時インスタンスを参照しています - フラッシュする前に一時インスタンスを保存してください。タイプ: FluentNHibernateTesting.Entities.Employee、エンティティ: FluentNHibernateTesting.Entities.Employee

Q2) この問題を解決するにはどうすればよいですか? オブジェクト関係のカスケード要素を正しく設定することと関係があることは(私の限られた読書から)理解していますが、自動マッピングを使用してこれを効果的に行う方法について少し困惑しています。

Q3) Fluent プロジェクトのリリース予定日はありますか? 私は (他の多くの人と同じように) これは優れたイニシアチブだと感じていますが、安定した状態でない限り使用することに注意を払っています。

Q4) 多くのブログで、hbn.xml と Fluent の機能の同等性に向けて着実に取り組んでいると言及されています。このツールの評価と使用を支援するために、これらの欠落している機能のリストはどこかにありますか?

事前に助けに感謝します。

0 投票する
6 に答える
25622 参照

ruby - Ruby:ブール属性の命名規則と使用

ルビーを学ぶ。ブール属性には次のような名前を付ける必要があるという印象を受けています。

ただし、次のことを実行しようとすると構文エラーが発生します。

どうやらルビーは「?」を嫌っています。これは慣習ですか?私は何が間違っているのですか?