Java è un linguaggio di programmazione orientato agli oggetti e una piattaforma software ampiamente utilizzati. Funziona su miliardi di dispositivi inclusi computer portatili, dispositivi mobili, console di gioco e molti altri.
Avere tali capacità ha un prezzo. Java può essere difficile da imparare, con una sintassi lunga e complicata. È tipizzato staticamente, il che può essere meno conveniente. E sebbene sia indipendente dalla piattaforma, l'ascesa della piattaforma di cloud computing rende l'indipendenza meno vincente.
Questi sono solo alcuni dei motivi per cui Java potrebbe perdere il favore.
1. Java sta diventando meno popolare
Innanzitutto, Java sembra perdere lentamente popolarità. Per anni lo è stato uno dei migliori linguaggi di programmazione da imparare, ma ora non è più di tendenza. Ciò significa che, nel tempo, gli sviluppatori scriveranno sempre meno nuove applicazioni in Java.
Questa tendenza implica che Java alla fine scomparirà. Le aziende di tutto il mondo continueranno ad assumere programmatori Java per mantenere basi di codice legacy, ma non durerà per sempre.
Tuttavia, se vuoi concentrare la tua carriera sulla creazione di cose nuove, piuttosto che sulla manutenzione di programmi esistenti, Java potrebbe non essere la scelta migliore per te.
Linguaggio di programmazione | maggio 2022 |
---|---|
Pitone | 1 |
C | 2 |
JavaScipt | 3 |
C++ | 4 |
C# | 5 |
Visual Basic | 6 |
Giava | 7 |
Linguaggio assembly | 8 |
SQL | 9 |
PHP | 10 |
2. Java non è semplice
Java può essere facile da imparare, ma non è semplice. Il linguaggio è facile da imparare perché il codice Java è semplice da scrivere, organizzare e compilare. Ma non è semplice perché il codice scritto in Java tende ad essere più prolisso e più noioso da scrivere.
Devi anche compilarlo, il che rende Java molto meno conveniente di linguaggi come Python. Quindi, se sei un principiante che impara a programmare per la prima volta, Java non è un buon linguaggio con cui iniziare.
Se sei un professionista che vuole sfornare codice semplice ed elegante e distribuirlo rapidamente, anche Java non è la scelta ideale.
3. Getter e setter
Getter e setter sono quasi una parte obbligatoria dell'utilizzo di una lingua e molti framework ne incoraggiano l'uso. Tuttavia, i getter e i setter di Java possono essere inutilmente prolissi.
La gestione del codice decorato con getter e setter Java è infernale e complicata. La mancanza di una soluzione significativa al problema di getter e setter è solo la punta dell'iceberg.
pubblicoclasseVeicolo{
privato Corda colore;// Getter
pubblico Corda getColor(){
ritorno colore;
}
// Setter
pubblicovuotosetColor(Stringa c){
Questo.colore = c;
}
}
4. Nessuna glassa sintattica
Stai operando su una raccolta. Vuoi il primo oggetto. Cosa fai? Ovviamente chiami il metodo invece di usare il comune [] operatore. Tutto perché non puoi sovraccaricare gli operatori.
Praticamente per ogni operazione, devi usare un nome di metodo prolisso anche se andrebbe bene un operatore a carattere singolo.
Java supporta il concetto; la lingua ti consente di concatenare le stringhe con il + operatore, ad esempio. Semplicemente non ti consente, il programmatore, di fare lo stesso.
5. Dichiarazione delle eccezioni che un metodo può generare
Java richiede di dichiarare le eccezioni che un metodo può lanciare. Sembra utile, vero? Utilizzando un determinato metodo, sai cosa aspettarti.
Il problema è che il codice è un organismo vivente e capita che il metodo che stai utilizzando inizi a generare più eccezioni. Cosa succederà allora? Bene, il tuo codice ha appena smesso di compilare.
È necessario gestire la situazione o aggiungere un'eccezione all'elenco dei lanci. Supponiamo che l'API che stai utilizzando non cambi. Esiste una cosa come RuntimeException in Java. Se il tuo metodo può lanciare questa eccezione o uno dei suoi discendenti, devi dichiararlo.
Le eccezioni di Java possono causare molti problemi di manutenzione del codice.
// Programma Java che dimostra l'uso di throw
classeThrowExcep
{
staticovuoto divertimento()
{
Tentativo
{
gettarenuovo NullPointerException("demo");
}
presa (NullPointerException e)
{
System.out.println("Catturato all'interno del divertimento ().");
gettare e; // rilancio dell'eccezione
}
}
pubblico staticovuoto principale(Corda argomenti[])
{
Tentativo
{
divertimento();
}
presa (NullPointerException e)
{
System.out.println("Catturato nel main.");
}
}
}
6. IDE complicati
I programmatori Java usano spesso un IDE come Eclipse o IntelliJ. Questi IDE sono potenti, ma sono complessi con cui interagire, soprattutto per un principiante o uno sviluppatore intermedio. Dovrai impegnarti molto per imparare il tuo IDE dentro e fuori affinché sia più produttivo e meno doloroso per te.
7. L'indipendenza dalla piattaforma è meno importante nel 2022
Il fatto che Java sia molto indipendente dalla piattaforma è probabilmente meno importante oggi rispetto a 10 o 20 anni fa.
Il motivo è che viviamo in un mondo definito dal software. Oggi le macchine virtuali, i container e i servizi cloud semplificano l'esecuzione di un'applicazione ovunque si desideri, senza doversi preoccupare dell'ambiente sottostante.
In altre parole, non devi modificare il codice per far funzionare la tua app dove ti serve. Puoi invece modificare l'ambiente di hosting.
Questo non vuol dire che la portabilità delle applicazioni non abbia più importanza. Non è così critico come una volta, e questo rende Java un po' meno importante per estensione.
8. Digitazione statica
Java esegue il controllo del tipo durante la compilazione. Ciò significa che è necessario dichiarare il tipo di ciascuna variabile in fase di compilazione. È lo stesso con linguaggi come C e C++, ma altri linguaggi, come Scala e Haskell, offrono qualche forma di inferenza di tipo.
Con la tipizzazione statica, le variabili generalmente non possono cambiare tipo. Questo rende la sintassi Java un po' complicata, specialmente quando si scrive codice per un grande progetto.
Molti programmatori preferiscono programmazione dinamica dove il controllo del tipo si verifica in fase di esecuzione. Ciò significa che il tipo di una variabile può cambiare nel corso della sua durata.
Impara nuovi linguaggi di programmazione
Non è che Java non serva a niente, ma la sua sintassi è goffa e non favorisce la lettura del codice. La gestione delle dipendenze di Java consente abusi e porta a bug difficili da rilevare.
La tecnologia continua a cambiare e, come sviluppatore, è sempre utile essere aggiornati con i linguaggi di programmazione emergenti. Quello che va di moda oggi potrebbe presto essere la notizia di ieri.