লারাভেল

লারাভেল একটি মুক্ত, ওপেন সোর্স ওয়েব ফ্রেমওয়ার্ক। এটি ‍মূলত পিএইচপি দিয়ে বানানো একটি ওয়েব ফ্রেমওয়ার্ক যা তৈরি করেছেন টেইলর অটওয়েল। এটি ওয়েব এপ্লিকেশনের তৈরির জন্য ব্যবহৃত হয় যাতে মডেল-ভিউ-কন্ট্রোলার (এমভিসি) ডিজাইন প্যাটার্ন এবং সিম্ফনি ভিত্তিক ওয়েব অ্যাপ্লিকেশনের ব্যবহার করা হয়েছে। লারাভেলের কিছু বৈশিষ্ট্য হল, ডেডিকেটেড ডিপেন্ডেন্সি সিস্টেম, রিলেশনাল ডেটাবেসগুলি অ্যাক্সেস করার জন্য নিজস্ব পদ্ধতি এবং রক্ষণাবেক্ষণে সহায়তা এবং আর্টিসান নামক একটি মডুলার প্যাকেজিং সিস্টেম রয়েছে । লারাভেল তৈরি করা হয়েছে কম্পোজার নামক ডিপেন্ডেন্সি ম্যানেজারের উপর ভিত্তি করে । লারাভেল এ একটি অতি শক্তিশালী কমান্ডলাইন টুল আছে যার নাম আর্টিসান ।
লারাভেলের সোর্স কোড এমআইটি লাইসেন্স এর অধীনে গিটহাবে রাখা আছে।
কোডইগনাইটার এর চাইতে উন্নত কিছু বৈশেষ্ট্যের কিছু তৈরির জন্য টেলর ওটয়েল লারাভেল তৈরি করেন। পূর্ববর্তি কোডইগনাইটার এ কিছু বিষয় অনুপস্থিত ছিল যেমন অথেন্টিকেশন অথরাইজেশনের মত কিছু বৈশিষ্ট্য। সেই সকল প্যাকেজ বিল্ট-ইন রেখে লারাভেল উন্নয়ন করা হয়। লারাভেলের প্রথম বেটা ভার্সন অবমুক্ত করা হয় ৯ই জুন ২০১১ সালে। লারাভেল এর এই সংস্করণে ফ্রেমওয়ার্কের সকল চাহিদা পুরন করলেও কন্ট্রোলারের পুর্ন সহযোগিতা ছিল না। যার ফলে এটি সম্পূর্ণ মডেল ভিউ কন্টোলার-এর যেই গঠনের উপরে এই ফ্রেমওয়ার্ক তৈরি করার কথা ছিল তা পুরাপুরি সফল ছিল না।
লারাভেল হল একটি জনপ্রিয় PHP ফ্রেমওয়ার্ক যা ওয়েব অ্যাপ্লিকেশন ডেভেলপমেন্টকে আরও সহজ, দ্রুত এবং কার্যকর করার লক্ষ্যে ডিজাইন করা হয়েছে। এটি বিভিন্ন আপডেট এবং সংস্করণের মাধ্যমে ক্রমাগত উন্নত হয়েছে। নিচে লারাভেলের বিভিন্ন সংস্করণের সংক্ষিপ্ত ইতিহাস তুলে ধরা হলো:
লারাভেল ২
লারাভেল ২ অবমুক্ত করা হয় ২০১১ সালের সেপ্টেম্বরে। এই সংস্করণে আগের তুলনায় কমিউনিটির সক্রিয়তা বৃদ্ধি পায় এবং পূর্ববর্তী সমস্যাগুলি সমাধান করা হয়। বিশেষ করে কন্ট্রোলার সম্পর্কিত সমস্যাগুলি ঠিক করা হয়। লারাভেল ২ থেকেই এটি সম্পূর্ণরূপে এমভিসি (Model-View-Controller) প্যাটার্নে রূপান্তরিত হয়।
লারাভেল ৩
২০১২ সালের ফেব্রুয়ারিতে লারাভেল ৩ অবমুক্ত হয়। এই সংস্করণে উল্লেখযোগ্য আপডেটের মধ্যে রয়েছে কমান্ড লাইন টুলস আর্টিসান CLI এর সংযোজন, যা ডেভেলপারদের বিভিন্ন টাস্ক সম্পাদনকে সহজ করে তোলে। পাশাপাশি, ডাটাবেস কার্যক্রমকে আরও উন্নত করা হয়।
লারাভেল ৪
২০১৩ সালের মে মাসে লারাভেল ৪ প্রকাশিত হয়, যার কোডনেম ছিল "Illuminate"। এটি ডাটাবেস মাইগ্রেশন এবং ডাটাবেস সিডিং-এর মতো গুরুত্বপূর্ণ বৈশিষ্ট্য নিয়ে আসে। এছাড়াও, সফট ডিলিট ফিচারটি এই সংস্করণ থেকে কার্যকর হয়, যা ডেটা রেকর্ড মুছে ফেলার সময় আরও নমনীয়তা প্রদান করে। লারাভেল ৪ এর মধ্যে উল্লেখযোগ্য সংখ্যক পরিবর্তন ও উন্নতি সাধিত হয়, যা এই ফ্রেমওয়ার্কের জন্য একটি বড় পদক্ষেপ।
লারাভেল ৫
২০১৫ সালের ফেব্রুয়ারিতে লারাভেল ৫ প্রকাশিত হয়। এতে বেশ কিছু নতুন ফিচার যুক্ত হয়, যার মধ্যে অন্যতম ছিল "Scheduler" নামক একটি প্যাকেজ, যা কাজের সময়সূচি পরিচালনা করতে সহায়তা করে। এই ভার্সনে "Filesystem" নামে একটি অ্যাবস্ট্রাকশন লেয়ার যুক্ত হয়, যা ফাইল পরিচালনা সহজ করে। এছাড়াও, "Elixir" নামক টুলের মাধ্যমে সহজে প্যাকেজ ম্যানেজমেন্ট সম্ভব হয়। লারাভেল ৫ থেকে এই ফ্রেমওয়ার্ক সম্পূর্ণ নতুন স্ট্রাকচারে রূপান্তরিত হয়।
২০১৫ সালের মার্চের দিকে একটা সাইট পয়েন্ট সার্ভের অনুযায়ী লারাভেল হল পিএইচপি এর সব চেয়ে জনপ্রিয় জনপ্রিয় ফ্রেমওয়ার্ক হিসেবে উঠে আসে ।
লারাভেল ৬
২০১৯ সালের সেপ্টেম্বরে লারাভেল ৬ প্রকাশিত হয়। এই সংস্করণে "Laravel Vapor" নামে একটি সার্ভারলেস ডেপ্লয়মেন্ট প্ল্যাটফর্ম যুক্ত করা হয়। পাশাপাশি, Semantic Versioning (SemVer) চালু করা হয় এবং UI প্যাকেজটি ফ্রেমওয়ার্ক থেকে আলাদা করা হয়।
লারাভেল ৭
২০২০ সালের মার্চে লারাভেল ৭ অবমুক্ত হয়। এতে Blade কম্পোনেন্টস, HTTP ক্লায়েন্ট এবং কাস্টম Eloquent কাস্ট ফিচার যুক্ত করা হয়। এটি ডেভেলপারদের জন্য আরও সহজ ও ব্যবহারবান্ধব অভিজ্ঞতা প্রদান করে।
লারাভেল ৮
২০২০ সালের সেপ্টেম্বর মাসে লারাভেল ৮ প্রকাশিত হয়। এই সংস্করণে "Laravel Jetstream" যুক্ত করা হয়, যা একটি অ্যাডভান্সড স্ক্যাফোল্ডিং সিস্টেম। এছাড়াও, মডেল ফ্যাক্টরি ক্লাস এবং ডাইনামিক ফেকার ফিচার যুক্ত করা হয়।
লারাভেল ৯
২০২২ সালের ফেব্রুয়ারিতে লারাভেল ৯ অবমুক্ত হয়। এটি প্রথমবারের মতো PHP 8 কে সর্বনিম্ন সংস্করণ হিসেবে নির্ধারণ করে। পাশাপাশি, ডিফল্টভাবে Symfony Mailer, Flysystem 3, এবং একটি নতুন কন্ট্রোলার রাউটিং ফিচার যুক্ত করা হয়।
লারাভেল ১০
২০২৩ সালের ফেব্রুয়ারিতে লারাভেল ১০ প্রকাশিত হয়। এটি আরও ভালো কোড রিফ্যাক্টরিং, উন্নত টাইপহিন্টিং, এবং নতুন "Laravel Pennant" ফিচার সহ আরও উন্নত পরিবেশ প্রদান করে।
Source: লারাভেল
লং টার্ম সাপোর্ট(এলটিএস) ভার্সনগুলাতে যেমন ৫.১ এ ২ বছরের জন্য বাগ ফিক্স সাপোর্ট এবং ৩ বছরের মধ্যে সিকিউরিটি সাপোর্ট প্রদান করে থাকে ।আর এমনি সকল ভার্ষন গুলার জন্য সাধারনত ৬ মাস বাগ ফিক্সিং এর জন্য এবং ১ বছর সিকিউরিটি সাপোর্ট প্রদান করে থাকে । 
লারাভেল একটি মডেল-ভিউ-কন্ট্রোলার (MVC) ডিজাইন প্যাটার্নের উপর ভিত্তি করে নির্মিত। এই আর্কিটেকচারের মূল ধারণাটি হলো ডাটা এবং উপস্থাপনা লেয়ারকে আলাদা রাখা।
লারাভেলের এমভিসি আর্কিটেকচারের কার্যপ্রণালী
রিকুয়েস্ট গ্রহণ:
একজন ব্যবহারকারী বা ক্লায়েন্ট যখন ডাটা বা একটি নির্দিষ্ট অ্যাকশন চায়, তখন একটি HTTP রিকুয়েস্ট পাঠায়।
কন্ট্রোলারের ভূমিকা:
রিকুয়েস্টটি প্রথমে রাউটিং সিস্টেম এর মাধ্যমে একটি নির্দিষ্ট কন্ট্রোলারে পৌঁছে।
কন্ট্রোলার এই রিকুয়েস্টটি প্রসেস করার দায়িত্ব গ্রহণ করে।
ডাটাবেইজ ইন্টারঅ্যাকশন:
যদি রিকুয়েস্টটি ডাটাবেইজ সম্পর্কিত হয়, কন্ট্রোলার মডেলের সাথে যোগাযোগ করে।
মডেল ডাটাবেইজ থেকে প্রয়োজনীয় তথ্য রিটার্ন করে।
ডাটা প্রক্রিয়াকরণ:
কন্ট্রোলার প্রাপ্ত ডাটাকে প্রয়োজনমতো প্রক্রিয়া করে।
ভিউতে রেজাল্ট প্রেরণ:
প্রক্রিয়াকৃত ডাটা একটি ভিউতে পাঠানো হয়।
ভিউ ডাটাকে উপস্থাপনযোগ্য আকারে রেন্ডার করে ব্যবহারকারীর কাছে উপস্থাপন করে।
এই আর্কিটেকচার ডেভেলপমেন্টকে আরও সুসংগঠিত ও কার্যকর করে তোলে। ডেটা প্রসেসিং, বিজনেস লজিক এবং প্রেজেন্টেশন লেয়ার আলাদাভাবে ব্যবস্থাপনা করা যায় বলে এটি একটি পরিষ্কার ও সহজবোধ্য কাঠামো প্রদান করে।
লারাভেল এর প্রাথমিক পর্যায় থেকে বর্তমান ভার্সন 11.3.3 পর্যন্ত সব গুলো ভার্সনেই কিছু কমন ফোল্ডার স্ট্রাকচার ফলো করা হয়ে থাকে। এর মধ্যে লারাভেল ৬ থেকে ১০ পর্যন্ত ফোল্ডার স্ট্রাকচার গুলো প্রায় হুবুহু একই ছিল। সর্বোশেষ ভার্সন ১১ তে কিছুটা স্ট্রাকচার চেইঞ্জ করা হয়েছে। 
"Laracon" হচ্ছে লারাভেলের অফিসিয়াল সম্মেলন যেখানে লারাভেল এবং এর ডেভেলপমেন্ট কমিউনিটির বিভিন্ন গুরুত্বপূর্ণ দিক তুলে ধরা হয়। এই সম্মেলন লারাভেলের ডেভেলপার এবং ব্যবহারকারীদের একত্রিত হওয়ার একটি সুযোগ তৈরি করে। 
1. শুরুর দিনগুলি: Laracon প্রথমবারের মতো অনুষ্ঠিত হয়েছিল লারাভেল ডেভেলপারদের একটি সম্মেলন হিসাবে, যেখানে ফ্রেমওয়ার্কের উন্নয়ন এবং ভবিষ্যত পরিকল্পনা নিয়ে আলোচনা করা হয়।
2. ২০১৭ সালের Laracon: ২০১৭ সালে Laracon প্রথমবারের মতো অনলাইনে আয়োজন করা হয়। এটি একটি গুরুত্বপূর্ণ পদক্ষেপ ছিল, যা সারা বিশ্বের ডেভেলপারদের অংশগ্রহণ করার সুযোগ করে দেয়।
3. ২০১৮ সালের Laracon: ২০১৮ সালে Laracon অস্ট্রেলিয়ায় অনুষ্ঠিত হয়। এটি বিভিন্ন কর্মশালা এবং বক্তৃতার মাধ্যমে ডেভেলপারদের দক্ষতা বাড়ানোর প্ল্যাটফর্ম তৈরি করেছিল।
4. Laracon US এবং EU: Laracon মূলত দুইটি অঞ্চলে কেন্দ্রীভূত — Laracon US (যুক্তরাষ্ট্রে অনুষ্ঠিত) এবং Laracon EU (ইউরোপে অনুষ্ঠিত)। উভয় ক্ষেত্রেই লারাভেল ডেভেলপারদের বিভিন্ন প্রযুক্তিগত বিষয় শিখতে এবং নেটওয়ার্ক তৈরি করতে সাহায্য করে।
5. **অনলাইন সম্মেলনের চল**: COVID-19 মহামারির সময়, Laracon আবার অনলাইনে অনুষ্ঠিত হয়, যা বিশ্বব্যাপী ডেভেলপারদের জন্য একটি নিরাপদ এবং সহজলভ্য প্ল্যাটফর্ম তৈরি করেছিল।
Laracon-এর মাধ্যমে লারাভেলের কমিউনিটি আরও শক্তিশালী হয় এবং ডেভেলপারদের দক্ষতা উন্নত করার সুযোগ তৈরি হয়। এটি লারাভেলের ভবিষ্যত উন্নয়ন এবং সম্প্রসারণের জন্য একটি গুরুত্বপূর্ণ প্ল্যাটফর্ম।