SlideShare a Scribd company logo
1 of 48
Download to read offline
Développement IOS
Evan Peuvergne
Présentation
• Evan Peuvergne
• Etudiant en H1 à @hetic
• Récent débutant en développement IOS
• Twitter : @vavouweb
Sommaire
1. Présentation du développement IOS
2. Storyboards et sègues
3. Gestion du positionnement
4. Initiation à l’objective-c avec xcode
Dev IOS, késaco ? Devices | Outils | Languages | Tests
Devices
De multiples combinaisons possibles
iPhone iPod Touch iPad
iPhone 3G iPhone 4 iPhone 5
2ème
génération
4ème génération
1ère
génération
4ème
génération
OS (le plus
élevé)
IOS 4.2.1 IOS 7.0.4 IOS 7.0.4 IOS 4.2.1 IOS 6.1.5 IOS 5.1.1 IOS 7.0.4
Résolution
écran
480 × 320 960 x 640 1136 x 640 480 x 320 960 x 640 1024 x 768 2048 x 1536
Rétina NON NON OUI NON OUI NON OUI
RAM 128 MB 512 MB 1 GB 128 MB 256 MB 256 MB 1 GB
Répartition des OS parmi les devices Apple
7.X
6.X
5.X
4.X
XCODE
L’IDE d’Apple
Objective-C
Cocoa Touch
Le simulateur
Test d’application rapide
Storyboards et sègues Construire l’interface de son application
Xcode
Découverte de l’interface
Les storyboards
• Permet d’établir facilement le cheminement
de l’utilisateur au travers de l’application

• Edition WYSIWYG pour l’interface

• Création facile de sègues entre les fenêtres
de l’interface
« A UIStoryboardSegue object is responsible for performing
the visual transition between two view controllers. »
« Un objet UIStoryboardSegue est responsable de la
performance des transitions visuelles entre 2 controleurs de
vue. »
Documentation Xcode
Les contrôles
De la fenêtre au bouton
UIViewController
• Elément permettant la gestion d’une fenêtre
de l’application

• Peut gérer plusieurs « vues »

• Une segue est une transition permettant
l’affichage d’un contrôleur de vue à la place
d’un précédent
UIView
• Objet correspondant à une « vue ».

• Elles peuvent remplir la fenêtre entière ou
pas.
Autres contrôles
UILabel UIButton UINavigationBar
Les Sègues
Gestion de la navigation entre les fenêtres
Qu’est-ce qu’une sègue ?
• Push : superposition de 2 fenêtres
• Modal : sortir du cheminement de base
• Custom : comme son nom l’indique …
Creer une sègue
Exercice 1
« Création d’une première application à l’aide des
storyboards »
Autolayout Comment positionner les éléments dans une application IOS
Positionner sur IOS
Layouts or not layouts ?
Sans aucun calcul de position
Autoresizing masks
Calcul de positions absolues
Positionnement avec Autoresizing Masks
AutoLayout
Amélioration du principe
Positionnement avec Autolayout
Exercice 2
« Positionnement adaptable avec l’autolayout »
Initiation à l’objective-c Coder avec Xcode
Présentation de l’objective-c
Language orienté objet hérité du C
Variables
int nombre = 1;
NSString *chaine = @"hello world";
Types hérités du C
• int (nombres entiers)
• float ou double (nombres à virgule)
• char
Types Cocoa
• NSString (chaîne de caractères)
• NSArray (tableau)
• NSDictionnary
Structures conditionnelles
Condition
if(nombre == 1){
//actions à réaliser
}
!
switch (nombre) {
case 1:
//actions
break;
default:
//actions
break;
}
Boucles
while (nombre < 10) {
//actions
}
!
for (int i=0; i<10; i++) {
//actions
}
Les fonctions
Déclaration
- (void) concat:(NSString*)chaine1 with:(NSString*) chaine2{
//actions
}
!
!
!
Appel
[self concat:@"chaine 1" with:@"chaine2"];
Principe d’encapsulation
–commentcamarche.net
« L'encapsulation est un mécanisme consistant à rassembler
les données et les méthodes au sein d'une structure en
cachant l'implémentation de l'objet, c'est-à-dire en empêchant
l'accès aux données par un autre moyen que les services
proposés. L'encapsulation permet donc de garantir l'intégrité
des données contenues dans l'objet »
Interface
#import <Foundation/Foundation.h>
!
@interface ClassPerso : NSObject
!
@property float nombre;
@property NSString* chaine;
!
- (void) methode:(NSString*)argument;
!
@end
Implémentation
#import "ClassPerso.h"
!
@implementation ClassPerso
!
- (void) methode:(NSString *)argument{
self.chaine = @"hello world";
self.nombre = 5.3;
}
!
@end
Gestion des contrôles
Associer un contrôle à une classe avec Xcode
UIViewController
• Associer un ViewController à une classe
personnalisée (héritant de UIViewController)

• Permet de personnaliser le comportement
de la fenêtre

!
!
- (void)viewDidLoad{
[super viewDidLoad];
// Actions
!
}
Outlets
Permettent d’accéder à des contrôles depuis
une classe personnalisée

!
!
!
!
@property (weak, nonatomic)
IBOutlet UIView *vue1;
!
Actions
• Une action correspond à un évènement

• On crée une action par clic droit tiré vers le
fichier de l’interface (.h)

!
!
!
!
!
- (IBAction)submit:(id)sender;
Exercice 3
« Réalisation de votre première application : un lecteur de flux
RSS (très) simplifié »
Ressources Progresser | Réutiliser
Continuer de progresser
• raywenderlich.com/
• mobile.tutsplus.com/
• forum.cocoacafe.fr/
• stackoverflow.com/
Ne pas réinventer la roue
• www.cocoacontrols.com
• github.com
Formation développement iOS - Tutoriel

More Related Content

Viewers also liked

Rivaldo Kpadonou: Innovations paysannes d'adaptation a la vulnerabilite clima...
Rivaldo Kpadonou: Innovations paysannes d'adaptation a la vulnerabilite clima...Rivaldo Kpadonou: Innovations paysannes d'adaptation a la vulnerabilite clima...
Rivaldo Kpadonou: Innovations paysannes d'adaptation a la vulnerabilite clima...
AfricaAdapt
 
Under Pressure
   Under Pressure   Under Pressure
Under Pressure
Atef Attia
 

Viewers also liked (20)

Deedoo - Equipe 01
Deedoo - Equipe 01Deedoo - Equipe 01
Deedoo - Equipe 01
 
APB, hors APB ?! Le guide pratique - HETIC
APB, hors APB ?! Le guide pratique - HETICAPB, hors APB ?! Le guide pratique - HETIC
APB, hors APB ?! Le guide pratique - HETIC
 
Appel d'offres E10 - La grande école du numérique
Appel d'offres E10 - La grande école du numérique Appel d'offres E10 - La grande école du numérique
Appel d'offres E10 - La grande école du numérique
 
Redesign Château de Versailles : Equipe 11
Redesign Château de Versailles : Equipe 11Redesign Château de Versailles : Equipe 11
Redesign Château de Versailles : Equipe 11
 
Luminote, la veilleuse connectée dont vous avez toujours rêvé.
Luminote, la veilleuse connectée dont vous avez toujours rêvé.Luminote, la veilleuse connectée dont vous avez toujours rêvé.
Luminote, la veilleuse connectée dont vous avez toujours rêvé.
 
Cutcake - Equipe 09
Cutcake - Equipe 09Cutcake - Equipe 09
Cutcake - Equipe 09
 
Présentation projet HETIC #Jnum2010
Présentation projet HETIC #Jnum2010Présentation projet HETIC #Jnum2010
Présentation projet HETIC #Jnum2010
 
Livrable emecus
Livrable emecusLivrable emecus
Livrable emecus
 
Memento
MementoMemento
Memento
 
Campagne à 360° - Vaincre l'Autisme
Campagne à 360° - Vaincre l'AutismeCampagne à 360° - Vaincre l'Autisme
Campagne à 360° - Vaincre l'Autisme
 
La bulle de François - Vaincre l'Autisme
La bulle de François - Vaincre l'AutismeLa bulle de François - Vaincre l'Autisme
La bulle de François - Vaincre l'Autisme
 
Ma présentation PFE : Application Android & Site Web
Ma présentation PFE : Application Android & Site WebMa présentation PFE : Application Android & Site Web
Ma présentation PFE : Application Android & Site Web
 
Nuit Charette HETIC 3D UX
Nuit Charette HETIC 3D UXNuit Charette HETIC 3D UX
Nuit Charette HETIC 3D UX
 
Intégrer les réseaux sociaux dans sa stratégie de communication
Intégrer les réseaux sociaux dans sa stratégie de communicationIntégrer les réseaux sociaux dans sa stratégie de communication
Intégrer les réseaux sociaux dans sa stratégie de communication
 
潘學觀Test
潘學觀Test潘學觀Test
潘學觀Test
 
Rivaldo Kpadonou: Innovations paysannes d'adaptation a la vulnerabilite clima...
Rivaldo Kpadonou: Innovations paysannes d'adaptation a la vulnerabilite clima...Rivaldo Kpadonou: Innovations paysannes d'adaptation a la vulnerabilite clima...
Rivaldo Kpadonou: Innovations paysannes d'adaptation a la vulnerabilite clima...
 
Publicidad Subli
Publicidad SubliPublicidad Subli
Publicidad Subli
 
Under Pressure
   Under Pressure   Under Pressure
Under Pressure
 
desarrollo
desarrollodesarrollo
desarrollo
 
Chapuzas 2010
Chapuzas 2010Chapuzas 2010
Chapuzas 2010
 

Similar to Formation développement iOS - Tutoriel

Ingénieur étude et développement JAVA JEE.pdf
Ingénieur étude et développement JAVA JEE.pdfIngénieur étude et développement JAVA JEE.pdf
Ingénieur étude et développement JAVA JEE.pdf
JEANCLAUDECAMARA
 
Retour d'expérience AdobeMC 2011
Retour d'expérience AdobeMC 2011Retour d'expérience AdobeMC 2011
Retour d'expérience AdobeMC 2011
jonasmonnier
 
Java vs .Net
Java vs .NetJava vs .Net
Java vs .Net
Algeria JUG
 
Web-In 2010: Programmation Native iOS (French)
Web-In 2010: Programmation Native iOS (French)Web-In 2010: Programmation Native iOS (French)
Web-In 2010: Programmation Native iOS (French)
Fred Brunel
 

Similar to Formation développement iOS - Tutoriel (20)

CocoaHeads Rennes #14: Programmation Responsive par Celedev
CocoaHeads Rennes #14: Programmation Responsive par CeledevCocoaHeads Rennes #14: Programmation Responsive par Celedev
CocoaHeads Rennes #14: Programmation Responsive par Celedev
 
Introduction to iOS Development
Introduction to iOS DevelopmentIntroduction to iOS Development
Introduction to iOS Development
 
Javavs net
Javavs netJavavs net
Javavs net
 
La Rochelle workshop 2016
La Rochelle workshop 2016La Rochelle workshop 2016
La Rochelle workshop 2016
 
CocoaHeads Rennes #4 : Tests automatisés sur iOS
CocoaHeads Rennes #4 : Tests automatisés sur iOSCocoaHeads Rennes #4 : Tests automatisés sur iOS
CocoaHeads Rennes #4 : Tests automatisés sur iOS
 
OBJIS Congo présente 10 reperes cle du developpeur java
OBJIS Congo présente 10 reperes cle du developpeur javaOBJIS Congo présente 10 reperes cle du developpeur java
OBJIS Congo présente 10 reperes cle du developpeur java
 
Dev dev devs
Dev dev devsDev dev devs
Dev dev devs
 
Présentation ios Ragheb Gmira
Présentation ios  Ragheb GmiraPrésentation ios  Ragheb Gmira
Présentation ios Ragheb Gmira
 
Dev Fest Nantes - Ionic le développement hybride mobile fun et productif
Dev Fest Nantes - Ionic le développement hybride mobile fun et productifDev Fest Nantes - Ionic le développement hybride mobile fun et productif
Dev Fest Nantes - Ionic le développement hybride mobile fun et productif
 
Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !
 
Ingénieur étude et développement JAVA JEE.pdf
Ingénieur étude et développement JAVA JEE.pdfIngénieur étude et développement JAVA JEE.pdf
Ingénieur étude et développement JAVA JEE.pdf
 
Cocoaheads Rennes #3 : Bien coder sur iOS
Cocoaheads Rennes #3 : Bien coder sur iOSCocoaheads Rennes #3 : Bien coder sur iOS
Cocoaheads Rennes #3 : Bien coder sur iOS
 
Retour d'expérience AdobeMC 2011
Retour d'expérience AdobeMC 2011Retour d'expérience AdobeMC 2011
Retour d'expérience AdobeMC 2011
 
Native script
Native scriptNative script
Native script
 
Cours cordova & REST
Cours cordova & RESTCours cordova & REST
Cours cordova & REST
 
Développer des applications iOS et Android avec c# grâce à Xamarin par Cyril ...
Développer des applications iOS et Android avec c# grâce à Xamarin par Cyril ...Développer des applications iOS et Android avec c# grâce à Xamarin par Cyril ...
Développer des applications iOS et Android avec c# grâce à Xamarin par Cyril ...
 
Java vs .Net
Java vs .NetJava vs .Net
Java vs .Net
 
Web-In 2010: Programmation Native iOS (French)
Web-In 2010: Programmation Native iOS (French)Web-In 2010: Programmation Native iOS (French)
Web-In 2010: Programmation Native iOS (French)
 
Java vs .Net
Java vs .NetJava vs .Net
Java vs .Net
 
Javaoop
JavaoopJavaoop
Javaoop
 

More from HETIC

More from HETIC (20)

L'USINE NOUVELLE - Prix de l'innovation
L'USINE NOUVELLE - Prix de l'innovation L'USINE NOUVELLE - Prix de l'innovation
L'USINE NOUVELLE - Prix de l'innovation
 
Recrutement - Avoir sa chaîne youTube, un atout pour son CV
Recrutement - Avoir sa chaîne youTube, un atout pour son CVRecrutement - Avoir sa chaîne youTube, un atout pour son CV
Recrutement - Avoir sa chaîne youTube, un atout pour son CV
 
Le Nouvel Obs - Écoles du web
Le Nouvel Obs - Écoles du webLe Nouvel Obs - Écoles du web
Le Nouvel Obs - Écoles du web
 
Happy 40th Anniversary - Vaincre l'Autisme
Happy 40th Anniversary - Vaincre l'AutismeHappy 40th Anniversary - Vaincre l'Autisme
Happy 40th Anniversary - Vaincre l'Autisme
 
Le Jeux des 7 familles - Vaincre l'Autisme
Le Jeux des 7 familles - Vaincre l'AutismeLe Jeux des 7 familles - Vaincre l'Autisme
Le Jeux des 7 familles - Vaincre l'Autisme
 
Campagne 360° - Vaincre l'Autisme
Campagne 360° - Vaincre l'AutismeCampagne 360° - Vaincre l'Autisme
Campagne 360° - Vaincre l'Autisme
 
Appel d'offres - JO 2024
Appel d'offres - JO 2024Appel d'offres - JO 2024
Appel d'offres - JO 2024
 
Appel d'offres - JO 2024
Appel d'offres - JO 2024Appel d'offres - JO 2024
Appel d'offres - JO 2024
 
Appel d'offres - Jeux Olympique 2024
Appel d'offres - Jeux Olympique 2024Appel d'offres - Jeux Olympique 2024
Appel d'offres - Jeux Olympique 2024
 
PoliChat
PoliChatPoliChat
PoliChat
 
Moi président, je...
Moi président, je...Moi président, je...
Moi président, je...
 
Le chatbot présidentiel
Le chatbot présidentielLe chatbot présidentiel
Le chatbot présidentiel
 
Paul's struggle - Vaincre l'Autisme
 Paul's struggle - Vaincre l'Autisme Paul's struggle - Vaincre l'Autisme
Paul's struggle - Vaincre l'Autisme
 
Le Raid 4L Trophy - SMS
Le Raid 4L Trophy - SMSLe Raid 4L Trophy - SMS
Le Raid 4L Trophy - SMS
 
Le Raid 4L Trophy - Vidéos à 360°
Le Raid 4L Trophy - Vidéos à 360°Le Raid 4L Trophy - Vidéos à 360°
Le Raid 4L Trophy - Vidéos à 360°
 
Le Raid 4L Trophy - Création de stickers
Le Raid 4L Trophy - Création de stickers Le Raid 4L Trophy - Création de stickers
Le Raid 4L Trophy - Création de stickers
 
Appel d'offres E20 - La grande école du numérique
Appel d'offres E20 - La grande école du numérique Appel d'offres E20 - La grande école du numérique
Appel d'offres E20 - La grande école du numérique
 
Éclosion - Equipe 20
Éclosion - Equipe 20Éclosion - Equipe 20
Éclosion - Equipe 20
 
Redesign Château de Versailles : Equipe 14
Redesign Château de Versailles : Equipe 14Redesign Château de Versailles : Equipe 14
Redesign Château de Versailles : Equipe 14
 
Redesign Château de Versailles : Equipe 15
Redesign Château de Versailles : Equipe 15Redesign Château de Versailles : Equipe 15
Redesign Château de Versailles : Equipe 15
 

Recently uploaded

Bilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdfBilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdf
AmgdoulHatim
 
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptxCopie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
ikospam0
 

Recently uploaded (20)

Echos libraries Burkina Faso newsletter 2024
Echos libraries Burkina Faso newsletter 2024Echos libraries Burkina Faso newsletter 2024
Echos libraries Burkina Faso newsletter 2024
 
L'expression du but : fiche et exercices niveau C1 FLE
L'expression du but : fiche et exercices  niveau C1 FLEL'expression du but : fiche et exercices  niveau C1 FLE
L'expression du but : fiche et exercices niveau C1 FLE
 
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANKRAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
 
Bilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdfBilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdf
 
Apolonia, Apolonia.pptx Film documentaire
Apolonia, Apolonia.pptx         Film documentaireApolonia, Apolonia.pptx         Film documentaire
Apolonia, Apolonia.pptx Film documentaire
 
les_infections_a_streptocoques.pptkioljhk
les_infections_a_streptocoques.pptkioljhkles_infections_a_streptocoques.pptkioljhk
les_infections_a_streptocoques.pptkioljhk
 
Les roches magmatique géodynamique interne.pptx
Les roches magmatique géodynamique interne.pptxLes roches magmatique géodynamique interne.pptx
Les roches magmatique géodynamique interne.pptx
 
658708519-Power-Point-Management-Interculturel.pdf
658708519-Power-Point-Management-Interculturel.pdf658708519-Power-Point-Management-Interculturel.pdf
658708519-Power-Point-Management-Interculturel.pdf
 
La mondialisation avantages et inconvénients
La mondialisation avantages et inconvénientsLa mondialisation avantages et inconvénients
La mondialisation avantages et inconvénients
 
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
Conférence Sommet de la formation 2024 : Développer des compétences pour la m...
 
Télécommunication et transport .pdfcours
Télécommunication et transport .pdfcoursTélécommunication et transport .pdfcours
Télécommunication et transport .pdfcours
 
Formation qhse - GIASE saqit_105135.pptx
Formation qhse - GIASE saqit_105135.pptxFormation qhse - GIASE saqit_105135.pptx
Formation qhse - GIASE saqit_105135.pptx
 
L application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptxL application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptx
 
STRATEGIE_D’APPRENTISSAGE flee_DU_FLE.pdf
STRATEGIE_D’APPRENTISSAGE flee_DU_FLE.pdfSTRATEGIE_D’APPRENTISSAGE flee_DU_FLE.pdf
STRATEGIE_D’APPRENTISSAGE flee_DU_FLE.pdf
 
Neuvaine de la Pentecôte avec des textes de saint Jean Eudes
Neuvaine de la Pentecôte avec des textes de saint Jean EudesNeuvaine de la Pentecôte avec des textes de saint Jean Eudes
Neuvaine de la Pentecôte avec des textes de saint Jean Eudes
 
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptx
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptxIntégration des TICE dans l'enseignement de la Physique-Chimie.pptx
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptx
 
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptxCopie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
 
Cours Généralités sur les systèmes informatiques
Cours Généralités sur les systèmes informatiquesCours Généralités sur les systèmes informatiques
Cours Généralités sur les systèmes informatiques
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
 
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projetFormation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projet
 

Formation développement iOS - Tutoriel