juin 09

Le 24 juin 2010, le nouvel iPhone arrive en France. Voici un rapide tour de ses caractéristiques.

Design

Comme toujours, le nouvel iPhone est disponible en 2 coloris de base :

  • noir
  • blanc

Il est 25% plus fin que le 3GS, ce qui fait de lui le smartphone le plus fin du monde.

Il peut être coloré et protégé grâce à des coques spécialement conçues par Apple : les bumpers.

Appareil photo / Caméra

L’appareil photo du nouvel iPhone prend des photos en 5 MPixels et intègre un flash.

En mode caméra, il peut filmer en HD (720p) à 30 images / seconde.

Caméra en façade

Une seconde caméra est disponible en façade. Cette dernière permet de faire de la vidéo conférence.

Celle-ci est limitée à une qualité VGA. (640×480)

Connectivité

Le WiFi N (100 Mbits / s dans un rayon de 100 m) est maintenant supporté.

Pour les reste, on est toujours sur 3G et bluetooth 2.1.

Géolocalisation

L’iPhone 4 dispose de la géolocalisation via le GPS, la boussole numérique, le WiFi et le réseau.

Autonomie

L’autonomie a été légèrement revue à la hausse, environ 2h de plus que le 3GS.

Capacité

On reste sur les classiques 16 Go et 32 Go, pas de 64 Go comme sur l’iPad.

Gyroscope

En plus de l’accéléromètre, un gyroscope à 3 axes permet maintenant, par exemple, de savoir si l’iPhone est retourné ou pas. Cela pourra améliorer l’expérience utilisateur dans les applications.

Ecran Retina

Le nouvel écran de l’iPhone dispose d’une nouvelle technologie : Retina.

Ses spécifications sont hallucinantes :

  • diagonale : 3,5 pouces (comme l’iPhone 3GS)
  • résolution : 960×640 à 326 ppp (la perception des pixels par l’oeil humain s’arrête à 300 ppp)
  • contraste : 800:1
  • revêtement anti-traces (comme sur le 3GS)

Ce nouvel écran va apporter une qualité d’image inégalée.

Sortie vidéo

l’iPhone 4 dispose toujours d’une sortie vidéo compatible avec les câbles vendus séparément par Apple.

Performances

Grâce au processeur A4 (même que sur l’iPad) intégré à l’iPhone 4, les performances vont être grandement améliorées. Sachant que l’iPad est déjà au moins 2 fois plus rapide que le 3GS, ça laisse rêveur.

A titre indicatif, l’un des meilleurs smartphone Android, le Nexus One, affichage des performances quasiment inférieures de moitié d’un 3GS sur la 3D.

En clair, ce sera une bombe !

iOS 4 en natif

L’iPhone 4 intègre nativement iOS 4.

Cela signifie donc qu’il peut offrir :

  • le multi-tâches
  • la gestion des dossiers d’applications
  • l’intégration d’iBooks, le lecteur de livres numériques déjà présent dans l’iPad
  • les fonds d’écran sur la page d’accueil
  • iMovie (retouche vidéo, à acheter séparément)
  • la suppression du bruit ambiant dans le téléphone
  • le contrôle vocal
  • l’accessibilité (pour les non voyants et mal voyants)
  • et tout le confort du système d’Apple

Résistant

La surface de l’écran se plie mais ne se rompt pas.

Un verre protège la face et le dos de l’iPhone.

Ce dernier repose sur une conception en aluminium, donc plus résistante.

Tarifs

Les tarifs sont identiques à ceux du 3GS, soit environ 199 € pour le 16 Go et 299 € pour le 32 Go.

En conclusion

Apple propose encore une fois le meilleur smartphone du moment, à tout point de vue :

  • appareil numérique 5 Mpx avec flash,
  • caméra HD,
  • caméra en façade,
  • système stable et éprouvé, (performant et évolutif en toute sécurité, sans mettre en péril l’intégralité des données stockées comme cela peut se faire chez certains)
  • console de jeux portable connectée et performante, (meilleures performances qu’une DS ou une PSP avec un catalogue s’enrichissant de jour en jour)
  • un catalogue d’applications hyper-complet,
  • un bon lecteur de livres électroniques mobile,
  • fin, léger, solide et performant.

En d’autres termes : mais que reste-t-il aux autres ?

Pour plus d’informations, rendez-vous sur le site d’Apple.

  • Share/Bookmark
juin 09

Un petit billet rapide pour vous annoncer les dates de sorties de la prochaine mise à jour majeure du système iPhone / iPod Touch / iPad.

Déjà, le système change de nom : iPhone OS devient iOS.

Pour les dates de sorties :

  • 7 juin 2010 : sortie réservée aux développeurs,
  • 21 juin 2010 : sortie des versions iPhone et iPod Touch,
  • second semestre 2010 : sortie de la version iPad.

Selon Apple, la mise à jour est disponible gratuitement pour :

  • iPhone 3G
  • iPhone 3GS
  • iPhone 4
  • iPod Touch 2nd
  • iPod Touch 3rd
  • iPad (prochainement)

Pour plus de détails, nous vous invitons à consulter notre précédent article sur l’iOS 4.

  • Share/Bookmark
juin 08

Nombreux sont ceux qui cherchent à savoir quel est le parc d’iPhone OS installé.

Du fait de son tarif (10 € sur iPod Touch), il faut savoir que la migration iPhone OS 2 vers iPhone OS 3 a été relativement lente sur iPod Touch.

Le jour de la sortie, soit le 22 juin 2009, 44 % des utilisateurs ont migré.

Ils étaient environ 75 % a avoir migré au bout de 2 mois.

Aujourd’hui, soit 1 an après la sortie, 95 % des utilisateurs sont sur iPhone OS 3.

Sachant que l’iOS 4 (futur iPhone OS, qui sort le 21 juin 2010) sera gratuit, on peut espérer une adoption plus rapide. Un bon indicateur pour les développeurs !

Source : AdMob, ConvertBot

  • Share/Bookmark
mai 08

L’iPad a été distribué aux Etats-Unis début avril et a rencontré un véritable succès : plus d’1 million d’unités vendues selon Apple.

C’est aujourd’hui au tour du reste du monde de profiter de sa sortie, et en particulier de la France.

Disponibilité

L’iPad sera disponible en pré-commande à partir du 10 mai 2010.

Il sera en vente à partir du 28 mai 2010.

Modèles et tarifs

L’iPad se décline en 2 modèles :

  • Wifi : modèle de base
  • Wifi + 3G : modèle similaire au Wifi, mais incluant également un GPS ainsi qu’une connexion aux réseaux 3G et 3G+

Voici la grille tarifaire :

16 Go 32 Go 64 Go
Wifi 499 € 599 € 699 €
Wifi + 3G 599 € 699 € 799 €

Tarifs 3G

L’iPad Wifi + 3G peut se connecter aux réseaux 3G/3G+ : voici les tarifs de chaque fournisseurs.

Orange

2 forfaits bloqués et sans engagement.

-15% pour les abonnés qui possèdent déjà un abonnement téléphonique chez Orange.

Accès aux hotspots wifi en illimité. (50 000 hotspots en France)

  • 200 Mo (13 h de surf, sans vidéo) : 10 € / mois (8,5 € pour les abonnés au téléphone) soit 50 € / Go
  • 2 Go (130h de surf, sans vidéo) :
    • 39 € / mois (33,15 € pour les abonnés au téléphone) soit 19,50 € / Go
    • 10 € / 300 Mo supplémentaires

SFR

3 formules sans engagements.

Accès aux hotspots wifi en illimité. (1,5 millions de hotspots en France)

Accès à SFR TV.

  • Kit 3G+ Prêt à Surfer (carte SIM) :
    • 3 jours de connexion (75 Mo / jour), soit 225 Mo : 9,90 €
    • recharge de 24 h, soit 75 Mo : 6 € soit environ 80 € / Go
  • Forfait bloqué 3G+ :
    • 250 Mo / mois : 14,90 € soit 59,60 € / Go
    • recharge de 24 h, soit 75 Mo6 € soit environ 80 € / Go
  • Forfait illimité 3G+ :
    • traffic illimité : 29,90 € / mois (tout type de contenu mais débit limité à partir de 1 Go) soit environ 15 € / Go pour un volume mensuel de 2 Go (un peu de vidéo, beaucoup de surf)
  • Share/Bookmark
avr 09

Ca y est, iPhone OS 4.0 est disponible dès à présent pour les développeurs et cet été pour le grand public.

Voici un rapide tour d’horizons les nouvelles fonctionnalités présentées.

Le multi-tâches

Quoi que dispensable dans la grande majorité des cas, il peut être intéressant de pouvoir lancer une application en tâche de fond.

Les cas les plus parlants sont par exemple :

  • l’utilisation de Skype
  • la lecture de musique en streaming
  • et autres

Un nouveau système très ingénieux permet également d’utiliser la géo-localisation en mode basse consommation, en tâche de fond. Ce système utilisant la triangulation GSM, il n’est pas forcément aussi précis qu’un GPS. Cependant, son usage peut être assez sympathique pour :

  • être alerté d’une fête à proximité automatiquement
  • faire une chasse au trésor virtuelle
  • être alerté lorsqu’un automobiliste propose du covoiturage à proximité

Des notifications au sein même de l’appareil sont également possibles, à l’instar de ce que propose le Push actuellement. (ex. alerte pour un RDV)

Multitasking

Une application pourra également facilement s’arrêter et reprendre là où elle en était.

Les dossiers d’applications

Via une interface très simple et très conviviale, il est désormais possible de trier ses applications dans des dossiers. On passe ainsi d’un maximum de 180 applications installées à 2 160 !

Mail

L’application mail a été revue pour offrir de nouvelles fonctionnalités, mais surtout :

  • le support amélioré des pièces jointes
  • le suivi des messages
  • l’accès à une boîte globale

iBooks

A l’instar de ce qui est proposé sur l’iPad, iBooks permet une gestion poussée des livres électroniques sur iPhone.

On peut donc :

  • lire un livre (sans blague!)
  • ajouter des marques-pages (synchronisés avec l’iPad)
  • acheter des livres
  • commencer un livre sur iPad et le continuer sur iPhone de manière transparente

Meilleure intégration en entreprise

Les nouveautés :

  • protection des données améliorée
  • gestion d’un parc d’appareils
  • distribution d’applications sans fil
  • possibilité d’avoir plusieurs comptes Exchange
  • compatible avec Exchange Server 2010
  • compatible avec les réseaux VPN SSL

Game Center

Game Center

Apple est très forte sur les jeux vidéos. Elle a donc créé Game Center qui fournit :

  • un réseau social pour les joueurs
  • la possibilité d’inviter des amis à jouer
  • la gestion des scores
  • l’organisation de tournois

iAd

iAd

Afin de financer le développement d’applications gratuites, Apple fournit directement les outils et le contenu permettant d’intégrer des publicités.

Ce système existe déjà, mais il n’est pas suffisamment intéressant selon S. Jobs. iAd permet de visionner des vidéos, d’intégrer des mini-jeux et autres fonctionnalités très poussées.

En terme de modèle économique, 60 % des revenus sont reversés au développeur.

Les périphériques compatibles

iPhone OS 4.0 est compatible avec :

  • iPhone 3G
  • iPhone 3GS
  • iPod Touch 2nd gen.
  • iPod Touch 3rd gen.
  • iPad (cet automne)
  • et les prochains appareils de la firme

Pour l’instant, seuls l’iPad et l’iPhone 3GS exploitent pleinement l’ensemble des fonctionnalités. (dont le multi-tâches, qui ne sera pas disponible sur les autres appareils)

Conclusion

Les nouveautés de l’iPhone OS 4.0 offrent des possibilités immenses, mais ce n’est que la partie visible de l’iceberg.

En effet, d’un point de vue développement, les possibilités sont encore plus poussées. Kaeli Soft travaille déjà sur la plateforme iPhone OS 4 afin d’être prêts pour sa sortie. (avec les travaux sur iPad, le pôle R&D ne chôme pas !)

N’hésitez pas à nous contacter si vous avez des projets iPhone OS 4 à réaliser !

Le keynote de présentation par S. Jobs

Vous pouvez passer d’une partie à l’autre via le menu du haut.

  • Share/Bookmark
mar 31

Un petit tutoriel rapide sur Subversion (SVN), avec une fonctionnalité qui peut rendre bien des services : l’importation dans un projet SVN d’un dépôt externe. (par exemple, pour intégrer les sources des frameworks Google)

Si vous êtes sous Mac OS X, pensez à définir votre éditeur SVN, par exemple vim, dans /etc/bashrc ou ~/.bashrc :

export SVN_EDITOR=vim

Dans un terminal, allez dans le répertoire dans lequel sera créé un autre répertoire accueillant les fichiers du dépôt.

Ensuite, éditez la propriété externals :

svn propedit svn:externals .

Là, votre éditeur de texte favori doit s’ouvrir sur un fichier vide.

Vous devez indiquer 2 éléments :
- la destination du code source externe
- le chemin pour y accéder

Par exemple, si vous voulez intégrer les sources contenant dans le répertoire https://www.kaelisoft.fr/svn/framework/trunk/mesFichiersSources/ dans le répertoire Kaeli Soft, votre fichier sera structuré ainsi :

Kaeli\ Soft https://www.kaelisoft.fr/svn/framework/trunk/mesFichiersSources/

On sauvegarde.

Il suffit alors d’appeler la commande svn update qui va créer le répertoire et mettre à jour son contenu.

Pratique !

  • Share/Bookmark
mar 27

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 <Foundation/Foundation.h>
 
#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.

  • Share/Bookmark
mar 22

Beaucoup de questions nous ont été posées sur l’iPad ces derniers temps. En effet, cet objet intrigue. Nous allons donc tâcher de répondre à certaines questions.

Un premier pas avec l’iPhone

Aujourd’hui, c’est un fait : tout le monde est séduit par l’iPhone. Les ventes explosent. Les utilisateurs migrent en masse des systèmes BlackBerry et Nokia vers la marque à la pomme. Bref, c’est un véritable succès.

Mais quelle est l’origine de son succès :

  • le prix ? à 600 euros l’appareil, tout le monde s’accordait sur le luxe de l’objet à sa sortie
  • les performances techniques ? tous les processeurs d’appareils mobiles sorties à ce jour se sont basé sur des composants identiques, ou presque

Il semblerait que son origine soit plutôt ce qui le différencie des autres :

  • sa simplicité d’utilisation
  • la richesse de l’AppStore (richesse également qualitative, du fait de la validation du contenu)

En clair, Apple a fait comme les autres, mais en mieux. Et c’est là qu’est la véritable différence : des interfaces simples, conviviales, à échelle humaine. Le lien qui unie l’homme à son outil se ressert, en effaçant magnifiquement la barrière technique.

Donc l’iPad est un gros iPhone ?

Tout comme un match de tennis n’est pas un match de ping-pong où les joueurs sont sur la table, l’iPad n’est pas un gros iPhone ni un gros iPod Touch. Beaucoup de choses changent et d’autres sont malgré tout liées.

La première différence est l’usage : imaginez-vous téléphoner avec un iPad à l’oreille. De même, essayez de réaliser une présentation sur un iPhone, la tâche risque d’être rude…

La taille est également un point de différence : si l’iPhone est un appareil mobile, l’iPad est un appareil nomade. L’iPhone a un usage strictement personnel. l’iPad a lui, de par sa taille, une capacité d’ouverture à l’environnement.

… alors c’est un MacBook, mais en plus petit ?

Ce n’est pas un MacBook non plus :

  • les applications iPad démarrent instantanément
  • l’ensemble de la plateforme iPad repose sur une base iPhone OS, optimisée pour un usage tactile
  • un MacBook peut effectuer des tâches plus complexes, et de manière simultanée, correspondant à un usage plus intensif
  • du fait de la différence d’usage et de matériel, les applications pour ordinateur sont très différentes des applications iPad

Ni un ordinateur, ni un appareil mobile ???

En effet, l’iPad est un appareil à mi-chemin entre les deux.

Le maillon manquant

Prenons un exemple concret : les réseaux sociaux. La plupart d’entre nous adorons visiter Facebook, Twitter et autres.

Au travail, ou à la maison quand on fait les comptes par exemple, on aime bien avoir une petite fenêtre qui apparaît ponctuellement histoire de nous lier au reste du monde. Dans un tel cadre d’activité informatique pure, l’outil est tout à fait approprié.

Dans les transports en commun ou dans la rue, on apprécie également de pouvoir être liés à notre vie virtuelle, pour partager par exemple une photo ou une vidéo de l’instant présent avec ceux qui ne peuvent être là. On sort alors instantanément le compagnon de poche et il fait le lien, aussi rapidement qu’il le défait.

Mais il y a ces moments, où l’appareil mobile est trop petit pour un usage plus immersif et l’ordinateur est trop encombrant (et trop lourd d’usage). On veut par exemple partager entre amis ou en famille des photos trouvées sur les réseaux sociaux pour rester dans le même exemple.

Ce genre de situation est souvent problématique pour beaucoup d’entre nous. Qui ne s’est jamais trouvé dans une situation comme celles-ci :

  • l’ordinateur encombrant pour regarder un film dans le train (même un netbook devient vite pénible du fait de son clavier)
  • le casse-tête pour regarder 3 photos en famille
  • l’ordinateur trop long à charger pour présenter un produit à un client
  • les démonstrations techniques plantées à cause d’une mauvaise version d’un logiciel quelconque
  • les recettes de cuisine sur internet, illisibles sur un mobile et impossibles à positionner avec un ordinateur
  • le programme TV en ligne, petit (et très personnel) sur iPhone et trop encombrant (avec le câble qui passe entre les jambes) sur l’ordinateur
  • le « ha, si j’avais mon ordinateur, je regarderais sur wikipedia » quand on visite un monument

Une tablette tactile classique peut-elle suffire ?

L’idée est séduisante : de nombreux constructeurs ont d’ailleurs réalisé des tablettes tactiles. Techniquement, il n’y a rien de révolutionnaire.

Mais ce n’est pas la technique qui est en question. L’approche d’Apple a été inverse. Plutôt que se demander quels usages techniques pouvaient être réalisés par l’utilisateur, la question a été de savoir comment les tâches réalisées par les utilisateurs au quotidien pourraient être simplifiées grâce à la technique.

Le bug

C’est à ce stade que l’on se rend compte d’un bug qui atteint la majorité des systèmes informatiques.

C’est à l’outil informatique de s’adapter à l’homme, et non l’inverse.

Le renouveau de l’informatique

Jusqu’à aujourd’hui, les utilisateurs d’outils informatiques devaient être technicien pour comprendre leurs outils.

Et c’est bien une aberration : comment peut-on gagner du temps / de la facilité avec un outil qui n’est pas adapté à notre activité ?

Le monde Apple tourne en effet autour de cette philosophie. Mac OS X se veut simple et efficace par définition. Mais le marché en a voulu autrement. Mais le PC fait partie de la culture informatique.

Cependant, le mobile est un marché relativement nouveau. Et l’iPhone a jeté un pavé dans la mare en proposant un outil relativement simple d’utilisation tout en s’avérant aussi efficace que ses concurrents.

Et c’est grâce à cette philosophie de simplicité et d’efficacité que l’iPad va pouvoir combler la plupart des lacunes de l’informatique. L’iPad est la seule tablette qui se veut à la fois esthétique, simple d’utilisation, efficace et relativement abordable.

Le début d’une grande aventure

Si l’iPhone a véritablement marqué l’informatique mobile, l’iPad va s’occuper de l’informatique mobile. Le lien entre les deux est véritablement réduit. En effet, comme l’a relativement bien présenté S. Jobs, une application conçue pour fonctionner sur iPhone pourra également fonctionner sur iPad.

La plupart du temps, Internet fait le lien entre les deux : les réseaux sociaux en sont le parfait exemple. Mais c’est également le cas pour les mails, les documents partagés, les messageries instantanées. Tout ceci est maintenant dématérialisé.

Mais il y a encore une limite à franchir : le lien entre l’iPhone OS (iPhone / iPad) et Mac OS X. Mais cette limite est très mince. La base technique de l’iPhone OS est en effet la même que Mac OS X. Les applications iPhone / iPad seront-elles un jour compatible Mac OS X ? L’avenir nous le dira.

Kaeli Soft : une porte ouverte vers ce nouveau monde

C’est dans cet esprit d’informatique à échelle humaine que fonctionne la société Kaeli Soft. Nous ne faisons pas des outils pour des techniciens mais pour des Hommes.

Aujourd’hui, notre compétence technique, validée par plusieurs succès dont nous garderons la discrétion, nous permet de vous offrir le meilleur de l’informatique d’aujourd’hui et de demain. Nous travaillons dans un soucis d’efficacité et de clarté technique afin d’offrir des prestations reposants sur de solides socles techniques.

Nos compétences sont bien sûr orientées vers la plateforme iPhone OS (iPhone, iPod Touch, iPad) nous permettant d’assurer une conception optimale.

Nous orientons également notre travail afin de fournir des solutions aussi simples à maintenir qu’efficaces à l’usage.

Afin d’être assurés d’obtenir les meilleurs résultats, Kaeli Soft est axée sur 3 pôles de compétence principaux :

  • services web
  • développement iPhone
  • ergonomie des système

Nos prestataires internes et externes proposent le meilleur de leurs compétences en matière de :

  • conception
  • production
  • recherche et développement

De plus, la structure Kaeli Soft, soucieuse d’offrir un soin tout particulier à l’aspect visuel et l’ergonomie des produits de ses clients, travaille en partenariat avec des graphistes et ergonomistes professionnels.

Vous pouvez nous contacter par mail ou via le formulaire prévu à cet effet.

  • Share/Bookmark
mar 22

Un petit post rapide qui pourra peut-être rendre service à certains d’entre vous qui ont été confrontés au même problème que moi.

Vous installer VMWare Fusion 3 afin d’utiliser vos applications Windows sur votre Mac.

Vous récupérez les dernières MAJ, vous ouvrez votre machine virtuelle Windows XP (ou autre) qui fonctionnait parfaitement avec les anciennes versions et là, c’est le drame : le clavier ne fonctionne plus correctement. (_ au lieu de =, – au lieu de +)

Pas de panique !

La démarche à suivre est la suivante :

  • menu VMWare Fusion -> Préférences
  • onglet Clavier et souris
  • décocher Activer les mappages de touche et Activer les mappages de touche pour les langues

Normalement, tout revient en ordre. Vous pouvez reprendre une activité normale.

  • Share/Bookmark
fév 21

Dans ce petit billet, nous allons tâcher de présenter simplement ce que sont les services web REST et le format d’échange JSON.

L’architecture REST

Commençons par le commencement. Une piqure de rappel sur le protocole HTTP n’est jamais malvenue.
Pour faire simple, une requête HTTP se présente ainsi :

  • Une méthode (GET, POST, PUT, DELETE)
  • Un chemin vers une ressource (/index.php, /liste/contenu/)
  • Une version du protocole (1.0 ou 1.1 généralement)
  • Un ensemble de propriétés et valeurs (Content-Type, Length)
  • Un contenu (facultatif)

C’est autour de ce protocole que s’organise l’architecture REST.

Les méthodes HTTP sont donc utilisées ainsi :

  • GET : lecture d’information
  • POST : envoi d’information
  • PUT : mise à jour d’information
  • DELETE : suppression d’information

Par exemple, si je veux lire la liste des adhérents à mon club d’échecs, j’effectue une requête de type GET vers la ressource http://monsite.com/adherents . Si je veux les adhérents ayant plus de 20 ans, je peux faire http://monsite.com/adherents?ageMinimum=20.
De la même manière, si je veux supprimer les adhérents 3 et 4, je peux faire une requête de type DELETE vers http://monsite.com/adherents/3/4.
Si on veut envoyer des informations, on utilise POST ou PUT en passant les informations dans le corps du message.

REST du côté serveur

La plupart d’entre vous utilisent PHP pour interpréter les informations du côté du serveur. Nous allons donc nous baser sur ce langage afin d’expliquer le fonctionnement.

Tout d’abord, il faut savoir quelle est la méthode utilisée. Et là, premier problème : PHP ne semble gérer que les requêtes de type POST et GET, qui sont utilisées par HTML.

Récupérons d’abord la méthode HTTP

Pour cela, il suffit d’utiliser les données du serveur.

// $method sera égal à 'get', 'post', 'put' ou 'delete'
$method = strtolower($_SERVER['REQUEST_METHOD']);

Pas de soucis pour GET et POST

Les méthodes GET et POST ne posent pas de soucis particulier : leur contenu est passé respectivement dans les tableaux $_GET et $_POST.

Pas de soucis non plus pour DELETE

La méthode DELETE envoie ses paramètres dans l’URL ( accessible via $_SERVER['REQUEST_URI'])

Il reste les paramètres de PUT

La méthode PUT envoie elle des informations dans le corps du message. Comment les récupérer en PHP ?
Voici la solution :

// récupération des données brutes
$raw_data = file_get_contents('php://input');
// transformation en tableau à indexes ($put_data)
parse_str($raw_data, $put_data);

Format des échanges : JSON

Les données échangées doivent pouvoir être comprises par le côté serveur comme le côté client.
Pour cela, un format simple avec une forte capacité de compression a fait son apparition : JSON.
JSON s’architecture autour du format des objets ECMAScript (JavaScript) .
Les 2 principales caractéristiques sont :

  • Le principe de clé / valeur
  • L’organisation des données sous forme de tableau

Les types de données valables sont :

  • tableau
  • objet
  • chaîne de caractères
  • valeur numérique (entier, double)
  • booléen (true/false)
  • null

Par exemple, pour récupérer le nom, le prénom et l’âge d’une personne dans un objet :

{
    "nom": "xxxx",
    "prenom": "yyyy",
    "age": 25
}

Une liste d’articles :

[
    {
        "nom": "article a",
        "prix": 3.05,
        "disponible": false,
        "descriptif": "mon article a ..."
    },
    {
        "nom": "article b",
        "prix": 13.05,
        "disponible": true,
        "descriptif": null
    }
]

Vous trouverez plus d’informations sur le format JSON au travers du site officiel : http://www.json.org/json-fr.html

Pour les données binaires (images et autres), il suffit de donner une adresse en lecture et une propriété en écriture.
Par exemple, si je veux envoyer une image avec un descriptif, mes variables POST seront organisées ainsi :

  • json : descriptif au format json
  • image : image au format binaire

La lecture des données au niveau serveur se fait ainsi :

$result = json_decode($json_data);

L’écriture, basée sur un tableau à indexes, se fait ainsi :

$json_str = json_encode($data_array);

Vous trouverez toutes les informations nécessaires sur http://www.php.net/manual/fr/ref.json.php.

Pour finir, le type de données utilisé généralement pour décrire un contenu JSON est application/json.

Avec ceci, vous avez de quoi réaliser des services web performants et simples à mettre en oeuvre !

  • Share/Bookmark