ИНСТРУМЕНТАРИЙ

Windows Forms в кросс- платформенном исполнении

Для многих разработчиков главный недостаток таких языков программирования, как VB.NET или C#, - необходимость использования создаваемых с их помощью программ только на платформе Windows. А как было бы здорово, если бы c приложениями на основе Windows Forms можно было работать и в среде Linux! Проект Mono (www.mono-project.com) нацелен как раз на то, чтобы "сказку сделать былью".

Он предлагает три варианта переноса Windows Forms в Linux. Первый заключается в преобразовании исходного кода приложения с помощью инструментального набора Gtk. Но этот способ довольно сложный, так как включает ручную доводку программы и чреват угрозой появления ошибок. Второй вариант требует использование эмулятора Wine Windows, но в данном случае приложение будет исполняться довольно медленно, к тому же тоже велик риск сбоев.

Но лучше всего задействовать средство Mono, которое обеспечивает поддержку функций пространства имен System.Windows.Forms на уровне машинного кода. Фактически оно представляет собой аналог виртуальной машины .NET Framework (для исполнения программ, реализованных на языке промежуточного уровня MSIL) для Linux.

Текущая версия Mono 1.1.7 практически полностью реализует набор функций Windows Forms .NET 1.1, а также всех основных элементов управления для создания пользовательского интерфейса (DataGrid, RichTextBox, PrintPreview и пр.). Следующий вариант Mono 1.2, выход которого ожидается в III квартале 2005 г., должен обеспечивать работу над приложениями, разрабатываемыми с помощью инструмента Whidbey (Visual Studio 2005) в среде .NET Framework 2.0.

Версия для печати