mislata
Mislata
Aprende a programar tus propias aplicaciones para Iphone parte 3
Este es el tercer tutorial para aprender a hacer tus propias aplicaciones para iPhone
Hoy vamos a realizar nuestro primer programa trabajando con clases y métodos. Supongamos que tenemos que escribir un programa para trabajar con fracciones, sin los conocimientos necesarios sobre clases, nuestro programa sería algo similar a esto:
// Programa simple para trabajar con fracciones
#import <Foundation/Foundation.h>
int main (int argc, char *argv[])
{
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
int numerador = 1;
int denominador = 3;
NSLog (”La fracción es %i/%i”, numerador, denominador);
[pool drain];
return 0;
}
En este programa la fracción esta definida por el numerador y denominador, variables a las cuales se les asigna los valores 1 y 3, este es el mayor problema precisamente de implementar nuestro código de esta manera, ya que si necesitaramos almacenar múltiples variables deberíamos definir un par de variables para cada fracción. Mediante el uso de clases podemos definir una fracción como una entidad y referirnos únicamente a un denominador y a un numerador.
// Programa para trabajar con fracciones – trabajando con clases
#import <Foundation/Foundation.h>
// —–INTERFACE —–
interface Fraccion: NSObject
{
int numerador;
int denominador;
}
-(void) imprimir
-(void) setNumerador: int n;
-(void) setDenominador: int d;
end
//—-IMPLEMENTACION—–
implementation Fraccion
-(void) imprimir
{
NSLog(”%i/%i, numerador, denominador);
}
-(void) setNumerador: int n
{
numerador = n;
}
-(void) setDenominador: int d
{
denominador = d;
}
end
//—-PROGRAMA—-
int main (int argc, char *argv[])
{
NSAutoreleasePool * pool = [NSAutoreleasePool alloc] init];
Fraccion *miFraccion;
// Creamos una instancia de una fracción
miFraccion = [Fraccion alloc];
miFraccion = [Fraccion init];
//Fijamos el valor de la fraccion a 1/3
[miFraccion setNumerador: 1];
[miFraccion setDenominador: 3];
//Mostramos la fraccion usando el metodo imprimir
[miFraccion imprimir];
[miFraccion release];
[pool drain];
return 0;
}
El programa que hemos escrito esta perfectamente diferenciado en tres secciones:
- Interface
- Implementación
- Programa
La interface describe la clase , sus datos y sus métodos, la implementación contiene el código de los métodos a utilizar en la clase y finalmente el programa contiene el código para el propósito final del programa en sí mismo.
Un programa cualquiera de Objective-C contiene estas tres secciones las cuales normalmente suelen estar cada una en un fichero especifico pero para una mejor comprensión en nuestro ejemplo implementaremos las tres en un solo fichero.
En próximas entregas explicaremos más a fondo cada una de estas secciones.
Este es el tercer tutorial para aprender a hacer tus propias aplicaciones para iPhone
Hoy vamos a realizar nuestro primer programa trabajando con clases y métodos. Supongamos que tenemos que escribir un programa para trabajar con fracciones, sin los conocimientos necesarios sobre clases, nuestro programa sería algo similar a esto:
// Programa simple para trabajar con fracciones
#import <Foundation/Foundation.h>
int main (int argc, char *argv[])
{
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
int numerador = 1;
int denominador = 3;
NSLog (”La fracción es %i/%i”, numerador, denominador);
[pool drain];
return 0;
}
En este programa la fracción esta definida por el numerador y denominador, variables a las cuales se les asigna los valores 1 y 3, este es el mayor problema precisamente de implementar nuestro código de esta manera, ya que si necesitaramos almacenar múltiples variables deberíamos definir un par de variables para cada fracción. Mediante el uso de clases podemos definir una fracción como una entidad y referirnos únicamente a un denominador y a un numerador.
// Programa para trabajar con fracciones – trabajando con clases
#import <Foundation/Foundation.h>
// —–INTERFACE —–
interface Fraccion: NSObject
{
int numerador;
int denominador;
}
-(void) imprimir
-(void) setNumerador: int n;
-(void) setDenominador: int d;
end
//—-IMPLEMENTACION—–
implementation Fraccion
-(void) imprimir
{
NSLog(”%i/%i, numerador, denominador);
}
-(void) setNumerador: int n
{
numerador = n;
}
-(void) setDenominador: int d
{
denominador = d;
}
end
//—-PROGRAMA—-
int main (int argc, char *argv[])
{
NSAutoreleasePool * pool = [NSAutoreleasePool alloc] init];
Fraccion *miFraccion;
// Creamos una instancia de una fracción
miFraccion = [Fraccion alloc];
miFraccion = [Fraccion init];
//Fijamos el valor de la fraccion a 1/3
[miFraccion setNumerador: 1];
[miFraccion setDenominador: 3];
//Mostramos la fraccion usando el metodo imprimir
[miFraccion imprimir];
[miFraccion release];
[pool drain];
return 0;
}
El programa que hemos escrito esta perfectamente diferenciado en tres secciones:
- Interface
- Implementación
- Programa
La interface describe la clase , sus datos y sus métodos, la implementación contiene el código de los métodos a utilizar en la clase y finalmente el programa contiene el código para el propósito final del programa en sí mismo.
Un programa cualquiera de Objective-C contiene estas tres secciones las cuales normalmente suelen estar cada una en un fichero especifico pero para una mejor comprensión en nuestro ejemplo implementaremos las tres en un solo fichero.
En próximas entregas explicaremos más a fondo cada una de estas secciones.