Comment apprendre un langage de programmation d’une manière générale ? Lire la documentation, c’est bien, mais rapidement, le besoin se fait sentir de pratiquer. Et pour ça, il faut avoir des sujets futiles mais variés pour créer des mini-programmes permettant de balayer les différents concepts. Pour apprendre Python, je m’étais inscrit à SPOJ, une sorte de concours de programmation permanent mettant à disposition des milliers de sujets et un robot qui évalue la qualité de votre programme-solution en le soumettant à des entrées qui ne vous sont pas fournies. L’intérêt est double : en plus d’apprendre un langage, cela vous pousse à prendre en compte les cas limites, ce que tout bon programmeur à tendance à oublier de prime abord.
Mais voilà, si le premier sujet s’apparente à un classique « Hello World! », le second nécessite l’implémentation d’un crible d’Ératosthène efficace, ce qui n’est pas franchement trivial. Donc, pour l’apprentissage progressif, on repassera.
J’étais tout à mon « Hello World! » en OCaml quand je me suis dit qu’il devait exister des sites dédiés à l’apprentissage d’OCaml. Et j’ai trouvé ça : « 99 problèmes en OCaml » (en anglais). C’est l’adaptation d’un classique du Lisp, une liste de problèmes à la difficulté croissante permettant de se familiariser avec les paradigmes des langages fonctionnels. De plus, on y trouve la correction de certains problèmes, et d’autres sont encore recensées ici.
Je vous encourage à lire le lien du dernier article sur les exceptions et leur inocuité dans 99% des cas, ça résume tout à fait ce que j’en pense.
#1 par cago à 6 janvier 2012 - 14 h 54 min
Citation
Pour apprendre OCaml, je vous conseille http://try.ocamlpro.com/, permet de se lancer dans la programmation en OCaml avec son navigateur