¿Cuánto tiempo le tomaría a uno dominar el lenguaje de programación Swift 4 para el desarrollo de aplicaciones iOS?

Eso depende de dónde empieces. Si no tienes experiencia en programación, te llevará aún más tiempo. Si tiene experiencia en otros idiomas y un nivel razonable de competencia como ingeniero de software, diría que al menos unos años.

Pero déjame detenerte allí mismo. No es una pregunta útil preguntar cuánto tiempo tomaría lograr el “dominio” de un lenguaje de programación, porque es más importante ser un gran desarrollador y crear un excelente software que saber todo sobre un lenguaje. Y eso ni siquiera representa el conocimiento de los diversos Frameworks específicos de Apple, que son necesarios para crear excelentes aplicaciones de iOS. Los marcos como CoreData y CoreGraphics aún tropiezan con desarrolladores experimentados, y mucho menos Metal, SceneKit, CoreML, ARKit y cualquier marco que Apple anuncie en WWDC 2018, 2019, etc.

Si desea lograr una sólida comprensión y competencia en Swift 4, y ya es un ingeniero de software sólido, planee tomar al menos varios años para aprender Swift y Apple Frameworks, e incluso entonces probablemente no será un “Maestro”. Solo comprométete a hacer lo mejor que puedas y estarás bien.

Preguntas como estas son difíciles de responder. Siempre tendrás las respuestas típicas.

Nunca lo dominarás. Piense en las personas que preguntan sobre otros pasatiempos o habilidades. ¿Cuánto tiempo lleva aprender la guitarra? Alguien responderá: “He estado jugando durante 25 años y todavía estoy aprendiendo. El aprendizaje no se detiene. ”- Si bien eso es muy cierto, no siempre es lo más útil.

Depende. Esta afirmación es extremadamente cierta. Es por eso que estas preguntas se hacen con tanta frecuencia. No hay una respuesta definitiva. ¿Nunca has programado un día en tu vida? ¿Te graduaste de Stanford con un doctorado en informática? ¿Estás planeando esforzarte todos los días o solo algunas veces a la semana? ¿Te apasiona el desarrollo de iOS o acabas de ver The Social Network y quieres crear el próximo Facebook? Hay demasiadas variables. – Realmente depende, pero eso aún no responde a su pregunta de cómo USTED desea que se responda.

Aquí está mi respuesta. Si bien estoy de acuerdo con las dos respuestas que mencioné anteriormente, en realidad diría 6 meses a 2 años para aprender a leer y escribir y 3-5 años para dominar. Aunque depende al 100% del tiempo que inviertas, estoy haciendo esas declaraciones suponiendo que aprenderás de forma paralela durante aproximadamente 6 meses a un año, visitando el tema al menos 2-3 veces a la semana. Luego, comience a adoptar un enfoque más serio, ya sea creando aplicaciones, haciendo trabajo independiente u obteniendo un puesto junior. Una vez que lo haga a tiempo completo (no solo pequeñas correcciones de errores, sino un desarrollo serio), comenzará a ver sus mayores mejoras.

Como otros han dicho, comienza a aprender ahora. Mire videos en línea, regístrese en una clase en Udemy y comience a jugar con Xcode. El dominio no debería ser tu objetivo, pero en algún punto del camino te darás cuenta de que te estás volviendo bastante bueno.

Y, para ser otra de las respuestas ambiguas abiertas, realmente todo depende de ti.

¿Maestro? Nunca.

La programación es amplia y profunda, nunca la dominarás.

Además, ‘dominar’ los lenguajes de programación es una pérdida de tiempo, necesita aprender a programar, no es lo mismo.

Si quieres hacer una aplicación para iOS, comienza . ¡Hazlo ahora! Abre Xcode, ahora mismo.

Eso dependería de dónde empiezas. Si comienza desde cero conocimiento de programación Puede llevar algún tiempo integrar algunos de los paradigmas utilizados. Si vienes de un fondo de Java / C / C ++, digamos, tendrás que adoptar la sintaxis y las sutilezas de Swift. No debería tomar tanto tiempo. Sin embargo, Swift es un lenguaje que se basa en Frameworks para hacer las cosas. Algunos de ellos pueden tomar mucho tiempo para dominar dado el hecho de que tienen una larga historia y también porque están cambiando constantemente de las versiones del sistema operativo. Pero, en general, la verdadera pregunta podría ser qué nivel de “dominio” se necesitaría para poder lograr * esto *. Y eso depende de * esto *. Espero que esto ayude.