Laravel: వెర్షన్ 5 నుండి నేటి వరకు
Laravel కేవలం మారలేదు. అది పరిణతి చెందింది.
మీరు పాత Laravel 5 ప్రాజెక్ట్ను ఓపెన్ చేస్తే, వివిధ దశాబ్దాలకు చెందిన గదులు ఉన్న ఒక ఇల్లులా కనిపిస్తుంది. అది పనిచేస్తుంది, కానీ కంట్రోలర్లు (controllers) మరీ ఎక్కువ పనులు చేస్తాయి. Middleware పాతదిగా ఉంటుంది. Helper ఫైల్స్ గందరగోళంగా ఉంటాయి.
అయినప్పటికీ, దాని మూల సూత్రాలు (core) మారలేదు. మీరు ఇప్పటికీ routes, Eloquent, migrations మరియు Blade నే ఉపయోగిస్తారు.
Laravel ఒక కొత్త ఫ్రేమ్వర్క్గా మారలేదు. అది అదే ఆలోచన యొక్క పరిణతి చెందిన వెర్షన్గా మారింది: మీకు క్లీన్ డీఫాల్ట్లను అందిస్తూ, ఇన్ఫ్రాస్ట్రక్చర్ (plumbing) సమస్యలతో పోరాడకుండా మీ ప్రాజెక్ట్ను విడుదల చేసేలా చేస్తుంది.
పరిణామ క్రమం
Laravel 5 ఒక బలమైన టూల్బాక్స్లా ఉండేది. ఇది PHPని మళ్ళీ ఒక సీరియస్ ప్లాట్ఫామ్లా మార్చింది. ఇది మీకు వీటిని అందించింది:
- Request filtering కోసం Middleware.
- Validationను క్లీన్ చేయడానికి Form requests.
- Background tasks కోసం Jobs మరియు queues.
- Expressive database models కోసం Eloquent.
Laravel 6, 7, మరియు 8 రోజువారీ పనిని మరింత సులభతరం చేయడంపై దృష్టి సారించాయి.
- Semantic versioning స్థిరత్వాన్ని తెచ్చింది.
- Factories టెస్టింగ్ డేటాను సులభతరం చేశాయి.
- Blade components కోడ్ డూప్లికేషన్ను నివారించాయి.
- Sanctum API authenticationను సులభతరం చేసింది.
Laravel 9 మరియు 10 ఆధునిక PHPని స్వీకరించాయి.
- మీకు typed properties మరియు మెరుగైన return types లభించాయి.
- టెస్టింగ్ అనేది వర్క్ఫ్లోలో ఒక ముఖ్యమైన భాగంగా మారింది.
- ఎకోసిస్టమ్ కేవలం కోడ్కు మాత్రమే పరిమితం కాకుండా విస్తరించింది.
ఆధునిక Laravel ఒక పూర్తి స్థాయి వర్క్షాప్ వంటిది. ఇందులో deployment, monitoring మరియు AI-aware వర్క్ఫ్లోలు ఉన్నాయి.
ఎకోసిస్టమ్ (Ecosystem) నిజమైన శక్తి
Laravel అనేది కేవలం ఒక ఫ్రేమ్వర్క్ మాత్రమే కాదు. ఇది సేవల యొక్క ఒక నగరం వంటిది. మీకు మొదటి రోజే అవన్నీ అవసరం లేదు, కానీ అవి ఉన్నాయని మీకు తెలిసి ఉండాలి:
- Deployment: Forge సర్వర్లను నిర్వహిస్తుంది. Vapor AWSలో serverless scalingను చూసుకుంటుంది. Envoyer zero-downtime deploymentsను నిర్ధారిస్తుంది.
- Management: Nova ప్రీమియం అడ్మిన్ ప్యానెల్లను అందిస్తుంది.
- Visibility: Horizon Redis queuesలను మానిటర్ చేస్తుంది. Telescope ఒక debugging అసిస్టెంట్లా పనిచేస్తుంది. Pulse పెర్ఫార్మెన్స్ను ట్రాక్ చేస్తుంది.
- Real-time: Reverb నేటివ్ WebSocket సపోర్ట్ను అందిస్తుంది.
- Core Utilities: Cashier బిల్లింగ్ను నిర్వహిస్తుంది. Scout సెర్చ్ను నిర్వహిస్తుంది. Sanctum API authను నిర్వహిస్తుంది.
ఫ్రేమ్వర్క్ నుండి ఎకోసిస్టమ్కు మారడం
అతిపెద్ద మార్పు ఏమిటంటే దాని సామర్థ్యం (leverage). Laravel 5 మీరు PHPని క్రమబద్ధీకరించడానికి సహాయపడింది. ఆధునిక Laravel మీరు బిల్డ్ చేయడానికి, డిప్లాయ్ చేయడానికి, మానిటర్ చేయడానికి, స్కేల్ చేయడానికి మరియు సెర్చ్ చేయడానికి సహాయపడుతుంది.
ఇది మీరు ఒక భారీ బ్యాక్ప్యాక్ను మోయడం నుండి, చక్కగా అమర్చబడిన చిన్న క్యారీ-ఆన్ బ్యాగ్ను ఉపయోగించడం వరకు మారుస్తుంది. మీరు తక్కువ గందరగోళాన్ని మోస్తారు కానీ పూర్తి సామర్థ్యాన్ని కలిగి ఉంటారు.
పాత (Legacy) యాప్లను అప్గ్రేడ్ చేయడానికి సలహాలు
అప్గ్రేడ్ను ప్రతిదీ మళ్ళీ వ్రాయాలనే మిషన్లా చూడకండి. ప్రజలు నివసిస్తున్న ఇల్లును రెNOVATE (పునరుద్ధరించడం) చేస్తున్నట్లుగా దీనిని పరిగణించండి.
- ఒక సమయంలో ఒకే ఒక మేజర్ వెర్షన్ను అప్గ్రేడ్ చేయండి.
- మీ బిజినెస్ లాజిక్ను రక్షించడానికి టెస్ట్లను ఉపయోగించండి.
- ముందుగా మీ ప్యాకేజీ డిపెండెన్సీలను (package dependencies) తనిఖీ చేయండి.
- కేవలం రిలీజ్ నోట్స్ మాత్రమే కాకుండా, అప్గ్రేడ్ గైడ్లను కూడా చదవండి.
బోరింగ్ ఇన్ఫ్రాస్ట్రక్చర్ అందమైనది. అంటే మీరు వైరింగ్ (wiring) మీద కాకుండా ప్రోడక్ట్ లాజిక్ మీద మీ శక్తిని ఖర్చు చేస్తారని అర్థం.
Source: https://dev.to/nazar_boyko/laravel-from-version-5-to-today-the-framework-grew-up-with-us-3cil
