III. L'éditeur de code▲
Quelques nouveautés sur le menu contextuel de l'éditeur. L'ensemble de ces nouveautés sont des Wizards permettant de rendre un peu plus faciles certaines opérations.
III-A. Les inner classes▲
Voici le résultat après la génération :
package
com.dvp.test.jbuilderx;
public
class
TestEditeur {
public
static
void
main
(
String[] args) {
System.out.println
(
"Hello world"
);
}
/**
*
@author
Request
*
@version
1.0
*/
private
class
TestInner {
TestInner
(
) {
}
}
}
III-B. La surcharge de classe▲
Voici le résultat après la génération :
package
com.dvp.test.jbuilderx;
import
java.util.AbstractList;
public
class
TestEditeur extends
AbstractList {
public
static
void
main
(
String[] args) {
System.out.println
(
"Hello world"
);
}
/**
* Returns the element at the specified position in this list.
*
*
@param
index
index of element to return.
*
@return
the element at the specified position in this list.
*
@todo
Implement this java.util.List method
*/
public
Object get
(
int
index) {
return
""
;
}
/**
* Returns the number of elements in this list.
*
*
@return
the number of elements in this list.
*
@todo
Implement this java.util.List method
*/
public
int
size
(
) {
return
0
;
}
}
III-C. Les propriétés▲
Voici le résultat après la génération :
package
com.dvp.test.jbuilderx;
public
class
TestEditeur {
private
String[] noms =
{
"toto"
, "titi"
}
;
public
void
setNoms
(
String[] noms) {
this
.noms =
noms;
}
public
String[] getNoms
(
) {
return
noms;
}
public
static
void
main
(
String[] args) {
System.out.println
(
"Hello world"
);
}
}
III-D. Constructeurs▲
Voici le résultat après la génération :
package
com.dvp.test.jbuilderx;
public
class
TestEditeur {
/**
* TestEditeur
*
*
@param
val1
String
*
@param
val2
String
*/
public
TestEditeur
(
String val1, String val2) {
}
public
static
void
main
(
String[] args) {
System.out.println
(
"Hello world"
);
}
}
III-E. Les méthodes▲
Voici le résultat après la génération :
package
com.dvp.test.jbuilderx;
public
class
TestEditeur {
/**
* addition
*
*
@param
val1
double
*
@param
val2
double
*
@return
double
*/
public
double
addition
(
double
val1, double
val2) {
return
0.0
;
}
public
static
void
main
(
String[] args) {
System.out.println
(
"Hello world"
);
}
}
III-F. La JavaDoc▲
Voici le résultat après la génération :
package
com.dvp.test.jbuilderx;
public
class
TestEditeur {
/**
* Méthode de départ de l'application
*
*
@param
args
Les paramètres de la ligne de commande
*/
public
static
void
main
(
String[] args) {
System.out.println
(
"Hello world"
);
}
}
III-G. Les propriétés (bis)▲
Cette dernière option permet d'avoir le récapitulatif des propriétés. Cet écran permet de publier les méthodes get/set et de changer le nom/type de la propriété en une seule fois.
III-H. La recherche de membres▲
Une nouvelle fonctionnalité de recherche de membres est accessible via le menu ou le raccourci (ctrl+shit+G). Cette fonctionnalité permet, quand on est sur une classe java, de se positionner facilement sur un attribut ou une méthode. La saisie de quelques lettres permet de réduire la liste affichée, l'appui sur la touche « Entrée » permet de se positionner.
III-I. Marquage de portée▲
Un nouvel élément graphique s'affiche maintenant à gauche du code pour indiquer la portée du bloc courant.
III-J. Masquage de code▲
Borland a suivi la mode des éditeurs en ajoutant une flèche de masquage de code. Cette fonctionnalité est intéressante pour masquer la méthode init swing ou d'autres méthodes qui nuisent à la lisibilité du code.
III-K. Code mort et héritage▲
Une autre nouveauté qui se révèle fort pratique est l'utilisation du code couleur gris pour les propriétés ou variables non utilisées et l'italique pour les méthodes surchargées.
III-L. Refactoring▲
Quatre nouvelles fonctionnalités de refactoring font leur apparition :
- Extract interface : ouvre une boite de dialogue en proposant de créer une interface avec la liste des méthodes disponibles ;
- Superclass : crée un ancêtre à la classe courante ;
- Pull Up : déplace une méthode dans une des classes filles ;
- Push Down : déplace une méthode dans la classe ancêtre.
L'ensemble des commandes de refactoring est maintenant accessible par un clic droit sur l'un de ces éléments dans la vue structure.