Java este un limbaj de programare orientat pe obiecte utilizat pe scară largă și o platformă software. Funcționează pe miliarde de dispozitive, inclusiv notebook-uri, dispozitive mobile, console de jocuri și multe altele.
A avea astfel de capacități are un preț. Java poate fi greu de învățat, cu o sintaxă lungă și complicată. Este tastat static, ceea ce poate fi mai puțin convenabil. Și deși este independentă de platformă, creșterea platformei de cloud computing face ca independența să fie mai puțin câștigătoare.
Acestea sunt doar câteva dintre motivele pentru care Java poate fi în disfavoare.
1. Java devine mai puțin popular
În primul rând, Java pare să scadă încet în popularitate. Ani de zile, așa a fost unul dintre cele mai bune limbaje de programare de învățat, dar acum nu mai este în tendințe. Aceasta înseamnă că, în timp, dezvoltatorii vor scrie din ce în ce mai puține aplicații noi în Java.
Această tendință implică faptul că Java va dispărea în cele din urmă. Companiile din întreaga lume vor continua să angajeze programatori Java pentru a menține bazele de cod vechi, dar asta nu va dura pentru totdeauna.
Totuși, dacă doriți să vă concentrați cariera pe construirea de lucruri noi, mai degrabă decât pe menținerea programelor existente, Java poate să nu fie cea mai bună alegere pentru dvs.
Limbaj de programare | mai 2022 |
---|---|
Piton | 1 |
C | 2 |
JavaScipt | 3 |
C++ | 4 |
C# | 5 |
Visual Basic | 6 |
Java | 7 |
Limbaj de asamblare | 8 |
SQL | 9 |
PHP | 10 |
2. Java nu este simplu
Java poate fi ușor de învățat, dar nu este simplu. Limbajul este ușor de învățat, deoarece codul Java este ușor de scris, organizat și compilat. Dar nu este simplu, deoarece codul scris în Java tinde să fie mai pronunțat și mai obositor de scris.
De asemenea, trebuie să-l compilați, ceea ce face ca Java să fie mult mai puțin convenabil decât limbaje precum Python. Deci, dacă ești un începător care învață să codifice pentru prima dată, Java nu este un limbaj bun pentru a începe.
Dacă ești un profesionist care dorește să producă cod simplu și elegant și să-l implementeze rapid, Java nu este nici alegerea ideală.
3. Getters și Setters
Getters și setters sunt aproape o parte obligatorie a utilizării unui limbaj și multe cadre încurajează utilizarea acestora. Getters și setter-urile Java pot fi, totuși, inutil de verbose.
Gestionarea codului decorat cu getters și setters Java este un iad și complicat. Lipsa unei soluții semnificative la problema getters și setters este doar vârful aisbergului.
publicclasăVehicul{
privat Şir culoare;// Getter
public Şir getColor(){
întoarcere culoare;
}
// Setter
publicgolsetColor(șirul c){
acest.culoare = c;
}
}
4. Fără glazură sintactică
Operați cu o colecție. Vrei primul articol. Ce faci? Desigur, numiți metoda în loc să folosiți comunul [] operator. Totul pentru că nu puteți supraîncărca operatorii.
Pentru aproape fiecare operație, trebuie să utilizați un nume de metodă pronunțat, chiar dacă un operator cu un singur caracter ar face acest lucru.
Java acceptă conceptul; limbajul vă permite să concatenați șiruri cu + operator, de exemplu. Pur și simplu nu te lasă pe tine, programatorul, să faci același lucru.
5. Declararea excepțiilor o metodă poate arunca
Java vă cere să declarați excepțiile pe care le poate arunca o metodă. Pare util, nu-i așa? Folosind o anumită metodă, știi la ce să te aștepți.
Problema este că codul este un organism viu și se întâmplă ca metoda pe care o utilizați începe să arunce mai multe excepții. Ce se va întâmpla atunci? Ei bine, codul tău tocmai s-a oprit din compilare.
Trebuie să gestionați situația sau să adăugați o excepție la lista de aruncări. Să presupunem că API-ul pe care îl utilizați nu se modifică. Există un astfel de lucru ca RuntimeException în Java. Dacă metoda dvs. poate arunca această excepție sau unul dintre descendenții ei, trebuie să o declarați.
Excepțiile Java pot aduce o mulțime de probleme de întreținere a codului.
// Program Java care demonstrează utilizarea throw
clasăAruncăExcept
{
staticgol distracţie()
{
încerca
{
aruncanou NullPointerException("demo");
}
captură (NullPointerException e)
{
System.out.println("Prins în distracție ().");
arunca e; // reintroduceți excepția
}
}
public staticgol principal(Şir argumente[])
{
încerca
{
distracţie();
}
captură (NullPointerException e)
{
System.out.println("Prins în principal.");
}
}
}
6. IDE-uri complicate
Programatorii Java folosesc adesea un IDE precum Eclipse sau IntelliJ. Aceste IDE-uri sunt puternice, dar sunt complexe cu care interacționați, în special pentru un începător sau un dezvoltator intermediar. Va trebui să depui mult efort pentru a-ți învăța IDE-ul în interior și în exterior, pentru ca acesta să fie mai productiv și mai puțin dureros pentru tine.
7. Independența platformei este mai puțin importantă în 2022
Faptul că Java este foarte independent de platformă contează mai puțin astăzi decât acum 10 sau 20 de ani.
Motivul este că trăim într-o lume definită de software. Astăzi, mașinile virtuale, containerele și serviciile cloud facilitează rularea unei aplicații oriunde doriți, fără să vă faceți griji pentru mediul de bază.
Cu alte cuvinte, nu trebuie să vă schimbați codul pentru ca aplicația să funcționeze acolo unde aveți nevoie să funcționeze. În schimb, puteți schimba mediul de găzduire.
Acest lucru nu înseamnă că portabilitatea aplicației nu mai contează. Pur și simplu nu este atât de critic ca înainte și asta face ca Java să fie puțin mai puțin important prin extensie.
8. Tastare statică
Java efectuează verificarea tipului în timpul compilării. Aceasta înseamnă că trebuie să declarați tipul fiecărei variabile în momentul compilării. Este același lucru cu limbaje precum C și C++, dar alte limbaje, cum ar fi Scala și Haskell, oferă o formă de inferență de tip.
Cu tastarea statică, variabilelor, în general, nu li se permite să schimbe tipurile. Acest lucru face ca sintaxa Java să fie puțin complicată, mai ales atunci când scrieți cod pentru un proiect mare.
Mulți programatori preferă programare dinamică unde verificarea tipului are loc în timpul execuției. Aceasta înseamnă că tipul unei variabile se poate schimba pe durata de viață.
Învață noi limbaje de programare
Nu este că Java nu este bun pentru nimic, dar sintaxa sa este greoaie și nu este propice pentru citirea codului. Managementul dependenței Java permite abuzuri și duce la erori greu de detectat.
Tehnologia continuă să se schimbe și, ca dezvoltator, este întotdeauna util să fii la curent cu limbajele de programare emergente. Ceea ce este la modă astăzi poate fi în curând știrile de ieri.