Saltear al contenido principal

Empezando a programar con Swift para iOS Parte 1

En estos últimos meses del año estoy llevando un curso en particular sobre el lenguaje de programación  SWIFT para iOS, así que les comento que a partir de ahora mencionare algunos contenidos acerca de esté grandioso lenguaje que es mayormente diseño y lógica, ya que que Apple valora el diseño más que otra cosa, si no fuera así no sería una marca y legible y reconocida a nivel mundial.
Ahora en la actualidad sabemos que el uso de los dispositivos móviles se ha vuelto una tendencia entre las personas. Lo que nos hace avanzar mucho más rápido en nuestras actividades rutinarias. Ya que la tecnología ha avanzado al nivel de crear una dependencia, tanto laboral como social por parte de las personas y sus comunidades.
Así que las aplicaciones móviles permiten a los usuarios dar una interfaz gráfica y de mayor comodidad a esta información. Y las empresas buscan crear aplicaciones que integren las actividades diarias de las personas, que ofrezcan soluciones a sus necesidades y que posean una experiencia de usuario distintiva de las demás.
Todos sabemos que Apple es una empresa que dedicó gran parte de su tiempo en desarrollar un dispositivo que permita al usuario no solo poseer una distinción económica y social respecto a otros usuario, también buscaba otorgarles una experiencia de usuario cómoda y que les facilite la implementación de aplicaciones en sus vidas cotidianas. El desarrollo de aplicaciones móviles para usuario de iOS trata de buscar complacer al usuario dándole la información que requiere de forma rápida y agradable.

Y en este primer artículo hablaremos acerca de lenguaje SWIFT y el sistema iOS

¿Qué es iOS?
iOS es un sistema operativo móvil creado por la multinacional Apple Inc. Originalmente, desarrollado para el iPhone y, posteriormente, utilizado en dispositivos, como el iPod touch y el iPad. Es exclusivo de la marca Apple y no permite la instalación en terceros.
iOS se deriva de OS X (sistema operativo utilizado para las computadoras de Apple), que a su vez está basado en Darwin BSD; por lo tanto, es un sistema operativo Tipo Unix. iOS cuenta con cuatro capas de abstracción: la capa del núcleo del sistema operativo, la capa de “Servicios Principales”, la capa de “Medios” y la capa de “Cocoa Touch”.
El sistema operativo cuenta con una serie de características que permiten su identificación inmediata, entre ellas están:
Pantalla principal. Es en donde se ubican los íconos de las aplicaciones y el Dock, que está en la parte inferior de la pantalla, donde se pueden anclar aplicaciones de uso frecuente. Esto aparece al desbloquear el dispositivo o presionar el botón de inicio.
Carpetas. Posee un sistema simple de carpetas. Con solo arrastrar una aplicación sobre otra, se generará una carpeta para las aplicaciones, un título por defecto y se permitirá su edición.
Seguridad. Con el uso de la activación por iCloud, que solicita los datos de acceso de la cuenta del usuario original, el usuario puede bloquear y hasta inutilizar el equipo en caso de pérdida o ser víctima de robo. De igual manera, permite conocer la ubicación de vía GPS y mostrar mensajes en pantalla. No existen métodos comprobados para saltarse la activación del iCloud sin inutilizar el dispositivo. Es reconocido como el móvil más seguro del mercado.
Centro de notificaciones. El sistema de notificaciones fue rediseñado y, ahora, las notificaciones se colocan en un área por la cual se puede acceder mediante un deslice desde la barra de estado hacia abajo. Al hacer toque en una notificación, el sistema abrirá la aplicación.
Multitarea Opcional. Permite el uso de varias aplicaciones en simultáneo. Antiguamente, estaba reservado únicamente para aplicaciones por defecto del sistema, debido al consumo de la batería. Esto únicamente estaba permitido para dispositivos de tercera generación en adelante.
Game Center. Es la aplicación que integra todos los juegos móviles del dispositivo, permitiendo la integración entre usuarios y dando facilidades a los desarrolladores, como tablas de posición y tablas de puntuación. Esto permite, también, el uso de un servidor para juegos entre varios jugadores y el guardado de la información de los usuarios en la nube para poder acceder a ellos desde cualquier dispositivo Apple.
Tecnologías no admitidas. Las versiones anteriores a iOS 8 no permiten el uso de la Plataforma Java y Adobe Flash por su gran inseguridad, y su gran consumo de batería, medida muy criticada. Posteriormente, se permitió el uso de Adobe Flash para dispositivos iOS 8 y posteriores.

Flujo de vida de una aplicación iOS

Las aplicaciones poseen una sofisticada relación entre el código personalizado del desarrollador y el framework de iOS. El framework de iOS ofrece la infraestructura base que todas las aplicaciones necesitan para funcionar y el desarrollador personaliza la aplicación por medio del código para darle la visualización y la experiencia de usuario que se desea obtener. Para realizar esta tarea de forma efectiva, es de ayuda entender un poco sobre la infraestructura de iOS y cómo funciona.
El iOS frameworks se basa en patrones de diseño, tales como Modelo-VistaControlador y delegados en su implementación. Entender los patrones de diseño es parte crucial para poder crear una aplicación de forma exitosa.
La función “main” El punto de inicio, para todas las aplicaciones basadas en C, es la función “main” y, en las aplicaciones de iOS, no es la diferencia. En lo que difieren de las demás, es que en las aplicaciones de iOS no se escribe la función “main”, el Xcode crea esta función como parte de las bases de tu proyecto. Esta función nunca debe ser modificada salvo por algunas excepciones.
El “main” se encarga de dar control del UIKit Framework. La función “UIApplicationMain” se encarga de este proceso creando objetos base para la aplicación; además, carga la interfaz de usuario de un archivo StoryBoard llamando al código personalizado para realizar cualquier configuración inicial y poniendo el ciclo de la aplicación en movimiento.

Estructura de una aplicación

Al iniciar la aplicación, la función “UIApplicationMain” crea varios objetos clave y pone a andar la aplicación. En el corazón de toda aplicación iOS, está el objeto “UIApplication”, cuyo trabajo es facilitar las interacciones entre el sistema y otros objetos en la aplicación.
El siguiente diagrama muestra los objetos más comúnmente encontrados en Aplicaciones iOS. Lo principal que se puede notar es la arquitectura MVC. Este patrón separa los datos de la aplicación de la lógica del negocio y de la presentación visual de la información.
iso object estructura mvc

Estados de ejecución

Not running: La aplicación no ha sido iniciada o ha estado funcionando, y fue cerrada por el sistema.
Inactive: La aplicación se encuentra en primer plano, pero no está recibiendo eventos. Las aplicaciones usualmente se encuentran en este estado cuando transicionan entre estados.
Active: La aplicación se encuentra en primer plano y se encuentra recibiendo eventos. Este es el estado común para las aplicaciones en primer plano.
Background: La aplicación se encuentra en un plano posterior y se encuentra ejecutando código. Muchas aplicaciones se encuentran en este estado antes de pasar al estado Suspended.
Suspended: La aplicación se encuentra en un plano posterior y no se encuentra ejecutando código. El sistema mueve las aplicaciones a este estado automáticamente sin notificar sobre ello. Mientras una aplicación se encuentre en Suspended, la aplicación se conserva en memoria, pero no ejecutará ningún código. Si llega a haber una condición de poca memoria en el dispositivo, el sistema irá purgando aplicaciones sin aviso alguno para realizar La mayoría de las transiciones entre estados están acompañadas de un método que indica a la aplicación que la transición se ha realizado. Estos métodos podemos encontrarlos en el appDelegate.
flujo-aplicacion-iso-apple
 

Fuente de vídeo: Aprende Swift

Calificar

Blogger y Especialista SEO LATAM, me gusta ayudar creando contenidos sobre SEO, Marketing Online y Tendencias Digitales. Trabajo como apoyo en varias agencias SEO & digitales en todo LATAM, como también realizo asesorías y campañas SEO Internacional en Argentina, Colombia, Chile, México, Perú, España y Estados Unidos. Como profesional de SEO & Marketing Online, brindo todo lo mejor para cumplir los objetivos deseados para cada negocio y empresa a través de campañas orgánicas. Sígueme en Twitter @Fotosarnold.

También te puede interesar...
banner hablemos de seo
Suscríbete a Nuestro Newsletter

No te pierdas las últimas actualizaciones sobre SEO y Marketing Online, manténte notificado y entérate todo con las mejores noticias!

Comentarios

Esta entrada tiene 0 comentarios

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Volver arriba