Laravel: Version 5 ਤੋਂ ਅੱਜ ਤੱਕ
Laravel ਸਿਰਫ਼ ਬਦਲਿਆ ਨਹੀਂ। ਇਹ ਹੋਰ ਪਰਿਪੱਕ ਹੋਇਆ ਹੈ।
ਜੇਕਰ ਤੁਸੀਂ ਕੋਈ ਪੁਰਾਣਾ Laravel 5 ਪ੍ਰੋਜੈਕਟ ਖੋਲ੍ਹਦੇ ਹੋ, ਤਾਂ ਤੁਹਾਨੂੰ ਵੱਖ-ਵੱਖ ਦਹਾਕਿਆਂ ਦੇ ਕਮਰਿਆਂ ਵਾਲਾ ਇੱਕ ਘਰ ਦਿਖਾਈ ਦੇਵੇਗਾ। ਇਹ ਕੰਮ ਤਾਂ ਕਰਦਾ ਹੈ, ਪਰ controllers ਬਹੁਤ ਜ਼ਿਆਦਾ ਕੰਮ ਕਰਦੇ ਹਨ। Middleware ਪੁਰਾਣਾ ਹੈ। Helper ਫਾਈਲਾਂ ਖਿਲਾਰੀਆਂ ਹੋਈਆਂ ਹਨ।
ਫਿਰ ਵੀ, ਇਸਦਾ ਮੂਲ (core) ਉਹੀ ਰਹਿੰਦਾ ਹੈ। ਤੁਸੀਂ ਅਜੇ ਵੀ routes, Eloquent, migrations, ਅਤੇ Blade ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋ।
Laravel ਕੋਈ ਵੱਖਰਾ framework ਨਹੀਂ ਬਣਿਆ। ਇਹ ਉਸੇ ਵਿਚਾਰ ਦਾ ਇੱਕ ਪਰਿਪੱਕ ਰੂਪ ਬਣ ਗਿਆ ਹੈ: ਤੁਹਾਨੂੰ ਸਾਫ਼-ਸੁਥਰੇ defaults ਪ੍ਰਦਾਨ ਕਰਨਾ ਅਤੇ ਤੁਹਾਨੂੰ ਬੁਨਿਆਦੀ ਤਕਨੀਕੀ ਕੰਮਾਂ (plumbing) ਨਾਲ ਲੜੇ ਬਿਨਾਂ ਕੰਮ ਪੂਰਾ ਕਰਨ ਦੇਣ ਦੇਣਾ।
ਕਲਾ ਦਾ ਵਿਕਾਸ (The Evolution of the Craft)
Laravel 5 ਇੱਕ ਮਜ਼ਬੂਤ ਟੂਲਬਾਕਸ ਸੀ। ਇਸਨੇ PHP ਨੂੰ ਦੁਬਾਰਾ ਇੱਕ ਗੰਭੀਰ ਪਲੇਟਫਾਰਮ ਵਜੋਂ ਮਹਿਸੂਸ ਕਰਵਾਇਆ। ਇਸਨੇ ਤੁਹਾਨੂੰ ਦਿੱਤਾ:
- Request filtering ਲਈ Middleware।
- Validation ਨੂੰ ਸਾਫ਼ ਕਰਨ ਲਈ Form requests।
- Background tasks ਲਈ Jobs ਅਤੇ queues।
- Expressive 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 ਇੱਕ ਪੂਰੀ ਵਰਕਸ਼ਾਪ ਹੈ। ਇਸ ਵਿੱਚ deployment, monitoring, ਅਤੇ AI-aware workflows ਸ਼ਾਮਲ ਹਨ।
Ecosystem ਹੀ ਅਸਲੀ ਤਾਕਤ ਹੈ
Laravel ਇੱਕ framework ਤੋਂ ਵੱਧ ਹੈ। ਇਹ ਸੇਵਾਵਾਂ ਦਾ ਇੱਕ ਸ਼ਹਿਰ ਹੈ। ਤੁਹਾਨੂੰ ਪਹਿਲੇ ਦਿਨ ਸਭ ਕੁਝ ਦੀ ਲੋੜ ਨਹੀਂ ਹੈ, ਪਰ ਤੁਹਾਨੂੰ ਪਤਾ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ ਕਿ ਉਹ ਮੌਜੂਦ ਹਨ:
- Deployment: Forge ਸਰਵਰਾਂ ਦਾ ਪ੍ਰਬੰਧਨ ਕਰਦਾ ਹੈ। Vapor AWS 'ਤੇ serverless scaling ਸੰਭਾਲਦਾ ਹੈ। Envoyer zero-downtime deployments ਯਕੀਨੀ ਬਣਾਉਂਦਾ ਹੈ।
- Management: Nova ਪ੍ਰੀਮੀਅਮ admin panels ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ।
- Visibility: Horizon Redis queues ਦੀ ਨਿਗਰਾਨੀ ਕਰਦਾ ਹੈ। Telescope ਇੱਕ debugging assistant ਵਜੋਂ ਕੰਮ ਕਰਦਾ ਹੈ। Pulse performance ਨੂੰ ਟ੍ਰੈਕ ਕਰਦਾ ਹੈ।
- Real-time: Reverb native WebSocket support ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ।
- Core Utilities: Cashier ਬਿਲਿੰਗ ਸੰਭਾਲਦਾ ਹੈ। Scout ਸਰਚ ਸੰਭਾਲਦਾ ਹੈ। Sanctum API auth ਸੰਭਾਲਦਾ ਹੈ।
Framework ਤੋਂ Ecosystem ਵੱਲ ਤਬਦੀਲੀ
ਸਭ ਤੋਂ ਵੱਡੀ ਤਬਦੀਲੀ ਲਿਵਰੇਜ (leverage) ਦਾ ਪੱਧਰ ਹੈ। Laravel 5 ਨੇ ਤੁਹਾਨੂੰ PHP ਨੂੰ ਸੰਗਠਿਤ ਕਰਨ ਵਿੱਚ ਮਦਦ ਕੀਤੀ। ਆਧੁਨਿਕ Laravel ਤੁਹਾਨੂੰ ਬਣਾਉਣ (build), deploy ਕਰਨ, monitor ਕਰਨ, scale ਕਰਨ ਅਤੇ search ਕਰਨ ਵਿੱਚ ਮਦਦ ਕਰਦਾ ਹੈ।
ਇਹ ਤੁਹਾਨੂੰ ਇੱਕ ਭਾਰੀ ਬੈਕਪੈਕ ਚੁੱਕਣ ਦੀ ਬਜਾਏ ਇੱਕ ਚੰਗੀ ਤਰ੍ਹਾਂ ਸੰਗਠਿਤ carry-on ਦੀ ਵਰਤੋਂ ਕਰਨ ਵੱਲ ਲੈ ਜਾਂਦਾ ਹੈ। ਤੁਸੀਂ ਘੱਟ ਖਿਲਾਰਾ ਚੁੱਕਦੇ ਹੋ ਪਰ ਸਾਰੀ ਸਮਰੱਥਾ ਆਪਣੇ ਕੋਲ ਰੱਖਦੇ ਹੋ।
Legacy Apps ਨੂੰ ਅੱਪਗ੍ਰੇਡ ਕਰਨ ਲਈ ਸਲਾਹ
ਅੱਪਗ੍ਰੇਡ ਨੂੰ ਸਭ ਕੁਝ ਦੁਬਾਰਾ ਲਿਖਣ ਦੇ ਮਿਸ਼ਨ ਵਜੋਂ ਨਾ ਦੇਖੋ। ਇਸਨੂੰ ਇੱਕ ਘਰ ਦੇ ਨਵੀਨੀਕਰਨ ਵਾਂਗ ਸਮਝੋ ਜਦੋਂ ਲੋਕ ਉਸ ਵਿੱਚ ਰਹਿ ਰਹੇ ਹੋਣ।
- ਇੱਕ ਸਮੇਂ ਵਿੱਚ ਇੱਕ ਮੁੱਖ (major) version ਅੱਪਗ੍ਰੇਡ ਕਰੋ।
- ਆਪਣੇ business logic ਦੀ ਰੱਖਿਆ ਲਈ tests ਦੀ ਵਰਤੋਂ ਕਰੋ।
- ਪਹਿਲਾਂ ਆਪਣੇ package dependencies ਦੀ ਜਾਂਚ ਕਰੋ।
- ਸਿਰਫ਼ release notes ਹੀ ਨਹੀਂ, ਬਲਕਿ upgrade guides ਵੀ ਪੜ੍ਹੋ।
ਬੋਰਿੰਗ ਇਨਫਰਾਸਟ੍ਰਕਚਰ (infrastructure) ਸੁੰਦਰ ਹੁੰਦਾ ਹੈ। ਇਸਦਾ ਮਤਲਬ ਹੈ ਕਿ ਤੁਸੀਂ ਵਾਇਰਿੰਗ ਦੀ ਬਜਾਏ ਆਪਣੀ ਊਰਜਾ ਪ੍ਰੋਡਕਟ ਲੌਜਿਕ 'ਤੇ ਖਰਚ ਕਰਦੇ ਹੋ।
Source: https://dev.to/nazar_boyko/laravel-from-version-5-to-today-the-framework-grew-up-with-us-3cil
