
Go забони барномасозии нисбатан ҷавон, вале маъмул аст. Аз ҷониби Stack Overflow, маҳз Golang дар рейтинги забонҳои барномасозӣ, ки таҳиягарон мехоҳанд азхуд кунанд, ҷои сеюмро гирифт. Дар ин мақола мо кӯшиш хоҳем кард, ки сабабҳои маъруфияти Go-ро фаҳмем ва инчунин бубинем, ки ин забон дар куҷо истифода мешавад ва чаро онро ҳатто омӯхтан лозим аст.
Якчанд таърих
Забони барномасозии Go аз ҷониби Google сохта шудааст. Воқеан, номи пурраи он Голанг аз "забони Google" аст. Сарфи назар аз он, ки дар эълон забон ҷавон номида шудааст, имсол даҳсола мешавад.
Ҳадафи созандагони Go таҳияи як забони содда ва муассири барномасозӣ буд, ки метавонад барои эҷоди нармафзори баландсифат истифода шавад. Роб Пайк, яке аз созандагони Go, гуфт, ки Go барои барномасозони ширкат, ки хатмкардагони нисбатан нав ҳастанд ва Java, C, C++ ё Python медонанд, тарҳрезӣ шудааст. Барои онҳо, Go забонест, ки шумо метавонед зуд фаҳмед ва ба он одат кунед.
Дар аввал, он як абзор дар дохили Google буд, аммо бо мурури замон он аз умқи корпоратсия баромад ва ба омма маълум шуд.
Афзалиятҳои забон
Голанг дорои шумораи зиёди бартариҳо, ҳам маъруф ва ҳам на он қадар маълум.
Содда Воқеан, ҳадафи аслии эҷоди забон ҳамин буд ва ба он ҳам расид. Go дорои синтаксиси хеле содда (бо пиндоштҳои муайян), аз ин рӯ барномаҳоро нисбат ба баъзе забонҳои дигар зудтар таҳия кардан мумкин аст. Ва дар ин ҷо ду нуқтаи ҷолиб вуҷуд дорад.
Аввалан, Голангро як навгонии мукаммали барномасозӣ хеле зуд омӯхта метавонад - шахсе, ки умуман забонро намедонад ва танҳо нақшаи таҳиякунанда шуданро дорад. Дар бораи Go метавон гуфт, ки он тақрибан ба мисли PHP ё ҳатто Паскал осонтар аст (нисбатан), аммо ба мисли C++ пурқувват аст.
Сониян, Go метавонад аз ҷониби як барномасози аллакай ташаккулёфта азхуд карда шавад, ки аллакай як ё якчанд забонҳоро медонад. Аксар вақт таҳиягарон пас аз азхудкунии Python ё PHP Go-ро меомӯзанд. Ғайр аз он, баъзе барномасозон ҷуфти Python/Go ё PHP/Go-ро бомуваффақият истифода мебаранд.
Шумораи зиёди китобхонаҳо. Агар шумо ягон хусусиятро дар Go надошта бошед, шумо метавонед яке аз китобхонаҳои сершуморро барои анҷом додани кор истифода баред. Go бартарии дигар дорад - шумо метавонед бо китобхонаҳои C ба осонӣ муошират кунед. Ҳатто чунин ақида вуҷуд дорад, ки китобхонаҳои Go барои китобхонаҳои C бастабандӣ мекунанд.
Тозагии код. Компилятори Go ба шумо имкон медиҳад, ки рамзи худро тоза нигоҳ доред. Масалан, тағирёбандаҳои истифоданашуда хатои ҷамъоварӣ ҳисобида мешаванд. Go аксари мушкилоти форматкуниро ҳал мекунад. Ин, масалан, бо истифода аз барномаи gofmt ҳангоми захира кардан ё тартиб додан анҷом дода мешавад. Форматкунӣ ба таври худкор ислоҳ карда мешавад. Шумо метавонед дар бораи ин ҳама дар дарс маълумоти бештар гиред. .
Навиштани статикӣ. Бартарии дигари Go ин аст, ки он эҳтимолияти хатогии таҳиягарро коҳиш медиҳад. Бале, дар ду рӯзи аввал барномасозе, ки ба чопи динамикӣ одат кардааст, ҳангоме хашмгин мешавад, ки вай бояд барои ҳар як тағирёбанда ва функсия ва инчунин барои ҳама чизи дигар навъ эълон кунад. Аммо баъд маълум мешавад, ки дар ин ҷо афзалиятҳои доимӣ мавҷуданд.
. Утилите, ки рамзи ҳуҷҷатгузории онро хеле содда мекунад. Бартарии бузурги GoDoc дар он аст, ки он забонҳои иловагиро ба мисли JavaDoc, PHPDoc ё JSDoc истифода намебарад. Утилита миқдори максималии маълумотеро, ки аз коди ҳуҷҷатгузорӣ гирифта мешавад, истифода мебарад.
Нигоҳдории код. Бо шарофати синтаксиси содда ва мухтасар нигоҳ доштани он осон аст. Ҳамаи ин мероси Google аст. Азбаски корпоратсия дорои миқдори зиёди код барои маҳсулоти гуногуни нармафзор ва инчунин даҳҳо ҳазор таҳиягарон, ки ҳама чизро ҷудо мекунанд, мушкилоти нигоҳдорӣ ба миён меояд. Рамз бояд барои ҳар касе, ки дар он кор мекунад, фаҳмо бошад, хуб ҳуҷҷатгузорӣ ва мухтасар бошад. Ҳамаи ин бо Go имконпазир аст.
Дар айни замон, дар Голанг синфҳо вуҷуд надоранд (сохторҳо, сохторҳо мавҷуданд), дастгирии мерос вуҷуд надорад, ки тағир додани кодро хеле осон мекунад. Илова бар ин, истисноҳо, эзоҳҳо ва ғайра вуҷуд надоранд.
Шумо дар Go чӣ навишта метавонед?
Қариб ҳама чиз, ба истиснои баъзе нуктаҳо (масалан, таҳияҳои марбут ба омӯзиши мошинсозӣ - Python бо оптимизатсияи сатҳи паст дар C/C++ ва CUDA дар ин ҷо мувофиқтар аст).
Ҳама чизи дигарро метавон навишт, ин махсусан барои хидматҳои веб дуруст аст. Илова бар ин, Go барои таҳияи барномаҳо ҳам барои корбари ниҳоӣ ва ҳам барои таҳияи демонҳо, UI арзанда аст ва барои барномаҳо ва хидматҳои кросс-платформа мувофиқ аст.
Талабот ба Голанг

Бо мурури замон ба забон бештар талабот пайдо мешавад. Илова ба он ширкатҳое, ки дар расми боло мавҷуданд, Mail.ru Group, Avito, Ozon, Lamoda, BBC, Canonical ва дигарон бо Golang кор мекунанд.
«Мо тасмим гирифтем, ки тиҷоратро васеъ кунем; Мо ба Go бо сабаби суръат ва эътимоднокии он ва муҳимтар аз ҳама, аудиторияи барномасозоне, ки онро истифода мебаранд, такя мекунем "гуфт намояндагони Ozon дар соли 2018, пас аз тасмими гузаштан ба Голанг.
Хуб, дар бораи даромад чӣ музди як таҳиякунанда Go соли гузашта ба ҳисоби миёна 60-140 ҳазор рубл "Давраи ман" Ин рақам дар муқоиса бо соли 2017 8,3% афзоиш ёфтааст. Эҳтимол аст, ки афзоиш дар соли 2019 идома ёбад, зеро бисёре аз ширкатҳо ба таҳиягарони Голанг ниёз доранд.
Чӣ оянда аст?
Тараккиёти Голанг бешубха бас намешавад. Талабот ба мутахассисони хубе, ки ин забонро медонанд, бештар мешавад, аз ин рӯ пайдо кардани кор барои мутахассис (навкор ё касбӣ) мушкил нахоҳад буд. Аслан, ин изҳорот имрӯз ҳам муҳим аст, зеро норасоии доимии таҳиягарон дар бозори IT вуҷуд дорад.
Go барои барномасозони навкор ва мутахассисоне, ки аллакай як ё якчанд забони барномасозиро медонанд, хуб аст. Қариб ҳар як барномасоз метавонад онро омӯзад ё аз нав омӯзад.
Мақола якҷоя бо омӯзгор омода шудааст дар GeekBrains аз ҷониби Сергей Кручинин, ки барои он ташаккури зиёд ба ӯ!
Манбаъ: will.com
