Java je široko uporabljan objektno usmerjen programski jezik in programska platforma. Deluje na milijardah naprav, vključno s prenosniki, mobilnimi napravami, igralnimi konzolami in mnogimi drugimi.

Takšne zmogljivosti imajo svojo ceno. Javo je težko naučiti, ker ima dolgotrajno zapleteno sintakso. Je statično tipkan, kar je lahko manj priročno. In čeprav je neodvisen od platforme, vzpon platforme za računalništvo v oblaku naredi neodvisnost manj zmagovalno.

To je le nekaj razlogov, zakaj je Java morda v nemilosti.

1. Java postaja vse manj priljubljena

Najprej in predvsem se zdi, da Java počasi upada v priljubljenosti. Leta je bilo tako eden najboljših programskih jezikov za učenje, vendar zdaj ni več v trendu. To pomeni, da bodo razvijalci sčasoma pisali vse manj novih aplikacij v Javi.

Ta trend pomeni, da bo Java sčasoma izginila. Podjetja po vsem svetu bodo še naprej najemala programerje Java za vzdrževanje starih kodnih zbirk, vendar to ne bo trajalo večno.

Kljub temu, če želite svojo kariero osredotočiti na gradnjo novih stvari, namesto na vzdrževanje obstoječih programov, Java morda ni najboljša izbira za vas.

Programski jezik maj 2022
Python 1
C 2
JavaScipt 3
C++ 4
C# 5
Visual basic 6
Java 7
Zbirni jezik 8
SQL 9
PHP 10

2. Java ni preprosta

Java se je morda lahko naučiti, vendar ni preprosta. Jezik se je enostavno naučiti, ker je kodo Java preprosto napisati, organizirati in prevesti. Vendar ni preprosto, ker je koda, napisana v Javi, bolj podrobna in bolj dolgočasna za pisanje.

Prav tako ga morate prevesti, zaradi česar je Java veliko manj priročna kot jeziki, kot je Python. Torej, če ste začetnik in se prvič učite kodirati, Java ni dober jezik za začetek.

Če ste profesionalec, ki želi izdelati preprosto, elegantno kodo in jo hitro namestiti, tudi Java ni idealna izbira.

3. Dobivalci in postavljalci

Pridobivalci in nastavljalci so skoraj obvezni del uporabe jezika in številna ogrodja spodbujajo njihovo uporabo. Javni pridobivalniki in nastavljalci pa so lahko po nepotrebnem podrobni.

Upravljanje kode, okrašene s pridobivalniki in nastavljalci Java, je peklensko in zapleteno. Pomanjkanje smiselne rešitve problema geterjev in setterjev je le vrh ledene gore.

javnostirazredVozilo{
zasebno Vrvica barva;

// Getter
javnosti Vrvica getColor(){
vrnitev barva;
}

// Setter
javnostiprazninasetColor(Niz c){
to.barva = c;
}
}

4. Brez sintaktičnega zaledenitve

Delujete z zbirko. Želite prvi predmet. Kaj delaš? Seveda pokličete metodo namesto uporabe skupne [] operater. Vse zato, ker ne morete preobremeniti operaterjev.

Za skoraj vsako operacijo morate uporabiti besedno ime metode, tudi če bi zadostoval operator z enim znakom.

Java podpira koncept; jezik vam omogoča združevanje nizov z + operater, na primer. Samo vam, programerju, ne dovoli, da storite enako.

5. Razglasitev izjem za metodo lahko vrže

Java zahteva, da deklarirate izjeme, ki jih lahko vrže metoda. Zdi se uporabno, kajne? Z uporabo določene metode veste, kaj lahko pričakujete.

Težava je v tem, da je koda živ organizem in se zgodi, da metoda, ki jo uporabljate, začne vračati več izjem. Kaj se bo potem zgodilo? No, vaša koda se je pravkar ustavila.

Obvladati morate situacijo ali dodati izjemo na seznam vrgov. Predpostavimo, da se API, ki ga uporabljate, ne spremeni. V Javi obstaja nekaj takega, kot je RuntimeException. Če lahko vaša metoda vrže to izjemo ali enega od njenih potomcev, jo morate prijaviti.

Izjeme Jave lahko povzročijo veliko težav pri vzdrževanju kode.

// Java program, ki prikazuje uporabo throw
razredThrowExcep
{
statičnapraznina zabava()
{
poskusi
{
metatinovo NullPointerException("demo");
}
ulov (NullPointerException e)
{
System.out.println("Caught inside fun().");
metati e; // ponovno vračanje izjeme
}
}

javnosti statičnapraznina glavni(Vrvica argumenti [])
{
poskusi
{
zabava();
}
ulov (NullPointerException e)
{
System.out.println("Ujet v glavnem.");
}
}
}

6. Zapleteni IDE-ji

Javanski programerji pogosto uporabljajo IDE, kot sta Eclipse ali IntelliJ. Ti IDE-ji so zmogljivi, vendar so zapleteni za interakcijo z njimi, zlasti za začetnike ali vmesne razvijalce. Morali boste vložiti veliko truda v učenje svojega IDE znotraj in zunaj, da bo bolj produktiven in manj boleč za vas.

7. Neodvisnost platforme je leta 2022 manj pomembna

Dejstvo, da je Java zelo neodvisna od platforme, je danes verjetno manj pomembno kot pred 10 ali 20 leti.

Razlog za to je, da živimo v svetu, ki ga določa programska oprema. Danes virtualni stroji, vsebniki in storitve v oblaku olajšajo izvajanje aplikacije, kjer koli želite, brez skrbi za osnovno okolje.

Z drugimi besedami, ni vam treba spreminjati svoje kode, da bo vaša aplikacija delovala tam, kjer jo potrebujete. Namesto tega lahko spremenite okolje gostovanja.

To ne pomeni, da prenosljivost aplikacij ni več pomembna. Enostavno ni več tako kritična, kot je bila včasih, in zaradi tega je Java zaradi razširitve nekoliko manj pomembna.

8. Statično tipkanje

Java izvaja preverjanje tipa med prevajanjem. To pomeni, da morate v času prevajanja deklarirati vrsto vsake spremenljivke. Enako je z jeziki, kot sta C in C++, vendar drugi jeziki, kot sta Scala in Haskell, ponujajo neko obliko sklepanja o tipih.

Pri statičnem tipkanju spremenljivkam na splošno ni dovoljeno spreminjati vrst. Zaradi tega je sintaksa Java nekoliko zapletena, zlasti pri pisanju kode za velik projekt.

Mnogi programerji imajo raje dinamično programiranje kjer se preverjanje tipa pojavi med izvajanjem. To pomeni, da se lahko vrsta spremenljivke spremeni v njeni življenjski dobi.

Naučite se novih programskih jezikov

Ne gre za to, da Java ni dobra za nič, vendar je njena sintaksa okorna in ni primerna za branje kode. Upravljanje odvisnosti v Javi omogoča zlorabo in povzroča hrošče, ki jih je težko zaznati.

Tehnologija se nenehno spreminja in kot razvijalec je vedno koristno biti na tekočem z nastajajočimi programskimi jeziki. Kar je danes v modi, bo morda kmalu včerajšnja novica.