Apple promueve que Swift es mucho más fácil que Objective-C, pero como desarrollador experimentado de Objective-C, descubrí que Swift es mucho más difícil de aprender debido a sus características más ricas y su estilo de programación orientado al protocolo. ¿Es verdad?

TL; DR: Mi opinión es que Objective-C es más simple que Swift. Lo único “difícil” de esto es cómo llama a un método, el resto es casi simple C. Una vez que entiende la sintaxis de llamada al método, casi ha terminado.

Creo que esta pregunta aún no tiene una respuesta clara, principalmente debido a dos factores:

  1. Swift todavía está cambiando a mucho. Parece que el año pasado y desde la versión 1.0 a 1.6, muchas cosas cambian hasta el punto de invalidar el código anterior.
  2. Para usar Swift para la codificación real, debe comprender Objective-C porque todos los UIKit y Foundation están escritos en ese lenguaje (además de cualquier otro fragmento de código creado antes de 2014) y debe comprender cómo interactuar con él.

Creo que este es un mal momento para comenzar a desarrollar para iOS porque debes ser consciente de muchas cosas. Además, maneja los rápidos cambios en torno a las herramientas de desarrollo.

Hablando de interoperabilidad ObjC, ayer encontré un comportamiento extraño en torno a esto. Compruébalo aquí

Swift es definitivamente más difícil, al menos para cualquiera que haya usado C o C #.

Objective-C es solo una capa delgada orientada a objetos por encima de C. Se puede aprender en dos horas. Tiene una sintaxis un poco extraña con corchetes [] y bloques de estilo C, y algunos inconvenientes, como envolver enteros antes de agregar a la matriz, pero te acostumbras.

Swift es un lenguaje moderno a gran escala con muchas posibilidades (lo que significa que necesita invertir más tiempo en él) pero también tiene un costo. Está más tipado estáticamente, no permite enviar mensajes a cero y te obliga a escribir más código usando genéricos en lugar de colecciones universales de estilo Objective-C. También tiene algunas ideas inusuales, como el uso de opciones, declaraciones de protección, etc. intente) su código más seguro, pero más difícil de escribir. Me ha resultado muy difícil acostumbrarme.

¡Odié que la sintaxis siempre cambie de una versión a otra y Xcode ni siquiera admite la refactorización Swift! Los errores del compilador son horribles, completamente inútiles e incluso peores que con el Objetivo C

Además, las cosas nuevas siempre parecen difíciles, si ha estado utilizando una forma antigua durante mucho tiempo. “No puedes enseñarle a un perro viejo nuevos trucos”. De todos modos, Swift no desaparecerá, Apple cree que es un futuro de la programación de iOS, por lo que será mejor que se acostumbre lo antes posible.

Si y no.

Sí. Swift tiene una forma original en comparación con el objetivo-c.

No. Swift está mucho más cerca de otros lenguajes mayoritarios como C # y Java, por lo que la habilidad veloz aprendida se puede reutilizar más fácilmente en otros idiomas. Por lo tanto, para las personas con algún otro lenguaje de fondo Swift, Swift es más fácil que el objetivo-c (en realidad, el estilo de llamada al método Objective-c es algo realmente original).

Estoy completamente de acuerdo contigo. Swift es mucho más difícil que Objective-C. Me encanta Objective-C, pero aún no puedo acostumbrarme a Swift

More Interesting

¿Qué se necesita para optimizar una aplicación de iPhone para iPads?

¿Es posible convertir un teléfono en un iBeacon?

¿Cuál es la jerarquía de trabajo de desarrollo de aplicaciones iOS en una empresa de software?

Como principiante (desarrollando mi tercera aplicación de práctica ahora), el desarrollador de iOS irá a un gran Hackathon en 2 semanas, ¿en qué debería centrarme? ¿Qué es crítico?

¿Qué servicios puedo usar para crear un laboratorio de pruebas móvil personal para mi empresa?

¿Swift tiene clases prefabricadas?

¿Cómo hacen la transición los desarrolladores experimentados de Objective-C a Swift sin ninguna capacitación formal?

¿Cuál es la mejor manera de encontrar desarrolladores de iPad / iPhone en Londres?

Cómo encontrar los mejores desarrolladores de iOS en Nueva Jersey

¿Cuál es el salario de un desarrollador de iOS en India?

¿Cuánto debo dividir mi código en métodos / funciones separados más pequeños? A pesar de que ese fragmento de código solo se puede usar una vez y, como sabemos, siempre es posible que cada fragmento de código se pueda cambiar / editar en el futuro.

ejabberd: ¿Cómo funciona mod_archive_odbc?

¿Qué paquete de software se recomienda para una aplicación ios que utiliza el uso compartido de ubicaciones de geo-proximidad, mensajes en la aplicación e historial de uso del usuario?

¿Todavía necesita comprar un iPhone o iPad después del programa desarrollador iOS para construir y probar aplicaciones iOS?

¿Cómo se despacha el trabajo en un equipo de desarrollo de aplicaciones iOS?