Ciao a tutti, ho preso da poco un Mac, e avendo
Però ho un problema: avendo l’abitudine di creare semplici applicazioni su un solo file oppure su pochi file che includo, non riesco a ritrovarmi con quelli di default che xcode mi dà appena creo un progetto. Più che altro non capisco la logica che spesso danno per scontata su molte guide.
A me piacerebbe sapere quale è la gerarchia, o la sequenza temporale se così si può dire, secondo la quale l’applicazione viene avviata ed eseguita.
Non so se ho reso l’idea, ma ecco un esempio dei file che mi ritrovo creando un semplice progetto Cocoa per Mac:
- main.m (che penso contienga il 'main' vero e proprio)
- AppDelegate (sia header che implementazione)
- MainMenu.xib (forse il nib principale)
- Info.plist (Informazioni sulla applicazione)
Ecco, ma quando io eseguo il programma, quale è la gerarchia con la quale i file vengono richiamati?
Intuitivamente mi viene da dire che prima ci sia il main (in tutti i c-like è così, quindi…), che nel codice non fa altro che chiamare la funzione NSApplicationMain. E già questa funzione non so cosa vada a puntare effettivamente, quindi per me è già buio: le possibilità sono che vada a leggere qualcosa sulla AppDelegate, oppure apra l’Info.plist e legga che il nib principale è il MainMenu e quindi deciderà di leggere quello. E poi? Il delegato dell’Owner del MainMenu.xib è l’AppDelegate, quindi istanzierà quella classe, giusto? Vi chiedo aiuto perchè non se che pesci prendere.
Non capisco inoltre perchè in qualche modo sembra che siano i nib (e quindi le interfacce grafiche) a richiamare il codice, mentre di solito mi aspetterei il contrario, dove è il codice che in qualche modo dà vita e crea l’interfaccia grafica (il nib appunto, perchè ad esempio quando provavo a creare interfacce con le gtk partivo proprio dal codice)
Grazie a chiunque mi sappia aiutare; scusate per il muro di testo.