Home » Reseñas » SwifterSwift, la colección de extensiones definitiva para Swift 3

SwifterSwift, la colección de extensiones definitiva para Swift 3

Omar Albeik, un nombre que seguramente no te sonará. Un desarrollador que se ha convertido, por méritos propios, en todo un ejemplo a seguir de superación personal, además de responsable de una de las librerías más famosas en la web GitHub: SwifterSwift, una colección de extensiones que mejoran la productividad a la hora de trabajar en Swift 3 con increíbles y muy prácticas funciones integradas en los tipos nativos, gracias al uso de extensiones.

Omar actualmente trabaja para Udacity, la conocida página de formación a nivel internacional, y se hizo experto en desarrollo para iOS con Swift en uno de los nanogrados que ofrece. Una persona que en menos de dos años y con la formación adecuada ha pasado de no conocer nada de desarrollo a ser trending número 1 en GitHub gracias al proyecto que hoy os presentamos. Un proyecto con más de 2.500 estrellas en su repositorio, más de 400 extensiones nativas y la posibilidad de aumentar tu productividad trabajando con Swift mucho más de lo que puedas imaginar.

La historia de Omar

Debido a la guerra, Omar tuvo que abandonar Aleppo, su ciudad natal en Siria, e instalarse en Estambul donde tuvo que salir adelante aprendiendo turco en menos de un año. A inicios de 2015 y con la necesidad de re-inventarse a sí mismo de alguna manera, decidió que estudiaría programación. Con 25 años tener que esperar 4 años para obtener su carrera no le apetecía mucho pero se matriculó en la Universidad de Bahçeşehir, aunque tuvo la idea de realizar cursos online para progresar más rápidamente y de una manera más eficiente. Así que se puso a estudiar el lenguaje Swift que le gustó, consiguiendo sacar su primera app: un juego casual en SpriteKit que hizo de código abierto llamado Spinny. Tras esto tuvo claro a lo que quería dedicarse y se apuntó al nanogrado de Udacity de desarrollo iOS que terminó en diciembre de ese año con un gran proyecto de una app de Nutrición llamada Nutrition Cal.

Omar Albeik

A partir de ahí, Udacity le abrió los ojos y entendió que la formación era lo más importante, por lo que hizo los nanogrados de desarrollo web, de desarrollo en Android y ahora está estudiando su cuarto grado de programación web avanzada. En mayo de 2016 supo que Udacity iba a conceder becas del nanogrado de Android completo a los 100 primeros que terminaran el grado básico, así que lo hizo en solo 5 días. Por lo tanto pudo acceder al nanogrado completo que tiene guardado para hacer tras terminar el de programación web avanzada. Y mientras, en marzo de 2016, comenzó trabajando con la propia Udacity como ingeniero a distancia y ahora está incorporado a un proyecto de la plataforma llamado Blitz.

Sin duda, todo un ejemplo a seguir en donde todo lo que aprende lo pone en práctica sacando lo mejor de sí mismo. Un ejemplo de cómo una persona con una situación personal muy dura, pudo re-inventarse y conseguir un puesto dentro de la propia Udacity como ingeniero de desarrollo. Como dice el título del artículo que tenéis más abajo, escrito por el propio Omar contando su historia, de 0 a desarrollador Swift número 1 de GitHub en menos de 2 años.

SwifterSwift

SwifterSwift tiene multitud de opciones e incluso se atreve a proporcionar extensiones para clases de Cocoa Touch compatibles con iOS o tvOS. Funciona en Swift 3 y requiere Xcode 8.1 o superior. Puede instalarse en tu proyecto bajando directamente la librería desde GitHub o usando los populares gestores CocoaPods o Carthage e incluso soporta Swift Package Manager de Swift de código abierto, pudiendo usarse por lo tanto incluso en Swift para Linux u otros sistemas.

Con SwifterSwift se incorporan automáticamente funciones no presentes en Swift por defecto que mejoran enormemente tu productividad y al ser extensiones, no notarás que son añadidos pues se incorporan directamente a los tipos nativos del sistema. Hay opciones para colecciones como arrays, tipos cadenas, numéricos, de fechas, tipos de CoreGraphics como CGFloat o CGPoint y lo más importante, para los tipos nativos de Cocoa Touch para apps como UIImage, UILabel, UITextField. De hecho, incluso los tipos de mayor nivel como UIView o UITableView también tienen nuevas funciones que mejoran su uso.

Estos son algunos ejemplos de las funciones que ofrece esta librería:

Extensiones de arrays:

Extensiones para tipos Fecha (Date):

Extensiones de cadenas

Extensiones para números:

UIView Extensions

CGPoint Extensions

UIAlertController

UIButton

UIImage

UITableView

Estos son solo algunos ejemplos de los más de 400 métodos que tienen las diferentes extensiones de esta interesante librería que os invitamos a probar que seguro mejorará mucho vuestra productividad.

Solo tenéis que acceder al enlace al final de la página donde está el repositorio de GitHub y bajarlo o seguir las instrucciones de instalación para los gestores de repositorios. Y espero que la historia de Omar os inspire como ha sucedido conmigo al leerla y he pensado que era interesante compartirla con todos vosotros. Un saludo y Good Apple Coding.

SwifterSwift | Repositorio en GitHub
From 0 to GitHub’s #1 Trending Swift Developer in Less than 2 Years | Artículo en Medium

Acerca de Julio César Fernández

Analista, consultor y periodista tecnológico, desarrollador, empresario, productor audiovisual, actor de doblaje e ingeniero de vídeo y audio.

Otras recomendaciones

iOS 9

iOS 9, novedades para desarrolladores de apps y juegos

Reseña de iOS 9 y todas las novedades que aporta a los desarrolladores, para saber cómo y de qué forma adaptar nuestra app a esta nueva versión. Descubre los más importantes cambios que aporta, cómo integrarlos en tu app y sacar el máximo partido de todas sus nuevas funciones.

  • Antonio Rodríguez

    Vaya crack!