Introducción al nuevo lenguaje de programación de Apple: Swift

Este año en la WWDC, la atención se centró tanto en iOS 8 y OS X Yosemite, que lo que debería haber sido la noticia más importante del evento, se subestimó bastante. Apple presentó al mundo el lenguaje de programación Swift. Esto, para el usuario final, es apenas una novedad. Sin embargo, para la comunidad de desarrolladores bien podría ser un cambio de juego. Ciertos lenguajes de programación tienen claras ventajas sobre otros lenguajes de programación, algunos son más rápidos, otros más eficientes, algunos son simplemente más limpios, algunos increíblemente simples. Apple es la última empresa en crear su propio lenguaje de programación después de Go (Golang) de Google y .Net Framework de Microsoft. Swift Programming Language afirma haber aprendido de estos lenguajes, sin dejar de ser fiel a su predecesor Objective C. Apple afirma haber creado el lenguaje de programación de alto nivel más rápido y robusto. Déjanos explicarte.

banner-rápido

¿Por qué necesitamos lenguajes de programación?

Hay varias formas de conseguir que un dispositivo haga «cosas». Cualquier dispositivo, desde los dispositivos portátiles modernos hasta las computadoras tradicionales, se puede hacer para hacer cosas usando la forma antigua del lenguaje de máquina, escribiendo en código de bytes sin procesar / lenguaje ensamblador, elaborando cada instrucción a mano; o puede confiar en lenguajes de alto nivel que le ayudarán a reducir algo del tedio. Es por eso que se hace más hincapié en acercar los lenguajes de desarrollo lo más posible al lenguaje normal. Entendemos que el nombre Swift atrae a más desarrolladores que espectadores, pero aún así simplificaremos la explicación para ayudarlo a comprender la tecnología que controlará las generaciones futuras de productos Apple.

Una introducción rápida: los dispositivos electrónicos son literalmente las cosas más tontas que conoce la humanidad, sin toda la programación, se reducirían a meros adornos. Lo que les da una función real es la programación. A un nivel muy básico, la electrónica necesita que se le diga, acción a acción, lo que deben hacer, eso es lo que solíamos hacer con las tarjetas perforadas y luego con el lenguaje de máquina. Luego avanzamos en el tiempo para desarrollar lenguajes que nos permitan comunicarnos con las máquinas de una manera relativamente más natural (sí, el código es en realidad una versión más simple de lo que podría ser). Escribíamos código, se compilaba en algo que la computadora entendiera y luego se ejecutaba. Entonces, para resumir, code-compile-execute.

¿Por qué Swift?

Ahora, puede imaginarse que la pregunta más pertinente es «¿Por qué?». C, el lenguaje es de los años 70, abriendo nuevos caminos en ese momento, luego vino su retoño, el Objetivo C en los años 80. Apple ha estado usando esa plataforma para el desarrollo desde entonces. La lógica dicta, «si no está roto, no lo arregles», y si ha estado funcionando durante 30 años seguidos, ¿cuál podría ser el problema? Bien que. Apple ha estado usando Objective C durante décadas. Es hora de algo más rápido, más poderoso, más fácil. Entra Swift.

De acuerdo con la libro electrónico oficial en Swift (disponible de forma gratuita en iTunes) “Swift es un nuevo lenguaje de programación para aplicaciones iOS y OS X que se basa en lo mejor de C y Objective-C, sin las limitaciones de la compatibilidad con C. Swift adopta patrones de programación seguros y agrega características modernas para hacer que la programación sea más fácil, más flexible y más divertida. La pizarra limpia de Swift, respaldada por los marcos Cocoa y Cocoa Touch maduros y muy apreciados, es una oportunidad para reinventar cómo funciona el desarrollo de software «.

Portada del libro Swift

¿Por qué es importante Swift?

Por mucho que a Apple le gustaría que creyeras en su innovación incondicional, ha existido la idea del lenguaje de «scripting». Los parámetros tradicionales de ejecución de compilación de código requieren que pueda ver su código en acción solo después de que se haya compilado. La compilación le muestra exactamente de lo que es capaz su código. Si su código tiene errores, la compilación resultará en un comportamiento errático o fallas. Luego, el trabajo del codificador será rastrear dónde se encuentra el error, solucionarlo y luego comenzar de nuevo. Este proceso es arduo y requiere mucho tiempo, pero es algo con lo que el mundo de la programación siempre ha vivido; es como siempre han sido las cosas. Los lenguajes de secuencias de comandos se ejecutan línea por línea para que pueda ver los resultados a medida que escribe, lo que elimina la necesidad de revisar su código en busca de errores en un momento posterior. Haciendo el proceso más rápido y mucho más fácil.

Hasta la fecha, los lenguajes de secuencias de comandos han tenido capacidades limitadas. Tome Python, por ejemplo, es increíblemente rápido, pero también se limita a cosas más simples con capacidades limitadas. Como un automóvil Forumla1, ideal para las carreras, no tanto para hacer la compra.

Si quieres crear un juego, Python no es tu entorno preferido. Sin embargo, Objective-C es (o C ++ si está en Windows). Ahora, Swift promete lo mejor de ambos (de hecho, muchos) mundos, inspirándose en Objective-C, Rust, Haskell, Ruby, Python, C #, CLU y muchos otros para enumerarlos (referencia: desarrollador / experto de Swift Chris Lattner). Swift pretende conservar las cosas buenas y perder las malas de las anteriores. En los puntos de referencia clave, su ejecución es más rápida que Python y mucho más rápida que Objective-C, por lo que ha tenido un buen comienzo.

¿Qué más hace?

Swift también ofrece un entorno visual en tiempo real llamado «área de juegos» donde puede ver la compilación de sus resultados en tiempo real, como un lenguaje de programación. Esto, basado en el diseño de la aplicación, puede reducir los procesos completos a unos pocos minutos, porque si algo sale mal, inmediatamente sabrá qué lo causó y podrá solucionarlo allí mismo. Es el equivalente de programación a corregir un error en una impresión frente a corregir una palabra subrayada en rojo a medida que avanza. Permitiéndole crear aplicaciones complejas más rápidamente.

Va un poco más profundo. Para los lenguajes de alto nivel, se le pedía que declarara y acceda a clases y bibliotecas para activar funciones, sin importar cuán básicas sean. en C ++ Necesitaría y para poder usar la entrada, salida y tipos de datos básicos en su código. En Swift, sin embargo, nada de eso es necesario. No necesitaría declarar ninguna biblioteca, ya que Swift administrará lo que necesita cada tipo de datos y función io (entrada / salida) y activará esa biblioteca en sí. Por lo tanto, imprimir algo tan simple como «Hola mundo», va de

#include<stdio.h>
int main(void)
{
  printf("Hello Worldn");
  return0;
}

a un simple:

println("Hello, world")

Esa es la totalidad del código que debe compilarse. También notará que el código no usa el temido «;» como signo universal de una declaración final.

¿Cuáles son los inconvenientes?

Ahora, la existencia de Swift no significa la muerte instantánea de Objective-C y todas sus formas. Las aplicaciones aún se pueden crear utilizando Objective-C y los usuarios nativos de Objective C no se sentirán completamente alienados ya que existen similitudes en estos entornos. Por supuesto, dado que Apple acaba de pasar 4 años trabajando en un nuevo lenguaje de programación, se centrarán en impulsar y apoyar a Swift, ahora y en el futuro. Quizás algún día borren Objective-C de los anales de los lenguajes de programación de Apple, pero ese día no es hoy. Aunque si sale un nuevo idioma, uno que es tan fácil de aprender y es mucho más rápido, entonces ¿por qué alguien se quedaría con Objective-C?

Por supuesto, existen algunas preocupaciones, la inmediata es la conmoción de la industria. Se han forjado carreras enteras en torno a enseñar a las personas cómo hacer aplicaciones para iPhone, esas carreras y sus estudiantes se han vuelto obsoletos de inmediato, habrá mucha reestructuración en ese frente. También obtendremos una nueva cosecha de adaptadores tempranos para Swift (Flappy Birds ya se creó con Swift), lo cual es bueno y malo. Es bueno que se inyecte sangre nueva en el organismo, lo malo es que esta sangre nueva no tendrá experiencia e inundará el mercado con aplicaciones mal hechas.

Pronto discutiremos el marco metálico de Apple, discutiendo sus ventajas y desventajas, especialmente en los juegos de iOS.

Conclusión

En caso de que se esté preguntando por qué no se anunció ningún hardware nuevo en la conferencia WWDC, lo remitiremos nuevamente a nuestra declaración anterior de que el hardware por sí solo no puede hacer nada hasta que el software detrás de él no funcione. Así que esta fue literalmente la noticia más importante de todos los tiempos. Que estamos obteniendo un nuevo manejo del software que cambiará la cara de todo el hardware en el futuro. Para obtener Swift, necesitará Xcode 6 beta y una ID de desarrollador.

Ponte rápido aquí