IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

Que faut-il apprendre pour programmer sous Android ?


Sujet :

Android

  1. #1
    Membre averti
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2013
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2013
    Messages : 25
    Par défaut Que faut-il apprendre pour programmer sous Android ?
    Bonjour a tous
    Je me tourne vers vous pour avancer dans mes recherche
    Je voudrais programmer pour android
    Mais que faut il savoir pour cela ?
    Java je suppose mais quel partit ?
    J'ai un livre chez moi "le programmeur" qui date de 98 je crois
    Il traite des applet , de la prog objet , boucle , thread , heritage ....
    Dois je tout apprendre ?
    Pour android j'ai chez moi le devellopement android pour les null dont j'ai fait une appli (couper et activer le son ) mais sans trop comprendre surement a cause de mon manque de connaissance en java
    Jaimerais creer des appli style des photos d'animaux avec du son pour mon fils
    Couper mon 3g lorque mon smartphone se connecte au wifi
    Merci de vos conseil

  2. #2
    Expert confirmé

    Avatar de Feanorin
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    4 589
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 4 589
    Par défaut
    Bonjour,

    tu peux te référer aux tutoriels et faq sur ce site ainsi que la page livres si tu souhaites en acheter un.
    http://android.developpez.com/cours/
    http://android.developpez.com/livres/
    http://android.developpez.com/faq/

    Ensuite si tu as des questions n'hésitent pas à les poser sur le forum, tout en faisant une recherche préalablement pour savoir si une discussion sur le sujet n'a pas été ouverte

  3. #3
    Membre averti
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2013
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2013
    Messages : 25
    Par défaut
    Merci a toi

    En faite le soucis est que je vois des sites de partout pour apprendre le java ou le développement Android mais par ou commencer pour suivre le bon chemin ?
    Je suis a l'île de la reunion donc pour les commandes de livre c'est très embêtant.
    Je pense pour apprendre le java il me faudra env 3 mois (la base)
    Et autant pour android

  4. #4
    Expert confirmé

    Avatar de Feanorin
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    4 589
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 4 589
    Par défaut
    Bonjour,

    Pour l'instant quel son tes compétence en développement ?

    Ensuite commence à faire un hellowWorld et regardes ces deux articles
    http://nbenbourahla.developpez.com/t...s-application/

    http://nbenbourahla.developpez.com/t...ation-android/


    pour java tu trouveras des cours et tutoriels Java sur la page Java
    http://java.developpez.com/

  5. #5
    Membre Expert
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Par défaut
    Le SDK Android etant basé sur Java 5.0 ou supérieur, ton livre est désuet, tant sur le plan du langage (Generics par exemple) que sur les usages (les applets appartiennent au passé)

    J'insiste car de très nombreuses questions sur ce forum Android sont en réalité liés à un manque de maîtrise du langage Java. La complexité inhérente apportée par le framework Android n'est que le révélateur de ces lacunes. Lié à ce premier point, les faiblesses en conception objet sont également un problème. Or la structure du code Android fait un usage intensif de designs patterns (Builder, Singleton, Observer,...), qui sont des solutions de conception objet subtiles.

    Enfin, il y a une part de connaissance générale : qu'est-ce qu'un processus ? qu'est ce qu'une communication client/serveur ? que fait un client et que fait un serveur ? à quoi sert XML ? Toutes ces questions que tout le monde prétends maîtriser. Vu les questions récurrentes du forum, ce n'est visiblement pas le cas.

    A titre d'exemple, la classe AsyncTask est assez révélatrice du niveau de quelqu'un puisqu'elle oblige à se poser de bonnes questions, tant sur le langage Java que sur le fonctionnement d'Android :
    Code java : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    private class DownloadFilesTask extends AsyncTask<URL, Integer, Long> {
         protected Long doInBackground(URL... urls) {    }
         protected void onProgressUpdate(Integer... progress) {    }
         protected void onPostExecute(Long result) {   }
     }
    • pourquoi on écrit une classe en extension d'une autre + redéfinition ?
    • pourquoi on a le droit d'instancier (new) cette classe alors que ce n'est pas permis pour une Activité ou un Service ?
    • pourquoi on utilise la généricité (3 méta-types ) ici ?
    • pourquoi on utilise un paramètre variable (URL...) ici ?
    • pourquoi on est obligé de l'utiliser pour réaliser une tâche ?
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

  6. #6
    Membre averti
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2013
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2013
    Messages : 25
    Par défaut
    Merci pour les cours et tutoriels programmation Android c'est super.

    Pour le moment j'ai deja fait des hello world (en java et android)
    Merci pour le logcat j'avais pas assimilé sont utilisation

    Sous android je sais faire des bouton (mais il sont vide il naffiche rien )
    J'ai deja fait une appli (celle de mon livre ) qui active et desactive le son
    Mais sans comprend le code

    Pour java mon livre fait 500 page je pense qu'il me seras utile mais je doit tout savoir en java ?

  7. #7
    Membre averti
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2013
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2013
    Messages : 25
    Par défaut
    Citation Envoyé par Hephaistos007 Voir le message
    Le SDK Android etant basé sur Java 5.0 ou supérieur, ton livre est désuet, tant sur le plan du langage (Generics par exemple) que sur les usages (les applets appartiennent au passé)

    J'insiste car de très nombreuses questions sur ce forum sont en réalité liés à un manque de maîtrise du langage Java. La complexité inhérente apportée par le framework Android n'est que le révélateur de ces lacunes. Lié à ce premier point, les faiblesses en conception objet sont également un problème. Or la structure du code Android fait un usage intensif de designs patterns (Builder, Singleton, Observer,...), qui sont des solutions de conception objet subtiles.

    Enfin, il y a une part de connaissance générale : qu'est-ce qu'un processus ? qu'est ce qu'une communication client/serveur ? que fait un client et que fait un serveur ? à quoi sert XML ? Toutes ces questions que tout le monde prétends maîtriser. Vu les questions récurrentes du forum, ce n'est visiblement pas le cas.

    A titre d'exemple, la classe AsyncTask est assez révélatrice du niveau de quelqu'un puisqu'elle oblige à se poser de bonnes questions, tant sur le langage Java que sur le fonctionnement d'Android :
    Code java : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    private class DownloadFilesTask extends AsyncTask<URL, Integer, Long> {
         protected Long doInBackground(URL... urls) {    }
         protected void onProgressUpdate(Integer... progress) {    }
         protected void onPostExecute(Long result) {   }
     }
    • pourquoi on écrit une classe en extension d'une autre + redéfinition ?
    • pourquoi on a le droit d'instancier (new) cette classe alors que ce n'est pas permis pour une Activité ou un Service ?
    • pourquoi on utilise la généricité (3 méta-types ) ici ?
    • pourquoi on utilise un paramètre variable (URL...) ici ?
    • pourquoi on est obligé de l'utiliser pour réaliser une tâche ?
    Ola tout doux lol
    Bon bah dison que je debute il est imperatif de savoir java !

  8. #8
    Expert confirmé

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Billets dans le blog
    3
    Par défaut
    Développer pour Android est un vaste programme... et tout le monde ne s'accorde pas sur ce que cela veut dire.

    Prenons par exemple la Programmation Orienté Objet (quel que soit le langage d'ailleurs, même LISP !) et comme dit par Hephaistos ses "patterns" les plus récurrents. La programmation Java en soit ne diffère pas tant que C# (voire C++ ou Objective-C), et les patterns sont les mêmes quels que soient les langages utilisés. La connaissance "instinctive" de ces patterns permet d'accélérer grandement la courbe d'acquisition des principes d'Android (ainsi on n'est pas étonné de voir des interfaces View.OnClickListener, des AsyncTask, des Handler...). Mais il n'est nul besoin d'en maîtriser tous les aspects pour appréhender Android de manière dilettante.

    Donc pour un Hello World... ça va...

    Par contre, quand on va rentrer dans des aspects plus "subtils", c'est là que la plupart des "programmeurs" Android sont largués. Des concepts pourtant commun à tous les environnements (par exemple le "on ne fait jamais de 'sleep()' dans un thread) se retrouvent particulièrement exacerbés quand le moindre mA de courant de batterie est important. Il n'est pas rare de voire une application désertée par ses utilisateurs car son utilisation 10 minutes enlevait 30% de la batterie !

    Mais je te rassure, la même problématique se pose quelque soit la plateforme... même pour des sites "mobiles" sous HTML5 + Javascrip... Et vu que les quadcore fleurissent dans nos bécanes, une appli mal programmée se voit "moins", et du coup, on va voir fleurir des sites web qui vont bouffer la batterie de nos téléphones sans que l'ont s'en rende compte. Cela arrive déjà.

    Pour faire court....
    Je conseille donc de:
    * lire des cours/tuto sur l'orienté-objet et quelques concepts classiques. L'idéal est d'avoir des tuto en "pseudo-langage", pour bien faire la différence entre un concept dû au langage, et un concept de programmation.
    * lire des tutos/articles sur le langage Java. Celui ci est assez simple, et le fait qu'il soit fortement typé aide grandement les débutants. Nul besoin dans un premier temps de rentrer dans les détails subtils de la reflexion, ou du garbage-collector.
    * commencer les tutos android, à commencer par la "vie" d'une activité et d'une application, et leur interaction avec le système (logcat ?). Comprendre ceci aide grandement à savoir "ou mettre son code".
    * apprendre à utiliser le logcat, les stacktrace d'exception.
    * Puis aller plus loin avec Android: les ressources, la construction de views (layouts & inflate), les ListView (et son recyclage des views), les "loaders" et les async-task.
    * Finir avec les concepts plus avancés comme l'ActionBar, les Fragments...

    Ensuite il reste quelques petits bouts:
    * SQL pour SQLiteDatabase, la méthode unique pour stocker des "listes" de données localement.
    * HTTP/REST XML/JSON pour faire des accès à des webservice => ce qui implique les Loader/AsyncTask vus précédemment.
    * Qui dit webservice dit codage éventuellement de ceux-ci (que ce soit PHP/MySQL, ou Jakarta-Tomcat/Oracle)

    etc...

  9. #9
    Membre averti
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2013
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2013
    Messages : 25
    Par défaut
    Merci a toi bon sa va etre longt (je vais essayer de ne pas desesperer)
    La je commence avec l'excellent livre java pour les enfant, les parents et les grand parents du site même.
    Il est bien détaillé !



  10. #10
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Octobre 2013
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Octobre 2013
    Messages : 3
    Par défaut
    La discussion date un peu, mais comme elle apparait toujours sur Google...

    Pour commencer vraiment la programmation sur Androïd avec des livres, le mieux est sans nul doute de prendre quelques livres de français de base; orthographe, grammaire...(pour toi, ne pas hésiter à taper dans les livres de primaire genre CM1) et persévérer.
    Ensuite, tes lectures sur la programmation te paraitront beaucoup plus faciles(sauf si elles ont été écrites par un ingénieur bien sur !!!). Voir les cours et tutoriels pour apprendre la programmation Android.
    Sinon apprendre l'anglais serait bien sur l'idéal mais ne te servirait pas forcément dans la vie de tous les jours, donc faire le "forcing" sur le Français me semble indispensable.

Discussions similaires

  1. Apprendre à programmer sous Android
    Par Toufik.Teb dans le forum Android
    Réponses: 1
    Dernier message: 15/12/2014, 09h32
  2. Que faut il ajouter pour un Réseau WiFi pour 2 PC
    Par zakuli dans le forum Hardware
    Réponses: 7
    Dernier message: 18/12/2005, 10h43
  3. Que faut-il installer pour débuter ?
    Par Shaÿna dans le forum Prolog
    Réponses: 1
    Dernier message: 09/12/2005, 16h54
  4. [juridique] Que faut-il faire pour etre mandataire?
    Par Death83 dans le forum Droit
    Réponses: 5
    Dernier message: 24/11/2005, 17h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo