martes, 29 de noviembre de 2011

Introducción: Conceptos básicos

Ahora sí!, ya he saciado mi curiosidad al hacer mi primera aplicación, y sinceramente he visto que es muy simple, (al menos el Hello World) cualquiera lo podría hacer, siguiendo la receta, sin tener que saber programación previamente.

Así que vamos a ponernos un poco más serios…

Patrones de diseño

Según su documentación: El framework de Apple para las iPads soporta la creación de modelos de objetos que encapsulan toda la lógica de una aplicación, empleando el patrón de diseño Model-View-Controller. Y se le conoce como Core Data.

Para poder entenderlo es necesario haber adquirido la comprensión previa de algunos conceptos y fundamentos, sobre los cuales se ha creado:

MVC

 

Lenguaje de programación

Antes de escribir este párrafo, me encontraba ante un dilema de autor, me cuestionaba si quería incluir en este Blog, la enseñanza del lenguaje de programación Objetive-C, y sinceramente, creo que si lo hiciera perdería el objetivo; esto no quiere decir que no vaya a explicar lo que haga al estar codificando los ejemplos, pero desde un principio dije que la idea es que las personas que lean estos artículos, tengan los conocimientos básicos de programación y de preferencia de Objetive-C, si les interesa leer sobre esto visiten este sitio.

Este Blog pretende enfocarse más en la arquitectura, las tecnologías, patrones y principios que se requiere para desarrollar aplicaciones en la Mac. No sé que tanto pueda lograr el objetivo y tal vez en el camino me desvíe de vez en cuando, pero esa es la idea.

 

Administración de memoria.

Para este tipo de aplicaciones es sumamente importante que estemos consientes que la memoria debe ser cuidada en todo momento, liberándola de aquellos objetos que no sean necesarios. Los que hemos trabajado en .NET estamos acostumbrados a un colector de basura, que se encarga de liberar de la memoria todo lo que no está en uso, incluso podemos solicitar que lleve a cabo su labor a nuestra conveniencia.

El iOS de Apple no nos ofrece este servicio, sin embargo podemos hacer uso de las funcionalidades que nos ofrece el lenguaje Objetive-C o sacar la basura nosotros mismos.

 

Notificaciones

Una notificación es un mensaje enviado a uno o más objetos, y es la forma en que Objetive-C informa a los objetos que ha ocurrido un evento. Este servicio de mensajería se lleva a cabo a manera de emisión o transmisión que se origina en un objeto que puede ser un manejador o iniciador de dicho evento. Los objetos que están interesados en ese mensaje se denominan Observadores.

MVC2

Un observador puede cambiar su apariencia, comportamiento y estado en respuesta a uno de estos mensajes. El objeto que origina el mensaje no tiene por que saber la naturaleza de los observadores.

Esta relación entre el emisor y el receptor, sin que deban estar enterados de la naturaleza, evita la dependencia que existe entre los objetos creados en .NET; este mecanismo permite la reusabilidad de los objetos y la posibilidad de estar enterados de eventos con solo registrarse a ellos.

 

Delegados

Quienes han trabajado con .NET estarán familiarizados con los delegados; es un patrón poderoso, por medio del cual un objeto le permite a otro objeto actuar en su nombre. En este caso si se crea una relación, puesto que el delegado mantiene una referencia del objeto y se mantiene en comunicación con él. El delegado informa al objeto cuando va a responder a un evento o cuando ha respondido a él.

 

MVC

El patrón de diseño Model-View-Controller establece tres diferentes roles, que podrán ser asignados a las clases de la aplicación. Este patrón incluso determina la forma en que se deberán comunicar entre si los objetos de cada rol.

Las aplicaciones desarrolladas usando este patrón son más fáciles de adaptar, y tienden a ser más reusables, que otros patrones.

Un grupo de objetos de un rol, se denomina capa; a continuación les describiré cada capa:

Model

Contiene objetos cuya responsabilidad es la lógica y manipulación de los datos. Solo deben comunicarse con objetos de la capa Controller.

View

Este tipo de objetos son los que el usuario de la aplicación puede ver. Solo deben comunicarse con objetos de la capa Controller.

Controller

Es el intermediario entre los objetos del Model y los del View, se encarga de interpretar las acciones del usuario que son enviadas por el View o de los cambios que reporta la capa Model, para que se presenten en la capa View.

 

Fundamentos de Cocoa.

Esta es la parte más importante de todo lo que tengo que decirles en este breve articulo; para poder sumergirnos en esta nueva tecnología, es necesario que le dediquemos algo de tiempo a conocer lo que hay en este vasto paisaje denominado Cocoa.

 

Comentario Final

Para fines prácticos, a partir de este momento pienso concentrarme en el desarrollo de aplicaciones, cubriendo los ciclos relacionados a crear una aplicación.

No puedo decir que no habrá teoría, porque no es posible omitirla, sobre todo si estamos empezando, no creen?

Frases de manzanas: “Even if I knew that tomorrow the world would go to pieces, I would still plant my apple tree.”  Martin Luther.

No hay comentarios:

Publicar un comentario