గో ప్రోగ్రామింగ్ లాంగ్వేజ్ విడుదల 1.14

సమర్పించిన వారు ప్రోగ్రామింగ్ భాష విడుదల 1.14 కి వెళ్ళండి, ఇది సంకలనం చేయబడిన భాషల యొక్క అధిక పనితీరును స్క్రిప్టింగ్ భాషల ప్రయోజనాలతో కూడిన కోడ్‌ను వ్రాయడం సౌలభ్యం, అభివృద్ధి వేగం మరియు దోష రక్షణ వంటి ప్రయోజనాలతో కూడిన హైబ్రిడ్ పరిష్కారంగా సంఘం భాగస్వామ్యంతో Google చే అభివృద్ధి చేయబడుతోంది. ప్రాజెక్ట్ కోడ్ ద్వారా పంపిణీ చేయబడింది BSD లైసెన్స్ కింద.

గో యొక్క వాక్యనిర్మాణం పైథాన్ భాష నుండి కొన్ని అరువులతో సి భాష యొక్క సుపరిచితమైన మూలకాలపై ఆధారపడి ఉంటుంది. భాష చాలా సంక్షిప్తంగా ఉంది, కానీ కోడ్ చదవడం మరియు అర్థం చేసుకోవడం సులభం. గో కోడ్ వర్చువల్ మెషీన్‌ను ఉపయోగించకుండా స్థానికంగా అమలు చేసే స్టాండ్-ఏలోన్ బైనరీ ఎక్జిక్యూటబుల్స్‌లో కంపైల్ చేయబడింది (ప్రొఫైలింగ్, డీబగ్గింగ్ మరియు ఇతర రన్‌టైమ్ ప్రాబ్లమ్ డిటెక్షన్ సబ్‌సిస్టమ్‌లు ఇలా ఏకీకృతం చేయబడ్డాయి రన్‌టైమ్ భాగాలు), ఇది C ప్రోగ్రామ్‌లతో పోల్చదగిన పనితీరును సాధించడానికి మిమ్మల్ని అనుమతిస్తుంది.

ప్రాజెక్ట్ ప్రారంభంలో బహుళ-థ్రెడ్ ప్రోగ్రామింగ్ మరియు బహుళ-కోర్ సిస్టమ్‌లపై సమర్థవంతమైన ఆపరేషన్‌ను దృష్టిలో ఉంచుకుని, సమాంతర కంప్యూటింగ్‌ను నిర్వహించడానికి ఆపరేటర్-స్థాయి మార్గాలను అందించడం మరియు సమాంతర-ఎగ్జిక్యూటెడ్ పద్ధతుల మధ్య పరస్పర చర్యతో సహా అభివృద్ధి చేయబడింది. భాష ఎక్కువగా కేటాయించిన మెమరీ బ్లాక్‌లకు వ్యతిరేకంగా అంతర్నిర్మిత రక్షణను అందిస్తుంది మరియు చెత్త కలెక్టర్‌ను ఉపయోగించగల సామర్థ్యాన్ని అందిస్తుంది.

ప్రధాన ఆవిష్కరణలుGo 1.14 విడుదలలో పరిచయం చేయబడింది:

  • "go" కమాండ్‌లోని కొత్త మాడ్యూల్ సిస్టమ్ సాధారణ ఉపయోగం కోసం సిద్ధంగా ఉన్నట్లు ప్రకటించబడింది, డిఫాల్ట్‌గా ప్రారంభించబడుతుంది మరియు GOPATHకి బదులుగా డిపెండెన్సీ మేనేజ్‌మెంట్ కోసం సిఫార్సు చేయబడింది. కొత్త మాడ్యూల్ సిస్టమ్ ఇంటిగ్రేటెడ్ వెర్షన్ సపోర్ట్, ప్యాకేజీ డెలివరీ సామర్థ్యాలు మరియు మెరుగైన డిపెండెన్సీ మేనేజ్‌మెంట్‌ను కలిగి ఉంది. మాడ్యూల్‌లతో, డెవలపర్‌లు ఇకపై GOPATH ట్రీలో పని చేయడంతో ముడిపడి ఉండరు, సంస్కరణ డిపెండెన్సీలను స్పష్టంగా నిర్వచించగలరు మరియు పునరావృతమయ్యే బిల్డ్‌లను సృష్టించగలరు.
  • చేర్చబడింది అతివ్యాప్తి చెందుతున్న పద్ధతులతో ఇంటర్‌ఫేస్‌లను పొందుపరచడానికి మద్దతు. అంతర్నిర్మిత ఇంటర్‌ఫేస్ నుండి మెథడ్‌లు ఇప్పుడు ఇప్పటికే ఉన్న ఇంటర్‌ఫేస్‌లలోని పద్ధతుల మాదిరిగానే పేర్లు మరియు సంతకాలను కలిగి ఉంటాయి. స్పష్టంగా ప్రకటించిన పద్ధతులు మునుపటిలాగే ప్రత్యేకంగా ఉంటాయి.
  • "డిఫర్" ఎక్స్‌ప్రెషన్ యొక్క పనితీరు మెరుగుపరచబడింది, ఇది దాదాపుగా వాయిదాపడిన ఫంక్షన్‌ను నేరుగా కాల్ చేసినంత వేగంగా చేస్తుంది, పనితీరు-సెన్సిటివ్ కోడ్‌లో వాయిదాపడిన ఫంక్షన్ అమలును అనుమతిస్తుంది.
  • కొరౌటిన్‌ల (గోరౌటిన్‌లు) యొక్క అసమకాలిక ప్రీఎంప్షన్ అందించబడింది - ఫంక్షన్ కాల్‌లను కలిగి ఉండని లూప్‌లు ఇప్పుడు షెడ్యూలర్ డెడ్‌లాక్‌కు దారితీయవచ్చు లేదా చెత్త సేకరణ ప్రారంభాన్ని ఆలస్యం చేయవచ్చు.
  • మెమరీ పేజీ కేటాయింపు వ్యవస్థ యొక్క సామర్థ్యం మెరుగుపరచబడింది మరియు ఇప్పుడు పెద్ద GOMAXPROCS విలువలతో కాన్ఫిగరేషన్‌లలో చాలా తక్కువ లాక్ వివాదాలు ఉన్నాయి. ఫలితంగా మెమరీ యొక్క పెద్ద బ్లాక్‌లను ఏకకాలంలో తీవ్రంగా పంపిణీ చేస్తున్నప్పుడు జాప్యం తగ్గుతుంది మరియు నిర్గమాంశ పెరుగుతుంది.
  • లాకింగ్ ఆప్టిమైజ్ చేయబడింది మరియు టైమ్‌లో ఉపయోగించిన అంతర్గత టైమర్‌లను అమలు చేస్తున్నప్పుడు సందర్భ స్విచ్‌ల సంఖ్య తగ్గించబడింది. తర్వాత, time.Tick, net.Conn.SetDeadline ఫంక్షన్‌లు.
  • గో కమాండ్‌లో, రూట్‌లో విక్రేత డైరెక్టరీ ఉన్నట్లయితే “-mod=vendor” ఫ్లాగ్ డిఫాల్ట్‌గా ప్రారంభించబడుతుంది, ఇది నిర్దిష్ట విక్రేతతో ముడిపడి ఉన్న బాహ్య డిపెండెన్సీలను అందించడానికి ఉద్దేశించబడింది. "వెండర్" డైరెక్టరీ నుండి కాకుండా మాడ్యూల్ కాష్ నుండి మాడ్యూల్‌లను లోడ్ చేయడానికి ప్రత్యేక "-mod=mod" ఫ్లాగ్ జోడించబడింది. go.mod ఫైల్ చదవడానికి మాత్రమే అయితే, టాప్ “వెండర్” డైరెక్టరీ లేకపోతే “-mod=readonly” ఫ్లాగ్ డిఫాల్ట్‌గా సెట్ చేయబడుతుంది. మాడ్యూల్ యొక్క రూట్ డైరెక్టరీలో ఉన్న దానికి బదులుగా ప్రత్యామ్నాయ go.mod ఫైల్‌ను పేర్కొనడానికి "-modfile=file" ఫ్లాగ్ జోడించబడింది.
  • GOINSECURE ఎన్విరాన్మెంట్ వేరియబుల్ జోడించబడింది, సెట్ చేసినప్పుడు, go కమాండ్‌కు HTTPS ఉపయోగం అవసరం లేదు మరియు మాడ్యూల్‌లను నేరుగా లోడ్ చేస్తున్నప్పుడు సర్టిఫికేట్ తనిఖీని దాటవేస్తుంది.
  • అసురక్షిత.Pointer యొక్క సురక్షితమైన ఉపయోగం కోసం నియమాలకు అనుగుణంగా కోడ్‌ని తనిఖీ చేయడానికి కంపైలర్ “-d=checkptr” ఫ్లాగ్‌ను డిఫాల్ట్‌గా ప్రారంభించింది.
  • డెలివరీలో కొత్త ప్యాకేజీ చేర్చబడింది హాష్/మాఫాష్ నాన్-క్రిప్టోగ్రాఫిక్ హాష్ ఫంక్షన్‌లతో ఏకపక్ష బైట్ సీక్వెన్సులు లేదా స్ట్రింగ్‌ల కోసం హాష్ టేబుల్‌లను రూపొందించడానికి.
  • Linuxలో 64-బిట్ RISC-V ప్లాట్‌ఫారమ్‌కు ప్రయోగాత్మక మద్దతు జోడించబడింది.
  • 64-బిట్ ARM సిస్టమ్‌లపై FreeBSDకి మద్దతు జోడించబడింది.

మూలం: opennet.ru

ఒక వ్యాఖ్యను జోడించండి