Компания Red Hat добилась успеха в портировании программ с C# на Java

В 2008 году компания Red Hat поглотила фирму Qumranet, среди разработок которой присутствовал интерфейс для управления виртуальными окружениями, написанный изначально на языке С#. Вскоре перед разработчиками была поставлена задачи по увеличению переносимости системы на другие платформы. Идеи использования Mono и компилятора Grasshopper, преобразующего MSIL в байткод JavaVM, не получили одобрения так как не соответствовали всем предъявляемым к ним требованиям и шли в разрез с общей технологической линией Red Hat. Поэтому было решено переписать исходные тексты проекта на языке Java.

В статье "Switching from C# to Java" обобщен опыт разработчиков Red Hat по портированию большого проекта (100 тыс. строк кода) с C#/.NET на Java. Рассмотрены достоинства и недостатки таких методов, как ручная переработка с нуля, гибридный подход с постепенной интеграцией Java-модулей и автоматическое конвертирование исходных текстов с одного языка на другой. В итоге был выбран третий вариант и после 4 месяцев работы был получен первый рабочий прототип системы управления виртуальными машинами на языке Java. Для конвертации исходных текстов использовался проприетарный транслятор Tangible.

©  OpenNet