డార్ట్ 2.14 భాష మరియు ఫ్లట్టర్ 2.5 ఫ్రేమ్‌వర్క్ అందుబాటులో ఉన్నాయి

Google డార్ట్ 2.14 ప్రోగ్రామింగ్ లాంగ్వేజ్ విడుదలను ప్రచురించింది, ఇది డార్ట్ 2 యొక్క సమూలంగా పునఃరూపకల్పన చేయబడిన శాఖ యొక్క అభివృద్ధిని కొనసాగిస్తుంది, ఇది డార్ట్ భాష యొక్క అసలు వెర్షన్ నుండి బలమైన స్టాటిక్ టైపింగ్ (రకాలు స్వయంచాలకంగా ఊహించవచ్చు, కాబట్టి రకాలను పేర్కొనడం అవసరం లేదు, కానీ డైనమిక్ టైపింగ్ ఇకపై ఉపయోగించబడదు మరియు మొదట్లో లెక్కించిన రకం వేరియబుల్‌కు కేటాయించబడుతుంది మరియు కఠినమైన టైప్ చెకింగ్ తర్వాత వర్తించబడుతుంది).

డార్ట్ భాష యొక్క లక్షణాలు:

  • JavaScript, C మరియు Java ప్రోగ్రామర్‌లకు సుపరిచితమైన మరియు సులభంగా నేర్చుకోగల సింటాక్స్.
  • పోర్టబుల్ పరికరాల నుండి శక్తివంతమైన సర్వర్‌ల వరకు అన్ని ఆధునిక వెబ్ బ్రౌజర్‌లు మరియు వివిధ రకాల వాతావరణాల కోసం వేగవంతమైన లాంచ్ మరియు అధిక పనితీరును నిర్ధారిస్తుంది.
  • ఇప్పటికే ఉన్న పద్ధతులు మరియు డేటా యొక్క ఎన్‌క్యాప్సులేషన్ మరియు పునర్వినియోగాన్ని అనుమతించే తరగతులు మరియు ఇంటర్‌ఫేస్‌లను నిర్వచించే సామర్థ్యం.
  • రకాలను పేర్కొనడం వలన డీబగ్ చేయడం మరియు లోపాలను గుర్తించడం సులభతరం చేస్తుంది, కోడ్‌ను స్పష్టంగా మరియు మరింత చదవగలిగేలా చేస్తుంది మరియు మూడవ పక్ష డెవలపర్‌ల ద్వారా దాని సవరణ మరియు విశ్లేషణను సులభతరం చేస్తుంది.
  • మద్దతు ఉన్న రకాలు: వివిధ రకాల హాష్‌లు, శ్రేణులు మరియు జాబితాలు, క్యూలు, సంఖ్యా మరియు స్ట్రింగ్ రకాలు, తేదీ మరియు సమయాన్ని నిర్ణయించే రకాలు, సాధారణ వ్యక్తీకరణలు (RegExp). మీ స్వంత రకాలను సృష్టించడం సాధ్యమవుతుంది.
  • సమాంతర అమలును నిర్వహించడానికి, ఐసోలేట్ లక్షణంతో తరగతులను ఉపయోగించాలని ప్రతిపాదించబడింది, దీని కోడ్ పూర్తిగా ప్రత్యేక మెమరీ ప్రాంతంలో వివిక్త ప్రదేశంలో అమలు చేయబడుతుంది, సందేశాలను పంపడం ద్వారా ప్రధాన ప్రక్రియతో పరస్పర చర్య చేస్తుంది.
  • పెద్ద వెబ్ ప్రాజెక్ట్‌ల మద్దతు మరియు డీబగ్గింగ్‌ను సులభతరం చేసే లైబ్రరీల వినియోగానికి మద్దతు. ఫంక్షన్ల యొక్క మూడవ-పక్షం అమలులను షేర్డ్ లైబ్రరీల రూపంలో చేర్చవచ్చు. అప్లికేషన్‌లను భాగాలుగా విభజించవచ్చు మరియు ప్రతి భాగం యొక్క అభివృద్ధిని ప్రత్యేక ప్రోగ్రామర్ల బృందానికి అప్పగించవచ్చు.
  • డార్ట్ లాంగ్వేజ్‌లో డెవలప్‌మెంట్‌కు తోడ్పాటునిచ్చే రెడీమేడ్ టూల్స్ సమితి, ఇందులో డైనమిక్ డెవలప్‌మెంట్ అమలు చేయడం మరియు ఫ్లైలో కోడ్ కరెక్షన్‌తో డీబగ్గింగ్ టూల్స్ ("సవరించు మరియు కొనసాగించు").
  • డార్ట్ భాషలో అభివృద్ధిని సులభతరం చేయడానికి, ఇది SDK, ప్యాకేజీ మేనేజర్ పబ్, స్టాటిక్ కోడ్ ఎనలైజర్ డార్ట్_అనలైజర్, లైబ్రరీల సమితి, ఇంటిగ్రేటెడ్ డెవలప్‌మెంట్ ఎన్విరాన్‌మెంట్ డార్ట్‌ప్యాడ్ మరియు IntelliJ IDEA, WebStorm, Emacs, Sublime Text కోసం డార్ట్-ఎనేబుల్డ్ ప్లగిన్‌లతో వస్తుంది. 2 మరియు Vim.
  • లైబ్రరీలు మరియు యుటిలిటీలతో కూడిన అదనపు ప్యాకేజీలు పబ్ రిపోజిటరీ ద్వారా పంపిణీ చేయబడతాయి, ఇందులో 20 వేల కంటే ఎక్కువ ప్యాకేజీలు ఉన్నాయి.

డార్ట్ 2.14 విడుదలలో ప్రధాన మార్పులు:

  • కొత్త ట్రిపుల్ షిఫ్ట్ ఆపరేటర్ (>>>) జోడించబడింది, ఇది “>>” ఆపరేటర్‌లా కాకుండా, అంకగణితాన్ని కాకుండా, సైన్ బిట్‌ను పరిగణనలోకి తీసుకోకుండా పనిచేసే లాజికల్ షిఫ్ట్ (షిఫ్ట్ విభజించబడకుండా నిర్వహించబడుతుంది. సానుకూల మరియు ప్రతికూల సంఖ్యలు).
  • సాధారణ ఫంక్షన్ రకాలను టైప్ ఆర్గ్యుమెంట్‌గా ఉపయోగించకుండా నిరోధించే టైప్ ఆర్గ్యుమెంట్‌లపై పరిమితి తీసివేయబడింది. ఉదాహరణకు, ఇప్పుడు మీరు పేర్కొనవచ్చు: చివరి జాబితా (T)>idFunctions; var కాల్బ్యాక్ = [ (T విలువ) => విలువ]; చివరి S ఫంక్షన్ (T)>(S) f;
  • @Deprecated వంటి ఉల్లేఖనాలలో రకాలతో ఆర్గ్యుమెంట్‌లను పేర్కొనడానికి అనుమతించండి. ఉదాహరణకు, మీరు ఇప్పుడు పేర్కొనవచ్చు: @TypeHelper (42, "అర్థం")
  • ఆబ్జెక్ట్ క్లాస్‌లోని ప్రామాణిక లైబ్రరీకి (కోర్) హాష్, హాష్అల్ మరియు హాష్అల్అన్ఆర్డర్డ్ అనే స్టాటిక్ పద్ధతులు జోడించబడ్డాయి. డేట్‌టైమ్ క్లాస్ వేసవి మరియు చలికాలం మధ్య గడియారాలను ఒక గంటతో భాగించలేని గడియారాలను మార్చేటప్పుడు స్థానిక సమయాన్ని నిర్వహించడాన్ని మెరుగుపరిచింది (ఉదాహరణకు, ఆస్ట్రేలియాలో 30 నిమిషాల ఆఫ్‌సెట్ ఉపయోగించబడుతుంది). ffi ప్యాకేజీ అరేనా మెమరీ కేటాయింపు యంత్రాంగానికి మద్దతును జోడించింది, ఇది వనరులను స్వయంచాలకంగా విడుదల చేస్తుంది. ffigen ప్యాకేజీ C భాష నుండి డార్ట్ రకాల టైప్‌డెఫ్ నిర్వచనాలను రూపొందించే సామర్థ్యాన్ని జోడించింది.
  • pub.dev రిపోజిటరీ నుండి అత్యంత జనాదరణ పొందిన 250 ప్యాకేజీలు మరియు టాప్-94లో 1000% "శూన్య భద్రత" మోడ్‌ని ఉపయోగించేందుకు మార్చబడ్డాయి, ఇది విలువ నిర్వచించబడని మరియు "Null"కి సెట్ చేయబడిన వేరియబుల్స్‌ను ఉపయోగించడానికి ప్రయత్నించడం వల్ల కలిగే క్రాష్‌లను నివారిస్తుంది. ” " వేరియబుల్స్ స్పష్టంగా శూన్య విలువను కేటాయించకపోతే అవి శూన్య విలువలను కలిగి ఉండవని మోడ్ సూచిస్తుంది. మోడ్ వేరియబుల్ రకాలను ఖచ్చితంగా గౌరవిస్తుంది, ఇది కంపైలర్ అదనపు ఆప్టిమైజేషన్‌లను వర్తింపజేయడానికి అనుమతిస్తుంది. కంపైల్ సమయంలో టైప్ సమ్మతి తనిఖీ చేయబడుతుంది, ఉదాహరణకు, మీరు "int" వంటి నిర్వచించబడని స్థితిని సూచించని రకంతో వేరియబుల్‌కు "శూన్య" విలువను కేటాయించడానికి ప్రయత్నిస్తే, ఒక లోపం ప్రదర్శించబడుతుంది.
  • కోడ్ ఎనలైజర్ (లింటర్) కోసం ఏకీకృత నియమాల సెట్లు ప్రతిపాదించబడ్డాయి, డార్ట్ మరియు ఫ్లట్టర్ ఫ్రేమ్‌వర్క్ కోసం కోడ్ స్టైల్ మార్గదర్శకాలకు అనుగుణంగా తనిఖీ చేయడానికి ఏకకాల మద్దతును అందిస్తుంది. చారిత్రక కారణాల దృష్ట్యా, ఫ్లట్టర్ మరియు డార్ట్ కోసం కోడింగ్ నియమాలు భిన్నంగా ఉన్నాయి, అదనంగా, డార్ట్ కోసం రెండు సెట్ల నియమాలు వాడుకలో ఉన్నాయి - గూగుల్ నుండి పెడాంటిక్ మరియు డార్ట్ డెవలపర్ కమ్యూనిటీ నుండి నియమాలు. డార్ట్ 2.14 లింటర్ కోసం కొత్త సాధారణ నియమాల సెట్‌ను పరిచయం చేసింది, ఇది కొత్త డార్ట్ ప్రాజెక్ట్‌లలో మరియు ఫ్లట్టర్ SDKలో డిఫాల్ట్‌గా ఉపయోగించాలని నిర్ణయించబడింది. సెట్‌లో ప్రధాన నియమాలు (lints/core.yaml ప్యాకేజీ), సిఫార్సు చేయబడిన అదనపు నియమాలు (lints/recommended.yaml) మరియు Flutter-నిర్దిష్ట సిఫార్సులు (flutter_lints/flutter.yaml) ఉన్నాయి. డార్ట్ డాక్యుమెంటేషన్‌లోని సిఫార్సుల ఆధారంగా కొత్త కోడింగ్ స్టైల్‌ని ఉపయోగించేందుకు పెడాంటిక్ నియమాల వినియోగదారులు మారాలని సూచించారు.
  • ఫార్మాట్‌లో, క్యాస్కేడింగ్ కోడ్ బ్లాక్‌ల ఫార్మాటింగ్‌కు ఆప్టిమైజేషన్‌లు చేయబడ్డాయి, ఇవి ఫార్మాటింగ్ పనితీరును గణనీయంగా మెరుగుపరుస్తాయి మరియు వ్యక్తీకరణ మూలకాల యాజమాన్యం యొక్క అస్పష్టమైన వివరణను నివారించవచ్చు. ఉదాహరణకు, "var result = errorState అనే వ్యక్తీకరణలో "..doIt" అని పిలుస్తున్నారా? foo : bad..doIt()" అనేది "చెడు" బ్లాక్ యొక్క షరతులతో కూడిన భాగానికి సంబంధించినది కాదు, కానీ మొత్తం వ్యక్తీకరణకు సంబంధించినది, కనుక ఫార్మాటింగ్ చేస్తున్నప్పుడు అది ఇప్పుడు వేరు చేయబడుతుంది: var result = errorState ? foo : చెడ్డది ..doIt();
  • Apple M1 (సిలికాన్) ప్రాసెసర్‌లకు మద్దతు SDKకి జోడించబడింది, ఇది Apple Silicon ప్రాసెసర్‌తో సిస్టమ్‌లలో Dart VM, యుటిలిటీస్ మరియు SDK భాగాలను అమలు చేయగల సామర్థ్యాన్ని మరియు ఈ చిప్‌ల కోసం ఎక్జిక్యూటబుల్ ఫైల్‌లను కంపైల్ చేయడానికి మద్దతు రెండింటినీ సూచిస్తుంది.
  • "dart pub" కమాండ్ కొత్త సర్వీస్ ఫైల్ ".pubignore"కి మద్దతును జోడించింది, ఇది pub.dev రిపోజిటరీకి ప్యాకేజీని ప్రచురించేటప్పుడు దాటవేయబడే ఫైల్‌ల జాబితాను నిర్వచించడానికి మిమ్మల్ని అనుమతిస్తుంది. ఈ సెట్టింగ్‌లు “.gitignore” విస్మరించిన జాబితాకు అంతరాయం కలిగించవు (కొన్ని సందర్భాల్లో, pub.dev Gitలో అవసరమైన ఫైల్‌లను బదిలీ చేయకుండా ఉండాలనుకోవచ్చు, ఉదాహరణకు, అభివృద్ధి సమయంలో ఉపయోగించే అంతర్గత స్క్రిప్ట్‌లు).
  • "డార్ట్ టెస్ట్" కమాండ్ పనితీరును మెరుగుపరచడానికి పని జరిగింది, ఇప్పుడు వెర్షన్ నంబర్ మారకపోతే పబ్‌స్పెక్‌ని మార్చిన తర్వాత పరీక్షలను మళ్లీ కంపైల్ చేయాల్సిన అవసరం లేదు.
  • ECMAScript 5 అనుకూలత మోడ్‌లో సంకలనం కోసం మద్దతు నిలిపివేయబడింది (మార్పు IE11 బ్రౌజర్‌తో అనుకూలతను కోల్పోతుంది).
  • స్టేజ్‌హ్యాండ్, డార్ట్‌ఎఫ్‌ఎమ్‌టి మరియు డార్ట్2నేటివ్ వ్యక్తిగత యుటిలిటీలు వాడుకలో లేనివిగా ప్రకటించబడ్డాయి, వాటి స్థానంలో డార్ట్ యుటిలిటీ ద్వారా పిలువబడే అంతర్నిర్మిత కమాండ్‌లు ఉన్నాయి.
  • VM స్థానిక పొడిగింపుల విధానం నిలిపివేయబడింది. డార్ట్ కోడ్ నుండి స్థానిక కోడ్‌ని కాల్ చేయడానికి, కొత్త డార్ట్ FFI (ఫారిన్ ఫంక్షన్ ఇంటర్‌ఫేస్)ని ఉపయోగించమని సిఫార్సు చేయబడింది.

అదే సమయంలో, వినియోగదారు ఇంటర్‌ఫేస్ ఫ్రేమ్‌వర్క్ ఫ్లట్టర్ 2.5 యొక్క ముఖ్యమైన విడుదల అందించబడింది, ఇది రియాక్ట్ నేటివ్‌కు ప్రత్యామ్నాయంగా పరిగణించబడుతుంది మరియు iOS, Android, Windows, macOS మరియు Linux కోసం అప్లికేషన్‌లను విడుదల చేయడానికి ఒక కోడ్ బేస్ ఆధారంగా అనుమతిస్తుంది. ప్లాట్‌ఫారమ్‌లు, అలాగే బ్రౌజర్‌లలో అమలు చేయడానికి అప్లికేషన్‌లను సృష్టించండి. Google అభివృద్ధి చేసిన Fuchsia మైక్రోకెర్నల్ ఆపరేటింగ్ సిస్టమ్ కోసం అనుకూల షెల్ ఫ్లట్టర్ ఆధారంగా నిర్మించబడింది.

ఫ్లట్టర్ కోడ్ యొక్క ప్రధాన భాగం డార్ట్ భాషలో అమలు చేయబడుతుంది మరియు అప్లికేషన్‌లను అమలు చేయడానికి రన్‌టైమ్ ఇంజిన్ C++లో వ్రాయబడింది. అప్లికేషన్‌లను అభివృద్ధి చేస్తున్నప్పుడు, ఫ్లట్టర్ యొక్క స్థానిక డార్ట్ భాషతో పాటు, మీరు C/C++ కోడ్‌కి కాల్ చేయడానికి డార్ట్ ఫారిన్ ఫంక్షన్ ఇంటర్‌ఫేస్‌ని ఉపయోగించవచ్చు. లక్ష్య ప్లాట్‌ఫారమ్‌ల కోసం స్థానిక కోడ్‌కు అప్లికేషన్‌లను కంపైల్ చేయడం ద్వారా అధిక అమలు పనితీరు సాధించబడుతుంది. ఈ సందర్భంలో, ప్రతి మార్పు తర్వాత ప్రోగ్రామ్ మళ్లీ కంపైల్ చేయవలసిన అవసరం లేదు - డార్ట్ హాట్ రీలోడ్ మోడ్‌ను అందిస్తుంది, ఇది నడుస్తున్న అప్లికేషన్‌లో మార్పులు చేయడానికి మరియు ఫలితాన్ని వెంటనే అంచనా వేయడానికి మిమ్మల్ని అనుమతిస్తుంది.

ఫ్లట్టర్ 2.5లో ప్రధాన మార్పులు:

  • గణనీయమైన పనితీరు ఆప్టిమైజేషన్‌లను చేసింది. iOS మరియు macOS ప్లాట్‌ఫారమ్‌లలో, మెటల్ గ్రాఫిక్స్ API కోసం షేడర్‌ల ప్రీకంపైలేషన్ అమలు చేయబడింది. అసమకాలిక ఈవెంట్‌లను ప్రాసెస్ చేయడంలో మెరుగైన సామర్థ్యం. చెత్త కలెక్టర్ ఉపయోగించని చిత్రాల నుండి మెమరీని తిరిగి పొందినప్పుడు ఆలస్యంతో సమస్య పరిష్కరించబడింది (ఉదాహరణకు, 20-సెకన్ల యానిమేటెడ్ GIF యొక్క ప్లేబ్యాక్ సమయంలో, చెత్త సేకరణ కార్యకలాపాల సంఖ్య 400 నుండి 4కి తగ్గించబడింది. డార్ట్ మరియు ఆబ్జెక్టివ్‌ల మధ్య సందేశాలను పంపేటప్పుడు ఆలస్యం అవుతుంది- C/Swift 50% (iOS)కి తగ్గించబడింది లేదా Java/Kotlin (Android) యాపిల్ సిలికాన్ చిప్ ఆధారంగా సిస్టమ్‌లకు స్థానిక నిర్మాణ మద్దతు జోడించబడింది.
    డార్ట్ 2.14 భాష మరియు ఫ్లట్టర్ 2.5 ఫ్రేమ్‌వర్క్ అందుబాటులో ఉన్నాయి
  • Android ప్లాట్‌ఫారమ్ కోసం, పూర్తి స్క్రీన్ మోడ్‌లో అప్లికేషన్‌లను అమలు చేయడానికి మద్దతు ఏర్పాటు చేయబడింది. తదుపరి తరం మెటీరియల్ డిజైన్ ఎంపికగా అందించబడిన “మెటీరియల్ యు” డిజైన్ కాన్సెప్ట్ అమలు కొనసాగింది. మెటీరియల్‌స్టేట్
  • కెమెరా ప్లగ్-ఇన్ యొక్క సామర్థ్యాలు గణనీయంగా విస్తరించబడ్డాయి, ఆటో ఫోకస్, ఎక్స్‌పోజర్, ఫ్లాష్, జూమ్, నాయిస్ తగ్గింపు మరియు రిజల్యూషన్‌ను నియంత్రించడానికి సాధనాలను జోడిస్తుంది.
  • డెవలపర్ సాధనాలు (DevTools) అప్‌డేట్ చేయబడిన విడ్జెట్ తనిఖీ మోడ్‌ను చేర్చడానికి మెరుగుపరచబడ్డాయి, అలాగే రెండరింగ్ ఆలస్యాన్ని గుర్తించడానికి మరియు షేడర్ కంపైలేషన్‌ను ట్రాక్ చేయడానికి సాధనాలు.
    డార్ట్ 2.14 భాష మరియు ఫ్లట్టర్ 2.5 ఫ్రేమ్‌వర్క్ అందుబాటులో ఉన్నాయి
  • విజువల్ స్టూడియో కోడ్ మరియు IntelliJ/Android స్టూడియో కోసం మెరుగైన ప్లగిన్‌లు.

మూలం: opennet.ru

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