Java je naširoko korišten objektno orijentirani programski jezik i softverska platforma. Radi na milijardama uređaja uključujući prijenosna računala, mobilne uređaje, igraće konzole i mnoge druge.

Posjedovanje takvih mogućnosti ima svoju cijenu. Java može biti teška za naučiti, s dugom kompliciranom sintaksom. Statično je tipkano, što može biti manje zgodno. I dok je neovisan o platformi, uspon platforme za računalstvo u oblaku čini neovisnost manje dobitkom.

Ovo su samo neki od razloga zašto bi Java mogla biti u nemilosti.

1. Java postaje sve manje popularna

Prvo i najvažnije, čini se da Javi polako pada popularnost. Godinama je tako bilo jedan od najboljih programskih jezika za naučiti, ali sada više nije u trendu. To znači da će programeri s vremenom pisati sve manje novih aplikacija u Javi.

Ovaj trend implicira da će Java na kraju nestati. Tvrtke diljem svijeta nastavit će zapošljavati Java programere za održavanje naslijeđenih baza koda, ali to neće trajati zauvijek.

Ipak, ako svoju karijeru želite usmjeriti na izgradnju novih stvari, umjesto na održavanje postojećih programa, Java možda nije najbolji izbor za vas.

instagram viewer

Programski jezik svibnja 2022
Piton 1
C 2
JavaScipt 3
C++ 4
C# 5
Visual Basic 6
Java 7
asemblerski jezik 8
SQL 9
PHP 10

2. Java nije jednostavna

Javu je možda lako naučiti, ali nije jednostavna. Jezik je jednostavan za naučiti jer je Java kôd jednostavan za pisanje, organiziranje i kompajliranje. Ali to nije jednostavno jer je kod napisan u Javi više opširniji i zamorniji za pisanje.

Također ga morate kompajlirati, što Javu čini mnogo manje praktičnom od jezika poput Pythona. Dakle, ako ste početnik koji prvi put učite kodirati, Java nije dobar jezik za početak.

Ako ste profesionalac koji želi izraditi jednostavan, elegantan kod i brzo ga implementirati, Java također nije idealan izbor.

3. Dobivači i postavljači

Getteri i postavljači gotovo su obvezni dio korištenja jezika i mnogi okviri potiču njihovu upotrebu. Ipak, Javini getteri i postavljači mogu biti nepotrebno opširni.

Upravljanje kodom ukrašenim Java getterima i setterima je vraški i komplicirano. Nedostatak smislenog rješenja problema gettera i postavljača samo je vrh ledenog brijega.

javnostrazredaVozilo{
privatna Niz boja;

// Dobivač
javnost Niz getColor(){
povratak boja;
}

// Postavljač
javnostponištitisetColor(Niz c){
ovaj.boja = c;
}
}

4. Nema sintaktičkog zaleđivanja

Radite na kolekciji. Želite prvu stavku. Što radiš? Naravno, pozivate metodu umjesto da koristite common [] operater. Sve zato što ne možete preopteretiti operatore.

Za gotovo svaku operaciju morate koristiti riječit naziv metode, čak i ako bi poslužio operator od jednog znaka.

Java podržava koncept; jezik vam omogućuje ulančavanje nizova s + operator, na primjer. To jednostavno ne dopušta vama, programeru, da učinite isto.

5. Proglašavanje iznimaka metodom koja može dovesti do problema

Java zahtijeva da deklarirate iznimke koje metoda može izbaciti. Čini se korisnim, zar ne? Koristeći danu metodu, znate što možete očekivati.

Problem je u tome što je kôd živi organizam i događa se da metoda koju koristite počne izbacivati ​​više iznimaka. Što će se onda dogoditi? Pa, vaš kod se upravo prestao kompajlirati.

Morate riješiti situaciju ili dodati iznimku na popis bacanja. Pretpostavimo da se API koji koristite ne mijenja. U Javi postoji nešto poput RuntimeException. Ako vaša metoda može izbaciti ovu iznimku ili jednu od njezinih potomaka, trebate je deklarirati.

Iznimke Jave mogu donijeti mnogo problema s održavanjem koda.

// Java program koji demonstrira korištenje throw
razredaThrowExcep
{
statičkiponištiti zabava()
{
probati
{
bacanjenovi NullPointerException("demo");
}
ulov (NullPointerException e)
{
System.out.println("Caught inside fun().");
bacanje e; // ponovno izbacivanje iznimke
}
}

javnost statičkiponištiti glavni(Niz args[])
{
probati
{
zabava();
}
ulov (NullPointerException e)
{
System.out.println("Uhvaćen u glavnom.");
}
}
}

6. Komplicirani IDE-ovi

Java programeri često koriste IDE poput Eclipse ili IntelliJ. Ovi IDE-ovi su moćni, ali su složeni za interakciju s njima, posebno za početnike ili programere srednje razine. Morat ćete uložiti mnogo truda u učenje svog IDE-a iznutra i izvana kako bi bio produktivniji i manje bolan za vas.

7. Neovisnost o platformi manje je važna 2022

Činjenica da je Java vrlo neovisna o platformi vjerojatno je manje važna danas nego prije 10 ili 20 godina.

Razlog tome je što živimo u softverski definiranom svijetu. Danas virtualni strojevi, spremnici i usluge u oblaku olakšavaju pokretanje aplikacije gdje god želite, bez brige o osnovnom okruženju.

Drugim riječima, ne morate mijenjati svoj kôd da bi vaša aplikacija radila tamo gdje je vama potrebno. Umjesto toga možete promijeniti okruženje hostinga.

To ne znači da prenosivost aplikacije više nije važna. Jednostavno nije tako kritičan kao što je bio, a to čini Javu malo manje važnom zbog proširenja.

8. Statičko tipkanje

Java provodi provjeru tipa tijekom vremena kompajliranja. To znači da morate deklarirati tip svake varijable u vrijeme prevođenja. Isto je s jezicima kao što su C i C++, ali drugi jezici, kao što su Scala i Haskell, nude neki oblik zaključivanja tipa.

Kod statičkog tipa varijablama općenito nije dopušteno mijenjati tipove. Ovo čini Java sintaksu pomalo kompliciranom, posebno kada pišete kod za veliki projekt.

Mnogi programeri preferiraju dinamičko programiranje gdje se provjera tipa događa tijekom izvođenja. To znači da se tip varijable može mijenjati tijekom njenog trajanja.

Naučite nove programske jezike

Nije da Java nije dobra ni za što, ali njezina je sintaksa nezgrapna i nije pogodna za čitanje koda. Javino upravljanje ovisnostima dopušta zlouporabu i dovodi do grešaka koje je teško otkriti.

Tehnologija se neprestano mijenja i, kao programeru, uvijek je korisno biti u tijeku s programskim jezicima u nastajanju. Ono što je danas u modi uskoro bi moglo biti jučerašnja vijest.