我們處理這類課題
- 無法立即捨棄 COM / ActiveX / OCX
- 32bit 元件成了 64bit 化的障礙
- 不知道該如何串接 C++ 資產與 .NET
- 想在不破壞既有規格的前提下分階段遷移
進行方式的基本原則
在活用既有資產時,一開始就不以全面汰換為前提,通常反而更自然。
首先整理以下幾點。
- 該資產是 UI 元件,還是承載著規格的元件
- 維持 in-proc 就可以嗎
- 要在哪裡跨越 32bit / 64bit 的障礙
- 該用包裝器吸收,還是該分成獨立行程
特別容易處理的主題
- 整理含 COM / ActiveX / OCX 的既有系統
- 整理 C++ 與 C# 的邊界
- 使用 C++/CLI 進行包裝
- 重新檢視跨 32bit / 64bit 的架構
- 制定分階段的汰換計畫
適合這類情況
- 既有資產承載著業務或設備規格,無法輕易汰換
- 想先以延續使用與邊界整理為優先
- 將來想汰換,但現在需要安全的遷移手段
想達到的狀態
理想不是「把舊的全部清掉」,而是在活用應保留資產的同時,只整理複雜的邊界。
其結果是達到以下狀態。
- 易於維護的結構
- 看得見汰換順序的狀態
- 降低將來的遷移成本