2010-03-28 22 views
9

Me gustaría desarrollar la aplicación Mono para Win/Linux/Mac en C# en Windows. ¿Hay algún IDE realmente bueno (Visual Studio comparable) para eso? Lo mejor sería si pudiera administrar Visual C# Express para compilar soluciones usando el compilador Mono.Bueno IDE para Mono en Windows

He encontrado un #develop IDE, que se ve muy bien y tiene muchas características que la edición Express de Visual Studio no tiene (como los complementos para TortoiseSVN, NUnit, etc.). Las versiones de Hovewer 3. * dejaron de admitir Mono, por lo que ya no es posible compilar soluciones utilizando el compilador Mono.

También hay un MonoDevelop. Lo probé y apesta. No es comparable a Visual Studio en absoluto. Ningún diseñador de WinForms, más toneladas de otras características que faltan. Me gustaría simplemente dejar de lado el desarrollo de MonoDevelop y crear un complemento para #develop.

¿Hay algún otro IDE suficientemente bueno, o es posible hacer que Visual C# Express o #develop compilen las soluciones con el compilador Mono?

EDITAR: Delphi Prism se ve bien, pero no es C#.

+4

Espere, está desarrollando una aplicación multiplataforma y se está quejando de una falta de * Windows * diseñador de formulario? Las GUIs de plataforma cruzada en Mono generalmente se hacen en GTK o algo similar en lugar de winforms. –

+0

@BillyONeal: He leído que es posible diseñar la aplicación .NET utilizando winforms, que también se ejecuta en otras plataformas. No se ve muy bien, pero si uso controles personalizados, podría manejarlo. – Paya

+0

Quizás. Pero parece que estás reinventando la rueda si estás luchando por el diseñador solo para controles personalizados. Solo mis 2 centavos. –

Respuesta

9

Siempre puede desarrollar sus aplicaciones usando Visual Studio Express Edition (ya que no desea pagar las Mono Tools). Monodevelop ahora admitirá la compilación de soluciones de Visual Studio, así que solo desarrolle en VS, y vuelva a compilar ocasionalmente en Monodevelop para garantizar el soporte.

Dado que Mono ahora es compatible con Windows Forms, puede desarrollar una aplicación de Windows Forms completamente en Visual Studio, y simplemente implementarlo usando Mono. Como C# se compila en IL, no importa qué IDE use para desarrollar, aún puede ejecutarlo en Mono.

+0

Bueno, no entiendo completamente los conceptos detrás de Mono. Se me pedirá que compile la solución usando MonoDevelop y despliegue el ejecutable que generó, y no el .exe generado por VS, ¿verdad? – Paya

+2

@Paja: No. Esa es la belleza de Mono y CIL (que es lo que generas con C#). Puede ejecutar un programa compilado con Visual Studio en Windows usando Mono - sin recompilación. Compilar con Mono solo te ayuda a asegurarte de que no estás haciendo algo que Mono no admite ... Si te apegas a las formas estándar de C# y Windows, tiende a "solo funcionar" en mono, sin recompilación. –

+0

@Reed Copsey: Bueno, estoy usando SQLite en mi aplicación, así que si quiero usarlo, tendría que usar el Mono SQLite, ¿verdad? Así que tendría que compilarlo con MonoDevelop siempre. Pero supongo que no tendría que hacerlo si no utilizara SQLite. – Paya

8

¿Qué tal Mono Tools for Visual Studio?

Tenga en cuenta que se trata de un complemento comercial.

+1

Sí, lo sé, pero no se ejecutará en la edición Express. Así que tendría que comprar Visual Studio por unos cientos de dólares. – Paya

3

Mientras que SharpDevelop 3.2 no es compatible con el modo mono de fábrica, pero si descarga el source code for SharpDevelop, puede encontrar un ejemplo de código que contiene el código original para soporte mono. Si construye esa muestra, la compatibilidad mono se volverá a habilitar en SharpDevelop.

A decision was made to remove mono support from the main SharpDevelop application ya que solo se proporcionó soporte para compilar con mono y MonoDevelop ahora se puede ejecutar en Windows. Tenga en cuenta que la compatibilidad mono en SharpDevelop no proporciona ninguna depuración integrada con el depurador de mono y no hay ningún diseñador GTK # en comparación con MonoDevelop.

+0

Sí, ya lo intenté, pude compilar el complemento, hovewer al ejecutar el complemento y crear un proyecto Mono, hubo algunos errores. Y no voy a arreglar un complemento, que ya no se mantiene. :-) – Paya

+0

No esperaría que lo hicieras :) Aunque puede que no esté en el lanzamiento oficial y no se mantenga activamente si informas algún error, los arreglaré. –

+0

No quiero que se solucione un solo error, quiero que se mantenga el complemento. El #develop es la mejor alternativa para VS en Windows, pero podría ser incluso mejor si tuviera soporte completo para Mono. Nunca he escrito ningún compilador/depurador, pero ¿es realmente tan difícil agregar esto en #develop? Como compilador usaría el compilador Mono, y el depurador se puede copiar desde Mono Develop, si la licencia lo permite. – Paya

1

Creo que su mejor opción será hacer un desarrollo con VS C# Express, y luego usar una máquina virtual, como VMWare, Virtual PC, VirtualBox, etc. para acceder a Linux (que es la plataforma principal para MonoDevelop, y en el que funciona realmente bien, de manera comparable a VS.)

Hay incluso un número de downloads available que están preparados para hacer exactamente esto. Incluso podría usar un Live CD y simplemente reiniciar su máquina para entrar en Linux (que normalmente puede acceder a las particiones de Windows sin problemas).

+0

Así es exactamente como lo hago ahora. :-) Pero sería bueno tener una opción para ejecutar el programa en Mono en Windows directamente desde IDE (y gratis), así puedo ver si es 100% compatible en Windows. Pero supongo que lo resolveré de esta manera: Desarrollar SW en VS/# develop en Windows, luego probarlo con MonoDevelop para ver si se compila con el compilador Mono y si se ejecuta correctamente en Mono en Windows, y luego hacer lo mismo para Mac y Linux. – Paya

Cuestiones relacionadas