జావాస్క్రిప్ట్ ఫ్రంట్-ఎండ్ లాజిక్‌ను సర్వర్ వైపుకు బదిలీ చేసే పూసా వెబ్ ఫ్రేమ్‌వర్క్

జావాస్క్రిప్ట్‌ని ఉపయోగించి బ్రౌజర్‌లో అమలు చేయబడిన ఫ్రంట్-ఎండ్ లాజిక్‌ను బ్యాక్-ఎండ్ వైపుకు బదిలీ చేసే కాన్సెప్ట్ అమలుతో పూసా వెబ్ ఫ్రేమ్‌వర్క్ ప్రచురించబడింది - బ్రౌజర్ మరియు DOM ఎలిమెంట్‌లను నిర్వహించడం, అలాగే వ్యాపార లాజిక్ నిర్వహించడం బ్యాక్ ఎండ్. బ్రౌజర్ వైపు అమలు చేయబడిన JavaScript కోడ్ యూనివర్సల్ లేయర్‌తో భర్తీ చేయబడింది, ఇది బ్యాకెండ్ వైపు ఉన్న హ్యాండ్లర్‌లను పిలుస్తుంది. ఫ్రంట్ ఎండ్ కోసం జావాస్క్రిప్ట్ ఉపయోగించి అభివృద్ధి చేయవలసిన అవసరం లేదు. పుసా సూచన అమలు PHPలో వ్రాయబడింది మరియు GPLv3 క్రింద లైసెన్స్ చేయబడింది. PHPతో పాటు, సాంకేతికతను JavaScript/Node.js, Java, Python, Go మరియు Rubyతో సహా ఏదైనా ఇతర భాషలో అమలు చేయవచ్చు.

Pusa కమాండ్‌ల మినిమలిస్టిక్ సెట్ ఆధారంగా ఎక్స్ఛేంజ్ ప్రోటోకాల్‌ను నిర్వచిస్తుంది. పేజీ లోడ్ అయినప్పుడు, బ్రౌజర్ అంతర్లీన DOM కంటెంట్ మరియు Pusa-Front యొక్క JavaScript కోర్‌ను లోడ్ చేస్తుంది. Pusa-Front అజాక్స్ అభ్యర్థనలను ఉపయోగించి Pusa-Back సర్వర్ హ్యాండ్లర్‌కు బ్రౌజర్ ఈవెంట్‌లను (క్లిక్, బ్లర్, ఫోకస్ మరియు కీప్రెస్ వంటివి) మరియు అభ్యర్థన పారామితులను (ఈవెంట్‌కు కారణమైన మూలకం, దాని లక్షణాలు, URL మొదలైనవి) పంపుతుంది. స్వీకరించిన డేటా ఆధారంగా, పుసా-బ్యాక్ కంట్రోలర్‌ను నిర్ణయిస్తుంది, పేలోడ్‌ను అమలు చేస్తుంది మరియు కమాండ్‌ల ప్రతిస్పందన సెట్‌ను రూపొందిస్తుంది. అభ్యర్థన ప్రతిస్పందనను స్వీకరించిన తర్వాత, Pusa-Front ఆదేశాలను అమలు చేస్తుంది, DOM మరియు బ్రౌజర్ పర్యావరణం యొక్క కంటెంట్‌లను మారుస్తుంది.

ఫ్రంటెండ్ యొక్క స్థితి రూపొందించబడింది కానీ బ్యాకెండ్ ద్వారా నియంత్రించబడదు, ఇది వీడియో కార్డ్ లేదా కాన్వాస్ కోడ్‌ని పోలి ఉంటుంది, ఇక్కడ డెవలపర్ ద్వారా అమలు ఫలితం నియంత్రించబడదు. Canvas మరియు onmousemove ఆధారంగా ఇంటరాక్టివ్ అప్లికేషన్‌లను సృష్టించడానికి, క్లయింట్ వైపు అదనపు JavaScript స్క్రిప్ట్‌లను డౌన్‌లోడ్ చేయడం మరియు ఉపయోగించడం సాధ్యమవుతుంది. పద్ధతి యొక్క ప్రతికూలతలలో, ఫ్రంటెండ్ నుండి బ్యాకెండ్‌కు లోడ్ యొక్క భాగాన్ని బదిలీ చేయడం మరియు సర్వర్‌తో డేటా మార్పిడి యొక్క ఫ్రీక్వెన్సీలో పెరుగుదల కూడా ఉంది.

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

మూలం: opennet.ru

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