問題タブ [coding-style]
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.
c++ - 等しいかどうかを確認する方法は?(0 == i)または(i == 0)
さて、次の2行が同等であることがわかります-
(0 == i)
(i == 0)
また、以前は最初の方法が推奨されていました。これは、誤って「==」ではなく「=」を使用した場合にコンパイラがエラーメッセージを表示する可能性があるためです。
私の質問は、今日の世代の非常に洗練されたIDEとインテリジェントなコンパイラでは、まだ最初の方法をお勧めしますか?
特に、次のコードを見たときに、この質問が頭に浮かびました-
私の意見では、私は上記を決してお勧めしません。セカンドオピニオンはありますか?
c# - クラス内の項目の順序: フィールド、プロパティ、コンストラクタ、メソッド
クラス構造に関する項目の順序に関する公式の C# ガイドラインはありますか?
うまくいきますか:
- パブリック フィールド
- プライベート フィールド
- プロパティ
- コンストラクター
- メソッド
?
アイテムの順序について厳格なルールがあるかどうか気になりますか? 私はどこにでもいるようなものです。どこでもできるように、特定の基準に固執したい.
本当の問題は、私のより複雑なプロパティがメソッドのように見えてしまい、コンストラクターの前の上部で場違いに感じられることです。
ヒント/提案はありますか?
regex - 正規表現は本当に保守可能ですか?
私が見た正規表現を使用するコードは、それらをブラックボックスとして使用する傾向があります。
- 文字列に入れる
- 魔法の正規表現
- ひもを出す
小さな変更でも完全に異なる正規表現になることが多いため、これを実稼働コードで使用するのは特に良い考えではないようです。
標準が永続的で不変である場合を除いて、正規表現は物事を行う方法ですか、それとも別の方法を試す方が良いですか?
language-agnostic - (単純な) 変数「トグル」をどのように記述しますか?
次の慣用句が与えられます。
1)
p>2)
p>3)
p>4)
p>どちらが好きですか、なぜですか?
最も一般的な実行パスはcondition
false であると想定しています。
私は 1) を使用することを学ぶ傾向がありますが、なぜそれが好きなのかはよくわかりません。
注: 次の例はより単純で、読みやすいかもしれませんが、すべての言語がそのような構文を提供しているわけではありません。また、変数の割り当てを拡張して将来複数のステートメントを含めるのには適していません。
f# - F# スタイル - () または <| を優先
これら 2 つの選択肢のうち、最も頻繁に使用しているのはどちらで、どちらがより「慣用的」ですか?
- f arg (obj.DoStuff())
- f 引数 <| obj.DoStuff()
logging - コードとロギングの比率?
ロギング比率に対する理想的なコードは? 私が開発したほとんどのアプリケーションにはあまりログが記録されていないため、ログを書き込むことに慣れていません。
最近、私は仕事を変えましたが、log4net への呼び出しのアプリケーション コードが表示されていないことに気付きました。これは便利だと思いますが、debug ステートメントが多すぎるのは、まったくないのと同じくらい悪いことですか?
すべてのメソッドの開始時と終了時、およびそれらが何を返すかを示すログ ステートメントがあります。そして、ほとんどすべてのことが行われるとき。
リフレクションを使用してコンパイル時にログ ステートメントを追加するアドオンを用意して、コードを見ようとしているときに邪魔にならないようにする方が簡単ではないでしょうか?
また、最近の強力な IDE とリモート デバッグでは、それほど多くのログが本当に必要なのでしょうか?
design-patterns - アルゴリズムをクラスにカプセル化する
アルゴリズムをクラスにカプセル化することはどのように (一般的ではない) のだろうか? より具体的には、相互に共通のパラメーターを転送するいくつかの個別の関数を使用する代わりに、次のようにします。
共通パラメーターをクラスにカプセル化し、コンストラクターですべての作業を行います。
関数の引数を介して共通のパラメーターと中間結果を転送する必要がないことは非常に実用的だと思われます..しかし、この「パターン」が広く使用されているのを見たことがありません..考えられる欠点は何ですか?
ruby-on-rails - Ruby/Ruby on Rails メモリリーク検出
Ruby on Rails を使用して小さな Web アプリを作成しました。その主な目的は、xml (ファイルは最大数 MB になる可能性があります) からの結果をアップロード、保存、および表示することです。約 2 か月実行した後、mongrel プロセスが約 4GB のメモリを使用していることに気付きました。ruby のメモリ リークのデバッグについて調査しましたが、多くは見つかりませんでした。そこで、質問が 2 つあります。
- Ruby/Rails でメモリ リークを見つけるために使用できる優れたツールはありますか?
- Rubyでメモリリークを引き起こすコーディングパターンは何ですか?
java - Java インターフェイスのメソッドは、パブリック アクセス修飾子を使用して宣言する必要がありますか?
public
アクセス修飾子を使用して、または使用せずに、Java インターフェイスのメソッドを宣言する必要がありますか?
もちろん、技術的には問題ありません。interface
is alwaysを実装するクラスメソッドpublic
。しかし、より良いコンベンションは何ですか?
Java 自体はこれに一貫性がありません。たとえば、 Collection
vs. Comparable
、またはFuture
vs.を参照してくださいScriptEngine
。
c++ - クラス変数の初期化を含む C++ クラスの初期化
今日、初期化でクラス変数を初期化する同僚のコードに気付きました。しかし、それは警告を引き起こしていた、と彼は言います。変数の初期化は、中括弧内ではなく、現在の場所で行う方が良いのはなぜですか?