Thursday, February 23, 2006

Io e Netbeans

Per una serie di casi del destino anche il sottoscritto si è ritrovato costretto ad usare Java. D'altra parte era stato ampiamente previsto, e la cosa non mi ha trovato più impreparato di un tot.
Complessivamente mi sono assuefatto all'ambiente. Il linguaggio è abbastanza "stupido", ma va bene nella maggioranza dei casi. Certo, avendo dei templates decorosi... la mia opinione sui generics di Java non è certo delle migliori.
D'altra parte la piattaforma regge bene. La libreria continua ad essere ben fatta. E complessivamente anche Swing mi piace abbastanza. Non è troppo cervellotica da usare (mai usato Carbon?), e si comporta entro grandi linee bene ovunque (mai provato Tk?).
Proprio riguardo alle GUI si possono apprezzare alcune dei maggiori vantaggi di NetBeans 5. Il nuovo GUI editor, Matisse, è semplicemente favoloso. Sicuramente sta al pari con InterfaceBuilder dei Developer's Tools di Apple, forse è anche migliore.
Matisse
65209328_42292f33bc_m-2006-02-23-18-45.jpg
Qui un piccolo screenshot di Matisse. Fare le GUI è davvero semplice.Si tratta di disporre i controlli all'interno della finestra. NetBeans automaticamente mostra delle guide, per disporli "bene" in relazione fra loro.Per esempio NetBeans tenterà di suggerire che tre campi di testo uno sopra l'altro finiranno allineati e così via.
L'utente poi potrà specificare quali controlli vorrà che si ridimensionino con la finestra e quali no, e quali vuole che siano "ancorati" ad un qualche bordo, in modo che si spostino con la finestra stessa.
Anche se la spiegazione non rende l'idea, posso garantire che il tutto ora è davvero molto semplice e comodo, niente a che fare con il famoso GridBagLayout (in pratica i Layout sono caduti in disuso, a quanto pare)
Tutte le proprietà dei controlli, codice da inserire prima o dopo per inizializzarli e la scelta del costruttore possono essere fatti direttamente da Matisse.
Refactoring
Finalmente anche NetBeans ha aggiunto le funzioni di refactoring che eravamo soliti trovare su Eclipse. Non c'è molto da aggiungere, fanno il loro dovere, punto e basta.
Altro...
Altro non ho ancora avuto il modo di provarlo. In effetti Java continua a non essere il mio ambiente naturale, per quanto mi stia sforzando di affrontarlo con mente aperta. Sono in grado di vederne i pregi, ma mi balzano anche all'occhio i difetti.
Allo stesso modo devo dire di NetBeans che è davvero un bel progetto, un IDE ben fatto di cui più lo si usa, più si scoprono utili funzioni e interessanti scorciatoie.
Purtroppo è terribilmente mastodontico. Sembra di manovrare un camion, è lento e spesso si ferma a pensare davvero troppo. A causa dei limiti di Java diventa sostanzialmente impensabile scrivere il codice semplicemente con un editor di testi, ma la tentazione è forte. TextMate è maneggevole, snello, veloce. Risponde ai miei comandi.
NetBeans ha i suoi tempi. La cosa che continua a torturarmi è... ma abbiamo davvero bisogno di una piattaforma che ha bisogno di centinaia di megabyte di IDE per sopperire alle sue mancanze? A quanto pare si, ma c'è qualcosa che mi suggerisce all'orecchio che mi hanno fregato (con questo Matisse è comunque fantastico, e mi piacerebbe averlo a disposizione anche per le mie GUI Python, Swing è una libreria abbastanza buona -- specie adesso che usa il freeform layoyt ).
Attenzione!
Se usate NetBeans 5 sotto MacOS, ricordatevi di copiare il jar org-jdesktop-layout.jar dentro il classpath standard della vostra versione di Java, altrimenti non riuscirete a combinare nulla.

No comments: