Go හි වාක්ය ඛණ්ඩය පදනම් වී ඇත්තේ පයිතන් භාෂාවෙන් සමහර ණය ගැනීම් සමඟ C භාෂාවේ හුරුපුරුදු මූලද්රව්ය මත ය. භාෂාව තරමක් සංක්ෂිප්ත ය, නමුත් කේතය කියවා තේරුම් ගැනීමට පහසුය. Go කේතය අථත්ය යන්ත්රයක් භාවිතා නොකර ස්වදේශීයව ක්රියාත්මක වන ස්වාධීන ද්විමය ක්රියාත්මක කළ හැකි බවට සම්පාදනය කර ඇත (පැතිකඩ කිරීම, නිදොස්කරණය සහ අනෙකුත් ධාවන කාල ගැටළු හඳුනාගැනීමේ උප පද්ධති ඒකාබද්ධ කර ඇත
ව්යාපෘතිය මුලින් සංවර්ධනය කර ඇත්තේ බහු-නූල් ක්රමලේඛනය සහ බහු-මූලික පද්ධති මත කාර්යක්ෂමව ක්රියාත්මක කිරීම සඳහා වන අතර, සමාන්තර පරිගණකකරණය සහ සමාන්තර-ක්රියාත්මක කරන ලද ක්රම අතර අන්තර්ක්රියා සංවිධානය කිරීම සඳහා ක්රියාකරු මට්ටමේ මාධ්යයන් සැපයීම ඇතුළුව. භාෂාව වැඩිපුර වෙන් කරන ලද මතක කොටස් වලට එරෙහිව ගොඩනඟන ලද ආරක්ෂාවක් සපයන අතර කසළ එකතු කරන්නෙකු භාවිතා කිරීමේ හැකියාව ද සපයයි.
ප්රධාන
- Crypto/tls පැකේජයට පෙරනිමියෙන් ප්රොටෝකෝල සහය සක්රීය කර ඇත
TLS 1.3 . Ed25519 ඩිජිටල් අත්සන් සඳහා සහය ඇතිව "crypto/ed25519" නව පැකේජය එක් කරන ලදී; - ද්විමය සංඛ්යා (උදා: 0b101), අෂ්ටක (0o377), අතාත්වික (2.71828i) සහ ෂඩාස්රාකාර පාවෙන ලක්ෂ්යය (0x1p-1021) නිර්වචනය කිරීම සඳහා නව සංඛ්යාත්මක වචනාර්ථ උපසර්ග සඳහා සහය එක් කරන ලදි, සහ ඉලක්කම් දෘශ්යමය වශයෙන් වෙන් කිරීමට "_" අක්ෂරය භාවිතා කිරීමේ හැකියාව විශාල සංඛ්යාවක් (1_000_000);
- "‹‹" සහ "››" ක්රියාකරුවන් භාවිතා කිරීමට පෙර uint වර්ගයට අනවශ්ය පරිවර්තන වලක්වන, මුර මෙහෙයුම් වලදී අත්සන් නොකළ කවුන්ටර පමණක් භාවිතා කිරීමේ සීමාව ඉවත් කර ඇත;
- Illumos වේදිකාව සඳහා සහය එක් කරන ලදී (GOOS=illumos). Android 10 වේදිකාව සමඟ ගැළපීම සහතික කර ඇත. FreeBSD (11.2) සහ macOS (10.11 "El Capitan") හි අවම අනුවාද සඳහා අවශ්යතා වැඩි කර ඇත.
- GOPATH සඳහා විකල්පයක් ලෙස භාවිතා කළ හැකි නව මොඩියුල පද්ධතියේ අඛණ්ඩ සංවර්ධනය. Go 1.13 හි කලින් ප්රකාශ කරන ලද සැලසුම් වලට පටහැනිව, මෙම පද්ධතිය පෙරනිමියෙන් සක්රීය කර නොමැති අතර GO111MODULE=විචල්යය හරහා සක්රිය කිරීම හෝ මොඩියුල ස්වයංක්රීයව යෙදෙන සන්දර්භයක් භාවිතා කිරීම අවශ්ය වේ. නව මොඩියුල පද්ධතිය ඒකාබද්ධ අනුවාද සහාය, පැකේජ බෙදා හැරීමේ හැකියාවන් සහ වැඩිදියුණු කළ යැපුම් කළමනාකරණය ඇතුළත් වේ. මොඩියුල සමඟින්, සංවර්ධකයින් තවදුරටත් GOPATH ගසක් තුළ වැඩ කිරීමට බැඳී නැත, අනුවාද පරායත්තතා පැහැදිලිව නිර්වචනය කළ හැකිය, සහ නැවත නැවත කළ හැකි ගොඩනැගීම් නිර්මාණය කළ හැකිය.
පෙර නිකුතු මෙන් නොව, නව පද්ධතියේ ස්වයංක්රීය යෙදුම දැන් ක්රියා කරන්නේ go.mod ගොනුවක් දැනට ක්රියාත්මක වන නාමාවලියෙහි හෝ go command එක ක්රියාත්මක කරන විට මව් නාමාවලියෙහි පවතින විට, එය GOPATH/src බහලුම තුළ ඇති විටය. නව පරිසර විචල්යයන් එකතු කර ඇත: GOPRIVATE, ප්රසිද්ධියේ ප්රවේශ විය හැකි මොඩියුලවල මාර්ග නිර්වචනය කරයි, සහ go.sum ගොනුවේ ලැයිස්තුගත කර නොමැති මොඩියුල සඳහා චෙක්සම් දත්ත සමුදායට ප්රවේශ පරාමිති නියම කරන GOSUMDB;
- "go" විධානය පෙරනිමියෙන් මොඩියුල පූරණය කරන අතර Google විසින් පවත්වාගෙන යනු ලබන මොඩියුල දර්පණය සහ චෙක්සම් දත්ත ගබඩාව භාවිතයෙන් ඒවායේ අඛණ්ඩතාව පරීක්ෂා කරයි (proxy.golang.org, sum.golang.org සහ index.golang.org);
- ද්විමය පැකේජ සඳහා පමණක් සහාය අත්හිටුවා ඇත; "//go:binary-only-package" ආකාරයෙන් පැකේජයක් තැනීම දැන් දෝෂයක් ඇති කරයි;
- "go get" විධානයට "@patch" උපසර්ගය සඳහා සහය එක් කරන ලදී, මොඩියුලය නවතම නඩත්තු නිකුතුවට යාවත්කාලීන කළ යුතු බව පෙන්නුම් කරයි, නමුත් වත්මන් ප්රධාන හෝ සුළු අනුවාදය වෙනස් නොකර;
- මූලාශ්ර පාලන පද්ධති වලින් මොඩියුල ලබා ගැනීමේදී, "go" විධානය දැන් අනුවාද තන්තුවෙහි අතිරේක පරීක්ෂණයක් සිදු කරයි, ගබඩාවෙන් පාර-දත්ත සමඟ ව්යාජ අනුවාද අංක ගැලපීමට උත්සාහ කරයි;
- සහාය එකතු කරන ලදී
දෝෂ පරීක්ෂාව (දෝෂ එතීම) සම්මත දෝෂ හසුරුවන්න භාවිතා කිරීමට ඉඩ සලසන දවටන නිර්මාණය හරහා. උදාහරණ වශයෙන්,වැරැද්ද ක්රමයක් ලබා දීමෙන් "e" දෝෂය "w" වටා එවිය හැකනොකැඩෙන්න , ආපසු එන "w". "e" සහ "w" යන දෝෂ දෙකම වැඩසටහනේ ඇති අතර "w" දෝෂය මත පදනම්ව තීරණ ගනු ලැබේ, නමුත් "e" "w" වෙත අතිරේක සන්දර්භය සපයයි හෝ එය වෙනස් ලෙස අර්ථකථනය කරයි; - ධාවන කාල සංරචකවල ක්රියාකාරීත්වය ප්රශස්ත කර ඇත (30% දක්වා වේගය වැඩි කිරීමක් සටහන් කර ඇත) සහ මෙහෙයුම් පද්ධතියට වඩාත් ආක්රමණශීලී මතකය නැවත පැමිණීම ක්රියාත්මක කර ඇත (මීට පෙර, මතකය මිනිත්තු පහක් හෝ වැඩි ගණනකට පසුව ආපසු ලබා දෙන ලදී, නමුත් දැන් වහාම ගොඩ ප්රමාණය අඩු කිරීමෙන් පසුව).
මූලාශ්රය: opennet.ru