Pokloni za geek-a | PC Press

Unutar renesanse Java jezika

Java je stara, dosadna i namenjena samo korporacijama!“ – tako je jedan softverski inženjer uzviknuo svom kolegi dok su zajedno plovili čamcem kroz deltu Sacramento-San Joaquin.

PCPress.rs Image

Kako Java postaje jednostavnija, izražajnija i orijentisana na podatke

Nalazili su se negde između poslovnog sagorevanja i koderske krize srednjih godina. U tom trenutku rodila se želja da se kod ponovo piše sa uživanjem. U potrazi za osveženjem, dvojac je 2009. godine pokrenuo konsultantsku firmu zasnovanu na Ruby-ju, a već 2011. prešao je na programski jezik Go, čak je moguće da su među prvima objavili oglas za posao na poznatoj go-nuts mejling listi. Petnaest godina kasnije, situacija se potpuno promenila — Java doživljava pravu jezičku renesansu, a zanimljivo je da je upravo jedan od njih sada deo tima koji vodi tu transformaciju.

Od statične i kompleksne ka dinamičnoj i čitljivoj

Flaner

Povratak u 2005. godinu otkriva koliko je Java tada bila ograničena: bez lambda izraza, bez stream-ova, bez generičkih tipova i bez fleksibilnog switch izraza. Dok je većina programera koristila Javu 1.4, David Heinemeier Hansson je uživo na bini demonstrirao kako za 16 minuta može da napravi funkcionalni blog koristeći Ruby on Rails — i to bez ijedne reči o “enterprise” sistemima ili “bean”-ovima. Tokom naredne decenije, pažnja se zadržala na Ruby-ju i Go-u, bez mnogo interesa za Javu, čiji se napredak odvijao tiho, ali ubrzano. Prekretnica je nastupila nakon što je njihova firma bila preuzeta, a jedan od osnivača se pridružio Java Platform timu unutar Oracle-a, gde je postao direktno uključen u savremeni razvoj jezika.

Šestomesečni ciklus izdanja: Stabilnost i predvidljivost

Odavno je iza nas vreme kada je Java čekala godine na novo izdanje. Danas se nove verzije objavljuju na svaka šest meseci, precizno svakog utorka u 12. i 38. ISO nedelji. Ova praksa traje već više od 7 godina, i omogućila je:

  • Brže uvođenje novih funkcionalnosti,
  • Postepenu nadogradnju velikih funkcija (npr. pattern matching),
  • Predvidljivost za kompanije koje zavise od Jave,
  • Mogućnost testiranja „preview“ funkcija kroz stvarnu upotrebu.

Neki od ključnih dodataka poslednjih godina uključuju:

  • record klase,
  • pattern matching,
  • virtuelne niti,
  • foreign function i memory API,
  • GC sa ultra niskom latencijom.

OpenJDK: Zajednica kao temelj

OpenJDK, pokrenut 2006. godine, nije proizvod, već platforma za saradnju. U njemu se razvijaju projekti, vodi se diskusija kroz mejling liste i razrađuju JDK Enhancement Proposal-i (JEP). Oracle doprinosi većinu koda, ali i drugi partneri i entuzijasti širom sveta.

Oracle takođe distribuira Java verzije pod različitim licencama: od open-source (GPLv2 sa Classpath izuzetkom), do komercijalnih izdanja sa dugoročnom podrškom.

Project Amber: Srce jezičke evolucije

Project Amber, pod vođstvom Briana Goetza, transformiše Javu kroz tri glavna pravca:

  • Veća izražajnost – manje šablonskog koda, više smisla u jednoj liniji.
  • Orijentisanost na podatke – kod je više usmeren na rukovanje podacima nego na poslovnu logiku.
  • Pojednostavljenje – pristupačnost za početnike i male programe.

Zajedno, ove promene čine Javu manje sklonom greškama i lakšom za čitanje i održavanje.

Primer modernog korišćenja:

Zamislite da pišete Slack bot koji:

  • prima zahtev korisnika,
  • kontaktira vaš CRM API,
  • koristi LLM za generisanje odgovora.

Umesto da modelujete sve klasama, koristite:

  • record za JSON odgovor,
  • pattern matching za dekompoziciju podataka,
  • sealed classes za potpunu analizu,
  • text blocks za formiranje LLM prompta.

Java za početnike i skripting

Nove mogućnosti poput:

  • pokretanja .java fajlova bez prethodne kompilacije,
  • “shebang” podrške (npr. #!/usr/bin/java),

čine Javu pogodnijom i za skripting i edukaciju — što je ranije bio svet rezervisan za Python ili Bash.

Zaključak

Java danas nije samo platforma za velike poslovne sisteme. Ona se razvila u jezik koji je zabavno koristiti, koji prati moderne stilove programiranja, olakšava rad s podacima i pristupačnija je nego ikad ranije.

Ostanite u toku — Java se vraća u velikom stilu.

Izvor: Thenewstack

Facebook komentari: