• [^] # Re: Java pour les enfants

    Posté par . En réponse à la dépêche Programmation Java pour les enfants, les parents et les grands-parents. Évalué à 4.

    J'ai bien écrit pour "apprendre", une fois que l'on sait, Python permet aussi de programmer de façon professionnelle.


    Pour l'apprentissage je suis d'accord avec le fait que les langages dynamiques permettent d'obtenir un résultat mesurable plus rapidement et sont plus conviviaux.

    Les structure de données de haut niveau qui appartiennent à la syntaxe du langage (dictionnnaires, tableau, ...) permettent d'être productif rapidement.

    Seulement pour python et la programmation professionnelle, permets moi de douter un peu.
    Le typage fort a quand même largement démontré sa supériorité au niveau de la qualité et il n'est pas incompatible avec les tests unitaires.

    Le modèle même de python laisse un peu à désirer.
    Prenons par exemple la gestion des exceptions.
    En Java la syntaxe explicite toutes les exceptions suceptibles être levées instantanément. Avec Python il faut browser le code récursivement ou prier

    Le modèle objet à présent: les champs privés préfixé par un _, la notion de protected inexistante, pas d'héritage de contrat seulement d'implémentation (d'où la notio de prototype dans la plupart des frameworks python, un héritage multiple bancal (recherche en profondeur d'abord, l'interêt du duck typing , ..

    Quitte à faire je préfère d'autant la syntaxe et le modèle de Ruby.

    Par contre pour apprendre à des enfants à s'approprier le monde de la programmation coté Java, je pense que Groovy serait un bon challenger, car il se base sur une syntaxe proche de Java et réutilise l'API Java (à la différence de jython qui propose les 2 api Java+python, ce qui est parfois incohérent). Et pour les détracteur de J2EE Il y a Grails equivalent Groovy de RoR puisque le nouveau concept à la mode est "convention over configuration" ou le grand retour du "comment je colle tout en dur dans le code pour pas m'emmerder et je peux plus rien changer après"