Développement iPad iPhone

XCode 4 et libxml2

Beaucoup de développeurs aiment libxml2 car c’est l’outil XML le plus performant sur iOS.

Un petit rappel est toujours bon. Voici comment, en quelques étapes, avoir un libxml2 intégré à un projet iOS sous XCode 4.

Lier la bibliothèque

Sélectionnez votre projet.

Choisissez la cible (target) de destination dans le projet, sous Targets.

Allez sur build phases.

Dépliez Link Binary With Libraries.

Appuyez sur le bouton + en base de la liste.

Dans la liste, cherchez libxml2.dylib et sélectionnez-le. (vérifiez que le dossier iOS xxx est bien déplié)

Dans la liste de gauche, pour la forme, placez libxml2.dylib dans un dossier Frameworks.

Ajouter les en-têtes

Sélectionnez de nouveau votre projet.

Choisissez la cible (target) de destination dans le projet, sous Targets.

Allez dans Build Settings.

Cherchez Header Search Paths.

Insérez la valeur $SDKROOT/usr/include/libxml2.

En cas de problème, utilisez simplement /usr/include/libxml2.

Utiliser libxml2

La partie la plus facile maintenant.

Importez l’en-tête libxml2 souhaité.

#import <libxml/tree.h>

Vous aurez ensuite droit à l’auto-complétion à volonté et le débogage du code.

Il ne manque plus que l’intégration de la documentation complète. (si quelqu’un a une solution fiable, je suis preneur)

Share
Applications iPhone

iOS, Android, Flash, HTML5 et le futur

Une petite étude du marché mobile est toujours utile pour faire les meilleurs choix stratégiques.

Parts de marché mobile

Aujourd’hui

Si l’on prend les parts de marché de manière générale, on se rend compte que 2 leaders incontestés émergent :

  • Apple, avec iOS
  • Google, avec Android.
En prenant en compte les parts de marché sur les ventes, on distingue que les parts de marché des 2 leaders sont identiques en volume de vente. iOS est disponible sur 2 modèles d’appareils et Android est disponible sur plusieurs dizaines de modèle. Ce dernier remplace en effet dans bien des cas les OS propres aux constructeurs.
Sur le marché des apps, la tendance est un peu plus à l’avantage d’Apple qui a environ 70% des parts de marché sur ce créneau.
A ce jour, les 2 OS mobiles sont donc au coude à coude, après une forte montée d’Android.

Demain

En voyant les statistiques, il serait tentant de conclure qu’à terme Google pourrait dépasser Apple sur le marché mobile et devenir leader incontesté.

Cependant, tout Android vendu n’est pas forcément utilisé. Les taux de retours sur cette plateforme seraient d’environ 30 à 40 %, l’OS étant jugé trop complexe. (source : http://techcrunch.com/2011/07/26/androids-dirty-secret-shipping-numbers-are-strong-but-returns-are-30-40/ )

Sur ces mêmes critères, Apple à un taux de retours de 1,7%, ce qui est négligeable.

De là à dire que les parts de marché Android pourraient revenir à Apple,  il n’y a qu’un pas. Mais ce n’est pas tout.

Demain (encore)

Ce qu’attendent les utilisateurs « normaux » (comprendre non-geeks) est un OS qui fonctionne, est novateur et vieillit bien.

A ce jour, les principaux reproches fait à iOS et l’iPhone en général sont :

  • le coût
  • la nécessité de passer par iTunes pour synchroniser et mettre à jour
  • certaines fonctionnalités manquantes ou inégales vis-à-vis de la concurrence.
Ce à quoi Apple répond, grâce à iOS 5, disponible cet automne de la manière suivante :
  • le service gratuit iCloud permet de ne plus jamais perdre ses contacts, courriel et autres, le tout sans manipulation particulière
  • iCloud permet également de transférer directement les photos de l’iPhone à l’ordinateur (ou Apple TV / iPad) via Internet
  • quasiment tout ce qui faisait la différence chez les autres a été intégré à iOS (nouveau système Push, iMessages, …)
  • l’ordinateur n’est plus indispensable pour les mises à jour
  • les mises à jour des applications et du système sont plus légères
  • les performances et la stabilité ont (encore) été améliorées.
De son côté, Google propose également de nombreuses nouveautés dans Android 4.0.
Cependant, il requiert des machines plus performantes pour les fonctionnalités phares, ce qui accentue de fait le phénomène de segmentation.
Personne n’aime acheter un appareil dépassé dans les 6 mois. On ne se fait avoir qu’une fois.

Flash et HTML5

S’il y a bien une fonctionnalité que devait intégrer iOS pour avoir une chance de percer, c’était bien l’usage du plugin Flash. Il n’est toujours pas là et ne le sera très certainement jamais.

Flash : une technologie destinée aux ordinateurs

Si on regarde un peu le fonctionnement de Flash par le principe, il s’agit au final d’une interprétation d’un code spécifique par une application spécifique.

En résumé :

  • plus de possibilités (liberté totale)
  • moins de portabilité (machines inégales)
  • usage intensif du matériel.
Si, à l’époque où le web était réservé aux ordinateurs, les problèmes de portabilité et de gestion de l’autonomie ne posaient pas de problème, ils en posent aujourd’hui.

Le point de vue d’Adobe

Adobe, qui propose la technologie Flash, utilise pleinement HTML5 dans ses produits :

  • Dreamweaver est compatible HTML5/CSS3
  • Flash permet maintenant l’exportation d’animations en HTML5
  • Illustrator gère également le HTML5, spécifiquement au travers du SVG
  • InDesign gère le HTML5 pour l’exportation au format eBook.
En clair, on assiste à une migration progressive de Flash vers HTML5.

HTML5 et les mobiles

Aujourd’hui, HTML5 a une courbe d’évolution rapide qui lui permettra, à terme, d’aller au-delà de ce que propose Flash aujourd’hui, notamment grâce à des fonctionnalités telles que WebGL qui permet d’intégrer de la vraie 3D dans une page web, ou bien l’intégration native de la vidéo.

La tendance du marché veut que, selon une étude de ABI Research ( http://www.abiresearch.com/press/3730-2.1+Billion+HTML5+Browsers+on+Mobile+Devices+by+2016+says+ABI+Research ) , les appareils compatibles HTML5 soient environ, d’ici 2016, autour de 2,1 milliards. En 2010, on en dénombrait seulement 109 millions.

Cette adoption dans les smartphones et les tablettes pourrait accélérer le déclin de Flash qui pourrait arriver bien plus vite que prévu.

Apple, Google et les autres face à HTML5

Du fait qu’Apple et Google travaillent sur le même système de rendu HTML (WebKit) les mets de fait à l’avantage.

Apple profit d’une légère avance car ils ont été les premiers à s’intéresser à cette technologie et Google n’a pas la capacité de s’adapter aussi vite sur le mobile.

De son côté, le Blackberry intègre depuis peu HTML5 mais est arrivé trop tard.

Web apps et apps natives

Sur chaque plateforme mobile, 2 formats d’applications sont disponibles :

  • les web apps, utilisant les technologies web (HTML5, CSS3, JavaScript)
  • les apps natives, utilisant les capacités maximales de l’appareil.
Dans bien des cas, la web app est suffisante :
  • elle est suffisamment performante pour la présentation d’informations
  • elle est en majeure partie portable sur les différents OS.
Cependant, elle a également ses lacunes :
  • reposant sur les technologies web, elle n’aura jamais les performances maximales
  • dès que l’on souhaite avoir de bonnes performances, le code devient plus complexe à gérer
  • l’interface doit s’adapter à l’ergonomie de l’OS hôte, ce qui nécessite un travail supplémentaire et plus de tests
  • on n’a pas accès à toutes les possibilités offertes par l’appareil (Push, Carnet d’adresses, Agenda, Caméra pour la réalité augmentée, ..)
Cependant, l’app native a également ses contraintes :
  • validation nécessaire
  • programmation initiale plus complexe.

Conclusion

En prenant en compte ces différents paramètres, la tendance serait donc la suivante :

  • iOS reste majoritaire avec Android en bon second
  • les Blackberry, Nokia, Windows Phone restent minoritaires
  • HTML5 assure une compatibilité maximale à terme
  • les web apps et les apps natives sont complémentaires, chaque usage devant être correctement estimé.
Share
Développement iPad iPhone

Quelques statistiques iOS

Un petit article sur l’état des mises à jour du matériel et du logiciel des utilisateurs d’apps iOS peut toujours être utile pour bien cibler ses développements.

J’utilise un système me permettant de remonter de manière anonyme les informations techniques concernant les utilisatrices (oui, je considère que ce sont des femmes) de l’application Ma Pilule. Cette dernière permet, comme son nom l’indique, de ne pas oublier de prendre sa pilule.

Voici un petit résumé qui permettra, je l’espère, de mieux cibler les attentes des utilisateurs iOS en général.

Pour information, l’application Ma Pilule nécessite iOS 4.0 au minimum.

L’échantillon étant récent, il ne concerne que 12 050 appareils.

Les familles de matériel

  • 0,3 % d’iPad (l’application est optimisée iPhone uniquement)
  • 94,7 % d’iPhone
  • 5 % d’iPod Touch

Les générations de matériel

  • 3,5 % de 2ème génération (iPhone 3G + iPod Touch 2)
  • 33,5 % de 3 ème génération (iPad + iPhone 3GS + iPod Touch 3)
  • 63 % de 4 ème génération (iPad 2 + iPhone 4 + iPod Touch 4)

Quelques rappels sur iOS

En termes de compatibilité, le matériel de 2ème génération est compatible jusqu’à iOS 4.2.1 uniquement.

Les nouveautés principales de iOS :

  • 4.0 : multi-tâches, FaceTime, etc
  • 4.1 : Game Center, HDR, etc
  • 4.2 : compatible iPad, AirPrint, AirPlay, etc
  • 4.3 : non-compatible 2ème génération, améliorations diverses, mode hot-spot pour l’iPhone 4
En clair, les versions jusqu’à 4.2 sont intéressantes pour tout le monde.
La 4.3 est plus spécifique et offre en principale nouveauté le support du mode hot-spot  (partage de connexion) pour l’iPhone 4. Cette dernière version est plus anecdotique donc.

Les versions principales de iOS

  • 4.0 : 2,6 %
  • 4.1 : 7,7 %
  • 4.2 : 24,2 %
  • 4.3 : 65,4 %
  • 5.0 : 0,02 %

Les versions maximales en fonction du matériel

  • matériel de 2ème génération - jusqu’à iOS 4.2.1 : 85 %
  • matériel de 3ème génération – jusqu’à iOS 4.3.4 : 63 % – jusqu’à iOS 4.2.1 : 86 %
  • matériel de 4ème génération – jusqu’à iOS 4.3.4 : 71 % – jusqu’à iOS 4.2.1 : 92 %

Conclusion

En conclusion, on peut retenir essentiellement ceci :

  • les mises à jour iOS sont fréquentes, du moment qu’elles apportent de réelles nouveautés
  • les appareils de 2ème génération ne sont quasiment plus présents
  • la très grande majorité des appareils du marché pourra aisément passer à iOS 5.0.
Share
Non classé

iCloud en résumé

Pour résumer iCloud, c’est un service vous permettant de synchroniser, et donc d’accéder à :

  • votre musique
  • vos documents
  • vos mails
  • vos sauvegardes de logiciels
  • vos contacts
  • vos photos
  • votre agenda

Le tout, sans fil, sans se connecter à un ordinateur, sans s’occuper de rien.

Tout est disponible partout, tout le temps.

Il y a même des outils pour les développeurs d’applications.

C’est inclus dans iOS 5 et Mac OS X Lion.

Tarifs et disponibilité

Disponible gratuitement cet automne.

Site officiel

http://www.apple.com/icloud/

Share
iPad iPhone

iOS 5 en résumé

Les nouveautés

En vrac :

  • système de push repensé à partir des souhaits des utilisateurs
  • iMessage : le système de messagerie Apple gratuit, à l’instar de ce que fait BlackBerry
  • Newsstand : un système de publication de magazines intégré à l’instar de iBookStore, mais en mieux
  • Reminders : un gestionnaire de tâches avec alertes et géolocalisation
  • Twitter : directement intégré dans le système iOS, avec accès depuis les applications
  • Appareil photo : prise de photo depuis le bouton de volume, raccourci d’accès rapide quand l’écran est bloqué, auto-focus, grille
  • Photos : édition, rotations, anti-yeux rouges, amélioration du rendu
  • Safari : liste de lecture, onglets, optimisation de la lecture
  • synchronisation et mise à jour sans fil, sans ordinateur
  • améliorations autour de mail, du calendrier, de Game Center
  • gestion du multi-touch sur iPad pour passer d’une app à l’autre, etc…
  • options d’accessibilité étendues
  • des centaines d’API pour les développeurs, avec des possibilités étendues.

Tarifs, disponibilité, compatiblité

Disponible gratuitement à partir de l’iPhone 3GS cet automne.

Site officiel

http://www.apple.com/ios/ios5/features.html

Share
Mac OS X

Mac OS X Lion en résumé

Les nouveautés

En vrac :

  • interface 100 % multi-touch
  • effets 3D
  • applications plein écran (comme sur iOS)
  • sauvegarde automatique
  • restauration des applications et du système (inutile d’ouvrir tous les fichiers et toutes les applications de nouveau)
  • gestion des versions de fichiers intégrée
  • interface très proche de iOS, mais adaptée à l’ordinateur
  • Mac App Store totalement intégré
  • en tout plus de 250 nouveautés.

Tarif et disponibilité

Disponible en juillet au tarif de 23,99 €.

Site officiel

http://www.apple.com/fr/macosx/

Share
Développement Mac OS X Web

Le développement web sur Mac

Un rapide article pour vous présenter les différents outils vous permettant d’être rapidement opérationnel pour le développement web sur Mac OS X.

Apache / PHP / Ruby On Rails / MySQL

Concernant Apache, il faut savoir que le serveur est déjà installé d’origine sur le Mac, il y a juste à le configurer dans les options de partage. Il en va de même pour PHP 5 et Ruby.

Pour installer Ruby On Rails, gem sera votre allié.

Pour ce qui est de MySQL, ce n’est guère plus compliqué : vous trouverez la version serveur sur le site officiel. Je vous conseille également l’outil MySQL Workbench qui est très bien fait pour gérer ses bases de données.

L’éditeur TextMate

L’éditeur ViM est intégré à Mac OS X. Cependant, je ne suis pas certain qu’il satisfasse tout le monde.

Personnellement, j’utilise TextMate. Il coûte 45 € mais il est très performant. On peut le tester pendant 30 jours gratuitement.

Son gros avantage est qu’il est généraliste et intègre de nombreux Bundles, et certains se trouvent également sur le web : ActionScript, PHP, Apache, JavaScript, HTML, CSS, Git, Subversion, SQL, Prototype / Script.aculo.us, JQuery, JQTouch,  Ruby On Rails, SproutCore, XML, Perl, Cake PHP, Python… Et ça, uniquement pour les langages web.

Il permet par exemple de compresser le JavaScript, déboguer le code, avoir une auto-complétion efficace.

CyberDuck

Une fois que l’on a testé le code localement, on souhaite bien entendu l’envoyer sur un serveur. CyberDuck permet de gérer correctement tout type de serveur. Il est relativement puissant et regorge de fonctionnalités et de protocoles. (FTP, FTPS, SSH, ..)

Il est disponible en version gratuite (donation optionnelle) ou payante si le logiciel convient. ( 18,99 € sur le Mac App Store )

Synchronisation FTP / SSH avec MacFusion

Pouvoir éditer le code avec TextMate en sélectionnant les fichiers dans CyberDuck, c’est bien.

Pouvoir accéder au projet complet dans un répertoire donnée synchronisé avec le serveur, c’est mieux !

Pour cela, installez MacFUSE.

Ensuite, installez Macfusion.

Et c’est parti, vous pouvez synchroniser comme vous voulez n’importe quel répertoire en montant le répertoire distant localement.

Le débogage

Les différents navigateurs intègrent chacun leurs outils de débogage.

Concernant Safari, le navigateur par défaut de Mac OS X, vous pouvez afficher le menu Développement en passant par les préférences avancées.

Par exemple, grâce à l’inspecteur web (qui s’affiche justement via le menu développement), vous pouvez voir comment sont gérées les ressources, comment est organisée la hiérarchie de votre page, vous pouvez également entrer du code javascript à la volée… c’est vraiment très pratique.

Tester les services web

Souvent, nous avons accès à des services web permettant d’exploiter telle ou telle ressource. Cependant, il est souvent bien difficile de les tester.

Il y a bien entendu l’outil curl, accessible en ligne de commande, qui permet d’effectuer des tests complets, mais qui reste très austère.

Personnellement, j’utilise HTTP Client, disponible pour 1,59 € sur le Mac App Store. Il permet d’effectuer des tests rapidement et de voir les données HTTP brutes, le tout dans une interface graphique simple mais efficace.

RapidWeaver : l’éditeur WYSIWYG

RapidWeaver est disponible sur le Mac App Store pour 39,99 € et vous permet de concevoir très rapidement des sites web, sans connaissances techniques.

Pour les applications web

Le kit de développement fourni avec XCode intègre Dashcode, qui permet de concevoir visuellement des applications web pour Mac, iPhone et iPad.

MobDis, disponible gratuitement sur le Mac App Store, permet de concevoir des applications web également.

Share
iPad iPhone Mac OS X

Apple : les chiffres

Comme vous êtes nombreux à le demander, voici un état du marché de la famille iPhone.

Ventes mondiales d’iPhone

Les données sont exprimées en milliers d’exemplaires

  • 2007
    • Trimestre 3 : 270
    • Trimestre 4 : 1 119
    • Total : 1 389
  • 2008
    • Trimestre 1 : 2 315
    • Trimestre 2 : 1 703
    • Trimestre 3 : 717
    • Trimestre 4 : 6 892
    • Total : 11 627
  • 2009
    • Trimestre 1 : 4 363
    • Trimestre 2 : 3 793
    • Trimestre 3 : 5 208
    • Trimestre 4 : 7402
    • Total : 20 766
  • 2010
    • Trimestre 1 : 8 737

Cela fait donc un total de 120 millions d’iPhone  vendus dans le monde selon les chiffres d’Apple, avec une croissance de 100 % par an.

En termes d’appareils en circulation, on serait plutôt à 75-80 millions début 2011.

Ventes mondiales d’iPod Touch

  • Septembre 2009 : environ 35 millions
  • Janvier 2010 : environ 40 millions

Téléchargements sur l’App Store

  • Juin 2008 : lancement
  • Avril 2009 : 1 milliard
  • Septembre 2009 : 2 milliards
  • Janvier 2010 : 3 milliards
  • Septembre 2010 : 6,5 milliards
  • Janvier 2010 : 10 milliards

Part de marché des téléchargements d’applications mobiles : environ 95 %.

Environ 50 téléchargements / jour pour une application à 0,79 €.

Environ 100 téléchargements / jour pour une application gratuite « standard ».

Plusieurs milliers de téléchargements / jour pour une application gratuite du Top 100.

250 000 applications sont disponibles.

iPad

L’iPad a été lancé le 31 mai 2010. En 80 jours, Apple a officiellement vendu 3 millions d’iPad ! (on tablerait sur plus de 7 millions pour 2010, le problème étant essentiellement l’approvisionnement)

En janvier 2011, on serait à 15 millions d’appareils dans le monde.

Parts de marché iOS

iOS est le système d’exploitation de l’iPhone, l’iPad et l’iPod Touch.

Nous nous basons sur les chiffres de la plateforme publicitaire AdMob, utilisée par de nombreuses applications gratuites, qui permet d’avoir une vision objective des parts de marché des OS mobile en fonctionnement (et non des OS distribués, comme ceux des iPhone 1 par exemple, qui ne sont plus utilisés).

Au niveau mondial, en mai 2010, 12,7 millions de smartphone Android (principale concurrent d’iOS) sont en fonctionnement, contre 29,3 millions d’iOS sur iPhone et 43,8 millions d’iOS au total (incluant iPod Touch et iPad)

Il y a 360 000 activations d’iOS par jour.

40 % des parts de marché des applications mobiles et du surf internet est alloué à iOS, 26 % à Android, 24 % à Symbian (Nokia) et le reste à RIM et autres Microsoft.

91% des utilisateurs iPhone recommandent leur appareil à leurs amis, 88% pour iPod Touch et 84% pour Android.

Type d’appareils iOS et version du système

En mars 2010, 2% des appareils iOS sont des iPhone de 1ère génération, 20% sont des iPhone 3G et 39% sont des 3GS.

Côté iPod Touch, 2% pour la 1ère génération, 25% pour la 2ème et 12% pour la 3ème.

En d’autres termes, 98% des appareils sont compatibles iOS 4 et 51% sont optimisés pour cette nouvelle version. Ceci est sans compter sur le fait qu’en mars 2010 l’iPhone 4, qui continue de remporter un peu succès, n’était pas encore sorti. Hors, le turn-over moyen des iPhone est d’environ 2 ans (basé sur les statistiques AdMob, confirmées par les offres de reprise des opérateurs)

Au 22 juin, le réseau Chitika annonçait que plus de 50% des appareils était déjà mis à jour vers iOS 4. En se basant sur les précédentes statistiques d’AdMob.

En janvier 2011, 52,99 % des utilisateurs utilisent la dernière version de iOS. 90 % utilisent iOS 4 et 10 % utilisent iOS 3.

Les utilisateurs iOS n’hésitent donc pas à mettre à jour leur appareil.

« Utilisateur d’iPhone type »

  • 72 % d’hommes
  • En moyenne 30 ans
    • 15-25 ans : 31 %
    • 25-35 ans : 32 %
    • 35-50 ans : 32 %
    • 50 ans et plus : 6 %
  • Diplômés d’études supérieures pour 58 % d’entre eux

« Utilisateur iPad type »

Selon S’Régie, il serait urbain, masculin (69%) et CSP+ (60%) utilisant la tablette en moyenne 2h / jour, chez lui, et pour les loisirs.

« Utilisateur iOS type »

AppSteur a réalisé début 2011 une étude sur un échantillon de 2 400 personnes. Les sondés étaient à 80 % des hommes.

40 % possédaient un iPhone 3GS, 40 % un iPhone 4, 20 % un iPhone 3G.

Pour ce qui est des autres appareils, 20 % possédaient un iPod Touch et 12 % un iPad.

Concernant leurs achats, la majorité n’achètent pas pour plus de 3 € d’apps par mois. De même, pour la grande majorité, 80% de leurs applications sont gratuites. Pratiquement tous téléchargent au moins 1 app / semaine, plus de la moitié le font chaque jour.

Le Mac

Environ 4 millions de Mac sont vendus dans le monde à chaque trimestre.

Cela représente une croissance annuelle des ventes de 22,92 %. (8 fois celle des ventes d’ordinateurs personnels)

50 % des ventes sont des migrations du PC au Mac.

Le Mac App Store propose, à son lancement, plus de 1 000 applications. 1 million de téléchargements dès le premier jour.

En termes de parts de marché, Mac OS X est en deuxième position derrière Windows avec 8-10 % du parc mondial.

Il y avait, le 8 juin 2009, 75 millions d’utilisateurs de Mac OS X dans le monde. Ils étaient seulement 25 millions en 2007. Cependant, beaucoup sont passés de Mac OS 9 à Mac OS X.

En 2008, il y aurait eu 10 millions de ventes de Mac dans le monde.

En 2010, on peut estimer le volume des ventes à environ 12 millions. Cela fait donc un total d’environ 80 millions d’utilisateurs de Mac OS X dans le monde début 2011.

Les chiffres en France

1,2 millions d’iPhone (hors iPod Touch) ont été vendus en France entre le lancement en 2007 et juin 2009.

77% des mobiles vendus par Orange à Noël 2009 étaient des iPhone.

Entre 4 et 5 millions d’utilisateurs d’iPhone et d’iPod Touch en janvier 2010.

On a estimé 400 000 iPad vendus dès la sortie, environ 1 million sur l’année 2010. Cependant, avec le marché gris, les chiffres sont flous. GfK annonce plutôt 435 000 tablettes en tout, dont 70% d’iPad et 30% de Galaxy Tab. Ce serait donc 300 000 iPad vendus en tout en France. S’Régie estime qu’environ 805 000 iPad ont été vendus en France.

Apple aurait environ 5-6 % des parts de marché en France. Avec 38 millions d’internautes (principaux utilisateurs d’ordinateurs), cela fait environ 2 millions d’utilisateurs de Mac.

Sources

Apple, AdMob et quelques indépendants.

Ces chiffres ne sont que des estimations à partir de différentes sources. Il peut y avoir une légère variation avec les chiffres réels, mais ils sont une certaine représentation du parc installé.

Share
Développement

Le Singleton facile (XCode 3 et 4)

Le singleton est très utilisé en Objective-C afin d’accéder à un objet partagé.
Seulement, cela peut-être fastidieux à intégrer.

Pour éviter le code à rallonge, voici un fichier qui pourra vous être utile.

KSSingleton.h

Son usage est relativement simple.

MySingleton.h

#import    #import "KSSingleton.h"   @interface MySingleton : NSObject {         NSInteger integerValue; }   @property (assign) NSInteger integerValue;   KS_SINGLETON_INTERFACE(MySingleton)   @end

MySingleton.m

#import "MySingleton.h"   @interface MySingleton (hidden)   - (void)initialization;   @end   @implementation MySingleton (hidden)   - (void)initialization {         integerValue = 12; }   @end   @implementation MySingleton   @synthesize integerValue;   KS_SINGLETON_IMPLEMENTATION(MySingleton)   @end

Notez que l’implémentation de - (void)initialization; est facultative. Elle peut cependant être utile à l’initialisation du singleton.

Ensuite, l’utilisation dans le code se fait ainsi :

MySingleton *s = [MySingleton sharedSingleton];

L’appel au singleton se fait toujours via [MaClasse sharedMaClasse].

Vous pouvez utiliser cette fonctionnalité à titre personnel et/ou professionnel, du moment que vous conservez son en-tête intacte.

Vous pouvez également télécharger le Projet d’exemple ici.

Le modèle de fichier (XCode 3)

Si vraiment vous souhaitez gagner du temps, utilisez directement notre modèle de fichier.

La procédure d’installation est simple.

Placez vous, dans votre répertoire « Bibliothèque » (Library). Allez donc à l’emplacement /Users/utilisateur/Library/Application Support/Developer/Shared/XCode.

S’il n’existe pas, créez le répertoire File Templates. Placez vous dans ce répertoire. Créez le répertoire Kaeli Soft.

Téléchargez l’archive Kaeli Soft. Décompressez son contenu dans Kaeli Soft.

Relancez XCode.

Pour l’utiliser : File -> New File… puis sélectionnez, dans User Templates, Kaeli Soft.

Vous aurez alors la possibilité de créer un Singleton. Appuyez sur Next. Définissez le nom du fichier (qui sera le nom de la classe) et appuyez sur Finish.

Votre singleton est prêt !

Le modèle de fichier (XCode 4)

Si vraiment vous souhaitez gagner du temps, utilisez directement notre modèle de fichier.

La procédure d’installation est simple.

Placez vous, dans votre répertoire « Bibliothèque » (Library). Allez donc à l’emplacement /Users/utilisateur/Library/Developer/XCode.

S’il n’existe pas, créez le répertoire File Templates. Placez vous dans ce répertoire.

Téléchargez l’archive Kaeli Soft. Décompressez son contenu dans File Templates : on doit avoir un nouveau répertoire Kaeli Soft contenant Objective-C Singleton.xctemplate.

Relancez XCode.

Pour l’utiliser : File -> New File… puis sélectionnez, dans iOS ou Mac OS XKaeli Soft.

Vous aurez alors la possibilité de créer un Singleton. Appuyez sur Next. Définissez le nom du fichier (qui sera le nom de la classe) et appuyez sur Finish.

Votre singleton est prêt !

 

Share
iPad iPhone Mac OS X Web

Apple, le marché des apps : aujourd’hui et demain

Les parts de marché d’Apple sur ses différents secteurs d’activité méritent parfois quelques explications. Cet article a pour but d’éclaircir un peu les choses.

Le Mac

A ce jour, les parts de marché du Mac sont grosso-modo de 10 % au niveau mondial. L’évolution est régulière, avec une croissance annuelle de 23 % environ, soit 8 fois plus que les ventes de PC.

Ce qu’il faut savoir, c’est que 50 % des ventes sont des migrations de PC vers Mac.

De plus, depuis Janvier, le Mac dispose d’un App Store. Et le développement sur Mac repose sur la même base que le développement sur iOS. Hors, les iPad et iPhone doivent leur succès essentiellement à l’App Store.

Dernier élément à prendre en compte, l’arrivée imminente de Mac OS X Lion, prévu pour l’été 2011 (Windows 8 sortira en 2012). Tout comme l’iPad ou l’iPhone, il est centré autour des mêmes éléments qui ont été la recette du succès :

  • Mac App Store : un App Store totalement intégré au système, plus besoin de chercher des logiciels douteux sur le web ou bien acheter 4 fois la même application
  • du multi-touch : tout est centré autour du multi-touch, comme sur iOS, avec des actions à 1-2-3-4 doigts (retourner, agrandir, défiler, tapoter)
  • Launchpad : pour faire simple, il s’agit d’avoir une interface d’accès aux applications similaire à celle de l’iPad ou de l’iPhone
  • les apps en plein écran : la plupart des app peuvent être exécutées en plein écran et le passage de l’une à l’autre se fait en un glissement de doigts
  • quand on arrête une application, on reprend là où on était, comme sur iOS.

Il y a en plus tous les avantages du Mac : enregistrement automatique des différentes versions d’un fichier (avec machine à voyager dans le temps pour revenir à une précédente version) , les outils principaux pré-installés, les fonctionnalités serveur intégrées et un aspect fiabilité / sécurité mis à l’épreuve.

Aujourd’hui, un iMac coûte 1200 euros, un Macbook Air coûte 1000 euros, un Macbook coûte 1000 euros. C’est beau, c’est écologique et c’est prévu pour durer dans le temps. (compter 5 ans avant d’être obsolète, contre 3 ans pour un PC)

De là à dire que cela va favoriser son adoption auprès du grand public, ce serait comme dire que le grand public achètera un jour des applications sur son téléphone ou bien une tablette moins puissante qu’un ordinateur et plus grosse qu’un smartphone.

iPad

L’iPad n’aurait, selon les experts, jamais dû fonctionner car « inutile et trop grand ». « Il ne fait même pas téléphone ». « C’est un iPhone en plus gros ». Certes.

l’iPad 2 sort en mars 2011. Il est 2 fois plus rapide que son prédécesseur, 9 fois plus rapide sur les jeux vidéo (se situe au dessus de la Wii, un peu en dessous de la XBox 360). Il possède une sortie TV le poussant donc vers le jeu vidéo. Là où il est déjà expert. (Unreal Engine 3, moteur 3D présent sur de nombreuses consoles, a été adapté à iOS)

Il est leader du marché avec 90% des parts.

Son App Store est le plus gros existant.

Il est le moins cher de tous.

Il a même forcé Samsung à revoir sa stratégie.

Que dire de plus ?

iPhone

Encore une fois, un produit qui n’aurait jamais dû marcher : « Trop cher. », « Qui installerait des applications sur un téléphone ? », « On ne pourra jamais détrôner Sony et Nintendo avec les consoles portables ».

10 milliards de téléchargements sur App Store plus tard, 500 000 apps disponibles : c’est la plateforme d’applications qui a le plus grand succès et qui rapporte le plus aux développeurs.

En termes de parts de marchés des smartphones connectés en France, on est à 70 % environ selon GS StatsCounter, malgré 30% des ventes. On compte environ 30 % aux Etats-Unis. Les grands concurrents sont Blackberry (sur le déclin) et Android.

« Android est en plein essor » : oui, on remplace les téléphone Samsung avec OS maison par des Samsung Android. Et après ? Proportionnellement, Android devrait terrasser Apple sur le marché App Store. Hors, c’est loin d’être le cas. C’est d’ailleurs ce que les statistiques mettent en avant : si 30 % des ventes sont sur Android, partagées équitablement avec iOS et Blackberry, les connexions à Internet (Web, Mail, App Store) se font pour 70 % sur iOS, 20 % sur Android et 10 % sur les autres appareils. Et la découverte de plusieurs vers sur la plateforme de Google ne va pas arranger les choses.

Ce qu’il faut également prendre en compte, au delà du fait que l’Androphone est bien pour mémé qui a l’impression d’avoir un iPhone, c’est que le coût de développement est supérieur sur Android. On entâme donc la rentabilité. Surtout si la plateforme n’a pas un succès prépondérant sur le téléchargement des applications.

En terme de qualité, il faut également savoir que les consommateurs regardent de plus en plus au côté écolo. Hors, Apple travaille sur ce créneau, en faisant le bon équilibre avec la puissance du matériel et en favorisant le recyclage. L’entrée de gamme n’a jamais été en faveur de cet aspect.

Un autre point à ne pas négliger est l’arrivée de l’iPhone sur les réseaux CDMA, ce qui va apporter de nouvelles parts de marché à Apple aux Etats-Unis et en Asie.

Dernier point essentiel à prendre en compte est l’arrivée de l’iPhone 5, qui comme son grand frère l’iPad devrait être plus puissant et équipé du même type de matériel. L’aspect console de jeu dans la poche risque donc de se confirmer.

Avec iOS 4.3, la compatibilité iPhone 3G disparaît : un boulet en moins pour les développeurs. Les nouvelles applications seront donc compatibles avec ce matériel, mais pas de manière optimale. C’est l’obsolescence programmée. Chaque utilisateur pourra revendre son iPhone à son opérateur pour en acheter un neuf, moyennant une centaine d’euros en plus.

Qui dit matériel récent, dit de nouvelles possibilités en termes de développement.

iOS 5 : arrivée imminente

Que peut-on imaginer avec iOS 5, qui arrive cet été :

  • base Mac OS Lion au lieu de Snow Leopard (n’intéresse que les développeurs)
  • base matérielle limitée : de nouvelles possibilités en terme d’interface, avec plus d’effets
  • tout le matériel compatible est compatible avec OpenGL ES 2.0 : les jeux vidéos seront encore plus beaux
  • qui dit OpenGL ES 2.0 dit WebGL : le standard WebGL 1.0 vient d’être arrêté, son développement sur Mac est bien avancé et son développement sur iOS ne doit pas être loin derrière
  • exploitation optimale de Grand Central Dispatch : cette technologie qui est arrivée avec iOS 4 permet d’exploiter au mieux le multi-coeurs des nouveaux appareils, les applications existantes sont donc déjà optimisées
  • accéléromètre, GPS et boussole à tous les étages : tout le matériel supporté par iOS 5 permet la réalité augmentée, grâce à la disparition de l’iPhone 3G
  • caméra en façade sur les appareils récents, donc nouvelles possibilités
  • plus de puissance minimale = nouveaux outils pour les développeurs

En clair, la stratégie d’Apple consistant à avoir une visibilité sur 2-3 ans permet d’écraser la concurrence de la manière suivante :

  • le système iOS est très souple, donc le travail de migration d’une app vers iOS 5 est limité si on s’y est préparé
  • un nombre d’appareils limité signifie un travail d’optimisation moins long
  • ce même aspect favorise l’exploitation maximale des capacités techniques
  • la mise à jours de l’OS permet de redonner un coup de fouet au matériel, comme nous l’avons vu avec la sortie de iOS 4 sur iPad

iOS : la sécurité business

Pour conclure, les aspects importants à connaître sont donc les suivants :

  • parts de marché limitées sur le matériel ne signifie en aucun cas parts de marché limitées sur les apps (cf. Blackberry)
  • sans iOS, les tablettes et smartphones seraient livrés avec un stylet, un clavier rétractable et Windows Mobile
  • de tous les mauvais présages, aucun n’est arrivé
  • Apple garantie une compatibilité maximale sur 2 générations, une compatibilité minimale sur 3 générations : le coût est donc à calculer sur 2 ans, sans mauvaise surprise
  • un appareil iOS, ça se recycle : un cycle de consommation immatérielle
  • en restant sur du haut de gamme, Apple conserve ses parts de marchés à un bon niveau
  • Apple reste leader incontesté sur le marché des apps, malgré une concurrence très forte
  • la publicité sur iOS est plus percutante que la publicité télévisuelle
  • qui d’autre peut garantir une visibilité maximale sur la tranche de population la plus consommatrice ?
Share