CodeFusion

Managed/unmanaged code interoperability

31.03.2016

Bez względu na to, czy to dobrze, czy źle, na świecie istnieje niezliczona liczba programów komputerowych napisanych całe lata temu. Tak, tak! Aplikacje biznesowe stworzone 10, 20 czy nawet 30 lat temu nadal są z powodzeniem używane. Programy takie trudno jest już rozwijać. Nowe pokolenie programistów nie zna Delphi, Fortrana czy Clariona, a dostawcy komponentów nie wspierają już takich „starotek”. Zmieniły się środowiska programowania i systemy operacyjne. Mimo tego, te stare aplikacje cały czas mają zadowolonych użytkowników, którzy domagają się nowych funkcjonalności. Mamy na to złoty środek. Prowadzimy już trzeci projekt polegający na łączeniu „starego” tzw. niezrządzanego kodu z “nowym”, pisanym przez nas w C# na platformie .NET. Zasada jest z pozoru prosta: aplikacja windowsowa napisana w C++, Delphi czy Clarionie rozszerzana jest za pomocą tzw. warstwy interoperacyjności (interoprability) o funkcjonalności pisane w całości za pomocą najnowocześniejszych komponentów, takich jak: WPF (dla okienek), czy WCF (do komunikacji).

Obecnie prowadzimy projekt, którego początek zrodził się z faktu, że producent pewnej leciwej aplikacji został zmuszony przez producenta CrystalReports (nota bene jest nim SAP) do użycia technologii .NET w celu dostępu do swoich raportów. Producent tej aplikacji nie był w stanie tego zrobić za pomocą swojego starego systemu. Wynajął nas do napisania API, którego mógłby użyć w swoim oprogramowaniu. Mając w tym względzie duże doświadczenie byliśmy w stanie szybko stworzyć dla naszego nowego klienta interfejs, który może bez trudu wykorzystywać w swoim oprogramowaniu.

«
»
strzałka do góry