Java: Complicazioni Affari Semplici

La mia avversione verso il Java, sia come linguaggio che come ambiente, non è una novità.

In questo breve post comparerò tre diversi linguaggi in ordine cronologico: C, C++, Java

Perchè? Semplice. Spesso si sente dire che il Java è più semplice, che con il Java si programma più velocemente. Soprattuto queste fesserie sono sostenute nel mondo del lavoro, notoriamente affascinato dal Java, non tanto per le sue doti tecniche, ma per il fatto che di programmatori Java ne trovi un tanto al kilo.

E allora vediamo con degli esempi questa semplicità d’uso del Java… in questa puntata parliamo di una cosa fondamentale nell’informatica: scrivere su un file.

Per dovere di cronaca, ometterò l’inclusione di librerie e la gestione degli errori.

C

Il caro e vecchio C, classe 1972, ultima revisione nel 2011  (C11). Vediamo come si scrive su un file:

Ok, vi concedo che non è comodissimo, manca qualcosa, il paradigma ad oggetti…

C++

Con un semplice operatore d’incremento diamo al C quello che gli mancava… il C++ infatti prende spunto dal C, mantenendo la retrocompatibilità, ma il C++ è un linguaggio a s’è stante, classe 1983, ultima revisione nel 2011 (C++11) in corso una nuova revisione quest’anno (C++14)

Alcuni potrebbero dirmi che il C++ è eccessivamente complesso… cosa che è vera solo se lo si usa ad alti livelli, ma per le cose semplici come si comporta?

Finalmente un qualcosa di più chiaro. Semplice, intuitivo e facile da ricordare.

Java

E ora arriviamo al nostro amatissimo Java… Classe 1995, ultima revisione di quest’anno (Java 8)

Non so voi, ma io lo reputo una complicazione inutile. Un tornare indietro… a quando non lo so, dato che persino in C non serve fare questi salti mortali per scrivere su un file…

Non sto scherzando, sono necessari 3 oggetti per scrivere su un file…  Uno che astrae file e cartelle, uno che si preoccupa di scrivere caratteri in un file e l’ultimo che prende uno stream di caratteri da scrivere…

Concludo con una domanda:

Perchè ci complichiamo così la vita?

UPDATE:

Mi fanno notare che con Java è possibile “nascondere” i tre oggetti di cui parlavo facendo una sola chiamata. Ma qui rimane il problema… puoi nasconderli sotto il tappeto, ma sotto rimangono. Tre oggetti per scrivere su un file, che non vedi, ma che alla fine rischi di sentire…

Andrea Bontempi

Andrea Bontempi ha scritto 10 articoli

Navigazione articoli


Lascia un commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati *

Puoi usare questi tag e attributi HTML:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">