Présentation du langage NICE


précédentsommairesuivant

1. Rapports entre Nice et Java

Nice n'est pas vraiment un nouveau langage dans la mesure où il s'inspire totalement de Java. Vous allez pouvoir constater que Nice fait mieux que reprendre les concepts, principes et notations présentes dans Java, et qu'un développement en Nice est loin d'être incompatible avec Java.

1.1. Le compilateur

Premier aspect qui a son importance, le compilateur Nice a été écrit en Java. Cela nécessite notamment de disposer d'une JVM 1.2 ou supérieure. Ce compilateur génère du bytecode Java, qui va pouvoir être exécuté comme n'importe quelle application développée en Java. La particularité de la compilation Nice réside dans le fait de compiler des paquetages et non des fichiers.
Nice a donc un lien de parenté évident avec Java, mais nous allons progressivement constater que ce lien de parenté ne saurait se limiter à une relation du type père - fils.

1.2. La philosophie et l'exécution d'un programme

Le langage reprend les grands principes de Java, à savoir la hiérarchisation en paquetages. Nice reprend également l'ensemble des mots-clés et de la syntaxe du langage Java.
Les grands principes et mots d'ordre de Nice sont la modularité, la sécurité, et la production de code intelligent ("Expressivity" en anglais). Nice peut ainsi permettre aux développeurs une meilleure réutilisation du code, de mettre en pratique des modèles moins conventionnels qui posaient problèmes avec Java. Le langage permet également la détection de certaines exceptions directement à la compilation, là où elles pourraient se déclencher aléatoirement en fonctionnement pour un programme similaire en Java. Enfin, Nice apporte un certain nombre d'éléments au niveau du codage de tâches classiques comme les boucles ou les traitements sur des ensembles. Ces apports permettent de réduire considérablement la taille et la complexité du code par rapport à ce qu'on peut avoir l'habitude de faire avec Java.

La commande pour lancer la compilation est similaire à celle utilisée pour Java : on appelle la commande nicec comme on appellerait la commande javac (aux options de commande près).
Pour lancer le programme, il n'y a pas de secret : un traditionnel java monfichier suffira puisque le compilateur Nice produit du bytecode Java.
Enfin, tout comme Java dispose de la Javadoc, Nice propose la Nicedoc.

1.3. Confirmation d'un lien de parenté

Nice permet donc, tout comme Java, la déclaration d'une classe ou d'une interface dans un fichier. Néanmoins, dans la philosophie de Nice, l'écriture de la méthode statique classique main n'est pas recommandée : cette méthode n'apportant rien de particulier à la classe, il est préférable de la déclarer à part dans un fichier. En effet, ce qui n'est pas possible en Java, l'est avec Nice : à savoir uniquement déclarer une méthode dans un fichier à l'intérieur d'un paquetage. Mais cela n'est pas uniquement un atout pour déclarer la méthode main à part, nous verrons par la suite que cet aspect offre de formidables opportunités en terme de modularité.

Un autre lien de parenté, que certains pourrons voir dans le sens Nice -> Java, est la possibilité de bénéficier des fonctionnalités annoncées pour Java 5 avec Nice. En effet, Nice dispose déjà de la généricité (types paramétrés), de boucles for plus efficaces, ou encore l'autoboxing.

1.4. Interopérabilité avec Java

La relation Java-Nice ne se limite pas à une relation du type Père-Fils. En effet, comme on pouvait s'y attendre (similitudes flagrantes dans l'utilisation de paquetage et la déclaration de classes) Nice est hautement compatible avec tout code Java existant. Il est donc non seulement possible de faire appel aux bibliothèques de classes classiques comme java.util, mais bien évidemment également toute classe définie par vos soins. Il est notamment possible d'hériter d'une classe Java ou d'implémenter une classe Java.
Jusque là, le lecteur pourrait se dire que le langage Nice est certes séduisant et introduit des concepts intéressants, mais que de parier sur ce langage pouvait être risqué car il n'offre pas la même pérennité que Java. Un aspect qui pourra alors en intéresser certains est le suivant : étant donné que Nice produit du bytecode Java, il est possible d'utiliser des classes Nice dans votre code Java. Il y a certes des limitations, notamment l'impossibilité de surcharger une méthode Nice en Java, mais il est tout à fait envisageable de faire une partie du développement d'une application Java en Nice.


précédentsommairesuivant

Vous avez aimé ce tutoriel ? Alors partagez-le en cliquant sur les boutons suivants : Viadeo Twitter Facebook Share on Google+   

Articles et tutoriels Borland C++ Builder
Accédez à une base de données Access avec les composants du BDE
Guide d'installation de la RxLib sous BCB 6
Présentation et utilisation du plugin borCVS pour Borland C++ Builder 6
Articles et tutoriels Java
Présentation de l'API Reflection
Gestion d'images en base de données avec l'API JDBC
Interview et reportages
Compte rendu des conférences JAX 2006, Eclipse Forum Europe 2006, EAKon 2006
Interview d'Eric Lefevre, consultant chez Valtech, au sujet de l'Open Space Technology
Compte rendu des Valtech Days 2007
Autres articles et tutoriels
Introduction à CVS
Présentation du langage NICE
Critiques de livres
Jakarta Struts Par la pratique (Eyrolles)
Initiation à JSP (Eyrolles)
Gestion de projets avec Subversion (O'Reilly)
Struts - Les bonnes pratiques pour des développements web réussis (Dunod)
Hibernate 3.0 : Gestion optimale de la persistance dans les applications Java/J2EE (Eyrolles)
Analyse et conception orientées objet - Tête la première (O'Reilly)
Gestion de projet eXtreme Programming (Eyrolles)
Gestion de projet - vers les méthodes agiles (Eyrolles)
Autres liens sur Developpez.com
La FAQ C++ Builder
Les Sources C++ Builder
Les FAQs JAVA
  

Copyright © 2004 Ricky81. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.