Anuncio
Cuando Apple anunció Swift en 2014, la gente era legítimamente escéptica. Nadie sabía si se daría cuenta, y muchos cuestionaron la necesidad de otro lenguaje de programación para aprender.
Pero luego Swift se convirtió en código abierto en 2015, y aunque no explotó de la noche a la mañana, el lenguaje ha crecido constantemente. ¡Nunca ha habido un mejor momento para aprender! Hemos cubierto los tutoriales en línea de Swift, así como los tutoriales móviles de Swift, pero ¿a dónde ir una vez que tenga lo básico?
Una vez que se sienta cómodo con el idioma, considere probar sus habilidades con estos desafíos de codificación Swift. No solo son divertidos y estimulantes, sino que te darán la confianza que necesitas en tus propias habilidades.
Codewars es el mejor lugar para practicar desafíos de codificación de cualquier tipo, incluido Swift. Todo el sistema está gamificado, lo que significa que ganas experiencia y subes de nivel con cada desafío exitoso. Utiliza un sistema de clasificación similar al de Go: comienzas con 8 Kyu y avanzas hasta 1 Kyu.
Los desafíos (llamados "kata") se clasifican por su dificultad. Afortunadamente, hay miles de los desafíos disponibles, por lo que incluso si subes de nivel demasiado rápido, siempre puedes volver atrás y trabajar en los más fáciles. Los tipos de desafío incluyen algoritmos, tipos de datos, manipulación de cadenas y números, flujo de control, rompecabezas, lógica y más.
Lo que me encanta de Codewars es doble: primero, terminar un kata te permite ver las soluciones enviadas por otros usuarios, y en segundo lugar, los usuarios pueden crear sus propios katas para que la colección de desafíos crezca diario. Es realmente uno de los mejores juegos de codificación para agudizar tus habilidades Los 9 mejores juegos de codificación para desarrollar tus habilidades de programaciónLos juegos de codificación te ayudan a aprender más rápido con práctica práctica y experiencia. Además, ¡son una forma divertida de probar tus habilidades de programación! Lee mas .
Los desafíos de codificación Swift en CodinGame están más involucrados que los de Codewars, y eso es porque los desafíos de CodinGame están diseñados como juegos. Por ejemplo, el desafío "Poder de Thor" hace que muevas la posición de Thor para que pueda alcanzar la Luz del Poder en el menor número de pasos posible.
Los desafíos se clasifican por dificultad, que van desde fácil a medio a difícil a muy difícil. También hay acertijos creados por la comunidad que puedes probar cuando te quedas sin los oficiales. Tenga en cuenta que los desafíos de CodinGame son bastante difíciles, pero aprenderá mucho en la lucha.
Además de los desafíos en solitario, CodinGame también ofrece batallas de codificación multijugador de cinco minutos (donde intentas para completar tantos desafíos como sea posible) y concursos comunitarios más grandes (que ocurren cada mes o dos).
CodeChef ofrece desafíos que son como codificar problemas de tarea. Se dividen en categorías de Principiante, Fácil, Medio, Difícil y Desafío (más una categoría adicional llamada Igual para desafíos creados por el usuario).
Cientos de desafíos están disponibles, y pueden ser bastante difíciles. En comparación, la mayoría de los principiantes tienen más de 1,000 presentaciones exitosas, las medias tienen un promedio de cientos, pero las de desafío rara vez superan las 100 presentaciones exitosas. Es una buena práctica para novatos y veteranos por igual.
CodeChef también tiene concursos. No todos ofrecen premios, pero los concursos oficiales de CodeChef pueden tener premios de hasta $ 700.
Programador diario es una comunidad de Reddit para programadores que desean probar su valía con los acertijos de codificación más difíciles que encontrará en la web. Solía ser algo cotidiano, pero últimamente ha sido más o menos cada 2-3 días más o menos.
Lo bueno es que los desafíos están marcados como Fácil, Intermedio o Difícil. La mala noticia es que incluso los desafíos fáciles, particularmente los más recientes, pueden ser bastante difíciles para codificar a los principiantes. Sin embargo, siempre puede sumergirse en los archivos y volver a visitar viejos desafíos si lo desea.
Proyecto euler es casi como un conjunto autodirigido de desafíos de codificación Swift. Los archivos contienen 600 desafíos totales (llamados "Problemas"), pero no incluyen respuestas, soluciones o debates. Por lo general, es fácil saber cuándo resolvió el problema, pero a veces no lo es, y eso puede ser frustrante.
Además, los desafíos del Proyecto Euler son principalmente de naturaleza matemática y lógica. Puede resolver todo esto sin necesidad de programación. Sin embargo, como una forma de ejercitar tu cerebro, son fantásticos. Y dado que la programación se trata de resolver problemas del mundo real con código, esto es esencialmente lo mismo.
TopCoderLos desafíos son un poco diferentes del resto en este artículo, simplemente porque son concursos multijugador que rompecabezas en solitario. Debe registrarse con anticipación y luego completarlos antes de que se agote el tiempo.
La diferencia es que los desafíos de TopCoder vienen con algunos pagos de premios importantes. Vea en la captura de pantalla anterior que, al momento de escribir este artículo, hay cuatro desafíos en progreso con miles de dólares en juego. No está mal una vez que hayas perfeccionado tus habilidades. Es una buena manera de probar su preparación mundial como un codificador Swift.
El único inconveniente es que cada desafío solo admite un idioma específico o un grupo de idiomas. Si bien existen desafíos de codificación Swift, puede haber solo uno cada mes más o menos.
Coderbyte Puede que no sea tan exhaustivo como algunos de los otros sitios de desafío anteriores, pero sigue siendo una excelente manera de practicar Swift. Los desafíos (divididos en Fácil, Medio y Difícil) vienen con soluciones paso a paso oficiales y enviadas por el usuario, además de un área de discusión para preguntas.
Lo único de Coderbyte es su sección de Algoritmos, donde puede aprender todo tipo de algoritmos: recorridos de árboles, superposiciones de rango, maximización del precio de las acciones, suma de conjuntos, implementaciones de clasificación y más. Perfecto para novatos.
Desafortunadamente, los usuarios gratuitos solo tienen acceso a 10 desafíos y soluciones. Una cuenta premium cuesta $ 29 / mes (o $ 150 / año mucho más razonable). ¿Vale la pena? Bueno, ¡usa tus 10 desafíos gratis y compruébalo por ti mismo!
Algunas formas más de practicar Swift
Si Swift es su primer lenguaje de programación, tenga en cuenta nuestros consejos para aprendiendo a programar sin el estrés Cómo aprender a programar sin todo el estrésQuizás hayas decidido dedicarte a la programación, ya sea para una carrera o simplemente como un pasatiempo. ¡Excelente! Pero tal vez estés empezando a sentirte abrumado. No muy bien. Aquí hay ayuda para facilitar su viaje. Lee mas y nuestros consejos para dominar un nuevo lenguaje de programación 7 trucos útiles para dominar un nuevo lenguaje de programaciónEstá bien sentirse abrumado cuando aprende a codificar. Probablemente olvidará las cosas tan rápido como las aprenda. Estos consejos pueden ayudarlo a retener mejor toda esa información nueva. Lee mas . Al principio puede ser difícil, ¡pero mantente firme!
Una vez que te sientas cómodo con Swift, puedes seguir adelante con estas ideas de proyectos de aplicaciones iOS ¿Entonces quieres hacer aplicaciones para iPhone? 10 proyectos para principiantes¿Quieres crear aplicaciones para iPhone y iPad? Comience aprendiendo los conceptos básicos de Swift. Lee mas y estos ideas generales de proyectos de programación 5 ideas de proyectos para ayudarlo a aprender a programar más rápidoHay algunas maneras de facilitar la curva de aprendizaje para la programación. Ensúciate las manos y aprende más rápido con proyectos paralelos que puedes comenzar en cualquier momento. Juega un poco con estos cinco. Lee mas . Nada infunde más confianza en la programación que perseguir un proyecto real y tener éxito en él.
¿Cómo te gusta Swift como idioma? ¿Cuál es tu forma favorita de aprender y practicar programación? ¡Comparte con nosotros en los comentarios!
Joel Lee tiene un B.S. en informática y más de seis años de experiencia profesional en redacción Es el editor en jefe de MakeUseOf.