Redvex3
Benvenuto visitatore
Login Registrati
Spinner
[TUTORIAL] - 4 - Design Pattern: Model View Controller

Dopo tanta teoria finalmente iniziamo a scrivere la nostra prima applicazione!!!

Dopo tanta teoria è giunto il momento di scrivere la nostra prima, piccola, applicazione.

Realizzeremo il classico Hello World in cui l'utente immette il proprio nome in un input testuale, preme un pulsante e il risultato compare in una text-label.

Prima di aprire xCode un'ultima nota teorica. Programmare per iPhone vuol dire rispettare il design patter Model-View-Controller secondo lo schema:

Oggi disegneremo la nostra view con interface-builder, scriveremo il nostro controller e il nostro model tramite xcode.

La view rappresenta il modo con cui la nostra applicazione si interfaccia con l'utente, contiene elementi grafici e di input, le iterazioni ricevute dalla view vengono quindi passate al controller che ha il compito di modificare la vista e il model, questo (o questi) sono classi rappresentanti i nostri dati, avvolte possono essere semplici (come nel caso che a breve prenderemo in esame), avvolte complesse come nei progetti che vorrete intraprendere quando avrete imparato a scrivere applicazioni *serie*

Let's go!

Apriamo xCode e creiamo un nuovo progetto come iPhone -> View-Based Application.

Chiamiamo il nostro progetto "test" e diamo un'occhiata a cosa ci propone xCode.

xCode ha creato per noi diversi file, analizziamoli prima di proseguire.

 

  • Classes - Raggruppamento virtuale di file che contiene tutte le classi del nostro progetto.
    • testAppDelegate - Il Delegate principale della nostra applicazione, in particolare viene implementata di default la funzione applicationDidFinishLaunching:
      - (void)applicationDidFinishLaunching:(UIApplication *)application {	
      	
      	// Override point for customization after app launch	
              [window addSubview:viewController.view];
      	[window makeKeyAndVisible];
      }
      
      In cui viene associata la view alla finestra principale.
    • testViewCotroller - Il controller relativo alla nostra view, di default vengono implementati i metodi shouldAutorotateToInterfaceOrientation: responsabile del cambio di orientamento dell'interfaccia
      - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
      	// Return YES for supported orientations
      	return (interfaceOrientation == UIInterfaceOrientationPortrait);
      }
      e didReceiveMemoryWarning metodo alternativo al delegate visto nel capitolo precedente per gestire la richiesta di memoria del sistema operativo.
      - (void)didReceiveMemoryWarning {
      	[super didReceiveMemoryWarning]; // Releases the view if it doesn't have a superview
      	// Release anything that's not essential, such as cached data
      }
      
  • Other Sourcers
    • test_Prefix.pch - Prefisso comune a tutti file del progetto in particolare vengono importati gli header di Foundation e UIKit
      #ifdef __OBJC__
      #import 
      #import 
      #endif
      
    • main.m - Punto di ingresso della nostra applicazione, questione già affrontata nelle sezioni precedenti.
      #import 
      
      int main(int argc, char *argv[]) {
      	
      	NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
      	int retVal = UIApplicationMain(argc, argv, nil, nil);
      	[pool release];
      	return retVal;
      }
      
  • Resources
    • testViewController.xib - Il file della view che andremo ad analizzare fra qualche instante
    • MainWindow.xib - Il file della finestra principale, il contenitore che andrà a contenere la/le nostre view.
    • Info.plist - Il file delle preferenze della nostra applicazione.
  • Framework - Cartalla che contiene i framework che importiamo nella nostra applicazione.
  • Products - Cartella che contiene gli eseguibili compilati da xCode.
Back
se non sei registrato, registrati per inserire commenti, oppure effettua il login

 
Notizie Mac
 
 
1
PdC Calculator
1 2 3
 
View Gianni Mazza's profile on LinkedIn