SlideShare une entreprise Scribd logo
1  sur  19
Télécharger pour lire hors ligne
Swift, el nuevo lenguaje de programación de Apple
Mario  Sevilla  Montoya
@ M a r i o S e v _ i 4 s
@ M a r i o S e v _ i 4 sS w i f t ,    e l    n u e v o    l e n g u a j e    d e    p ro g r a m a c i ó n    d e   A p p l e
Mario
Sevilla
Montoya
Desarrollador de aplicaciones iOS
y docente
Docente de aplicaciones iOS en
Desarrollador de aplicaciones iOS en
Curso de programación en Swift
Ponente en Congreso de Móviles
Curso de programación iOS LEXcode
Curso de iniciación a la programación en Objective-C
Curso de bases de datos orientadas al móvil
ECODEGROUP.COM
RabbitGoogle PageSpeed
@ M a r i o S e v _ i 4 sS w i f t ,    e l    n u e v o    l e n g u a j e    d e    p ro g r a m a c i ó n    d e   A p p l e
ECODEGROUP.COM
¿Qué vamos a ver?
- Introducción a Swift
- Comparativa entre Objective-C y Swift
• Potencia
• Comprensión sintáctica
• Seguridad
• Interactivo
- Conclusiones finales
- ¿Qué lenguaje utilizo para hacer Apps?
@ M a r i o S e v _ i 4 sS w i f t ,    e l    n u e v o    l e n g u a j e    d e    p ro g r a m a c i ó n    d e   A p p l e
ECODEGROUP.COM
Introducción a Swift
- Swift es el lenguaje de programación que Apple lanzó en la WWDC 14 y
que, sin duda, se está convirtiendo en el lenguaje de referencia en el
desarrollo de aplicaciones iOS, OS X, watchOS y tvOS.
- Este año ha sido mejorado y se ha presentado la versión 2 del lenguaje.
Además, se anunció que va a ser Open Source, con lo que se abrirá a más
plataformas y se podrá convertir en un lenguaje mucho más extendido
en el futuro.
@ M a r i o S e v _ i 4 sS w i f t ,    e l    n u e v o    l e n g u a j e    d e    p ro g r a m a c i ó n    d e   A p p l e
ECODEGROUP.COM
- Esta versión 2 del lenguaje presenta numerosos cambios en cuanto a la
sintaxis y mejoras en funciones internas del propio lenguaje.
- Han añadido más sentencias para controlar el flujo de control: do, guard,
defer y repeat.
- También han añadido un gestor de errores, try/catch, que hace más
llevadero el control de errores de nuestra aplicación.
- Todas estas mejoras las veremos en el próximo Curso de Programación
con Swift 2 en EscuelaIT.
@ M a r i o S e v _ i 4 sS w i f t ,    e l    n u e v o    l e n g u a j e    d e    p ro g r a m a c i ó n    d e   A p p l e
ECODEGROUP.COM
Comparativa entre Objective-C y Swift
- Potencia
Swift tiene un rendimiento superior a Objective-C, simplemente,
porque Swift está más cerca del hardware que Objective-C.
Esto es así porque que Swift tiene menos capas de abstracción que
Objective-C, que es súper clase de C.
@ M a r i o S e v _ i 4 sS w i f t ,    e l    n u e v o    l e n g u a j e    d e    p ro g r a m a c i ó n    d e   A p p l e
ECODEGROUP.COM
Complex object sort
Swift
Objective-C
Python 1x
2,8x
3,9x
@ M a r i o S e v _ i 4 sS w i f t ,    e l    n u e v o    l e n g u a j e    d e    p ro g r a m a c i ó n    d e   A p p l e
ECODEGROUP.COM
RC4 encryption
Swift
Objective-C
Python 1x
127x
220x
@ M a r i o S e v _ i 4 sS w i f t ,    e l    n u e v o    l e n g u a j e    d e    p ro g r a m a c i ó n    d e   A p p l e
ECODEGROUP.COM
- Comprensión sintáctica
En cuanto a comprensión Objective-C tiene ventaja sobre Swift.
En Objective-C la sintaxis en métodos ayuda mucho a desarrollar
documentación en la propia programación. Todo se define de forma
muy descriptiva y eso es una ventaja a la hora de realizar proyectos
entre equipos de trabajo.
El punto positivo que tiene Swift, en este apartado, es que es más fácil
iniciarse a la programación por ser similar a los lenguajes de
programación más extendidos.
@ M a r i o S e v _ i 4 sS w i f t ,    e l    n u e v o    l e n g u a j e    d e    p ro g r a m a c i ó n    d e   A p p l e
ECODEGROUP.COM
En Swift se manejan las cadenas con mayor facilidad. A diferencia de
Objective-C, el manejo de cadenas con Swift es mucho más intuitivo y
directo. Simplemente utilizando “==” comparamos cadenas y podremos
concatenarlas con “+=”.
También podemos crear Generics, una especie de función reutilizable a
la que podemos añadir diferentes tipos de variables como parámetros
para realizar una tarea concreta.
@ M a r i o S e v _ i 4 sS w i f t ,    e l    n u e v o    l e n g u a j e    d e    p ro g r a m a c i ó n    d e   A p p l e
ECODEGROUP.COM
- Seguridad
En cuanto a seguridad Swift está muy por delante de Objective-C.
En Objective-C, errores como no controlar los punteros vacíos,
variables con valor no inicializado, desbordamiento, la gestión de la
memoria, etc. hacían que se cortara la ejecución de la aplicación sin que
el usuario tuviera ningún tipo de aviso.
En Swift no se pueden dar estos errores debido a que debemos que
cumplir una serie de requisitos a la hora de trabajar con este lenguaje.
Además, muchos de los errores anteriores son alertados al
desarrollador en tiempo de compilación.
@ M a r i o S e v _ i 4 sS w i f t ,    e l    n u e v o    l e n g u a j e    d e    p ro g r a m a c i ó n    d e   A p p l e
ECODEGROUP.COM
Rabbit para Google PageSpeed web test
Swift
@ M a r i o S e v _ i 4 sS w i f t ,    e l    n u e v o    l e n g u a j e    d e    p ro g r a m a c i ó n    d e   A p p l e
ECODEGROUP.COM
- Interactivo
Gracias a la mejora en rendimiento de Swift desarrollaron Playground
en Xcode 6.
Playground es una herramienta que permite escribir código y ver el
resultado en tiempo real.
No sólo podemos ver valores que contienen las variables después de
realizar cálculos con ellas, además, podemos ver gráficas o, incluso,
animaciones.
@ M a r i o S e v _ i 4 sS w i f t ,    e l    n u e v o    l e n g u a j e    d e    p ro g r a m a c i ó n    d e   A p p l e
ECODEGROUP.COM
Playground en Xcode
@ M a r i o S e v _ i 4 sS w i f t ,    e l    n u e v o    l e n g u a j e    d e    p ro g r a m a c i ó n    d e   A p p l e
ECODEGROUP.COM
Demo
Playground
@ M a r i o S e v _ i 4 sS w i f t ,    e l    n u e v o    l e n g u a j e    d e    p ro g r a m a c i ó n    d e   A p p l e
ECODEGROUP.COM
Conclusiones finales
Las grandes ventajas que ofrece trabajar con Swift son la velocidad y la
seguridad.
En proyectos grandes, la velocidad de compilado facilita el desarrollo y
los errores en tiempo de ejecución se minimizan.
@ M a r i o S e v _ i 4 sS w i f t ,    e l    n u e v o    l e n g u a j e    d e    p ro g r a m a c i ó n    d e   A p p l e
ECODEGROUP.COM
¿Qué lenguaje utilizo para hacer Apps?
Swift es un lenguaje que seguirá evolucionando y cambiando a lo largo
de los próximos meses y años ya que es un lenguaje que sólo tiene un
año de vida.
A día de hoy, Swift es el presente y, si Apple no dice lo contrario en los
próximos meses, futuro del desarrollo de software de todos los
productos de Apple.
@ M a r i o S e v _ i 4 sS w i f t ,    e l    n u e v o    l e n g u a j e    d e    p ro g r a m a c i ó n    d e   A p p l e
ECODEGROUP.COM
La noticia de que el lenguaje va a ser Open Source aviva, aún más, la
evolución y expansión de Swift.
Si empiezas a programar aplicaciones iOS, OS X, watchOS o tvOS,
recomiendo que lo hagas en Swift y no en Objective-C.
Swift

Contenu connexe

Tendances

Cuadro comparativo de lenguajes de programación
Cuadro comparativo de lenguajes de programaciónCuadro comparativo de lenguajes de programación
Cuadro comparativo de lenguajes de programación
K Manuel TN
 
Funciones mac os
Funciones mac osFunciones mac os
Funciones mac os
yandry loor
 
Android GPS Tutorial
Android GPS TutorialAndroid GPS Tutorial
Android GPS Tutorial
Ahsanul Karim
 

Tendances (20)

Cuadro comparativo de lenguajes de programación
Cuadro comparativo de lenguajes de programaciónCuadro comparativo de lenguajes de programación
Cuadro comparativo de lenguajes de programación
 
Presentacion Android
Presentacion AndroidPresentacion Android
Presentacion Android
 
La tecnología procesos y productos
La tecnología procesos y productosLa tecnología procesos y productos
La tecnología procesos y productos
 
Swift
SwiftSwift
Swift
 
Cuadro comparativo lenguajes
Cuadro comparativo lenguajesCuadro comparativo lenguajes
Cuadro comparativo lenguajes
 
Diapositiva de linux
Diapositiva de linuxDiapositiva de linux
Diapositiva de linux
 
sistemas operativos moviles
sistemas operativos movilessistemas operativos moviles
sistemas operativos moviles
 
Diseño de Algoritmos
 Diseño de Algoritmos Diseño de Algoritmos
Diseño de Algoritmos
 
Trabajo clasificacion de sistema operativo laye
Trabajo clasificacion de sistema operativo layeTrabajo clasificacion de sistema operativo laye
Trabajo clasificacion de sistema operativo laye
 
Metodologías De Diseño Y Desarrollo De Sistemas De Información
Metodologías De Diseño Y Desarrollo De Sistemas De InformaciónMetodologías De Diseño Y Desarrollo De Sistemas De Información
Metodologías De Diseño Y Desarrollo De Sistemas De Información
 
Ensayo realidad aumentada by luz marina franco
Ensayo realidad aumentada by luz marina francoEnsayo realidad aumentada by luz marina franco
Ensayo realidad aumentada by luz marina franco
 
Mapa mental sgbd
Mapa mental   sgbdMapa mental   sgbd
Mapa mental sgbd
 
Presentation of wireless todo list app
Presentation of wireless todo list appPresentation of wireless todo list app
Presentation of wireless todo list app
 
Funciones mac os
Funciones mac osFunciones mac os
Funciones mac os
 
Android GPS Tutorial
Android GPS TutorialAndroid GPS Tutorial
Android GPS Tutorial
 
Programacion interactiva
Programacion interactivaProgramacion interactiva
Programacion interactiva
 
PROGRAMACIÓN DE DISPOSITIVOS MÓVILES
PROGRAMACIÓN DE DISPOSITIVOS MÓVILESPROGRAMACIÓN DE DISPOSITIVOS MÓVILES
PROGRAMACIÓN DE DISPOSITIVOS MÓVILES
 
SISTEMA OPERATIVO IOS
SISTEMA OPERATIVO IOSSISTEMA OPERATIVO IOS
SISTEMA OPERATIVO IOS
 
Procesos De Ingenieria Del Software
Procesos De Ingenieria Del SoftwareProcesos De Ingenieria Del Software
Procesos De Ingenieria Del Software
 
Software en la actualidad
Software en la actualidadSoftware en la actualidad
Software en la actualidad
 

En vedette

Análisis de datos con Python
Análisis de datos con PythonAnálisis de datos con Python
Análisis de datos con Python
goyodiaz
 
“Capitalismo y esquizofrenia” gilles deleuze y félix guattari.
“Capitalismo y esquizofrenia”  gilles deleuze y félix guattari.“Capitalismo y esquizofrenia”  gilles deleuze y félix guattari.
“Capitalismo y esquizofrenia” gilles deleuze y félix guattari.
Eleonora_que_ignora
 

En vedette (20)

Introducción a Windows 10
Introducción a Windows 10Introducción a Windows 10
Introducción a Windows 10
 
Swift Programming Language
Swift Programming LanguageSwift Programming Language
Swift Programming Language
 
Análisis de datos con Python
Análisis de datos con PythonAnálisis de datos con Python
Análisis de datos con Python
 
Repeticiones
RepeticionesRepeticiones
Repeticiones
 
Alternativas o condicionales en la programación
Alternativas o condicionales en la programaciónAlternativas o condicionales en la programación
Alternativas o condicionales en la programación
 
McAdams- Resume
McAdams- ResumeMcAdams- Resume
McAdams- Resume
 
Swift sin hype y su importancia en el 2017
 Swift sin hype y su importancia en el 2017  Swift sin hype y su importancia en el 2017
Swift sin hype y su importancia en el 2017
 
Hola Swift
Hola SwiftHola Swift
Hola Swift
 
Introduccion a Data Science
Introduccion a Data ScienceIntroduccion a Data Science
Introduccion a Data Science
 
Tutorial de Lenguaje de Programación Swift
Tutorial de Lenguaje de Programación SwiftTutorial de Lenguaje de Programación Swift
Tutorial de Lenguaje de Programación Swift
 
Swift Programming Language
Swift Programming LanguageSwift Programming Language
Swift Programming Language
 
Swift programming language
Swift programming languageSwift programming language
Swift programming language
 
Curso iOS
Curso iOSCurso iOS
Curso iOS
 
Curso Swift
Curso SwiftCurso Swift
Curso Swift
 
Algoritmo
AlgoritmoAlgoritmo
Algoritmo
 
Algoritmo fundamentos de la programación
Algoritmo   fundamentos de la programaciónAlgoritmo   fundamentos de la programación
Algoritmo fundamentos de la programación
 
El rizoma deleuze (jaime reyes-f)
El rizoma   deleuze (jaime reyes-f)El rizoma   deleuze (jaime reyes-f)
El rizoma deleuze (jaime reyes-f)
 
“Capitalismo y esquizofrenia” gilles deleuze y félix guattari.
“Capitalismo y esquizofrenia”  gilles deleuze y félix guattari.“Capitalismo y esquizofrenia”  gilles deleuze y félix guattari.
“Capitalismo y esquizofrenia” gilles deleuze y félix guattari.
 
Introduction to Swift programming language.
Introduction to Swift programming language.Introduction to Swift programming language.
Introduction to Swift programming language.
 
Introducción a los lenguajes - Fundamentos de la Programación
Introducción a los lenguajes - Fundamentos de la ProgramaciónIntroducción a los lenguajes - Fundamentos de la Programación
Introducción a los lenguajes - Fundamentos de la Programación
 

Similaire à Swift

Cuadro comparativo de los lenguajes de desarrollo 04
Cuadro comparativo de los lenguajes de desarrollo 04Cuadro comparativo de los lenguajes de desarrollo 04
Cuadro comparativo de los lenguajes de desarrollo 04
marioorozco2g
 
Universidad nacional de chimborazo
Universidad nacional de chimborazoUniversidad nacional de chimborazo
Universidad nacional de chimborazo
Jesica Pérez
 
Presentación lenguajes de programación
Presentación lenguajes de programaciónPresentación lenguajes de programación
Presentación lenguajes de programación
zanahoria2015
 

Similaire à Swift (20)

Los lenguajes de programacion en el campo laboral y productivo sayyid valder...
Los lenguajes de programacion en el campo laboral y productivo  sayyid valder...Los lenguajes de programacion en el campo laboral y productivo  sayyid valder...
Los lenguajes de programacion en el campo laboral y productivo sayyid valder...
 
Act.4 swift
Act.4   swiftAct.4   swift
Act.4 swift
 
Los Lenguajes de Programacion en Campo Laboral y Productivo -Sayyid Valderrama
Los Lenguajes de Programacion en Campo Laboral y Productivo -Sayyid ValderramaLos Lenguajes de Programacion en Campo Laboral y Productivo -Sayyid Valderrama
Los Lenguajes de Programacion en Campo Laboral y Productivo -Sayyid Valderrama
 
¿Conoces swift?
¿Conoces swift?¿Conoces swift?
¿Conoces swift?
 
Guia teorica
Guia teoricaGuia teorica
Guia teorica
 
Cuadro comparativo de los lenguajes de desarrollo 04
Cuadro comparativo de los lenguajes de desarrollo 04Cuadro comparativo de los lenguajes de desarrollo 04
Cuadro comparativo de los lenguajes de desarrollo 04
 
Programación de Aplicaciones Móviles
Programación de Aplicaciones MóvilesProgramación de Aplicaciones Móviles
Programación de Aplicaciones Móviles
 
Universidad nacional de chimborazo
Universidad nacional de chimborazoUniversidad nacional de chimborazo
Universidad nacional de chimborazo
 
aplicaciones móviles
aplicaciones móviles aplicaciones móviles
aplicaciones móviles
 
Curso CódigoK Back End (PHP + Laravel)
Curso CódigoK Back End (PHP + Laravel)Curso CódigoK Back End (PHP + Laravel)
Curso CódigoK Back End (PHP + Laravel)
 
Como desarrollar aplicaciones moviles, que debemos tener en cuenta?
Como desarrollar aplicaciones moviles, que debemos tener en cuenta?Como desarrollar aplicaciones moviles, que debemos tener en cuenta?
Como desarrollar aplicaciones moviles, que debemos tener en cuenta?
 
Programacion de aplicaciones moviles
Programacion de aplicaciones movilesProgramacion de aplicaciones moviles
Programacion de aplicaciones moviles
 
Programacion de aplicaciones moviles
Programacion de aplicaciones movilesProgramacion de aplicaciones moviles
Programacion de aplicaciones moviles
 
Aprende a Programar: Introducción
Aprende a Programar: IntroducciónAprende a Programar: Introducción
Aprende a Programar: Introducción
 
Presentación informatica semana 4
Presentación informatica semana 4Presentación informatica semana 4
Presentación informatica semana 4
 
Presentación lenguajes de programación
Presentación lenguajes de programaciónPresentación lenguajes de programación
Presentación lenguajes de programación
 
Presentación lenguajes de programación
Presentación lenguajes de programaciónPresentación lenguajes de programación
Presentación lenguajes de programación
 
Presentación lenguajes de programación
Presentación lenguajes de programaciónPresentación lenguajes de programación
Presentación lenguajes de programación
 
Lenguaje de programación C - Cleibery.
Lenguaje de programación C - Cleibery.Lenguaje de programación C - Cleibery.
Lenguaje de programación C - Cleibery.
 
Atix21
Atix21Atix21
Atix21
 

Dernier

redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
nicho110
 

Dernier (10)

Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXI
 
Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos Basicos
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 

Swift

  • 1. Swift, el nuevo lenguaje de programación de Apple Mario  Sevilla  Montoya @ M a r i o S e v _ i 4 s
  • 2. @ M a r i o S e v _ i 4 sS w i f t ,   e l   n u e v o   l e n g u a j e   d e   p ro g r a m a c i ó n   d e  A p p l e Mario Sevilla Montoya Desarrollador de aplicaciones iOS y docente Docente de aplicaciones iOS en Desarrollador de aplicaciones iOS en Curso de programación en Swift Ponente en Congreso de Móviles Curso de programación iOS LEXcode Curso de iniciación a la programación en Objective-C Curso de bases de datos orientadas al móvil ECODEGROUP.COM RabbitGoogle PageSpeed
  • 3. @ M a r i o S e v _ i 4 sS w i f t ,   e l   n u e v o   l e n g u a j e   d e   p ro g r a m a c i ó n   d e  A p p l e ECODEGROUP.COM ¿Qué vamos a ver? - Introducción a Swift - Comparativa entre Objective-C y Swift • Potencia • Comprensión sintáctica • Seguridad • Interactivo - Conclusiones finales - ¿Qué lenguaje utilizo para hacer Apps?
  • 4. @ M a r i o S e v _ i 4 sS w i f t ,   e l   n u e v o   l e n g u a j e   d e   p ro g r a m a c i ó n   d e  A p p l e ECODEGROUP.COM Introducción a Swift - Swift es el lenguaje de programación que Apple lanzó en la WWDC 14 y que, sin duda, se está convirtiendo en el lenguaje de referencia en el desarrollo de aplicaciones iOS, OS X, watchOS y tvOS. - Este año ha sido mejorado y se ha presentado la versión 2 del lenguaje. Además, se anunció que va a ser Open Source, con lo que se abrirá a más plataformas y se podrá convertir en un lenguaje mucho más extendido en el futuro.
  • 5. @ M a r i o S e v _ i 4 sS w i f t ,   e l   n u e v o   l e n g u a j e   d e   p ro g r a m a c i ó n   d e  A p p l e ECODEGROUP.COM - Esta versión 2 del lenguaje presenta numerosos cambios en cuanto a la sintaxis y mejoras en funciones internas del propio lenguaje. - Han añadido más sentencias para controlar el flujo de control: do, guard, defer y repeat. - También han añadido un gestor de errores, try/catch, que hace más llevadero el control de errores de nuestra aplicación. - Todas estas mejoras las veremos en el próximo Curso de Programación con Swift 2 en EscuelaIT.
  • 6. @ M a r i o S e v _ i 4 sS w i f t ,   e l   n u e v o   l e n g u a j e   d e   p ro g r a m a c i ó n   d e  A p p l e ECODEGROUP.COM Comparativa entre Objective-C y Swift - Potencia Swift tiene un rendimiento superior a Objective-C, simplemente, porque Swift está más cerca del hardware que Objective-C. Esto es así porque que Swift tiene menos capas de abstracción que Objective-C, que es súper clase de C.
  • 7. @ M a r i o S e v _ i 4 sS w i f t ,   e l   n u e v o   l e n g u a j e   d e   p ro g r a m a c i ó n   d e  A p p l e ECODEGROUP.COM Complex object sort Swift Objective-C Python 1x 2,8x 3,9x
  • 8. @ M a r i o S e v _ i 4 sS w i f t ,   e l   n u e v o   l e n g u a j e   d e   p ro g r a m a c i ó n   d e  A p p l e ECODEGROUP.COM RC4 encryption Swift Objective-C Python 1x 127x 220x
  • 9. @ M a r i o S e v _ i 4 sS w i f t ,   e l   n u e v o   l e n g u a j e   d e   p ro g r a m a c i ó n   d e  A p p l e ECODEGROUP.COM - Comprensión sintáctica En cuanto a comprensión Objective-C tiene ventaja sobre Swift. En Objective-C la sintaxis en métodos ayuda mucho a desarrollar documentación en la propia programación. Todo se define de forma muy descriptiva y eso es una ventaja a la hora de realizar proyectos entre equipos de trabajo. El punto positivo que tiene Swift, en este apartado, es que es más fácil iniciarse a la programación por ser similar a los lenguajes de programación más extendidos.
  • 10. @ M a r i o S e v _ i 4 sS w i f t ,   e l   n u e v o   l e n g u a j e   d e   p ro g r a m a c i ó n   d e  A p p l e ECODEGROUP.COM En Swift se manejan las cadenas con mayor facilidad. A diferencia de Objective-C, el manejo de cadenas con Swift es mucho más intuitivo y directo. Simplemente utilizando “==” comparamos cadenas y podremos concatenarlas con “+=”. También podemos crear Generics, una especie de función reutilizable a la que podemos añadir diferentes tipos de variables como parámetros para realizar una tarea concreta.
  • 11. @ M a r i o S e v _ i 4 sS w i f t ,   e l   n u e v o   l e n g u a j e   d e   p ro g r a m a c i ó n   d e  A p p l e ECODEGROUP.COM - Seguridad En cuanto a seguridad Swift está muy por delante de Objective-C. En Objective-C, errores como no controlar los punteros vacíos, variables con valor no inicializado, desbordamiento, la gestión de la memoria, etc. hacían que se cortara la ejecución de la aplicación sin que el usuario tuviera ningún tipo de aviso. En Swift no se pueden dar estos errores debido a que debemos que cumplir una serie de requisitos a la hora de trabajar con este lenguaje. Además, muchos de los errores anteriores son alertados al desarrollador en tiempo de compilación.
  • 12. @ M a r i o S e v _ i 4 sS w i f t ,   e l   n u e v o   l e n g u a j e   d e   p ro g r a m a c i ó n   d e  A p p l e ECODEGROUP.COM Rabbit para Google PageSpeed web test Swift
  • 13. @ M a r i o S e v _ i 4 sS w i f t ,   e l   n u e v o   l e n g u a j e   d e   p ro g r a m a c i ó n   d e  A p p l e ECODEGROUP.COM - Interactivo Gracias a la mejora en rendimiento de Swift desarrollaron Playground en Xcode 6. Playground es una herramienta que permite escribir código y ver el resultado en tiempo real. No sólo podemos ver valores que contienen las variables después de realizar cálculos con ellas, además, podemos ver gráficas o, incluso, animaciones.
  • 14. @ M a r i o S e v _ i 4 sS w i f t ,   e l   n u e v o   l e n g u a j e   d e   p ro g r a m a c i ó n   d e  A p p l e ECODEGROUP.COM Playground en Xcode
  • 15. @ M a r i o S e v _ i 4 sS w i f t ,   e l   n u e v o   l e n g u a j e   d e   p ro g r a m a c i ó n   d e  A p p l e ECODEGROUP.COM Demo Playground
  • 16. @ M a r i o S e v _ i 4 sS w i f t ,   e l   n u e v o   l e n g u a j e   d e   p ro g r a m a c i ó n   d e  A p p l e ECODEGROUP.COM Conclusiones finales Las grandes ventajas que ofrece trabajar con Swift son la velocidad y la seguridad. En proyectos grandes, la velocidad de compilado facilita el desarrollo y los errores en tiempo de ejecución se minimizan.
  • 17. @ M a r i o S e v _ i 4 sS w i f t ,   e l   n u e v o   l e n g u a j e   d e   p ro g r a m a c i ó n   d e  A p p l e ECODEGROUP.COM ¿Qué lenguaje utilizo para hacer Apps? Swift es un lenguaje que seguirá evolucionando y cambiando a lo largo de los próximos meses y años ya que es un lenguaje que sólo tiene un año de vida. A día de hoy, Swift es el presente y, si Apple no dice lo contrario en los próximos meses, futuro del desarrollo de software de todos los productos de Apple.
  • 18. @ M a r i o S e v _ i 4 sS w i f t ,   e l   n u e v o   l e n g u a j e   d e   p ro g r a m a c i ó n   d e  A p p l e ECODEGROUP.COM La noticia de que el lenguaje va a ser Open Source aviva, aún más, la evolución y expansión de Swift. Si empiezas a programar aplicaciones iOS, OS X, watchOS o tvOS, recomiendo que lo hagas en Swift y no en Objective-C.