Go ක්‍රමලේඛන භාෂාව නිකුත් කිරීම 1.18

Go 1.18 ක්‍රමලේඛන භාෂාව නිකුතුව ඉදිරිපත් කර ඇති අතර, එය Google විසින් ප්‍රජාවගේ සහභාගීත්වයෙන් සංවර්ධනය කරන ලද දෙමුහුන් විසඳුමක් ලෙස සම්පාදනය කරන ලද භාෂාවල ඉහළ කාර්ය සාධනය සහ කේත ලිවීමේ පහසුව ලෙස භාෂා ස්ක්‍රිප්ට් කිරීමේ වාසි සමඟ ඒකාබද්ධ කරයි. , සංවර්ධනයේ වේගය සහ දෝෂ ආරක්ෂා කිරීම. ව්යාපෘති කේතය BSD බලපත්රය යටතේ බෙදා හරිනු ලැබේ.

Go හි වාක්‍ය ඛණ්ඩය පදනම් වී ඇත්තේ පයිතන් භාෂාවෙන් සමහර ණය ගැනීම් සමඟ C භාෂාවේ හුරුපුරුදු මූලද්‍රව්‍ය මත ය. භාෂාව තරමක් සංක්ෂිප්ත ය, නමුත් කේතය කියවා තේරුම් ගැනීමට පහසුය. Go කේතය අථත්‍ය යන්ත්‍රයක් භාවිතා නොකර ස්වදේශීයව ක්‍රියාත්මක වන Stand-alone binary executable files වෙත සම්පාදනය කර ඇත (profiling, debugging modules, සහ අනෙකුත් ධාවන කාල ගැටළු හඳුනාගැනීමේ උපපද්ධති ධාවන කාල සංරචක ලෙස ඒකාබද්ධ කර ඇත), එමඟින් C වැඩසටහන් සමඟ සැසඳිය හැකි කාර්ය සාධනය සඳහා ඉඩ ලබා දේ.

ව්‍යාපෘතිය මුලින් සංවර්ධනය කර ඇත්තේ බහු-නූල් ක්‍රමලේඛනය සහ බහු-මූලික පද්ධති මත කාර්යක්ෂමව ක්‍රියාත්මක කිරීම සඳහා වන අතර, සමාන්තර පරිගණකකරණය සහ සමාන්තර-ක්‍රියාත්මක කරන ලද ක්‍රම අතර අන්තර්ක්‍රියා සංවිධානය කිරීම සඳහා ක්‍රියාකරු මට්ටමේ මාධ්‍යයන් සැපයීම ඇතුළුව. භාෂාව වැඩිපුර වෙන් කරන ලද මතක කොටස් වලට එරෙහිව ගොඩනඟන ලද ආරක්ෂාවක් සපයන අතර කසළ එකතු කරන්නෙකු භාවිතා කිරීමේ හැකියාව ද සපයයි.

නව අනුවාදය සාමාන්‍ය ශ්‍රිත සහ වර්ග සඳහා සහය එක් කරයි, එමඟින් සංවර්ධකයාට බහු වර්ග සමඟ ක්‍රියා කරන ශ්‍රිත නිර්වචනය කිරීමට සහ භාවිතා කිරීමට ඉඩ සලසයි. එය බහු දත්ත වර්ග ආවරණය කරන ඒකාබද්ධ වර්ග නිර්මාණය කිරීමට අතුරුමුහුණත් භාවිතා කිරීමේ හැකියාව ද සපයයි. පවතින කේතය සමඟ පසුගාමී අනුකූලතාව බිඳ දැමීමකින් තොරව සාමාන්‍ය සඳහා සහය දක්වයි. // int64 සහ float64 වර්ග දෙකටම ක්‍රියා කරන, කට්ටල අගයන් සාරාංශ කිරීම func SumIntsOrFloats[K comparable, V int64 | float64](m map[K]V) V { var s V for _, v := range m { s += v } return s } // සාමාන්‍ය වර්ග අර්ථ දැක්වීමක් සහිත තවත් විකල්පයක්: වර්ගය අංක අතුරුමුහුණත { int64 | float64 } func SumNumbers[K comparable, V Number](m map[K]V) V { var s V for _, v := range m { s += v } return s }

වෙනත් වැඩිදියුණු කිරීම්:

  • සම්මත මෙවලම් කට්ටලයට කේත අපැහැදිලි කිරීම සඳහා ඒකාබද්ධ උපයෝගිතා ඇතුළත් වේ. අපැහැදිලි පරීක්ෂාවට හැකි සියලුම අහඹු ආදාන දත්ත සංයෝජන ප්‍රවාහයක් ජනනය කිරීම සහ ඒවා සැකසීමේදී සිදුවිය හැකි අසාර්ථකත්වයන් වාර්තා කිරීම ඇතුළත් වේ. කිසියම් අනුපිළිවෙලක් බිඳ වැටීමකට හේතු වුවහොත් හෝ අපේක්ෂිත ප්‍රතිචාරයට නොගැලපේ නම්, මෙම හැසිරීම දෝෂයක් හෝ අවදානමක් පෙන්නුම් කරයි.
  • බහු-මොඩියුල වැඩබිම් සඳහා සහය එක් කරන ලදී, එමඟින් ඔබට එකවර බහු මොඩියුලවල විධාන ක්‍රියාත්මක කිරීමට ඉඩ සලසයි, ඔබට එකවර බහු මොඩියුලවල කේත ගොඩනැගීමට සහ ක්‍රියාත්මක කිරීමට ඉඩ සලසයි.
  • Apple M1, ARM64, සහ PowerPC64 සකසනයන් මත පදනම් වූ පද්ධති සඳහා සැලකිය යුතු කාර්ය සාධන ප්‍රශස්තිකරණ ක්‍රියාත්මක කර ඇත. ශ්‍රිතවලට තර්ක යැවීම සහ ප්‍රතිඵල ලබා දීම සඳහා ස්ටැක් වෙනුවට රෙජිස්ටර් භාවිතා කිරීමේ හැකියාව සක්‍රීය කර ඇත. සම්පාදකය මඟින් පේළිගත ලූප් දිග හැරීම වැඩිදියුණු කර ඇත. සම්පාදකයේ ටයිප් පරීක්ෂාව සම්පූර්ණයෙන්ම ප්‍රතිනිර්මාණය කර ඇත. සමහර පරීක්ෂණ පෙර නිකුතුවට සාපේක්ෂව 20% ක කාර්ය සාධන දියුණුවක් පෙන්නුම් කරයි, නමුත් සම්පාදනය දැන් ආසන්න වශයෙන් 15% ක් දිගු වේ.
  • ධාවන වේලාවේදී, නිදහස් මතකය මෙහෙයුම් පද්ධතියට නැවත ලබා දීමේ කාර්යක්ෂමතාව වැඩි කර ඇති අතර, කසළ එකතු කරන්නා වැඩිදියුණු කර ඇති අතර, එහි හැසිරීම වඩාත් පුරෝකථනය කළ හැකිය.
  • සම්මත පුස්තකාලයට නව පැකේජ net/netip සහ debug/buildinfo එකතු කර ඇත. TLS 1.0 සහ 1.1 සඳහා සහය සේවාදායක කේතයේ පෙරනිමියෙන් අක්‍රිය කර ඇත. crypto/x509 මොඩියුලය තවදුරටත් SHA-1 හැෂ් භාවිතයෙන් අත්සන් කරන ලද සහතික ක්‍රියාවට නංවන්නේ නැත.
  • ලිනක්ස් පරිසර අවශ්‍යතා ඉහළ නංවා ඇති අතර, අවම වශයෙන් ලිනක්ස් කර්නල් අනුවාදය 2.6.32 අවශ්‍ය වේ. ඊළඟ නිකුතුවේදී FreeBSD සඳහා සමාන වෙනස්කම් අපේක්ෂා කෙරේ (FreeBSD 11.x ශාඛාව සඳහා සහාය නවත්වනු ඇත), සහ ක්‍රියාත්මක වීම සඳහා FreeBSD 12.2 අවශ්‍ය වනු ඇත.

මූලාශ්රය: opennet.ru

DDoS ආරක්ෂාව, VPS VDS සේවාදායකයන් සහිත අඩවි සඳහා විශ්වාසදායක සත්කාරකත්වය මිලදී ගන්න 🔥 DDoS ආරක්ෂාව, VPS VDS සේවාදායකයන් සහිත විශ්වාසදායක වෙබ් අඩවි සත්කාරකත්වය මිලදී ගන්න | ProHoster