問題タブ [legacy-code]

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 投票する
4 に答える
790 参照

legacy - レガシーコードでFxCopをどのように始めますか?

FxCopをレガシーコードに導入した経験のある人はいますか?誰かがルールに違反するコードを導入した場合、ビルドを失敗させたいと思います。しかし、レガシーコードには9000を超える違反があるため、当面はこれは不可能です。

私が知っているエラーを抑制する唯一の方法はSuppressMessage属性を使用することですが、これはメソッドとGeneratedCodeAttributeでのみ機能します。この最後のものは、クラスと名前空間に使用できますが(正しく思い出せば)、生成されていないコードには使用しないでください(ここを参照)。

現在、違反を削除するために毎日時間がかかりますが、ビルドが失敗しないため、新しい違反が導入され続けています。

何か案は?

0 投票する
4 に答える
1040 参照

.net - WinForms アプリケーションをリファクタリングするにはどうすればよいですか?

近い将来、WinForms アプリケーション (.NET 2.0) のバグを修正する予定です。ソース コードを調べてみると、大きなコード ファイル (2000 行以上) が見つかりました。それらのほとんどは、多数のコード ビハインドを含む生成されたダイアログです。

私が共有するためのヒントはありますか?バグ修正や WinForms アプリケーションのリファクタリングに関する戦争の話やベスト プラクティスはありますか?

0 投票する
4 に答える
156 参照

svn - レガシ コードのバージョン管理に関するヘルプ

レガシーシステムのバックアップ/バージョン管理方法を探しています:

  • システムは、BASIC のバージョンで開発されます。解釈版です。プログラムはいくつかの疑似コードで保存されます。純粋なテキストではありません。
  • すべてのプロダクション プログラムは同じフォルダ ツリーに保存され、カテゴリに応じてフォルダに分割されます。
  • 変更されたプログラムの以前のバージョンをold_versionsという名前のサブフォルダーに保存することを除けば、転覆戦略はありません。すべてのカテゴリ フォルダー内に1 つのold_versionsサブフォルダーがあります。例: /programs/accounts_payable/old_versions/
  • プログラムは本番環境でオンザフライで変更されます。
  • Solaris サーバー上で稼働するシステム

変更されたすべてのプログラムを別の場所にリアルタイムでバックアップする何らかの方法が必要です。 派手なものはありません。ロールバックや変更比較を行う必要はありません。プログラムの最新バージョンを保存するだけです。

ありがとう。

PS: はい、私は本当に怒って必死です。

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

legacy-code - Modula-2 開発者?

Modula、Ada、Oberonなどの言語で実装された新しいプロジェクトはもうないと思います(そうですか?)。しかし、いまだにレガシー システムがあちこちに浮かんでいて、作成者を探してそこかしこに飛び出しています。彼らは引退してどこかのビーチに座って楽しんでいる可能性があるため、それらを見つけることができません。

深刻な問題:
1) アクティブな (経験豊富な) Modula プログラマーがまだ周りにいるかどうか疑問に思っています。
2) Modula コードを新しいハードウェア世代に移植した経験のある人はいますか?
3) リエンジニアリングできるツールについて知っている人はいますか? つまり、手順と Mod ファイルをグラフィカルな方法でマップします。これらのツールは、たとえば次の場合に利用できます。C プログラム。

確かに、Modula Syntax は、数千のメソッドを持つ今日の .net および Java API と比較して息をのむようなものではありませんが、誰かが約 100.000 行のほとんど文書化されていないソースコード (約 8000 行のアセンブラーとうまく混合されています) をドロップした場合、拒否したほうがいい。私はこの要求を持っており、非常に抵抗しています。(オプション: modula ソースを移植して保持するか、9 か月以内に他の言語に移行します!)

乾杯

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

integration - 最終的に古いアプリケーションにマージされる新しいアプリケーションを設計するための方法論

現在、私はC#で新しいスタンドアロンアプリケーションを開発しているチームに所属しています。最終的な目標は、このスタンドアロンアプリを、同じプロセスに関連する以前に開発されたより大きなアプリケーションに組み込むことです。

私の質問はこれです:私は、A)特に古いコードが最も保守しやすいシステムではない場合に、上記の新しいコードの設計、およびB)上記の新しいアプリケーションの統合に役立つ方法論またはプロセスに関する情報を探しています。

明らかに、そこには具体的なものは何もありません。私たちのアプリケーションは設計がユニークであるため、方法論が役に立たない詳細があります。ただし、このトピックに関する一般的な知識を得ることに興味があります。

編集: これまでの提案、古いコードのリファクタリング、モジュールのコンテナーとしての新しいコードのビルド、単体テストでの新旧のコードのカバーは、すべて一般的に良い習慣であり、可能な場合は私が実践するものです。これらは全体的な方法論の個々の部分であるように私には思えます。

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

.net - DataGrid 1.0 から行の順序を取得する

私は.net 1.1のレガシーアプリを使用しており、データグリッドポストソートで行を取得する必要があります(列ヘッダーをクリックして)。これは簡単な作業のように聞こえますが、答えは私にはわからないようです。データセットから行を正常に取得できますが、ヘッダーをクリックしても再度並べ替えられません。

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

legacy-code - 大規模なプロジェクトで潜在的に再利用可能なレガシー コードを処理するための適切なエチケットは何ですか?

この状況に対処する最善の方法は何かを考えてきました。誰かがその機能をプロジェクトに再度追加することを決定した場合に備えて、古いコードをコメント ブロックに残しておくのが最善の方法ですか、それともソース コードをクリーンで読みやすい状態に保つためにこのコードを削除する必要がありますか?