آشنایی با لاراول قدرتمند ترین فریمورک PHP

لاراول چیست؟ با مطالعه این مقاله با لاراول آشنا میشی! در حال حاضر طراحی وب یکی از پر درآمد ترین شغل های دنیاست. یکی از زبان های محبوب چه در ایران چه در دنیا زبان PHP است که میتونید هر سایت و پلتفرمی باهاش طراحی کنید. شاید در ابتدای کار کمی گیج و گمراه بشید در ادامه سعی میکنیم به صورت جامع توضیح کاملی داشته باشیم تا آشنایی بیشتری با زبان PHP و فریم ورک لاراول بدست بیاری، پس با هیرود همراه باشلاراول چیست؟ بررسی کامل فریمورک لاراولبررسی تاریخچه زبان برنامه نویسی PHPRasmus Lerdorf اهل دانمارک در سال 1994 تعدادی اسکریپت برای مدیریت برخی از کارهای شخصی خودش با زبان برنامه نویسی Perl نوشت. این اسکریپت ها که بر اساس استاندار (Common Gateway Interface) نوشته شده بودند. آمار و ارقام افرادی که در حال طالعه رزومه وی بودند رو ذخیره میکرد. این اسکریپت ها مورد توجه افراد زیادی قرار گرفت. بنابراین Lerdorf تصمیم گرفت که نام اسکریپت های خود ش رو PHP بزاره که مخفف عبارت Personal Home Page است.در سال 1997 نسخه دوم PHP را رونمایی شد و با این کار نظر توسعه دهنده های زیادی را به خودش جلب کرد. سپس در سال 1998 موتور پردازش PHP را دوباره نویسی شد و نسخه سوم PHP منتشر شد.در همین سال ها بود که تصمیم گرفتند مفهوم جدیدی به کلمه PHP بدهند به همین دلیل از آن پس دو حرف میانی کلمه PHP برگرفته از عبارت Home Page نبود و به عنوان مخففی از عبارت Hypertext Preprocessor در نظر گرفته شد.به تدریج با گذشت زمان روز به روز به تعداد توسعه دهندگان آن اضافه شد و بخش هایی جدید دیگری به این زبان اضافه شد تا PHP به یک پروژه متن باز یا Open Source تبدیل شد.Lerdorf به همراه همکارش Andi Gutmans تصمیم گرفتند تا شرکتی با نام Zend را تاسیس کنند. در این شرکت هسته اصلی پی اچ پی مجدد دگرگون شد. تغییرات زیادی روی این زبان اعمال شد و نسخه چهارم آن رونمایی شد و نام هسته آن را Zend Engin نام گرفت.در سال 2004 نسخه 5 پی اپ پی رو نمایی شد و شاهد تغییرات فراوانی بودیم که مهمترین آن اضافه شدن قابلیت کدنویسی شی گرا و ارتباط بهتر با پایگاه داده (دیتابیس) بود.پس از نسخه 5.6 تیم توسعه PHP تصمیم داست تا پشتبانی از Unicode را در نسخه ششم خود اضافه کند که این کار بهدرستی صورت نگرفت و آن ها تصمیم گرفتند این نسخه را کلا متوقف کنند. در سال 2015 نسخه 7 PHP منتشر شد. به عبارتی میشه این بروزرسانی PHP رو یکی از بزرگترین و خفن ترین بروزرسانی های این زبان به حساب کرد. مهمترین تغییرات، کاهش 50% استفاده از حافظه، افزایش جدود دو برابری سرعت اجرا و بهبود عملکرد آن است. همچنین بهبود قدرت گرفته شده از نسخه سوم Zend Endgin است.PHP چیست و ساختار کلی آنتا اینجای کار با تاریخچه زبان برنامه نویسی PHP آشنا شدیم و متوجه شدیم PHP چیست؟ در ادامه میخایم ببینیم تعریف اصلی پی اچ پی چیه و ساختار کلیش به چه صورته.PHP یک زبان تفسیریه که برای طراحی و ایجاد صفحات پویای وب است. یعنی توسعه دهندگان وب میتونند با استفاده از PHP وب اپلیکیشن های تعاملی طراحی کنند. تعاملی بودن مثل: لاگین و رجیستر کاربران ، سطوح دسترسی مختلف ، ذخیره و بازیابی اطلاعات و ...یکی از دلایلی که باعث محبوبیت بیشاز اندازه PHP شده وجود فریمورک های مختلف و قدرتمند برای این زبانه که کار رو برای برنامه نویسان آسون تر میکنند. دو تا از محبوب ترین این فریمورک ها لاراول و سیمفونی هستند که تقریبا 80% سهم بازار وب دنیا رو دارند. متن باز و رایگان هستند. جامعه بسیار بزرگ و پشتیبانی عالی دارند.قبل از هرچیزی باید بگم که در این بخش اصلا قصد آموزش کامل و عمیق پی اچ پی رو نداریم و فقط داریم باهاش آشنا میشیم :) شما میتونید از بخش مقالات و دوره های آموزشی این مسیر اقدام به یادگیری کنید.به نظرم یه نگاهی به برنامه ساده Hello World نوسته شده با PHP بندازیم تا دید کلی بدست بیاریم. کد زیر با زبان PHP نوشته شده که درون کدهای HTML قرار دارد:<!DOCTYPE html><meta charset="utf-8"><title>PHP Test By herod.ir</title><?php echo 'Hello World';?>توجه کنید لازم نیست کد های PHP در تگ های HTML نوشته شود و میتوان به صورت زیر نیست:<?= 'Hello world';زبان های مفسریهر دو زبان یعنی مفسری و کامپایلری کارشان ترجمه و پردازش است. در زبان های نفسیر شوند Interpreted سورس کد آن ها به صورت یکباره کامپایل نمیشه بلکه هرخط از کد توسط برنامه های مفسر یا تفسیرکننده (Interpreter) به صورت خط به خط بررسی و سپس تفسیر و اجرا میشه. زبان PHP به صورت مفسری کد ها را اجرا میکنه ، همچنین زبان های مفسری نسبت به زبان های کامپایلری کند تر هستند اما خطا یابی و دیباگ آن ها راحت تره. از طرفی محصول نهایی زبان های مفسری بر خلاف زبان های کامپایلری که یک خروجی واحد ارائه میدهند، سرورس کد نوشته شده است.زبان های کامپایلریدر این نوع زبان تمام سورس کد به صورت یکباره کامپایل میشه و خروجی آن به صورت یک نرم افزار کاملا مستقل در اختیار کاربر قرار میگیره. در واقع کامپایلر کد های نوشته شده توسط کاربر را بعد از تست به کد های فشرده و قابل فهم برای سیستم تبدیل میکنه که خیلی سریع اجرا میشه.بیشتر بخون: زبان PHP چیست؟ آشنایی کامل با کاربرد های آنتفاوت زبان های سمت کاربر و سمت سرور ، زبان های سطح بالا و پایینزبان های سمت کاربر Client-Side سمت مرورگر کاربر پردازش و اجرا میشه. مثلا جاوا اسکریپت یک زبان سمت کاربر است و در مرورگر کاربر اجرا میشه. اما زبان های سمت سرور Server-Side مانند زبان PHP در سرور (مرتبط با سایت) پردازش شده و خروجی به سمت کاربر ارسال میشه.زبان های برنامه نویسی به دو دسته سطح بالا High-Level و سطح پایین Low-Level تقسیم میشه که زبان PHP یک زبان سطح بالاست. زبان های سطح پایین زبان هایی هستند که به زبان ماشینی یا صفر و یک نزدیکتر هستند و به طور مستقیم با پردازنده (cpu) در ارتباط هستند. مثلا زبان اسمبلی یک زبان سطح پایین است. درک و فهم زبان های سطح پایین برای انسان ها سخته به همین دلیل زبان های سطح بالا ایجاد شده تا به زبان گفتار انسان ها (انگلیسی) نزدیک باشه تا برنامه نویسان به راحتی آن را یاد گرفته و درک کنند.تفاوت سایت استاتیک و داینامیکسایت استاتیک: در این نوع طراحی سایت طراحی شده توسط مدیر قابل تغییر نیست وهر زمانی که نیاز به تغییر در هر بخش سایت بود، شرکت یا فرد طراح باید آن را تغییر دهد. امروزه این نوع طراحی کمتر مورد استفاده قرار میگیره و منسوخ شده و در طراحی برخی از لندینگ پیج ها تبلیغاتی ممکنه مورد استفاده قرار بگیره، چون الان زبان ها برنامه نویسی پیشرفت زیادی کرده و فریمورک ها و cms هایی به وجود آمده که به راحتی میتونیم سایت داینامیک طراحی کنیم.سایت داینامیک: طراحی سایت داینامیک به این معناست که مدیر سایت میتونه بدون داشتن هیچگونه دانش فنی بخش های مختلف سایت رو از پنل مدیریت سایت تغییر بده و کنترل کاملی روی سایت داشته باشه. امروزه تمامی سایت ها با توجه به نیاز موجود با این روش طراحی و توسعه داده میشه. معمولا به دو صورت میشه یه سایت طراحی کرد: طراحی سایت با کدنویسی - طراحی سایت بدون کد نویسی که در ادامه بررسی میکنیمآشنایی با فریمورک لاراوللاراول یکی از محبوب ترین فریمورک های PHP است. لاراول تونسته در مدت زمان بسیار کوتاه محبوبیت زیادی بین برنامه نویسان کسب کنه. در حال حاضر چه در ایران چه در کشور های دیگر شرکت های زیادی به دنبال استخدام برنامه نویسان هستند. اگر دوست دارید علت این محبوبیت رو بدونید و بیشتر با Laravel آشنا بشید ادامه همراه ما باشید.لاراول امروزه به اولین انتخاب برنامه نویسان برای پیاده سازی پلتفرم های پیچیده تحت وب تبدیل شده است. به صورت رایگان و متن باز ارائه شده و بر پایه معماری MVC است. لاراول انقدر ویژگی ها و امکانات خفن داره که برنامه نویسی را برای توسعه دهنده ها لذت بحش کرده، فقط توجه کنید برای آغاز آموزش لاراول بهتره PHP رو بلد باشید.Laravel نسبت به بقیه فریمورک های PHP سرعت و امنیت بالاتری داره و دارای کتابخانه های زیادیه و اغلب از کتابخانه های فریمورک سیمفونی استفاده میکنه. لاراول از قبل در درون خودش سرویس های زیادی رو پیاده سازی کرده تا کار برنامه نویسان راحت تر بشه مثل: تایید هویت کاربر، سطح دسترسی کاربران ، Artisan کنسول ، مجموعه ها (Collections) و ...تاریخچه و ورژن بندی فریمورک لاراولنسخه 1 لاراولحالا که کمی با لاراول آشنا شدیم بریم ببینیم طی زمان های محتلفی چه اتفاق هایی برای لاراول افتاده. خالق لاراول (Laravel) شخصی است به نام تیلور اوتوِل (Taylor Otwell). هدفش این بود فریمورک خفن تری نسبت به فریمورک CodeIgniter ایجاد کنه. اولین نسخه لاراول در سال 2011 منتشر شد که شامل سرویس هایی مانند ، View ، Model، Session و .. بود اما خبری از Controller نبود. همین باعث میشد تا لاراول از به صورت واقعی پیرو معماری MVC نباشه.نسخه 2 لاراولدر همان سال 2011 نسخه 2 لاراول منتشر شد و این بار از Controller ها پشتبانی میکرد. لاراول با این نسخه به صورت کامل پیرو MVC بود و حالا به عنوان یک فریمورک شناخته میشد. در این نسخه یک ویژگی عالی دیگه به نام موتور رندر قالب Blade به لارول اضافه شد. هدف Blade این بود که میزان کد نویسی رو کم و به توسعه قالب سرعت ببخشه.نسخه 3 لاراولدر سال 2012 نسخه 3 laravel منتشر شد که دارای ویژگی هایی مثل خط فرمان CLI که با نام Artisan شناخته میشد و پشتیبانی از مدیریت پایگاه داده (دیتابیس) در داخل فریمورک که با نام migration شناخته میشد و پشتیبانی از پکیجینگ بود. در این نسخه لاراول محبوبیت زیادی بین برنامه نویسان کسب کرد.نسخه 4 لاراولدر سال 2013 لاراول به صورت کامل بر پایه کد های Illuminate باز نویسی شد و نسخه 4 آن رونمایی شد. امکان خفنی که تو این نسخه اضافه شد پشتبانی از Composer بود که اماکن استفاده از سایر پکیج ها و کتابخانه هایی که توسط سایر برنامه نویسان PHP نوشته شده بود را در لاراول ایجاد میکرد.نسخه 5 لاراولپس از دو سال در سال 2015 نسخه 5 لاراول رونمایی شد که دارای امکاناتی چون برنامه ریز اجرای وضایف (Job) ، بهینه سازی assets ها ، بهبود احراز هویت و ... بود این نسخه از لاراول مداوم با اماکنات جدید بروزرسانی شد و هر بار ویژگی خفنی به آن اضافه شد.نسخه 6 لاراولدر نهایت در سال 2019 نسخه 6 لاراول رونمایی شد که برخی از ویژگی های آن به موارد زیر میتوان اشاره کرد:استفاده از Semantic Versioning ورژن بندی معنایی به علت دارا بودن حس پایداری بیشتر ، اضافه شدن Job Middleware ها ، Lazy collection که به شما اجازه میده تا در هنگام کار با داده های حجیم استفاده از حافظه (memory usage) را کاهش دهیم ، بهینه سازی Eloquent subquery ها ، پیام های سفارشی در احراز هویت ، معرفی Laravel Vapor و حذف پکیج Laravel UIنسخه 7 لاراوللاراول نسخه 7 آخرین نسخه فریم ورک لاراول است که تاکنون منتشر شده است. این نسخه از بسیاری جهات بهبود یافته است که در یک مقاله جدا در سایت هیرود آن را بررسی خواهیم کرد.توسعه دهنگان لاراول همچنان تلاش میکنند تا با اضافه کردن امکانات جدید و توسعه بیشتر کار را برای برنامه نویسان آسان و لذت بخش تر کنند. یکی از مهمترین دلایل محبوبیت فریمورک لاراول آپدیت ها مدام اونه.این مطلب ادامه دارد، ادامه مطلب را از اینجا بخوانید :)