جزییات بازدید : 7383
تاریخ انتشار : 09 / شهریور / 1398
فریم ورک لاراول بر پایه معماری MVC توسط فردی به نام Taylor Otwell در سال 2011 برای اولین بار تحت مجوز MIT License انتشار یافت و در مارس 2015 لاراول بعنوان مشهور ترین فریم ورک PHP شناخته شد. این فریم ورک، بسیار قدرتمند، کدباز و رایگان است.
Laravelنقاط قوتی که در دیگر فریم ورک های php وجود دارد را بکار برده است تا باعث ایجاد لذت هرچه بیشتر کدنویسی و انعطاف پذیری شود. به طور مثال این فریم ورک از بسیاری از کتابخانه های فریم ورک سیمفونی نیز بهره می برد که دومین فریم ورک محبوب پی اچ پی می باشد.
تاریخچه بروزرسانی لاراول
در سال 2011، لاراول در عرض کمتر از 2 ماه از ورژن بتا به اولین نسخه خود ارتقا یافت. این نسخه بسیار خوب، دارای پشتیبانی داخلی برای احراز هویت، متمرکز سازی، بررسی مدل ها و بازدیدها و بخش ها، مسیریابی و سایر مکانیسم های عملگرا بود. با این حال، این ورژن از فریم ورک لاراول از کنترل کننده هایی پشتیبانی می کرد که مانع از حضور فریم ورک MVC می شدند. این مشکل در ورژن ۲ لاراول با پشتیبانی از کنترل کننده ای به نام "Blade" رفع شد. در نسخه سوم لاراول، یک خط فرمان به نام Artisan معرفی شد، که بعدها برخی از اجزاء را در فریم ورکSymfony قرار داد.
نسل چهارم فریم ورک لاراول به طرز قابل توجهی ارتقا یافت، به گونه ای که معماری این فریم ورک کاملا تغییر پیدا کرد. در سال 2015، سری Laravel 5 شروع به ارتقا به نسخه Laravel 5 .1 و اخذ پشتیبانی طولانی مدت کرد. لاراول با امکاناتی که برای توسعه دهندگان و طراحان سایت فراهم می آورد کارهای بسیاری را ساده کرده است. این فریم ورک دارای یک محیط خلاقانه و سینتکس گویا و رسا است. و از همه مهمتر اینکه مستندات به روز و کاملی را برای آموزش لاراول و طراحی یک برنامه حرفه ای ارائه می دهد.
هم اکنون نسخه ۵٫۸ آن که در فوریه ۲۰۱۹ ساخته شد آخرین نسخه این فریم ورک محبوب می باشد.
به روز رسانی لاراول با صرف کمترین زمان و انرژی با استفاده از ابزار Composer انجام می شود و می توانید در برنامه های خود از آخرین نسخه کتابخانه های این فریم ورک استفاده کنید.
مزایای فریم ورک لاراول
- راه اندازی، یادگیری و بروزرسانی آسان
- دارای قابلیت ماژولار از جمله Bundle و Composer
- مبتنی بر معماری منعطف MVC
- ارتباط با دیتابیس و اجرای دستورات به صورت سریع و آسان
- بهره مندی از ORM با نام Eloquent با کارایی و انعطاف چشمگیر جهت ارتباط با انواع بانک های اطلاعاتی
- بهره مندی از templating engine با نام Blade با امکانات مناسب
- توسعه اختصاصی سیستم مسیر دهی (routing)
- انجام تست های متعدد از واحد های مختلف برنامه با دستورات ساده
- سینتکس ساده و قابل درک
- افزایش امنیت در فرم ها و مقابله با حملات XSS و.
- داشتن سرویس های بسیار زیاد منجمله ایمیل، کش، احراز هویت، ولیدیشن، رمزنگاری، صفحه بندی، فایل سیستم، ذخیره سازی ابری و بسیاری دیگر
- بهینه سازی شده برای توسعه در آینده با سرعت بال
- اجتماع بزرگ: امروزه جامعه کاربری بسیار بزرگی از لاراول استفاده می نمایند و پشتیبانی و فایل های آموزشی بسیاری برای آن وجود دارد.
سرعت لاراول
این فریم ورک در دو بخش سرعت سیستم و همچنین سرعت توسعه پذیری توانسته است رویکردهای خوبی از خود نشان دهد.
سرعت عملکرد سیستم است با استفاده از انواع روشها مانند، بارگزاری دیرهنگام( Lazy Loading )، سیستم Cache، استفاده از Memcached، استفاده از Redis و ابزارهای دیگر، تا حد امکان افزایش یافته است.
لاراول بسیار توسعهپذیر و قابل استفادهی مجدد است. امکان ایجاد بستههایی با عملکردهای جزئی و استفاده از آنها در نرمافزارهای دیگر سبب میشود سرعت توسعه در نرمافزارهای و سایتهای طراحی شده با لاراول بسیار بالا باشد.
توسعهپذیری
لاراول بسیار توسعه پذیر است و این ویژگی سبب استفاده روز افزون از آن در پروژه ها گردیده است.انجام تغییرات در بیشتر بخشهای سیستم با استفاده از آخرین تکنولوژیهای روز مانند IoC و روشهای دیگر امکانپذیر است. البته بخش قابل ملاحظهای قابلیت توسعهپذیری کد به مهارت، تجربه و دانش برنامهنویسان در استفاده از فریمورکها وابسته است.
Eloquent پایگاه داده
یکی از برجسته ترین ویژگی های این فریمورک ، استفاده از ساختار Eloquent ORM در ارتباط بین اجزا است که کمک شایانی به توسعه شی گرا می کند. انعطاف، کارایی و قدرت Eloquent را به ندرت میتوان در ابزارهای دیگر یافت. Eloquent کار کردن با اطلاعات را به گونهای آسان میکند که باور آن گاهی دشوار به نظر میرسد. کدهای نوشته شده با Eloquent شباهت بسیار زیادی با زبان انسان دارند و حتی اگر تا کنون با این شیوه کد ننوشته باشید، معنی کدها را به خوبی متوجه خواهید شد.
برنامهنویسی Eloquent بر پایهی سیستم PDO طرحریزی شده است و بنابراین علاوه بر امکاناتی که این سیستم در اختیار برنامهنویسان قرار میدهد، امکان استفاده از دستورات PDO نیز فراهم است.
Eloquent امکان ذخیره و بازیابی اطلاعات در پایگاه دادههای مختلف از جمله MySQL, Postgres , SQLite و SQL server را فراهم میکند.
Blade
لاراول حاوی یک Template Engine اختصاصی به نام Blade جهت انتشار صفحات وب است. اگرچه این تمپلیت انجین در مقایسه با ابزارهایی مانند Twig از امکانات کمتری برخوردار است، با این حال تمامی نیازهای معمول را برطرف میکند و در دستیابی به امنیت کافی در ایجاد خروجی به برنامهنویسان یاری میرساند.
Composer
لاراول برای مدیریت نیازمندی های نرم افزاری از ابزاری به اسم Composer استفاده میکند. در واقع بررسی بهروزبودن، تمامی کتابخانههای مورد نیاز برای یک پروژه و بهروزرسانی آنها ممکن است کاری دشوار و زمانبر باشد. کامپوزر این عملیات را به سادگی برای شما انجام می دهد و شما میتوانید با صرف کمترین انرژی، همیشه از آخرین نگارش کتابخانهها و فریمورک لاراول در پروژه بهرهبرداری کنید .
البته این ابزار نیاز به استفاده از shell دارد که ممکن است در برخی شرکتهای هاستینگ به جهت مسایل امنیتی محدودیت هایی در این زمینه اعمال گردد که بایستی از روش های جایگزین استفاده شود.
Routing مسیردهی
سیستم مسیردهی( Routing ) در لاراول نیز به صورت اختصاصی توسعه یافته است. این سیستم امکانات بسیاری را در اختیار توسعهدهنده قرار میدهد. استفاده از پیشوندها و پسوندها، کنترلرها، فیلترها، توابع درون خطی و بسیاری امکانات دیگر کار کردن با مسیرها را ساده و کارآمد میکنند.
در نگارش آخر لاراول، امکان Cache کردن مسیرها برای افزایش چند ده برابری سرعت عملکرد در این بخش امکانپذیر شده است.
سرویسهای لاراول
لاراول به عنوان یک فریمورک قدرتمند php ابزارها یا سرویسهای متعددی در اختیار برنامهنویسان و طراحان سایت قرار میدهد. فهرست این سرویسها را برای آخرین نگارش این فریمورک در ادامه مشاهده میکنید:
- Authentication تایید هویت
- Authorization دسترسیهای کاربران
- Artisan Console کنسول آرتیزان
- Billing پرداخت و صورتحساب
- Cache کش
- Collections مجموعهها
- Elixir مکانیزاسیون
- Encryption کدگذاری و رمزگزاری
- Errors & Logging مدیریت خطاها و لاگ
- Events رویدادها
- Package Development توسعهی بستهها یا ماژولها
- Filesystem / Cloud Storage سیستم فایل – سیستم ابری
- Hashing سیستم هش
- Helpers ابزارهای کمکی
- Localization سایتهای دو زبانه و چند زبانه
- Mail ایمیل
- Pagination صفحه بندی
- Queues صفها
- Redis ردیس
- Session مدیریت و رمزگزاری سشن
- SSH Tasks دسترسی آسان به SSH
- Task Scheduling اجرای زمانبندی شدهی دستورات
- Testing آزمون
- Validation ارزیابی
► مقالات مرتبط