問題タブ [decomposition]
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.
java - Javaでの分解、いつ十分ですか?
私は 1 年生のコンピューター サイエンスの学生です。私たちは現在 Java でプログラミングを行っており、メイン メソッドのロジックが可能な限り疑似コードに近いものを読み取れるように、よく名前の付いたメソッドにプログラムを分解しようとします。
私が見つけた問題は、やり過ぎかもしれないと感じるほど多くの小さなプライベート メソッドを書くことになることがよくあるということです。問題をさらに分解するかどうかを決定する際に考慮すべき経験則やスタイル上の考慮事項はありますか?
java - Javaでifステートメントの大きなブロックをリファクタリングするにはどうすればよいですか?
最近、JVisualVMを使用していくつかのコードのプロファイルを作成しましたが、特定のメソッドの1つが、頻繁に呼び出されることと実行時間が遅いことの両方から、多くの実行時間を費やしていることがわかりました。このメソッドは、次のようにifステートメントの大きなブロックで構成されています:(実際のメソッドには、これらが約30個あります)
これらのifステートメントを書くためのより良い方法はありますか、それとも効率を改善するために他の場所を探す必要がありますか?
編集:プログラムは、進化科学を使用して、特定の結果へのパスを開発します。具体的には、StarcraftIIの注文を作成します。このメソッドは、特定の進化が特定の結果の条件を満たすかどうかを確認します。
python - ネストされた辞書/json の分解とデコード
私のアプリでは、辞書の辞書に似たjsonスタイルのユニコード文字列を返すサーバーに接続しています。id
その結果、次のようなキーとユニコード値として1つのレベルの辞書を取得したいと思います:
{'1': u'autos','3': u'cities'}
したがって、組み込みの json モジュールを使用して応答をロードします。
返されたオブジェクトはこちらで確認できます。次に、それを分解して親辞書を取り除く必要があります。そして最後にIDをエンコードします。エンコーディングを行う方法を 2 つ見つけました。1 :
そして2番目:
このタスク、特に分解をどのように行うべきですか?
java - JPAでの集約と分解
Java Persistence APIを使用して集約と分解をどのように実装しますか?ベストプラクティスは何ですか?
よろしくお願いします、ダニエル
tree - 非正方形画像の四分木分解
非正方形の画像で四分木分解を実行する最良の方法を知っている人はいますか? クアッドツリーを使用して描画された画像に線が表示され続けます。
java - 四分木の問題 - 冗長な情報を保存する
正方形 (mxn 次元) ではない画像があります。また、その次元は底が 2 ではありません (つまり、m not = 2^k & n not = 2^k)。以下を使用して、画像をより大きな正方形 (2 の次の累乗) に配置することで、これに対処しました。
どちらが最大の次元になるかに応じて、正方形を最大次元で描画するように設定します。つまり、次のようになります。
問題:
四分木は、すべての非画像ノードをツリーに格納しているため、完全に異なって見えます。これは明らかに想定される画像データ (最小/最大深度) とツリー全体の形状そのものに影響を与えます。私の質問は、これを効率的な方法で行っていますか?もしそうなら、画像に属さないデータを保存しないようにするにはどうすればよいですか? 正方形ではない画像を描画するのが最善の方法ではない場合、誰かが私を正しい方向に向けることができますか? Google のすべての記事は、私の目的には深すぎるようです。
php - このメソッドを個別のメソッドに分解する必要がありますか?
このメソッドは、検索キーワードと解析されたmysqlクエリを取得し、where式をLIKE%keyword%を含むように書き直します。
それはうまく機能しますが、これほど多くのループを持つメソッドを持つことが良いか悪いかはわかりません...
java - メソッドと分解
数年間 HTML/CSS コーディングを行った後、Java の学習を始めたばかりなので、ここで古い質問や愚かな質問をしていないことを願っていますが、この問題を説明する助けをいただければ幸いです。
私は現在、スタンフォード CS106A オンライン教材に取り組んでおり、第 6 週、課題 2、質問 3 (http://see.stanford.edu/materials/icspmcs106a/13-assignment-2-simple-java.pdf) に到達しました。 )。
ご覧のとおり、グラフィックス階層を作成するには、画面上にさまざまなオブジェクトを配置する必要があります。私の計画は、中心座標を使用して、画面上のすべてのオブジェクトを相対的に配置することでした。しかし、答えが見つからないように見える問題にぶつかりました。このコースでは、メソッド分解が各メソッドで 1 つの問題を処理できるようにする方法について説明します (単一責任の原則だと思います)。そのため、コードの最初の部分を次のように記述しました。
ただし、 center_x と center_y がゼロの値を生成するため、これは機能しません。プログラムを ConsoleProgram に変更し、 getWidth と getHeight の行を run() メソッド内に配置して (そしてそれらの値を画面に表示して)、必要な値を生成しましたが、それらを GRect メソッドに渡しませんでした (そのため、それでもうまくいきませんでした)。ただし、run() からリストされた getWidth/getHeight 行がある場合、それらは相対位置の値を生成しません。
私の質問は、各メソッドが 1 つのタスクを処理する必要があり、(可能な限り) メソッドが run() メソッドから定義されている必要があるということです。 run() メソッド内のコードの大きなブロック。私が理解しているのは悪い習慣です。
私はこれを解決するためのコードを求めているわけではありません。将来的に効果的なコードを書くことができるように、この原則を理解する必要があります。オウムのようにコードをコピーするよりも、理解することを好みます。
助けてくれてありがとう。
database - データベースの無関係な属性と分解
無関係な属性の概念と 3NF への適切な分解について、私はちょっと混乱しています。
たとえば、次の関係があります。
アルゴリズムを使用して 3NF に分解するために、正規カバーを計算したいと考えています。したがって、FD から不要な属性を削除する必要があります。
A+. B+, C+, D+ (A+ = ABCDE, B+ = BD, C+ = C, D+ = AD)
私は無関係な属性を見つけようとして始めたと計算しました。まずはβで属性を見てみました
D が無関係かどうかを調べようとしました
BC -> DE
BC+ を使用すると、D が無関係であることがわかりました (BC+ には属性 D が含まれているため)。そのため、FD は から変更されBC -> DE to BC -> E
ました。α の無関係な属性を計算しようとしました。
B または C が FD で異質であるかどうかを調べましたBC -> DE
(B+ と C+ を計算すると、B または C のいずれにも E が含まれていないため、異質ではないことがわかりました)。
また、A -> BCD の無関係な属性も調べたところ、B と C の両方が無関係であることがわかりました (A+ にはすべての属性が含まれているため)。そのため、次のものが残されました。
非常に長い質問で申し訳ありませんが、私がしたことを書き留めたかっただけです。
これが正しいのか、それとも私がこれを正しく行っているのか、私は混乱しています。私はいくつかのメモといくつかのオンライン参照に従おうとしていますが、誰かが私がこれを正しく行っているかどうかを指摘できればいいと思います.