Aller au contenu


Photo

Androïd Studio : Livre, formation, transition. Le retour du ";"

Android

  • Please log in to reply
13 réponses à ce sujet

#1 iLandes

iLandes

    Torréfacteur de fèves

  • Membre
  • PipPipPipPipPip
  • 852 messages
  • LocationLandes

Posté 04 juin 2016 - 15:03

Salut à tous,

 

En pleine reconversion professionnelle je me forme au développement. Je commence à être à l'aise avec le développement iOs et Mac Os. J'ai quelques applications à mon actif. J'ai réussi à apprendre en autodidacte, cela dit je suis développeur dans l'âme depuis que j'ai 12 ans. J'ai commencé sur ZX81 (pour ceux qui connaissent).

 

Beaucoup de chemin parcouru depuis là. Même si je n'ai pas choisi le meilleur moment car j'ai subi le passage d'Objectif C à swift. A peine ai-je commencé à comprendre les mécanismes d'Objective C que Swift était annoncé. Je me suis rendu à une Cocoahead ou nombre de dév. ne donnait pas cher de swift. De mon côté j'ai foncé et je ne le regrette pas. J'aimerais bien revoir ceux qui pariais sur l'abandon de swift par apple dans les mois qui devaient suivres.

 

Grâce à ce site, aux livre d'aaron Hillegass, mais aussi à iTunes university et à la plateforme FUN (que certain ici connaissent) j'ai pu asseoir des basses solides pour me lancer dans le développement.

 

Aujourd'hui force est de constater qu'il me faudrait aussi des bases dans l'univers Androïd. C'est pourquoi je lance ce sujet pour savoir comment de votre côté vous développez dans cette environnement, quels sont les livres, les formations internet et autres tutos que vous conseillez.

 

Merci de vos retours

 

PS : J'ai déjà compris que j'allais faire face au retour du ; dans mon code  ::)


  • muqaddar aime ceci

--

seb@stien as iLandes

Linked In, Twitter, GitHub, StackOverFlowiLandes.fr

 

Applications : Plages.TVGirondins33Jardiner avec la luneDVRGVMidi Note Converter, FreeIMC.

 

It's not a bug, it's a feature.

Feature : A bug as described by the marketing department (Apple II Reference Manuel 1979 page 180)

 


#2 Draken

Draken

    Mouleur de chocolats

  • Artisan chocolatier
  • PipPipPipPipPipPipPipPip
  • 8 804 messages
  • LocationParis

Posté 04 juin 2016 - 16:07

Un prérequis indispensable pour Android :

 

Fichier joint  9292997-14848557.jpg   213,38 Ko   4 téléchargement(s)

 

 

 


  • Eric P., iLandes, Joanna Carter et 2 autres aiment ceci

Garçon, servez-moi un Covfefe avec du lait de soja, sans OGM ..

Et faites régler la climatisation, il fait bien chaud, ici !

 

 

Éternel Novice !  :baby:

Tueur de poneys !  :(

 

Faire simple .. c'est compliqué !

Faire compliqué .. c'est simple !

 

Un MOOC (cours en ligne - dont je ne suis pas l'auteur) gratuit sur la programmation en Obj-C et en Swift 3, démarrant le 14 Mars 2017 :

https://www.edx.org/...onnex-progios1x

 

Des dizaines d'heures de tutoriels vidéo en français (je ne suis pas l'auteur) pour apprendre à développer en Obj-C et Swift : http://pagesperso-sy...don/5I452-2014/

 

 


#3 iLandes

iLandes

    Torréfacteur de fèves

  • Membre
  • PipPipPipPipPip
  • 852 messages
  • LocationLandes

Posté 04 juin 2016 - 17:42

Un prérequis indispensable pour Android :

 

attachicon.gif9292997-14848557.jpg

Moi qui ne prend jamais de médicament je suis mal parti…


--

seb@stien as iLandes

Linked In, Twitter, GitHub, StackOverFlowiLandes.fr

 

Applications : Plages.TVGirondins33Jardiner avec la luneDVRGVMidi Note Converter, FreeIMC.

 

It's not a bug, it's a feature.

Feature : A bug as described by the marketing department (Apple II Reference Manuel 1979 page 180)

 


#4 Draken

Draken

    Mouleur de chocolats

  • Artisan chocolatier
  • PipPipPipPipPipPipPipPip
  • 8 804 messages
  • LocationParis

Posté 04 juin 2016 - 17:56

Il va falloir t'y mettre, le dév Android étant une sacré pilule à avaler !


Garçon, servez-moi un Covfefe avec du lait de soja, sans OGM ..

Et faites régler la climatisation, il fait bien chaud, ici !

 

 

Éternel Novice !  :baby:

Tueur de poneys !  :(

 

Faire simple .. c'est compliqué !

Faire compliqué .. c'est simple !

 

Un MOOC (cours en ligne - dont je ne suis pas l'auteur) gratuit sur la programmation en Obj-C et en Swift 3, démarrant le 14 Mars 2017 :

https://www.edx.org/...onnex-progios1x

 

Des dizaines d'heures de tutoriels vidéo en français (je ne suis pas l'auteur) pour apprendre à développer en Obj-C et Swift : http://pagesperso-sy...don/5I452-2014/

 

 


#5 Céroce

Céroce

    Mouleur de chocolats

  • Contrôleur d'arômes
  • 5 325 messages
  • LocationSaint-Leu-d'Esserent / France

Posté 06 juin 2016 - 07:54

Je me suis rendu à une Cocoahead ou nombre de dév. ne donnait pas cher de swift. De mon côté j'ai foncé et je ne le regrette pas. J'aimerais bien revoir ceux qui pariais sur l'abandon de swift par apple dans les mois qui devaient suivre.

CocoaHeads Paris, non ?
Je dirais que beaucoup de développeurs sont de purs techniciens et ne comprennent pas les aspects stratégiques. Malgré tous les défauts de Swift il y a deux ans, il était tout à fait clair qu'Apple n'allait pas l'abandonner, ne serait-ce qu'à cause de l'investissement dans llvm qui avait déjà était fait depuis plusieurs années.
 
 

Aujourd'hui force est de constater qu'il me faudrait aussi des bases dans l'univers Androïd. C'est pourquoi je lance ce sujet pour savoir comment de votre côté vous développez dans cette environnement, quels sont les livres, les formations internet et autres tutos que vous conseillez.

Personnellement, j'avais essayé de refaire les exercices que je donnais en formation, en utilisant essentiellement la doc de Google. Des choses simples, comme afficher une table, avec des sections — beaucoup plus dur —, puis de la navigation entre vues, essayer de faire des rotations d'écran. C'est en codant qu'on devient codeur! Android s'est beaucoup inspiré d'iOS, même dans les API.
RenaudPradenc.com Je suis développeur iOS & Mac indépendant.

#6 iLandes

iLandes

    Torréfacteur de fèves

  • Membre
  • PipPipPipPipPip
  • 852 messages
  • LocationLandes

Posté 06 juin 2016 - 08:50

CocoaHeads Paris, non ?
Je dirais que beaucoup de développeurs sont de purs techniciens et ne comprennent pas les aspects stratégiques. 

 

A la fin de la réunion certain étaient prêt à parier et à mettre sur la table leurs parties les plus intimes, enfin une des deux ;-) 

S'ils ne sont pas bon stratège, ils n'en restent pas moins homme.

 

Personnellement, j'avais essayé de refaire les exercices que je donnais en formation, en utilisant essentiellement la doc de Google. 

 

Les solutions présentées par Google ne sont pas à jour (apparement il y a pas mal de mise à jour au niveau des layout) : https://developer.an...tapp/index.html

 

Ce que j'ai trouvé de mieux pour le moment c'est :

https://www.raywende...-android-studio


--

seb@stien as iLandes

Linked In, Twitter, GitHub, StackOverFlowiLandes.fr

 

Applications : Plages.TVGirondins33Jardiner avec la luneDVRGVMidi Note Converter, FreeIMC.

 

It's not a bug, it's a feature.

Feature : A bug as described by the marketing department (Apple II Reference Manuel 1979 page 180)

 


#7 NiClou

NiClou

    Ecabosseur en fèves

  • Membre
  • PipPipPipPip
  • 315 messages

Posté 06 juin 2016 - 14:10

Je me suis rendu à une Cocoahead ou nombre de dév. ne donnait pas cher de swift. De mon côté j'ai foncé et je ne le regrette pas. 

 

 

Au contraire, et je m'avance peut être mais je ne donne pas cher de l'objective C.

Je pense que d'ici 8 ans (c'est cool 8 nan?), l'objective C ne sera qu'un fardeau que beaucoup d'entreprises traineront comme un boulet à la cheville d'un prisonnier.

Edit: 8 puisque ça fait bientôt 2 ans que swift est sorti et que 10 ans de plus pour l'objective C alors que le petit nouveau est arrivé devrait tenir de la prouesse.



#8 Larme

Larme

    Broyeur de fèves

  • Artisan chocolatier
  • PipPipPipPipPipPip
  • 1 981 messages
  • LocationParis

Posté 06 juin 2016 - 14:21

Au contraire, et je m'avance peut être mais je ne donne pas cher de l'objective C.

Je pense que d'ici 8 ans (c'est cool 8 nan?), l'objective C ne sera qu'un fardeau que beaucoup d'entreprises traineront comme un boulet à la cheville d'un prisonnier.

Edit: 8 puisque ça fait bientôt 2 ans que swift est sorti et que 10 ans de plus pour l'objective C alors que le petit nouveau est arrivé devrait tenir de la prouesse.

 

Je ne sais pas.
J'aime beaucoup l'Objective-C, et en me tenant encore un peu à l'écart du Swift pour l'instant, je trouve qu'il y a encore trop de modifications de ce dernier, même si d'un autre côté, c'est plutôt sympa d'écouter la communauté. Mais quand on regarde que le @selector() a changé quelques fois, etc, c'est un peu chiant je trouve d'avoir de la compatibilité à chaque fois. Et revenir sur des « vieux projets » oubliés (genre le projet qui se met légèrement à jour chaque année) risque d'être assez rébarbatif en fin de compte.


Tant que vous avez des dents, mangez des pommes. Tant que vous avez de l'argent, croquez la Pomme.

#9 Céroce

Céroce

    Mouleur de chocolats

  • Contrôleur d'arômes
  • 5 325 messages
  • LocationSaint-Leu-d'Esserent / France

Posté 06 juin 2016 - 15:12

À mon avis, Objective-C disparaîtra parce qu'il sera de moins en moins adapté à la manière de travailler. Par exemple, on constate déjà l'émergence de la programmation réactive; or les outils apportés par Swift — tels que la programmation fonctionnelle, les structs, les protocoles, voire la surcharge d'opérateur — rendent la conception de tels systèmes plus simple, et la syntaxe bien moins lourde.

L'Objective-C moderne (avec ARC et les blocs) reste pertinent. Mais à terme, ce sera l'absence d'implémentation des nouveaux paradigmes qui handicapera Objective-C.
  • NiClou aime ceci
RenaudPradenc.com Je suis développeur iOS & Mac indépendant.

#10 iLandes

iLandes

    Torréfacteur de fèves

  • Membre
  • PipPipPipPipPip
  • 852 messages
  • LocationLandes

Posté 06 juin 2016 - 17:54

Vos commentaires sont intéressants mais ils s'éloignent du sujet ;-)

 

Là il s'agit de java mais peut-être qu'un jour les googles' truc comprendrons le swift.

 

Alors n'hésitez pas si vous aves des pistes pour l'apprentissage et surtout à faire part de votre expérience. Développez-vous sur les deux plate-formes ? etc…


--

seb@stien as iLandes

Linked In, Twitter, GitHub, StackOverFlowiLandes.fr

 

Applications : Plages.TVGirondins33Jardiner avec la luneDVRGVMidi Note Converter, FreeIMC.

 

It's not a bug, it's a feature.

Feature : A bug as described by the marketing department (Apple II Reference Manuel 1979 page 180)

 


#11 jojolebg

jojolebg

    Cueilleur de cabosses

  • Membre
  • PipPipPip
  • 195 messages

Posté 08 juin 2016 - 16:02

J'ai fais un peu de dev Android, et je suis très partager.

Je trouve que la conception de leur api est très bien pensé sur le papier, mais qu'en pratique c'est une plaie sans nom pour le développement.

 

 

Dans Android, il y a la notion d'Activity (le pendant des UIViewController) et d'Intent (Une sorte de description d'une action, un peu comme un pushViewController).

 

Chaque Activity représente un écran visible de l'application, et une activité doit émettre un Intent pour demander à Android d'ouvrir un autre écran. Sur le papier c'est bien conçus, une application peut demander via l'Intent d'ouvrir l'écran précis d'une autre application (si l'autre application fourni des Activity publiques), ou peut créer des Intent génériques du style "Ouvrir une image", ou "Partager un contenu textuel" etc..., et chaque Activity de chaque application doit être déclarées dans le manifest (l'équivalent du Info.plist), en indiquant les types d'Intent que l'application est capable de gérer.

 

Mais en pratique, pour pouvoir gérer ça, chaque Activity s'exécute dans un processus indépendant, ce qui fait que deux Activity ne peuvent pas partager directement des données non serializables (et de préférence, si les données sont sérialisables, ne pas miser sur des gros volumes de données, car la sérialisation désérialisation peut être gourmande, et cela ce fait vite ressentir).

Par exemple le pattern Delegate courant en développement Cocoa (le delegate classique, ou via des callback) pour faire communiquer deux UIViewController n'est pas possible sur Android, et la moindre interaction entre deux Activity (deux écrans donc) est une plaie à gérer.

Pour faire communiqué deux Activity, on se retrouve à créer une Intent, demander au context d'application de gérer l'intent, et implémenter une méthode dans l'Activity pour gérer le retour de l'Intent. Et tous les retours d'Intent se gèrent donc au même endroit. Ce qui fait qu'on se coltine tout un tas de switch pour gérer tous les types de retour d'intent possibles, d'activity différentes.

Sans compter qu'il faut penser au cycle de vie des Activity pour gérer correctement les mise en background, foreground, changement de rotation, background prolongé etc..., et gérer correctement le cycle de vie n'est pas évident, (surtout quand on a des appels réseaux à faire etc...).

Par exemple, j'ai l'activité ListActivity, qui affiche une liste de tweet, admettons que je scrolle tout en bas de la liste, et que j'appuis sur un tweet, je vais lancer un Intent demandant à Android d'afficher l'activité TweetActivity avec le tweetId en question. Une fois que je reviens en arrière, sur la ListActivity, si je ne gère pas bien le cycle de vie, ma ListActivity est restauré à l'état initial, donc scroller tout en haut. Si la ListActivity a commencer une requête réseau, que j'ouvre TweetActivity avant que la requête de revienne, ça va planté, car ListActivity est mis sur stop, et la requête va revenir quand ListActivity est sur stop, et qu'il faller mettre en pause la requête (ou la stopper) pour éviter ce problème.

Il n'y a qu'a voir les librairies qui facilite les appels http, pour se rendre compte de la galère de les utiliser.

 

Et bien sur, impossible d'afficher une activité dans une autre, donc pour faire des UIViewController réutilisables faut oublier, ou utiliser les Fragment (une sorte d'Activity miniature, qu'une activity peut afficher comme une vue, mais qui possède son propre cycle de vie), mais les Fragments ne sont pas implémentée par toute les versions d'Android (à l'époque ou j'avais fais de l'android c'était tout récent), et il faut utiliser des lib de compatibilité qui sont assez buggés, et on se retrouve à faire pleins de hack pour gérer les bugs.

 

 

Tous n'est pas noir, Il y a de bonnes choses, comme le positionnement des vues dans des Layout, quand on vient d'iOS avec ces autosizing (avant l'apparition des AutoLayout), c'est juste un miracle de facilité de pouvoir positionner ces vues à l'écran. Surtout que la fragmentation est énorme sur Android, et c'est essentiel d'avoir un design responsive, car les tailles d'écrans sont très différentes les unes des autres.

Ou encore le possibilité de créer des thèmes utilisables par les vues, etc...

 

 

Pour ma part, je fais maintenant du dev React-Native, je suis en train de bosser sur application iPhone en React-Native, suivra une version Android. Dès que l'application sera sorti, je ferai surement un retour d'experience sur le forum.

Mais c'est une techno que je conseil. (React-Native, avec Flowtype, et redux)


Modifié par jojolebg, 08 juin 2016 - 17:18 .

  • Céroce et iLandes aiment ceci

#12 Draken

Draken

    Mouleur de chocolats

  • Artisan chocolatier
  • PipPipPipPipPipPipPipPip
  • 8 804 messages
  • LocationParis

Posté 08 juin 2016 - 16:38

Merci pour ce retour d'expérience, jojo.


Garçon, servez-moi un Covfefe avec du lait de soja, sans OGM ..

Et faites régler la climatisation, il fait bien chaud, ici !

 

 

Éternel Novice !  :baby:

Tueur de poneys !  :(

 

Faire simple .. c'est compliqué !

Faire compliqué .. c'est simple !

 

Un MOOC (cours en ligne - dont je ne suis pas l'auteur) gratuit sur la programmation en Obj-C et en Swift 3, démarrant le 14 Mars 2017 :

https://www.edx.org/...onnex-progios1x

 

Des dizaines d'heures de tutoriels vidéo en français (je ne suis pas l'auteur) pour apprendre à développer en Obj-C et Swift : http://pagesperso-sy...don/5I452-2014/

 

 


#13 iLandes

iLandes

    Torréfacteur de fèves

  • Membre
  • PipPipPipPipPip
  • 852 messages
  • LocationLandes

Posté 04 décembre 2016 - 08:39

Je relance un peu le sujet car je continue ma formation sous Androïd, notamment avec des cours sur Coursera. Ce qui me manque aujourd'hui c'est l'accès à un forum, comme celui-ci consacré à Androïd ainsi que l'accès à des objets de base comme on en trouve sur cocoapods ou cocoacontrols

 

Des idées ? Des conseils ?


--

seb@stien as iLandes

Linked In, Twitter, GitHub, StackOverFlowiLandes.fr

 

Applications : Plages.TVGirondins33Jardiner avec la luneDVRGVMidi Note Converter, FreeIMC.

 

It's not a bug, it's a feature.

Feature : A bug as described by the marketing department (Apple II Reference Manuel 1979 page 180)

 


#14 muqaddar

muqaddar

    Mouleur de chocolats

  • Maître Chocolatier
  • 10 921 messages

Posté 05 décembre 2016 - 11:19

Pas de forum francophone sur Android ?

 

Pour ma part, j'espère et je prie pour qu'on puisse coder en Swift sur Android un jour (ça fera ça de moins à apprendre, le java... il restera les API)


Mes applications iOS: VinoCell





Also tagged with one or more of these keywords: Android

0 utilisateur(s) li(sen)t ce sujet

0 membre(s), 0 invité(s), 0 utilisateur(s) anonyme(s)