問題タブ [code-cleanup]
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.
ruby - Rubywarriorレベル4(コードヘルプのクリーンアップ)
私はRubyを通じてプログラミングを学んでおり、RailscastsのRyanBatesによる素晴らしいRubywarriorを見つけました。残念ながら、コードが構文エラーメッセージ(予期しない$ end)をスローしていることに固執しています。
私は答えを求めているのではなく、自分でそれを整理したいと思いますが、誰かが私のコードがどこからエラーを受け取っているのかを指摘できれば、それは素晴らしいことです。ありがとう!
perl - 巨大な Perl コードベースのクリーンアップ
私は現在、約 15 年前の Web アプリケーションに取り組んでいます。
主にHTML::Templateテンプレートを使用したCGI perl スクリプトが含まれています。
12,000 以上のファイルと、合計約 260 MB のコードがあります。必要な perl スクリプトは 1500 個以下であると見積もっており、未使用のコードをすべて削除したいと考えています。
コード用に書かれたテストは事実上ありません。
私の質問は次のとおりです。
- d およびd モジュールのみのリストを取得するのに役立つCPAN モジュールを知っていますか?
use
require
- 余分なコードをすべて取り除きたい場合、どのようなアプローチをとりますか?
私は次のアプローチで考えていました:
use
およびrequire
perl ビルトインを、ロードされたファイル名を特定の場所に出力するものでオーバーライドしてみてくださいwarnings
and/orstrict
modulesimport
関数をオーバーライドし、特定の場所にファイル名を出力します- perl モジュールを研究し
Devel::Cover
、同じアプローチを取り、自動テストの代わりに手動テストを行うときにコードを分析する - perl 実行可能ファイルをカスタムのものに置き換えます。これにより、読み取ったファイルの各名前がログに記録されます (その方法はまだわかりません)。
lsof
(?!?)のクリエイティブな使い方
java - Apache Camel での null ボディのこの処理は、よりエレガントにできますか?
Camel は初めてで、イディオムとベスト プラクティスを学ぼうとしています。いくつかの異なるエラー ケースを処理する必要がある Web サービスを作成しています。これが私のエラー処理とルーティングです:
ご覧のとおり、本文が null のリクエストを処理するための特別な処理 (コンテンツ ベースのルーティング) があります。これをよりエレガントに処理する方法はありますか?私はこのタイプのいくつかのサービスを書いています。
jquery - jquery エラーが発生する
これを機能させることができず、エラーがどこにあるのかわかりません
すべての助けをいただければ幸いです。
resharper - 保存時にresharperサイレントクリーンアップを実行すると失敗します
Resharperのクリーンアップコード機能を使用して、保存時にコードをクリーンアップしようとしています。DocumentSaved
イベントを処理するマクロを作成しました。重要な部分:
保存するたびに、「Error HRESULT E_FAIL has been returned from a call to a COM component.
アイデアはありますか? 」という例外メッセージが表示されます。
注:保存時にReSharperのコードクリーンアップを構成するにはどうすればよいですか?保存イベントに応答する必要があるため、私の状況では機能しません。マクロをCTRL+Sにマッピングするだけでは不十分です。
c# - このデータグリッドビューをフィルタリングするより良い方法はありますか?
switch ステートメントを使用してダブルクリック イベントによってフィルター処理される datagridview があります。データ ソースは、最初はユーザー入力に基づいて LINQ to SQL クエリによって設定されます。次に、セルをダブルクリックして、モデル、コンピューター名、オペレーティング システムなどのアイテムをフィルター処理するオプションがあります。
ここには重複したコードが多すぎるようです。これを行うためのより良い方法について何か考えはありますか?
c++ - 複数のソースでのテンプレートの実装
テンプレートの宣言と実装を分離するために、次のパターンを使用しています。
decl.h (宣言)
impl.cpp (実装)
今、Fooに新しいメソッドを追加したいのですが、impl.cppファイルはすでに巨大なので、別のファイルimpl2.cppに移動したいです。
decl.h (宣言)
impl.cpp (実装)
impl2.cpp (実装)
ここでの主な懸念はインスタンス化の重複です。どうすればそれらを回避できますか?
powershell - 一時フォルダー内のすべてを削除し、一時を削除して、新しい一時を作成します
私が取り組んでいるスクリプトは、一時フォルダー (C ディスク内) を削除し、一時フォルダー内のすべてを削除してから、新しい一時フォルダーを作成することを目的としています。すべてを削除するスクリプトは既に作成されていますが、Powershell で新しい一時フォルダーを作成する方法がわかりません。Powershell で新しい一時フォルダーを作成する方法を誰かが知っているかどうか疑問に思っていました。
一時フォルダーも正しく削除していますか?また、新しい一時フォルダーを作成するにはどうすればよいですか?
編集:人々が提案したことに基づいてコードを更新しました。これが望ましい効果をもたらすかどうか、さらにこれを削減する方法があるかどうか疑問に思っていました:
c - DRYは、「関心の分離」および「1つの機能、1つのタスク」とどのように組み合わされますか?
重複の可能性:
関数/プロシージャ/メソッドには何行のコードが必要ですか?
Outチームには、適切に構造化されていないansi-cコードのプロジェクトがあります。いくつかのCC手法を使用して、コードベースを整理したいと思います。
Cコードに関しては、多くのポインターと、キャッチすべきNULLポインターの落とし穴がたくさんあります。したがって、似ているフラグメントがたくさんあります。まるで
あらゆる所に。次に、いくつかのバリエーションだけで同じ方法で次々に呼び出される関数が非常にたくさんあります。
と
あらゆる所に。
LOCとコピー貼り付けを減らすために、これらのブロックを単一の関数として抽出したいと思います。しかし、それは(ある程度)直交するレイヤーを作成するだけでなく、いくつかの詳細を除いて、多かれ少なかれ同じことを行う一握りの機能も作成します。さらに悪いことに、それは一度に多くのことを行う関数を作成します。
それで、良い戦略は何ですか?より重要なのは、高レベルのリーンコード、低レベルのリーン関数、またはリーンアーキテクチャですか?どちらの原則が他の原則に勝っていますか?懸念の分離またはDRY?
その獣をリファクタリングしたいのですが、どこから始めればよいのかわかりません。
以下の例を説明し、同じ名前を入れます。
そしてそれをmorningRoutine()に入れます。今、私たちは持っています
そしてそれをsundayMorningRoutine()と呼びます。しかし、重複したコードがあります。または、morningRoutine(day)を次のように展開します
または多分
それは良いスタイルかしら..多分..そのヒントをありがとう!
powershell - W2K3ごみ箱の内容を削除する
仮想サーバーのごみ箱からすべてのコンテンツを削除するPowershellスクリプトを作成します。何らかの理由で、Windows 2003のごみ箱のパスを見つける際にエラーが発生し、その中のすべてを削除するためにごみ箱を見つけることができません。ここの誰かが私がこのコードスニペットで間違っていることについてアドバイスをくれるかどうか疑問に思っていました:
W2K8のごみ箱からすべてを正しく削除できるので、ごみ箱へのパスが見つかったら、コードは正しく機能するはずです。これは、見たいと思っている人のために私が受け取るエラーメッセージの写真です。
また、好奇心から、このコードをすべて削減し、2003年と2008年の両方で2つのワンライナーを作成する方法はありますか?私がこれを書いた現在の方法は、Powershellのコマンドレットを利用していないことを認識しており、W2K3ごみ箱の何が問題になっているのかを理解したら、それを改善したいと考えています。