MonoTouch vs Objective-C para desarrollo de iPhone / iPod / iPad [cerrado]


25

Para alguien con experiencia en .Net y que quiera desarrollarse para iPhone / iPod / iPad, ¿vale la pena aprender Objective-C? ¿MonoTouch es una buena alternativa? ¿Cuáles son algunas de las compensaciones cuando se usa MonoTouch vs codificación en Objective-C?


1
Parece que Apple está haciendo esto más fácil: apple.com/pr/library/2010/09/09statement.html
JeffO

2
Aguanta hasta el lanzamiento de WP7 y desarrolla allí en su lugar. ;)
Adam Lear

@Jeff O, es por eso que estoy interesado en las experiencias de las personas que se desarrollan con MonoTouch. He codificado en Objective-C, pero prefiero C #.
ysolik

Si puede votar y cree que esta es una pregunta útil o tiene respuestas útiles a continuación, vote por favor. Los sitios de StackExchange necesitan votos para construir una buena comunidad. Puedes dar 30 votos por día, no los desperdicies. Especialmente usuarios con alta reputación y votos de bajo conteo dados, lean esto: meta.programmers.stackexchange.com/questions/393/…
Maniero

También estoy interesado en visitar MonoTouch. Desafortunadamente, no tengo tiempo para dominar el objetivo-c y tengo una tienda llena de expertos en .NET aquí. ¡Me gustaría poder aprovechar su conocimiento!
Nodey The Node Guy

Respuestas:


17

MonoTouch es una alternativa fantástica. Lo he estado usando durante casi un año y no puedo imaginar volver al objetivo-c. Aspectos destacados: LINQ, LINQ to XML, LINQ, C #, LINQ, recolector de basura, LINQ, MonoTouch.Dialog y muchas otras cosas.

En serio, sin embargo ... hoy en día la mayoría de las aplicaciones siempre descargan datos de la web, y tendrás que convertirlos en objetos, mantenerlos en listas, ordenarlos y filtrarlos, y llevarlos a las bases de datos. Eso es tan simple de hacer con C # y LINQ que no puedo imaginar que las personas hagan eso en otros lenguajes.

El costo de $ 400 dólares no es bajo, pero probablemente pueda recuperar ese dinero en aproximadamente 1 mes sin publicidad. Y la cantidad de tiempo que MT le ahorrará lo compensará fácilmente. También recuerde, no tiene que pagar hasta que la aplicación esté lista para probar en un dispositivo, por lo que es gratis para aprender.

Dicho esto, sí, todavía es totalmente digno de aprender Objective-C. Te convertirá en un mejor desarrollador de la plataforma, entenderás por qué algunas cosas son como son, y así sucesivamente. También podrá leer ejemplos de Obj-C en la web y traducirlos a C #.

Finalmente, esta es mi sugerencia: si está pensando en ingresar al desarrollo de iOS, vaya a MonoTouch. Pase algunas semanas usándolo y luego tome la decisión de saltar a Obj-C. La parte más difícil de ir al desarrollo de iOS no es el lenguaje Obj-C, son todos los nuevos marcos que tendrás que aprender. Poder aprenderlos en C # es una GRAN oferta, serás mucho más productivo desde el principio. Justo después de que sepa esas cosas, mire en Obj-C: todo ya será familiar, por lo que será fácil entenderlo todo.


13

Soy un experimentado desarrollador de C, C ++, Delphi y .NET y recientemente necesité abordar un proyecto de desarrollo de aplicaciones iOS con un back-end .NET. Inicialmente me entusiasmé mucho con MonoTouch y me metí en él solo para descubrir que la curva de aprendizaje no era realmente el lenguaje sino los patrones de diseño.

También noté que el apoyo de la comunidad para MonoTouch fue mucho menor que para Xcode y Objective-C.

Mi consejo, tómese el tiempo y aprenda Objective-C. Lea las pautas para desarrolladores de Apple y aprenda cómo hacerlo correctamente.


Me gusta el recordatorio de que MonoTouch implicará al menos algo de aprendizaje, incluso si usted es un experimentado desarrollador de .NET. También estoy mirando una aplicación de iOS que se conecta a SQL Server / .net back-end. ¿Me puede señalar algo que funcionó para usted?
Jason S

3

Si solo quieres sacar algo rápidamente, creo que monotouch sería el camino a seguir.

Lo malo: recuerde que MonoTouch cuesta $ 399 para un solo desarrollador. Eso significa que si su aplicación tiene un precio de $ 0.99, entonces esencialmente necesita vender más de 400 aplicaciones para ganar dinero. Eso no tiene en cuenta que no obtendrá los $ 0,99 completos por cada compra de aplicación. Otra cosa en la que pensar es que si desea que otros desarrolladores se unan a su proyecto, la gran mayoría de los desarrolladores de iPhone todavía usan Objective-C, por lo que probablemente será más difícil encontrar socios.

Lo bueno: el tiempo de desarrollo será mucho más rápido. Llegar temprano al mercado suele ser una gran ventaja.

Lo neutral: aún tiene que aprender las bibliotecas de iPhone, el ciclo de vida de las aplicaciones y todos los otros pequeños matices del iPhone. Entonces, aunque no tiene que aprender Objective-C, todavía tiene que aprender el marco. Entonces, de cualquier manera, su aplicación puede ser igualmente increíble, ya que sigue siendo el marco de iOS al final del día.


Aprenderá algo nuevo a menos que su enfoque sea crear una aplicación de Windows que se ejecute en el ipad.
JeffO

1

Estoy empezando a desarrollar una aplicación con MonoTouch y me parece una buena experiencia. Con una tendencia a ser productivo en lugar de aprender nuevas tecnologías, MonoTouch se rasca la picazón. La sensación general es que Novell ha hecho un gran trabajo al hacer que la funcionalidad de iOS esté disponible para los desarrolladores de .NET y ahora con las recientes relajaciones de la licencia de Apple (ahora permiten aplicaciones para iPhone / iPad desarrolladas por herramientas de terceros) MonoTouch solo va a ganar terreno . Si observa la etiqueta de Twitter #monotouch, incluso verá algunos desarrolladores / talleres que TRANSPORTAN sus aplicaciones de Obj-C a .Net porque será más fácil / más rápido mantener / evolucionar a largo plazo. Ah, y todas las pautas de Apple todavía se aplican a pesar de que está trabajando en .NET; de hecho, las encuentro bastante útiles.

Con MonoDroid en camino también, es probable que pueda reutilizar las bibliotecas principales de su propia aplicación en una aplicación para iPhone y Android. ¿Qué tan genial es eso?

Aquí hay una entrevista bastante optimista con Wallace Mclure que captura un poco de lo que estoy hablando:

http://adtmag.com/articles/2010/09/29/monotouch-qa-with-wallace-mcclure.aspx

Yo diría que ¡adelante!


0

Hay un artículo sobre la experiencia de un desarrollador de .NET en mover su conjunto de habilidades a iOS.

Esta publicación de blog describe mi experiencia de aprender a escribir software iOS, después de haber pasado muchos años exclusivamente en el mundo del desarrollo de .NET. Proporciona advertencias, sugerencias y consejos para otras personas interesadas en aprender el desarrollo de iOS. La publicación finaliza con una comparación cualitativa de la programación en WPF e iOS.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.