Snažil bych se vyhnout tomu aby jste nepřepisovali aplikaci jen a jen proto že pascal není dostatečně moderní a in
. I když i toto má svou váhu, ale neměl by to být jediný argument - zas tak strašný ten jazyk není. Spíše je třeba si sepsat a správně pojmenovat všechny důvody, pokusit se je vyvrátit případně se podívat zda se nedají obejít.
Zkusit se k tomu postavit nejen jako k "refaktorizaci" ale částečně také jako k návrhu nového programu(což tak jako tak bude pokud to budete přepisovat, předpokládám že platformy a knihovny jednotlivých jazyků nebudou 1:1).
Kouknout co je kde rozdělené a nebo by šlo rozdělit, jaké technologie(zmínil jste ActiveX, DCOM, dBAse) se používají, zda je třeba jejich upgrade nebo je třeba úplně nahradit(nebo to bude třeba v budoucnu), případně čím. Jaké jsou na jednotlivé části požadavky, zda je stávající kód splňuje a bude splňovat do budoucna atd atd.
Zvážil bych, zda nenapsat různé části v různých jazycích. Mohlo by to být jednodušší než lámat něco co k tomu není uzpůsobeno. např místo activeX udělat web aplikaci, i když na to bych si asi přizval někoho kdo web applikace dělá(pokud to nemáte v malíku). Mít všechno v jednom jazyku na jedné platformně má své výhody, nadruhou stranu více jazyků/platforem existuje protože jsou vhodné na různé věci.
Tak jako tak upgrade po částech,pokud to bude možné, umožní dříve vidět nějaký kloudný výsledek, i když je pravda že celková doba převodu na novou verzi se může prodloužit. Jsou to prostě další věci ke zvážení.
Pokud ale jde hlavně o to že máte starý překladač a bojíte se o kompatibilitu s novými OS. Zkusil bych se poohlédnout po novém překladači. Pascal nepoužívám ale párkrát jsem narazil na komerční
http://www.embarcadero.com/products/delphi a zdá se že na tom pořád pracují, třeba by stálo za to to alespoň vyzkoušet. Nebo možná najdete i jiné. (myšleno komerční, předpokládám že pro vás asi LGPL FreePascal/lazarus nepřipadá v úvahu, když máte kritickou aplikaci).
No a pokud do toho chcete šlápnout opravdu hodně co nějakou kombinaci aplikačního serveru a HMI/SCADA?
Letmo jsem se setkal s "Wonderware Application Server" kde by mělo jít psát sběr dat a logiku řízení v C# a k tomu "InTouch SCADA HMI" pro zobrazování (což je "klikací" grafika plus trocha skriptů)
Netvrdím že je to pro vás ideální a cena není nízká, alespoň pokud vím. Případně použít jen HMI/SCADA a zbytek udělat ve vlastní režii. Jen pozor že v HMI/SCADA je občas složitější nebo nemožné dělat věci které neumí nativně, mám na mysli komplikované či dynamické formuláře a tabulky.Prostě co umí umí dobře ale přesvšdčit je k tomu co chcete vy může být problém
. Také pozor na to že do HMI/SCADA lze obvykle implementovat i nějakou tu logiku řízení či automatizaci. Ale to nutně neznamená že je to vhodné, složitější věci doporučuju dělat jinde.
Každopádně si nechte poradit od někoho kdo danné technologii rozumí, čili školení či nějaký technik/progamátor od dodavatele.