Silverlight и C ++ или C ++ в C # продолжается преобразование кода?
-
20-08-2019 - |
Вопрос
Я работаю над продуктом на основе рисования, в котором я хочу создавать версии для iPhone, настольных OS / X, планшетов Windows, браузера на базе Silveright, Windows Mobile и Windows в таком порядке приоритета.
Для переносимости графического интерфейса классический ответ - сохранить ядро на C ++ и использовать тонкие слои Cocoa / Objective-C или WPF / C #.
Однако Silverlight усложняет выбор.
У меня не возникло бы никаких проблем с переносом моего кода на C ++ / CLI и поддержанием двойной кодовой базы (с некоторыми макросами для подделки контекстных ключевых слов C ++ / CLI и некоторым судебным поиском и заменой для ^ и %).
Из того, что я смог сделать найти до сих пор, кажется маловероятным, что C ++ / CLI будет поддерживаться в Silverlight.Это оставляет мне выбор:
- Одноразовый перенос базы исходных текстов C ++ версии v1.0 в C # и текущее параллельное обслуживание
- Перенос в реальном времени с помощью инструмента (рекомендации, пожалуйста!) с C ++ на C # или наоборот, который достаточно плавен, чтобы быть частью процесса сборки.
- Архитектурное разделение версии Silverlight, чтобы логика C ++ оставалась на сервере.Мне немного не по себе из-за последствий для производительности.
Кто-нибудь может предложить альтернативы, сообщить хорошие новости о C ++ / CLI в Silverlight или порекомендовать инструменты переноса?Я достаточно хорошо владею любым языком, чтобы сделать C ++ или C # своим основным языком для серверной части при условии надежности порта.
Редактировать:Рассматривая ассортимент продукции, предлагаемой Осязаемые Программные Решения, их заметки о конвертерах дают понять, что преобразовать C # в C ++ проще, чем другим способом.Это то, чего я ожидал - это вызывает интересные мысли относительно ограничения моего стиля C ++ наименьшим общим знаменателем OO.
Решение
Архитектурное разделение версии Silverlight, чтобы логика C ++ оставалась на сервере.Мне немного не по себе из-за последствий для производительности.
Я бы сделал это.Производительность, вероятно, не так плоха, как вы себе представляете.