Ja mam Go celkem rad, neco jsem uz v nem napsal, ale delalo se mi v nem celkem nepohodlne.
Nejvic mi chybi prave exceptions, pak collections aspon na urovni Jawy, LINQ nebo stream se neodvazuju doufat.
Namodelovat v GO jnom trosku slozitejsi datovou strukturu, naco ve stylu HashMap<String, Bean>, kde Bean muze obsahovat atrbut Set<String>, je nebetycny oser, kde spoustu inheritnich kontrol musim ozelet, zatimco v Jawe trivka. Typicky treba object binding pro SOAP. Navic zpusob zapisu slices je tak debilni, ze musim mit neustale otevrne google okno, abych byl schopen je nadefinovat.
Co se tyce exception, v Jawe jsem napsal hromadu utilit, kdy libovolna chyba zpusobi prosty vypis e.getMessage() a konec programu. V Jawe trivka, o chyby se proste nestaram krome trybloku v mainu.
GO error struktura je silne inferiorni, v Jawe dosahnu tehoz, kdyz budu vracet bean s atributy retval a errval. Ale k cemu takove zoufalstvi, kdyz muzu mit luxusni vyjimky, do jejichz objektu si naseru kontext informaci cely kybl.
A nevede to k zoufastvi typu if(func()==-2) { return -4}
Chapu, ze GO ma byt nahradou C, ale jdou na to IMHO blbe.
Jediny prinos Go vidim v channelech a gorutinach a ve vyslednem nativnim exaci.
Pokud se do Javy dodelaji kanaly a korutiny, nevidim pro Go moc zivotniho prostoru.