Go (програмски језик) — разлика између измена

Садржај обрисан Садржај додат
→‎Дизајн језика: + дизајн језика
ознаке: мобилна измена мобилно веб-уређивање
+ синтакса
Ред 64:
 
Дизајнери језика тврде да су ови недостаци важни за успех језика, и детаљно објашњавају зашто су одређене одлуке донешене. Упркос томе, отворени су за додавање могућности за генеричко програмирање у будућности, као и по питању побољшања у областима генерације кода и смањења трајања паузе приликом аутоматског чишћења меморије.
 
=== Синтакса ===
 
Синтакса је најсличнија језицима из [[C (програмски језик)|C]], али је знатно измењена како би програми били концизнији и читљивији.
 
Постоји комбиновани оператор за декларацију и иницијализацију променљивих; уз помоћ овог оператора могуће је написати <code>i := 3</code> или <code>s := "tekst"</code> без прецизирања типова података. Ово је супротно од декларације и иницијализације у C-у: <code>int i = 3;</code> и <code>const char * s = "tekst";</code>.
 
Искази се завршавају са симболом [[тачка-зарез]], али се он не мора наћи у изворном коду на местима где се завршава ред. Алат <code>go fmt</code> из основне дистрибуције избацује овај симбол са места на којима је сувишан.
 
Функције могу враћати више вредности, па је шаблон враћања пара <code>result, error</code> главни метод индикације постојања грешке. Сличан шаблон се примењује за приступ мапама и за локално проверавање типа податка, са тим што је тада пар који се враћа <code>result, bool</code>, где други параметар указује на тачност операције.
 
Гоу такође додаје синтаксу за иницијализацију параметара у <code>struct</code> типу по имену, као и за иницијализацију мапа и низова.
 
Као замену за C-ове <code>for</code>, <code>while</code> и <code>do/while</code> петље, Гоу уводи комбиновану <code>for</code> петљу која заједно са <code>range</code> изразом омогућује једноставну итерацију око низова, мапа, канала, и стрингова.
 
== Примери ==