Cum a devenit limbajul de programare Java conceput pentru un gadget fără succes o forță globală?

Unele limbaje de programare, precum Rust, Go sau TypeScript, sunt interesante. Altele, inclusiv Cobol și Java, sunt considerate plictisitoare. Cu toate acestea, deși Java, care a împlinit astăzi 30 de ani, poate nu este cel mai interesant limbaj, rămâne unul dintre cele mai importante limbaje utilizate astăzi.

Lansată inițial de Sun Microsystems pe 23 mai 1995, evoluția Java de la un proiect de nișă pentru electronice de larg consum la o forță globală în dezvoltarea de companii, cloud și web este o poveste despre viziune și adaptabilitate.

Deși Java abia a împlinit 30 de ani, istoria sa este mult mai lungă. Rădăcinile Java datează din 1991, când inginerii de la Sun, James Gosling, Mike Sheridan și Patrick Naughton, au început să creeze un limbaj pentru televiziune interactivă și dispozitive integrate. Acesta a fost numit Green Project. Scopul său nu era atât de mult de a crea un limbaj nou, cât de a construi ceea ce am numi un controller pentru IoT. Tim Lindholm, un alt dezvoltator Java timpuriu, l-a descris ca fiind „un fel de încrucișare între un PDA mare și o telecomandă super-excelentă”.

Dispozitivul, Star7, era un asistent digital personal wireless portabil, bazat pe un procesor SPARC și cu un ecran LCD color de 5″. Din păcate, era prea avansat și scump pentru vremea sa, iar gadgetul nu a reușit să-și găsească loc pe piață.

Limbajul, însă, era o altă poveste. Inițial numită „Oak”, această versiune de Java folosea o sintaxă în stil C++, dar, așa cum spunea Gosling despre Oak/Java, era „C++ fără arme și cuțite”. De ce să nu folosească pur și simplu C++? Limbajul nu ar funcționa ușor pentru obiectivele lor, așa cum spunea Lindholm, de a crea aplicații care ar putea fi mutate în siguranță „pe internet și cel puțin dificil de făcut să ruleze pe arhitecturi diferite. De asemenea, am considerat că C++ era suficient de dificil de programat încât programatorii mai puțin calificați, pe care speram să-i atingem, ar avea dificultăți cu el”.

Viziunea lui Gosling pentru Java includea gestionarea automată a memoriei (colectarea gunoiului), care reduce erorile și vulnerabilitățile de securitate comune în gestionarea manuală a memoriei din C++. De asemenea, el a sugerat că filosofia Java „scrie o dată, rulează oriunde”, activată de Java Virtual Machine (JVM), a făcut Java extrem de portabil și independent de platformă, în timp ce codul C++ trebuie compilat separat pentru fiecare platformă.

Toate aceste beneficii erau bune și frumoase, dar la ce ar mai folosi un limbaj conceput pentru un proiect eșuat de electronică de larg consum? Din fericire, Gosling și echipa sa terminau Java exact când World Wide Web-ul era lansat publicului larg, în 1993. Java s-a dovedit a fi limbajul potrivit la momentul potrivit.

Trăsătura definitorie a limbajului, independența sa față de platformă, a schimbat radical regulile jocului. Spre deosebire de alte limbaje care necesită rescrierea codului pentru diferite sisteme de operare, programele Java sunt compilate în bytecode, care rulează pe orice dispozitiv cu o JVM. Această filozofie „scrie o dată, rulează oriunde” a făcut rapid din Java limbajul preferat pentru applet-urile web și, mai târziu, pentru aplicațiile enterprise.

Pentru a evidenția utilitatea Java, în 1995, Gosling a lansat un browser numit WebRunner. Acest prototip de browser web nu a avut niciodată succes comercial, dar a demonstrat cum un browser web putea prezenta conținut HTML combinat cu applet-uri Java.

Lucrurile au pornit de acolo. Mai întâi, WebRunner a devenit HotJava, iar apoi java.sun.com, site-ul web principal al Java, a fost deschis oficial publicului. Sun nu a putut folosi numele Oak din cauza problemelor legate de marca înregistrată. După nopți lungi și multe dezbateri, echipa a decis că băutura lor preferată, cafeaua, va inspira numele limbajului.

Java avea să evolueze rapid. Prima sa schimbare semnificativă a venit odată cu lansarea Java Development Kit 1.1 în 1997. Această versiune a introdus JavaBeans, care a făcut programarea orientată pe obiecte mult mai ușoară pentru dezvoltatori. De asemenea, a adăugat Java Database Connectivity (JDBC). Această interfață standard de programare a aplicațiilor (API) Java permite programelor Java să lucreze cu baze de date.

În 1998, Java a suferit o schimbare odată cu adăugarea bibliotecii Swing, care a îmbunătățit capacitățile interfeței grafice cu utilizatorul (GUI) din Java, plugin-urile Java și framework-ul Java Collections. Probabil cea mai vizibilă diferență a fost că Java a fost împărțită în trei varietăți:

  • J2SE (Standard Edition) pentru aplicații desktop de uz general;
  • J2EE (Enterprise Edition) pentru aplicații server-side;
  • J2ME (Micro Edition) pentru dispozitive mobile și sisteme integrate.

Toate cele trei versiuni sunt încă în viață și astăzi.

Deși limbajul va continua să cunoască numeroase îmbunătățiri în anii următori, probabil cea mai importantă schimbare a fost atunci când Sun a lansat Java în format open-source în 2006. Implementarea de referință Java este Open Java Development Kit (OpenJDK), care este gratuită și open-source sub GNU General Public License (GPL) versiunea 2, cu excepția Classpath.

Această excepție vă permite să legați bibliotecile de sistem Java cu codul dvs., indiferent de licența codului dumneavoastră și să distribuiți executabilul rezultat conform termenilor aleși de dumneavoastră Această excepție poate face ca utilizarea Java să fie puțin dificilă în anumite situații. Întrebați Google, care a avut o lungă dispută cu Oracle, actualul proprietar al Java, cu privire la utilizarea Java în Android.

Java a fost importantă și pentru software-ul open source într-un mod care este adesea trecut cu vederea. După cum a declarat Brian Fox, fondatorul companiei de instrumente Software Composition Analysis (SCA) Sonatype, pentru The New Stack, fișierele Java ARchive (JAR) au creat module de cod ușor de utilizat, în timp ce sosirea Apache Maven a făcut posibilă gestionarea dependențelor Java.

Aceste concepte au făcut mult mai ușoară construirea de proiecte open-source din cod.

Înainte de această etapă, Fox a spus:

„Îmi amintesc clar prima dată când am reușit să construiesc un proiect open-source. Ai putea să te uiți la cod și să spui: «Vreau să-l schimb așa», dar ai putea petrece o săptămână încercând doar să-ți dai seama cum să construiești ceva.”

Până când Linus Torvalds a creat Git, s-ar putea argumenta că abordarea bazată pe pachete de cod JAR și Maven a fost cea mai semnificativă îmbunătățire în construirea de programe open-source.

Când Oracle a cumpărat Sun, compania a închis multe proiecte Sun, dar a continuat să ofere suport Java. Comunitatea Java, prin intermediul Procesului Comunitar Java (JCP), are încă un cuvânt de spus, dar Oracle decide.

În următoarele trei decenii, Java a evoluat odată cu peisajul tehnologic în schimbare. De la începuturile sale, alimentând conținut web dinamic, Java a crescut până la a domina software-ul pentru întreprinderi, aplicațiile mobile și, mai recent, dezvoltarea cloud-native și soluțiile big data. Ecosistemul robust al limbajului, inclusiv framework-uri precum Spring Boot, Jakarta EE și Hibernate, l-a făcut indispensabil pentru organizațiile care caută fiabilitate, scalabilitate și securitate.

Spre deosebire de alte limbaje mai vechi, cum ar fi Cobol și Fortran – care sunt încă utilizate, dar aproape întotdeauna în proiecte vechi – Java a evoluat constant pentru a satisface noile cerințe, menținând în același timp compatibilitatea inversă.

În ciuda apariției unor limbaje de programare mai noi, precum Kotlin și Scala, Java rămâne unul dintre cele mai utilizate limbaje de programare la nivel global. Java, împreună cu Python și JavaScript, este unul dintre cele mai populare trei limbaje. Nu trebuie să fii un expert ca să-ți dai seama de ce. Versatilitatea Java, suportul său pentru arhitecturi cloud-native și capacitatea sa de a gestiona cerințele inteligenței artificiale și ale big data garantează că limbajul va continua să modeleze viitorul dezvoltării de software.

Va fi Java vreodată un limbaj atrăgător și la modă? Probabil că nu. Este puțin lent, gestionarea memoriei poate fi dificilă, iar verbositatea și sintaxa complexă îi enervează pe unii programatori. Acestea fiind spuse, Java este un limbaj vital și va fi așa pentru decenii.

Comentarii

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

Acest site folosește Akismet pentru a reduce spamul. Află cum sunt procesate datele comentariilor tale.