Le langage Java pourrait être plus facile à apprendre pour les étudiants grâce à une proposition visant à introduire des méthodes main flexibles et des classes principales anonymes dans le langage.Les détails du plan comprennent l'amélioration du protocole par lequel les programmes Java sont lancés pour être flexibles, en particulier pour permettre l'omission du paramètre String[] des méthodes principales et pour permettre à ces dernières de n'être ni publiques ni statiques ; le programme "Hello World" serait simplifié. Des classes principales anonymes pourraient être introduites pour rendre la déclaration de classe implicite.
Il s'agit actuellement d'une fonctionnalité du langage désactivée par défaut dans le JDK 21 (dont la disponibilité générale est prévue pour septembre), incluse pour provoquer un retour d'information de la part des développeurs sur la base d'une utilisation réelle (ce qui pourrait conduire à la rendre permanente à l'avenir). Il ne s'agit pas d'introduire un dialecte ou une chaîne d'outils Java distincts pour les débutants, souligne la proposition d'amélioration de Java (JEP) 445. "Les programmes des étudiants devraient être compilés et exécutés avec les mêmes outils que ceux qui compilent et exécutent n'importe quel programme Java."
Mais elle affirme qu'un simple programme "Hello World" a aujourd'hui "trop d'encombrement... trop de code, trop de concepts, trop de constructions - pour ce que fait le programme".
| Code : | Sélectionner tout |
1 2 3 4 5 | public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, World !") ;
}
} |
Les classes main anonymes rendraient la déclaration de la classe publique implicite (tout en épargnant aux néophytes le "mystérieux" modificateur static et le paramètre args String[] ). Le programme est simplifié comme suit :
| Code : | Sélectionner tout |
1 2 3 | void main() {
System.out.println("Hello, World !") ;
} |
La proposition soutient que ce changement réduit "la cérémonie d'écriture de programmes simples tels que les scripts et les utilitaires de ligne de commande". Et puisque Java est destiné à être un premier langage de programmation, ce changement signifierait que les étudiants "peuvent écrire leurs premiers programmes sans avoir besoin de comprendre les caractéristiques du langage conçues pour les grands programmes", en utilisant à la place "des déclarations simplifiées pour les programmes à classe unique". (Cela permet aux étudiants et aux éducateurs d'explorer plus progressivement les fonctionnalités du langage).
Un programme Hello, World ! écrit sous la forme d'une classe principale anonyme se concentre beaucoup plus sur ce que le programme fait réellement, en omettant les concepts et les constructions dont il n'a pas besoin. Malgré cela, tous les membres sont interprétés de la même manière que dans une classe ordinaire. Pour transformer une classe principale anonyme en classe ordinaire, il suffit d'envelopper sa déclaration, à l'exclusion des déclarations d'importation, dans une déclaration de classe explicite.
[QUOTE]JEP 445 : Des méthodes main flexibles et des classes principales anonymes
Résumé
Faire évoluer le langage Java pour que les étudiants puissent écrire leurs premiers programmes sans avoir besoin de comprendre les caractéristiques du langage conçues pour les gros programmes. Loin d'utiliser un dialecte Java distinct, les étudiants peuvent écrire des déclarations simplifiées pour des programmes à classe unique, puis étendre leurs programmes de manière transparente pour utiliser des fonctionnalités plus avancées au fur et à mesure que leurs compétences augmentent. Il s'agit d'une fonctionnalité preview du langage.
Objectifs
- Offrir une rampe d'accès en douceur à Java afin que les enseignants puissent introduire les concepts de programmation de manière graduelle.
- Aider les étudiants à écrire des programmes de base de manière concise et à faire évoluer leur code au fur et à mesure que leurs compétences se développent.
- Réduire la cérémonie d'écriture de programmes simples tels que les scripts et les utilitaires de ligne de commande.
- Ne pas introduire de dialecte Java distinct pour les débutants.
- Ne pas introduire de chaîne d'outils distincte pour les débutants ; les programmes des étudiants devraient être compilés et exécutés avec les mêmes outils que ceux qui compilent et exécutent tout programme Java.
Motivation
Java est un langage multi-paradigme qui excelle dans les applications complexes et de grande envergure développées et maintenues pendant de nombreuses années par de grandes équipes. Il possède de riches caractéristiques...
La fin de cet article est réservée aux abonnés. Soutenez le Club Developpez.com en prenant un abonnement pour que nous puissions continuer à vous proposer des publications.


