Preface

Ce document est constitué de notes permettant le suivi d’un ensemble de cours sur la programmation Java. (Attention: notre propos ne concerne pas les versions de Java antérieure à la version 9!: la version sur laquelle s’appuie le support est actuellement Java 10)

Cet ensemble de notes est un "support" : rien ne remplace le suivi effectif de cours avec un animateur en chair et en os. La rédaction en est un compromis en termes de formulation et en terme de niveau:

Si le titre général est Java: pourquoi et comment merci de bien noter que le "pourquoi" est bien plus important que le "comment" … Si vous oubliez le "comment" les documentations et leur bon usage sont là pour vous aider. Pour les mêmes raisons vous ne trouverez pas ici d’exposé détaillé sur l’utilisation de l’outil X ou Y: nous sommes très attachés à l’indépendance vis à vis des plateformes!

Vous trouverez aussi ici quelques recommandations fortes concernant les techniques de programmation. Comme toujours rien n’est absolu: rien ne vous empêche de réfléchir pour voir jusqu’où il est pertinent d’appliquer ces règles.

N’oubliez pas: la programmation est un art! Nous espérons que le point de vue de Java vous plaira et que vous vous formerez ensuite pour bien stimuler votre réflexion et votre pratique.

[Avertissement]Attention!

Dans certains cas le "pourquoi" exprime une opinion personnelle des auteurs: on peut tout à fait ne pas être d’accord avec l’exposé (surtout si on est déjà soi-même expert en programmation).

Nous faisons donc appel au jugement du lecteur: il est extrêmement important de se faire une opinion qui soit basée sur la réflexion et non sur des assertions d’autorité. C’est particulièrement important à l'ère d’internet où l’on trouve exprimé tout et le contraire de tout (combien de fois avons nous eu des contradicteurs qui nous déclarent "et pourtant j’ai lu sur le web…"). Malheureusement on trouve de nombreuses "légendes urbaines" qui accompagnent la programmation Java.

Le plus regrettable est que des éditeurs contribuent à la diffusion de ces pratiques dommageables (principalement parce que la critique des textes par des pairs coûte cher). Pour la même raison la même critique s’applique à de nombreux cours en ligne (surtout quand leurs "éditeurs" profitent de contributions faites par des amateurs pleins de bonne volonté: un critère important de qualité est le suivi effectif de la modération en ligne).

[Note]Les niveaux de lecture

images/whitebelt.png images/orangebelt.png images/bluebelt.png images/brownbelt.png images/blackbelt.png

Un des avantages de suivre un cours avec un animateur est que ce dernier va rapidement adapter le niveau de détail des informations au niveau des stagiaires.

Un des problèmes majeurs dans la réalisation de documents comme celui-ci est précisément de doser le niveau de détail pour chaque sujet. Certains détails secondaires ont été reportés dans une annexe et pour découper les éléments du cours en niveaux nous les avons étiquetés avec des ceintures de couleur (blanc, orange, bleu, marron, noir).

L’idée est qu’un débutant en programmation peut se focaliser sur les éléments marqués en "blanc" et revenir ultérieurement sur les autres au fur et à mesure de ses progrès.

Toutefois attention: le fait d'être marqué "ceinture blanche" ne signifie pas forcément que le sujet est facile: il est simplement prioritaire! De la même manière des chapitres "ceinture marron" ne sont pas forcément compliqués.

[Note]Les auteurs
Bernard AMADE
s’occupe essentiellement de langages de programmation. Il a été responsable des cours JavaSE chez SUN Microsystems. Aujourd’hui à la retraite il donne toujours des cours et s’intéresse particulièrement à la formation de formateurs.

profil LinkedIn

Merci aux contributeurs(trices) qui ont permis (et qui vont permettre) d’améliorer ce document. Par le passé des formateurs(trices) - et des stagiaires - de SUN microsystems, d’IBM, d’Accenture et de Demos formation ont permis, par leurs suggestions, d’apporter de l’eau à ce moulin … Il faut espérer que le mouvement s’accélérera!

N’hésitez pas à nous adresser critiques et suggestions.