Utorak, mart 3, 2026
NaslovnaStručni/industrijski ITGolang uvodi generičke metode, ali one nisu najveća potreba programera

Golang uvodi generičke metode, ali one nisu najveća potreba programera

Tim koji razvija Go je odobrio uvođenje generičkih metoda, čime su promenili raniji stav koji je bio iznesen u FAQ-u jezika. Ovaj predlog, koji je izneo jedan od dizajnera Go-a, Robert Griesemer, sada ulazi u fazu implementacije.

Jedan od ključnih problema – da Go interfejsi ne mogu uključivati generičke metode – ostaje. Prethodni stav je bio da, pošto generičke metode ne mogu implementirati interfejse, nema smisla imati ih. Programeri su mogli da koriste generičke funkcije koje već postoje. Nova perspektiva je da su metode korisne za organizaciju koda čak i ako ne implementiraju interfejs, pa stoga ne postoji razlog da ne podržavaju tip parametre – generičke tipove – na isti način kao funkcije.

Griesemer je naglasio da je nova funkcionalnost potpuno kompatibilna sa postojećim Go kodom, iako će alati morati da se prilagode. Ipak, pitanje interfejsa ostaje otvoreno, a Griesemer je dodao da uvođenje generičkih metoda „ne isključuje mogućnost implementacije generičkih interfejs metoda u budućnosti, ako pronađemo prihvatljivo rešenje za implementaciju“.

Prva verzija Go-a, objavljena 2012. godine, nije podržavala generičko programiranje, iako je to bila česta želja programera. Go 1.18, koji je objavljen u martu 2022. godine, dodao je generičke funkcije i tip parametre za deklaracije funkcija i tipova. Čak i pre ovog izdanja, zahtev za generičkim metodama dobio je široku podršku, ali je odbijen zbog nesigurnosti u vezi sa mogućnošću implementacije generičkih metoda koje bi mogle da zadovolje interfejse.

Reakcija programera na odobreni predlog je pozitivna, ali mnogi priznaju da funkcionalnost nije potpuna. Jedan od programera je rekao: „Moja interna biblioteka ima mnogo rešenja za nedostatak generičkih metoda i sve me to izuzetno nervira.“ Drugi je dodao da „će biti pomalo zbunjujuće kada to postane dostupno, jer se generičke metode ne mogu koristiti za zadovoljenje interfejsa“.

U januaru je tim Go-a objavio rezultate svoje ankete među programerima za 2025. godinu, zasnovane na odgovorima uglavnom profesionalnih programera koji koriste Go kao svoj primarni jezik. Iako su programeri Go-a generalno zadovoljni jezikom (91%), među najvažnijim frustracijama su nedostatak funkcija koje su prisutne u drugim jezicima. Generičke metode su jedna od tih funkcija, ali postoje i veći zahtevi, uključujući nedostatak potpunih enumeracija (enumerated types), nedostatak obrade izuzetaka i sigurnosti u vezi sa nil pokazivačima. Jedan od najpopularnijih komentara na Reddit-u sumira situaciju: „Go je dobio generičke metode pre enumeracija. Ludo.“

RELATED ARTICLES

POSTAVI ODGOVOR

молимо унесите свој коментар!
овдје унесите своје име

Popularno