Сделать программную платформу независимой - PullRequest
2 голосов
/ 03 апреля 2010

Я работаю с проектом OCR, который разработан с использованием Visual C ++ на .net framework. Но поскольку .net зависит от платформы, я хочу сделать эту платформу проекта независимой и поддерживать ее для нескольких операционных систем.

Так может кто-нибудь подсказать мне, как это сделать. Благодарю.

Ответы [ 3 ]

4 голосов
/ 03 апреля 2010

Mono - это кроссплатформенная реализация .NET, которую вы могли бы рассмотреть.

1 голос
/ 03 апреля 2010

Почему вы используете Visual C ++, работающий на .Net? Я бы порекомендовал вам либо перейти на Native C ++, либо использовать лучший язык .NET, такой как C #. Честно говоря, я не уверен, что Mono может справиться с управляемым C ++.

Если вы переключаетесь на собственный C ++, то обязательно абстрагируйте биты, специфичные для платформы. Также убедитесь, что ваше приложение будет работать как на 32, так и на 64 бит. Используйте независимые от платформы API, такие как GTK или WxWidgets.

Если вы переключитесь на C #, прочитайте, какие API-интерфейсы Mono не поддерживает (и никогда не будет) поддерживать. Не используйте небезопасный код или P / Invokes.

И независимо от того, какой путь вы выберете, Всегда регулярно тестируйте вашу программу на Windows и Linux. Если он работает в Linux, он обычно работает и в Mac, но я бы тестировал на всех трех, по крайней мере, один раз в день

1 голос
/ 03 апреля 2010

Вы также можете попробовать Qt . Вы можете использовать Visual C ++ для платформы Windows и g ++ с другими платформами (Mac / Linux). Он дает вам гораздо лучший графический интерфейс, чем Mono.

...