lunedì 2 luglio 2007

Import statici in java5

Ci sono molte novità introdotte in java5 che non mi piacciono la prima fra tutte la possibilità di usare gli import statici.

L'inutilità fatta java.

Permettono di scrivere cose del tipo:
import static java.lang.Math.cos;
...
public static void main(String[] args){
cos(3d);
}
La cosa veramente buffa è che nemmeno alla Sun credono in questa nuova feature tanto che qua sconsigliano persino il suo utilizzo.
Cito:
So when should you use static import? Very sparingly! Only use it when you'd otherwise be tempted to declare local copies of constants, or to abuse inheritance (the Constant Interface Antipattern). In other words, use it when you require frequent access to static members from one or two classes. If you overuse the static import feature, it can make your program unreadable and unmaintainable, polluting its namespace with all the static members you import. Readers of your code (including you, a few months after you wrote it) will not know which class a static member comes from. Importing all of the static members from a class can be particularly harmful to readability; if you need only one or two members, import them individually.


Invece di preoccuparsi a evitare il type erasure in compilazione dei generics perdono tempo in queste cavolate.

4 commenti:

Joril ha detto...

Quali altre cose non ti piacciono di Java 5? (A parte che con Java 6 in giro da mesi questo articolo e' un po' strano :) )

Emanuele Gesuato ha detto...

Capisco che con java6 in giro questo post sembra un po' anacronistico ma questa nuova versione non ho avuto modo di provarla.

Comunque anche l'inboxing-outboxing dei tipi non gode del mio favore, perchè alletta alcuni programmatori a fare le somme usando gli oggetti Integer invece che gli int (ad esempio).

Joril ha detto...

Un parere su Java..
http://www.russellbeattie.com/blog/java-needs-an-overhaul

Joril ha detto...

Guarda questo!
http://www.c2.com/cgi/wiki?DoubleBraceInitialization