私はもう2年近く大企業(8000人以上の従業員)で働いており、学習コースを終えた直後に採用されました。
ここの誰もが、しばしば非常にひどく設計されたハックに満ちたレガシーコードを毎日処理しなければなりません。最初は、物事をあまり批判しないように、目立たないようにしました。しかし、現状では、この状況に耐えることは非常に難しくなっており、私たちが使用するツールを改善/交換しようとする人は誰もいないようです。
より明確にするために:
- 廃止されたソース管理ツール(Visual SourceSafe)
- 完全な再構築のみをサポートするプレーンな古いメイクファイル
.def
すべての既存のアーキテクチャに対して手動で個別に維持する必要があるファイル- モノリシックヘッダーファイルと非常に少数の異なるファイルを含むプロジェクト(ただし、それぞれに約3000行のコードがあり、非常に異なるタスクを処理する場合があります)
- 「新しい」言語機能
std::string
は使用しません(まあ、それほど新しいものではありませんが、私以外は使用していません)
数か月前に、新しいコンパイル環境を設計することで、それについて何かをすることにしました。インクリメンタルビルドを確実に動作させ、コンパイル時間を短縮し、構造化されたプロジェクトを改善し、.def
ファイルを自動生成することができました。さらに、GitとVisual SourceSafeの間のブリッジを作成しました。
いくつかの同僚や上司に自分の成果を見せましたが、誰も気にしないようでした。それらはすべて「まあ...人々は今それをそのようにするのに慣れています。なぜ私たちは物事を変えるのですか?」
私が提案した変更は、古いシステムから新しいシステムにソフトに移行できるように設計されたものです。それぞれの改善は個別に安全に適用できます。
同僚の何人かを変更に参加させようとさえしました。しかし、これまでのところ、成功していません。
あなたはすでに同様の状況に直面しましたか?「例によるリード」が機能しない場合、何ができますか?