Salut,
je pense à mon prochain projet, un site internet développé en cakephp...
Mais j'aimerai aussi en faire une appli pour smartphone. Je n'ai jamais fais cela. Comment dois je m'y prendre...
Y a t'il une passerelle entre cakephp et une appli ou tout est différent et tout reste a développer différemment?
Merci par avance,
Bonjour,
Personnelement vu ton cas je te suggère (si tu est à l'aise avec la POO et le javascript) : Sencha touch.
Il s'agit d'un framework qui utilise le coeur d'ExtJS mais pensé ici pour le mobile.
Une fois ton application développée tu peut la compiler via leur compilateur (et tu aura une appli Android et IOS) ou bien utiliser PhoneGap et ainsi pouvoir cibler en plus Windows Phone, Blackberry, Symbian, etc...
Mais là où ça devient intéraissant pour toi c'est que des développeurs ont eu l'idée de créer un "module" qui permet de lier l'architecture MVC de CakePHP à celle de Sencha Touch : Bancha...
L'avantage que tu trouvera aussi dans la solution que je te propose c'est que tu n'aura pas à te taper l'apprentissage des langages Java, Objective-C, C, C#, C++, etc....
L'inconvénient d'une application compilé Sencha Touch est un peu plus gourmande en mémoire (sur le téléphone) vis-à-vis d'une application native... mais le rendu est assez exceptionnel car beaucoup de choses ont été pensé pour avoir un rendu et une navigation similaire à celle d'une application native.
En espérant avoir aussi pu répondre à ta question et aidé dans ton choix ;)
Shadow
PS : il faut bien penser utiliser Chrome pour tester avec ce framework car il utilise les propriétés de Webkit pour fonctionner
Salut,
CakePHP est codé en PHP (d'où son nom), une application Android en Java et une application iPhone en Objective-C. Tu vas donc devoir maîtriser trois langages. Idem pour la base de données, CakePHP utilise MySQL par défaut, Android et iPhone SQLite. Ce sont quand même deux bases de données relationnelles donc le fonctionnement sera similaire.
Tu as deux moyens de gérer ça, où tes applis sont indépendantes et font des appels au serveur de manière ponctuelles, où elles sont totalement dépendantes de ton serveur.
Dans le premier cas, l'avantage c'est que tu travailles en mode déconnecté, au lancement de l'application, tu récupères les nouvelles valeurs crées sur le serveur, tu envoies les nouvelles valeurs crées sur le mobile. Ensuite toute l'intelligence de ton application est dans ton application elle même. Tu as ainsi une notion de notification, push à prendre en compte (un peu compliquée pour un débutant). Par ailleurs, tu codes la même chose deux fois, une fois sur le serveur, une deuxième sur le mobile.
Pour le deuxième cas, tu appelles l'API à chaque fois avec récupération des entrées de la base et affichage. Techniquement, ton intelligence est sur le serveur, et ton mobile n'est qu'un écran affichant ces valeurs. Le soucis c'est que sans Internet on ne fait rien. De plus l'application sera très looooooongue du fait de ces appels.
Concrêtement, les applications les plus fonctionnelles sont celles codées dans le 1er cas.
Pour faire le dialogue client/serveur, il te faut créer une API. Tu peux donc utiliser l'architecture REST pour appeler ton api via des url. Tu peux regarder des api bien connues comme Twitter, lastfm ou Instagram par exmple, pour comprendre le principe d'une API et t'en inspirer.
Hi,
Alors,
Si je comprends bien, tu veux faire après ton site (cakePHP), une app qui va chercher des infos sur ton site ?
Et non pas une WebApp ? (Une app qui ne fait qu'afficher dans un format adapter le site).
Si c'est la première, le développement est complètement différent.
Pour développer pour Android:
Pour iOS:
Pour Autre...
+(Blackberry)
@+
Keisuke
Merci bien à tout les deux, je vais me pencher la dessus très prochainement.
Je vous tiens au courant.
++
Merci shadow j'avou que ta réponse m'enchante. Bien que je connais les langages C, C++, Java je me voyais un peu mal commencer à m'y replonger.
Ta solution est la plus simple pour moi.
Néanmoins je garde en tête celle de Keisuke et prbaron.
Merci à vous 3