Laravel: பதிப்பு 5 முதல் இன்று வரை
Laravel வெறும் மாற்றம் மட்டும் அடையவில்லை; அது வளர்ந்துவிட்டது.
நீங்கள் ஒரு பழைய Laravel 5 திட்டத்தைத் திறந்தால், வெவ்வேறு தசாப்தங்களைச் சேர்ந்த அறைகளைக் கொண்ட ஒரு வீட்டைப் பார்ப்பீர்கள். அது இயங்கும், ஆனால் controllers அதிக வேலைகளைச் செய்கின்றன. middleware பழமையானது. helper கோப்புகள் குழப்பமாக உள்ளன.
இருப்பினும், அதன் அடிப்படை மாறாமல் உள்ளது. நீங்கள் இன்னும் routes, Eloquent, migrations மற்றும் Blade ஆகியவற்றையே பயன்படுத்துகிறீர்கள்.
Laravel ஒரு வேறுபட்ட framework ஆக மாறவில்லை. அது அதே கருத்தின் முதிர்ந்த வடிவமாக மாறியுள்ளது: உங்களுக்குத் தெளிவான முன்னிருப்புகளை (defaults) வழங்கி, அடிப்படை கட்டமைப்புகளுடன் (plumbing) போராடாமல் உங்கள் வேலையை முடிக்க அனுமதிக்கிறது.
நுணுக்கங்களின் பரிணாமம்
Laravel 5 ஒரு வலுவான கருவிப்பெட்டியாக இருந்தது. இது PHP-யை மீண்டும் ஒரு முக்கியமான தளமாக உணரச் செய்தது. இது உங்களுக்கு வழங்கியது:
- request filtering-க்கான middleware.
- validation-ஐச் சீரமைக்க Form requests.
- பின்னணிப் பணிகளுக்கான (background tasks) Jobs மற்றும் queues.
- தெளிவான database models-களுக்கான Eloquent.
Laravel 6, 7 மற்றும் 8 ஆகியவை அன்றாடப் பணிகளை எளிதாக்குவதில் கவனம் செலுத்தின.
- Semantic versioning நிலைத்தன்மையைக் கொண்டு வந்தது.
- Factories சோதனைத் தரவை (testing data) எளிதாக்கின.
- Blade components குறியீடு நகலெடுப்பதைத் (code duplication) தடுத்தன.
- Sanctum API authentication-ஐ எளிமையாக்கியது.
Laravel 9 மற்றும் 10 நவீன PHP-யை ஏற்றுக்கொண்டன.
- நீங்கள் typed properties மற்றும் சிறந்த return types-களைப் பெற்றீர்கள்.
- Testing என்பது பணிப்பாய்வின் (workflow) ஒரு முக்கிய அங்கமானது.
- ecosystem வெறும் குறியீட்டைத் தாண்டி விரிவடைந்தது.
நவீன Laravel ஒரு முழுமையான பட்டறை (workshop) போன்றது. இதில் deployment, monitoring மற்றும் AI-அறிவார்ந்த பணிப்பாய்வுகள் (AI-aware workflows) அடங்கும்.
Ecosystem தான் உண்மையான சக்தி
Laravel என்பது ஒரு framework-ஐ விட மேலானது. இது சேவைகளின் ஒரு நகரம் போன்றது. முதல் நாளிலேயே உங்களுக்கு அனைத்தும் தேவையில்லை, ஆனால் அவை இருப்பதை நீங்கள் அறிந்திருக்க வேண்டும்:
- Deployment: Forge சேவையகங்களை (servers) நிர்வகிக்கிறது. Vapor, AWS-இல் serverless scaling-ஐக் கையாள்கிறது. Envoyer, zero-downtime deployments-ஐ உறுதி செய்கிறது.
- Management: Nova உயர்தர admin panels-களை வழங்குகிறது.
- Visibility: Horizon Redis queues-களைக் கண்காணிக்கிறது. Telescope ஒரு debugging உதவியாளராகச் செயல்படுகிறது. Pulse செயல்திறனைக் (performance) கண்காணிக்கிறது.
- Real-time: Reverb இயல்பான (native) WebSocket ஆதரவை வழங்குகிறது.
- Core Utilities: Cashier கட்டணங்களை (billing) கையாள்கிறது. Scout தேடலைக் (search) கையாள்கிறது. Sanctum API auth-ஐக் கையாள்கிறது.
Framework-லிருந்து Ecosystem-க்கு மாறிய மாற்றம்
மிகப்பெரிய மாற்றம் அதன் பயன்பாட்டுத் திறன் (leverage) ஆகும். Laravel 5 நீங்கள் PHP-யை ஒழுங்கமைக்க உதவியது. நவீன Laravel நீங்கள் உருவாக்க (build), deploy செய்ய, கண்காணிக்க (monitor), விரிவாக்க (scale) மற்றும் தேட (search) உதவுகிறது.
இது நீங்கள் ஒரு கனமான முதுகுப்பையைச் சுமப்பதிலிருந்து, நன்கு ஒழுங்கமைக்கப்பட்ட ஒரு சிறிய பயணப் பையைப் (carry-on) பயன்படுத்துவது போன்ற மாற்றத்தைக் கொண்டுவருகிறது. நீங்கள் குறைவான குழப்பங்களையே சுமக்கிறீர்கள், ஆனால் அனைத்துத் திறன்களையும் தக்க வைத்துக் கொள்கிறீர்கள்.
பழைய செயலிகளை (Legacy Apps) மேம்படுத்துவதற்கான ஆலோசனைகள்
ஒரு மேம்படுத்தலை (upgrade) அனைத்தையும் மீண்டும் எழுதும் பணியாகக் கருதாதீர்கள். மக்கள் வசிக்கும் ஒரு வீட்டைப் புதுப்பிப்பது போல இதைக் கருதுங்கள்.
- ஒவ்வொரு முறையும் ஒரு முக்கிய பதிப்பை (major version) மட்டும் மேம்படுத்தவும்.
- உங்கள் business logic-ஐப் பாதுகாக்க tests-களைப் பயன்படுத்தவும்.
- முதலில் உங்கள் package dependencies-களைச் சரிபார்க்கவும்.
- release notes-களை மட்டும் படிக்காமல், upgrade guides-களையும் படிக்கவும்.
சலிப்பூட்டும் உள்கட்டமைப்பு (Boring infrastructure) அழகானது. அதாவது, நீங்கள் வயரிங் (wiring) செய்வதில் ஆற்றலைச் செலவிடுவதைத் தவிர்த்து, தயாரிப்பு தர்க்கத்தில் (product logic) உங்கள் ஆற்றலைச் செலவிடுகிறீர்கள் என்று அர்த்தம்.
Source: https://dev.to/nazar_boyko/laravel-from-version-5-to-today-the-framework-grew-up-with-us-3cil
