C # (y la plataforma .net en general) parece que se está convirtiendo en una buena opción para aplicaciones de orientación múltiple:
- Marco oficial de MS .net: desarrollo completo de Windows, asp.net dev, Windows phone Dev, etc.
mono y todos sus derivados: monotouch, monodroid: el resto del mundo. Estas herramientas son hoy RTM.
¿Significa que C # se está convirtiendo en un buen lenguaje para apuntar a las plataformas más populares: escritorio, web y móvil?
- ¿Sigue siendo mejor usar el lenguaje "nativo" de las plataformas de destino (objetivo C, Java, etc.)
- ¿Es solo una pantalla de humo y solo un lenguaje de marketing?
Tenga en cuenta que soy consciente de que no podré copiar / pegar el código entre plataformas. Pero estoy seguro de que las capas inferiores de aplicaciones (modelos, negocios, etc.) pueden reutilizarse, pero sé que tendré que adaptar las capas superiores (Gui, etc.) a la plataforma. Mi objetivo está más centrado en las habilidades requeridas que el intercambio de código técnico.
[edit] Soy un desarrollador ac # en una compañía que usa masivamente c #. Es por eso que hablé de c # en un plan para expandir el rango de plataformas de destino en mi empresa.
Microsoft .NET es la implementación oficial de CLR, DLR, BCL, CLI y CLS. Otras empresas, grupos, comunidades o grupos de trabajo no están asociados con Microsoft de manera que puedan tener una implementación 1: 1 de la última versión de marco y lenguaje.
Básicamente, debe revisar qué características de lenguaje y marco le gustaría aprovechar en un proyecto concreto y verificar si están presentes en implementaciones no oficiales de .NET.
Si espera una solución de compilación única y distribuir en todas partes, está equivocado: debe hacer un estudio de caso.
fuente
Uso C # en juegos que se ejecutan en máquinas XBOX y Windows, lo uso en aplicaciones Compact Framework para soluciones de robótica, uso MonoTouch para desarrollo de iPad, tengo algunas aplicaciones web que se ejecutan en Linux y algunas otras soluciones. Por lo general, hay una manera de hacer lo suyo en una plataforma determinada. La capa central es casi la misma para la mayoría de ellos (es necesario un estudio de caso). El problema, y lo considero como una serie, es el entorno de desarrollo. Estoy acostumbrado a Visual Studio y sus características. Pero MonoDevelop, por ejemplo, me vuelve loco.
fuente