miércoles, 11 de abril de 2012

Mono Project

Desde hace tiempo, lo he seguido, aunque en realidad me puse a trabajar hasta hace poco con el. 
Lo que me agrada.
Permite hacer programas desde Windows, Mac o Linux y se puede ejecutar en cualquier plataforma, teniendo el Runtime en cualquier plataforma.
Es fácil de programar y entender como se hace.
Lo que no me gusta,
Hemos escuchado advertencias desde el mundo del Software libre, que si bien es software libre, esta basado en tecnología de Microsoft, por lo que podría aplicar en el futuro represalias por patentes de la misma compañía. Aunque da su bendición y como se debe hacer estas herramientas con el ECMA.
La verdad no se que pueda pasar, pero lo que si se es lo bien que funciona. 
También encontré una suite de programación con SharpDevelop que es una plataforma también de software libre, esta utiliza el WinForm o las Apis de Windows para programar en CSharp, VB Sharp, etc. Este último solo funciona bajo Windows, y ejecutar el programa lo hace sobre el .NET Frame work, lo que lo hace interesante, es que siento que la herramienta de desarrollo es mejor o mas fácil de usar que el MonoDevelop, pero gracias al RunTime de Mono podemos ejecutar las aplicaciones en Mac y Linux. Así que programar solo una vez y automáticamente tenemos nuestro programa en otra plataforma.
También veo que ahora hay una herramienta para programar aplicaciones en IOS y Android, estas si tienen costo pero se pueden publicar las  aplicaciones en las tiendas oficiales de cada plataforma. Así que si no tienes tiempo o no quieres aprender otro lenguaje de programación como Objective-C mas Xcode, y conoces ya CSharp, parece un camino más cómodo. Eso si, para IOS solo funciona en plataformas Mac por que requiere de Xcode y Mono.

Volviendo a MonoDevelop, también me agrada mucho que se puede utilizar la librería GTK para diseñar las ventanas, y una vez mas si programamos en Linux nuestros programas funcionarán en Mac y Windows también, lo que no me agrada mucho es que no están flexible como las herramientas de Microsoft,la verdad he probado Xcode, Visual Studio y las herramientas de Linux, y siento que la verdad Microsoft hace un excelente trabajo para poder hacer aplicaciones, es el mas sencillo de todos, pero habrá que abonar, a comparación de las herramientas para Linux o Mac.

Como conclusiones.
Si quieres programar para tu casa, empresa, o haces aplicaciones para venderlas creo que mono es una gran herramienta, por que podemos distribuir nuestras aplicaciones con o sin costo, y en sistemas multiplataforma, aunque necesitamos su equivalente al Virtual Machine de Java. Aunque si le falta trabajo para alcanzar a sus pares de otras plataformas pero la verdad que es divertido.

Mac donde gana es cuando quieres distribuir tus aplicaciones por las tiendas oficiales de la marca, pero hasta eso no esta tan mal, por que te da un mercado y la posibilidad de ganar dinero con su plataforma. Aunque la veradad siento un poco difícil su plataforma de desarrollo, pero una vez que te acostumbras y entiendes su filosofía es una buena herramienta, y la verdad su mercado de IOS hace interesante aprender esto por la posibilidad que te da de ganar dinero sin ser un mounstro de la industria del Software.

Visual Studio, sin dudarlo tal vez la mejor plataforma para programar, y mas con los años que tiene de maduración en el mercado, costosa eso si y con su licencia restrictiva, pero muy popular en muchos lugares de trabajo y bueno también no hay que negar la gran plataforma que tiene instalada en Windows al rededor del mundo, pero si sabes programar en Visual Studio, puedes portar ahora tus aplicaciones a las otras plataformas gracias a Mono.

SharpDevelop, creo que es una gran opción si no quieres gastar en Visual Studio, puedes usar esta suite, que en Windows, no requieres instalar nada por que con el .Net Framework funcionan los programas así que desde Vista ya estarían funcionando las aplicaciones desarrollando en esta suite, y migrar a otras plataformas, nuevamente mono entra en acción. 

En todas acepta diferentes lenguajes de programación, y se pueden poner plug ins, por ejemplo si queremos trabajar con bases de datos libres, como sqlite3, MySql, Postgres, etc.

Hasta donde se también se puede trabajar en Visual Basic, que es lo que mucha gente conoce por las escuelas. Pero cuando hecho cosas de Visual Basic con el Frame Work de Windows, solo las he podido ejecutar desde Mac y Windows, no si es por el run time, o por que Mono esta mas basado en C#.

En fin, esta interesante, me agrada aunque me da catarsis. Otros proyectos interesante para desarrollar en Basic, desde Linux esta Gambas, que ya escrito acerca de esto en este Blog.

Perdonen lo revuelto de esta entrada, pero si les gusta programar, no esta de mas hecharle una vista al proyecto de Mono. Que por cierto esta hecho por un Mexicano, de nombre Miguel de Icaza.

No hay comentarios:

Publicar un comentario

Flutter 2.10

  Hace unos días google hizo una actualización en flutter. Se gana gran velocidad y hace estable hacer aplicaciones en #Windows . Muy lindo...