Un week-end de cours vidéo de Stanford (que je vous recommande chaudement) aura suffi pour appréhender les bases de la programmation des applications iPhone.
Rien de bien compliqué celà dit:
- des navController
- un tabBarcontroller
- des actions pour modifier dynamiquement le tabBar (ajouter un badge sur un élément, changer un icone, ajouter/supprimer un élément)
- des champs textes, des labels, des boutons, des sliders
- des valeurs enregistrées dans les préférences utilisateurs
- l’utilisation de préférences pour l’application (cacher un élément du tabBar)
- la lecture de vidéos en mode landscape
- l’utilisation de tableView avec cellules personnalisées pour afficher un flux RSS Orange cinema Series (un peu lent pour le moment car basé sur du décryptage de balise XML, il faut que je teste d’autres librairies de parsing)
- un splashscreen
Voici les sources pour les plus curieux d’entre vous. J’avoue que tout n’est pas optimisé, il manque peut-être quelques release à gauche à droite. J’ai essayé de commenter au maximum de mes besoins.
Bonne lecture aux plus courageux. Moi je retourne à mes podcasts Stanford.
On va enfin pouvoir passer aux choses sérieuses

















Ahhh ces cours de Standford, ça m’aurait économisé pas mal de temps quand j’ai commencé en 2008, ils sont vraiment très bien foutus. Quand on voit ce que ça t’a déjà permis de faire sur ces 2 jours!
Après avoir faire un tour vite fait du code que tu proposes, je me permets deux trois remarques importantes sur ces concepts de base :
- ne pas oublier d’appeler [super init] dans les designated initializers custom de tes classes qui étendent des objets de base comme par exemple NSObject ou UIViewController. Je cite la doc: « In brief, if you are implementing a new designated initializer, it must invoke the superclass’ designated initializer. » On s’assure ainsi que ces objets seront créés conformément à leur parent.
http://developer.apple.com/iphone/library/documentation/Cocoa/Conceptual/ObjectiveC/Articles/ocAllocInit.html#//apple_ref/doc/uid/TP30001163-CH22-SW4
- dans le même genre, ne pas oublier d’appeler la méthode parente correspondante lors de la surcharge de méthodes telles que -viewDidLoad
- malgré ta remarque « il manque peut-être quelques release à gauche à droite », j’insiste sur le fait de vraiment faire attention à tous ces release qui manquent, y’a pas mal de leaks. C’est plus important qu’on ne le croit, surtout sur un device mobile tel que l’iPhone, les ressources étant limitées.
Voila, et bon courage pour la suite!
Merci pour ton retour
Je pense aussi que pour une véritable application, il faut soigner tous ces détailles de gestion de mémoire.
Je vais corriger tous ces petits problèmes sur cette première demo et je passerai à quelque chose de plus costaud.
Il me reste encore pas mal de cours Stanford à visualiser