PHP: سرزمین هزار چارچوب

نویسنده: Louise Ward
تاریخ ایجاد: 6 فوریه 2021
تاریخ به روزرسانی: 18 ممکن است 2024
Anonim
العقيدة والإعجاز - الدرس (15-36) مقومات التكليف : الشهوة -1- يمكن أن نقلب شهواتنا إلى عبادات
ویدیو: العقيدة والإعجاز - الدرس (15-36) مقومات التكليف : الشهوة -1- يمكن أن نقلب شهواتنا إلى عبادات

محتوا

از من بپرسید که از کدام چارچوب استفاده کنم و من احتمالاً لحظه ای پیرزن بدخلق را تجربه خواهم کرد و به شما خواهم گفت که همه چارچوب ها به اندازه یکدیگر بد هستند. این بدان معنا نیست که همه آنها بد هستند ، دقیقاً ، اما در PHP تعداد غیرقابل تصور چارچوبی داریم (معمولاً به عنوان N + 1 ذکر می شود ، جایی که N تعداد توسعه دهندگان PHP در جهان است) ، و همه آنها احتمالاً منطقی هستند به شخصی که آنها را اختراع کرده است.

داشتن چارچوب های انتخابی احتمالاً بهتر از تلاش برای استفاده از تنها یک چارچوب است ، صرف نظر از این که دقیقاً چه چیزی را می خواهید بسازید ، زیرا این "بهترین" (با هر معیار "بهترین") است. این انتخاب پیشنهادات چارچوب به این معنی است که شما می توانید چیزی را انتخاب کنید که نیازهای پروژه را برآورده کند و حتی ممکن است مستند باشد. چارچوب های موجود در هر پلتفرم واقعاً برای ایجاد ساختار ، ماژول های قابل استفاده مجدد و کتابخانه ها وجود دارد و به طور کلی از انجام همه کارهای خسته کننده و تکراری مربوط به ساخت چندین کارکرد یکسان و مکرر جلوگیری می کند. به عنوان مثال هنگام ساخت CMSes ، چیزی باید زمینه های فرم را پردازش و تأیید کند. اگر به حال خودم رها شود ، ممکن است چیز مهمی را از دست بدهم و ترجیح می دهم عناصر مربوط به هر پروژه را انجام دهم ناهمسان، به جای مواردی که هر بار یکسان هستند!


چارچوب های پشته ای کامل

چارچوب های پشته ای کامل مانند Zend Framework می تواند مکان خوبی برای شروع یک توسعه دهنده بدون تجربه معماری زیاد باشد. این ساختار خوبی برای آویز کردن یک برنامه جدید ایجاد می کند ، و "اکوسیستم" خوبی در اطراف آن وجود دارد - بسیاری از کتاب ها ، آموزش ها و برخی اسناد منطقی نیز. اگر می خواهید یک برنامه بزرگ بسازید که توسط بسیاری از افراد حفظ شود ، یک چارچوب جامع و محبوب ممکن است انتخاب خوبی باشد زیرا ساختار زیادی را القا می کند و به خوبی شناخته شده و قابل درک است.

داشتن ساختار برای کمک به جدایی همیشه خوب است. در اوایل کارم با برخی کار کردم بسیار توسعه دهندگان جوان و سعی در آموزش الگوی MVC (Model View Controller) داشت که در آن زمان نسبتاً جدید بود. ما تصمیم گرفتیم از Smarty در لایه نمای استفاده کنیم. بخشی تا طراحان بتوانند با الگوها راحت تر کار کنند و بخشی دیگر وقتی کسی به میز من آمد و گفت "چگونه X را با Smarty انجام دهم؟" می توانم بگویم "از نظر X کار نکن!" (نه بار از 10 ، این جواب بود). داشتن چارچوب به ما کمک می کند تا همان تفکیک را در قسمتهای دیگر برنامه خود پیدا کنیم. بسیاری از آنها از ادغام در برابر یک لایه وسوسه انگیز مانند Smarty یا مورد علاقه جدید من ، Twig پشتیبانی می کنند ، بنابراین می توانید این ابزارها را هر کدام از چهارچوب ها انتخاب کنید با خود ببرید.


بار را سبک کنید

تعداد زیادی چارچوب سبک تر از Zend Framework وجود دارد ، به عنوان مثال من با CodeIgniter کاملاً کار می کنم. آیا به اندازه Zend Framework جامع و مستحکم است؟ نه ، اینطور نیست اما به عنوان یک چارچوب کمکی برای امکان ساخت سریع برنامه ، مفید است. به طور کلی ، چارچوب هایی با قابلیت "کمکی" کمتر می توانند راه شما را راحت تر پیدا کنند ، زیرا نحوه ترکیب قطعات بسیار واضح تر است. در یک چارچوب ناآشنا (برای من ، تقریباً همه چیز) ، بیت های خودکار است که کار و اشکال زدایی را دشوار می کند.

این احساس "گم شدن در چارچوبی جدید" اجتناب ناپذیر و کاملا ناامیدکننده است. حتی اگر یک توسعه دهنده باتجربه نمی داند که چگونه کار می کند ، مانند یک تازه کار احساس می شود. اگر واقعاً بدشانس باشید ، چارچوبی را انتخاب کرده اید که کانال IRC به شما بگوید احمق هم هستید! این تجربه اولیه بسیار منفی است که باعث می شود بسیاری از افراد از یک چارچوب جدید استفاده نکنند یا از یک چارچوب جدید استفاده کنند و تعداد کمی از چارچوب ها به خوبی به کاربران جدید کمک می کنند تا از این مانع اولیه استفاده کنند.


ما در PHP چند فریم ورک هم داریم که در واقع چارچوبی نیستند که من معمولاً از این کلمه استفاده می کنم. ما چند چارچوب م componentلفه دوست داشتنی داریم. مجموعه ای از کتابخانه ها طراحی شده اند تا بنا به خواسته خود و به خوبی با هم بازی کنند ، مانند Zeta Components (قبلاً اجزای eZ) و Symfony Components (آیا سایت آنها را دیده اید؟ آنها جایزه بهترین کارهای هنری را می گیرند!). بهترین و ناخوشایندترین آنها البته پیشنهادات PHAR's PEAR و PECL است - به نوعی اینها در این دنیای شجاعانه جدید از چارچوب ها فراموش می شوند.

میکرو چارچوب ها

میکرو چارچوب ها یک روند نوظهور در PHP هستند. این موارد بسیار سبک وزن هستند که فقط به شما کمک می کنند تا کارها را با سرعت بیشتری بهم بچسبانید. یک مثال خوب اسلیم است که بسیار سریع و ساده استفاده می شود و مفاهیم RESTful را می فهمد. این ایده مبتنی بر ایده "مسیرها" است که الگوهای URL هستند. شما یک مسیر را ثبت می کنید و یک پاسخ می دهید که در صورت درخواست آن URL باید فراخوانی شود.

بیشتر توسعه دهندگان PHP چارچوبی را اتخاذ کرده و به آن پایبند هستند ، یا ممکن است از یکی در محل کار و دیگری برای سرگرمی یا پروژه های منبع باز خود استفاده کنند. اتفاق نظر کمی در مورد "بهترین" چارچوب برای استفاده وجود دارد ، بنابراین هر کس فقط به آنچه که می داند پایبند باشد و نتیجه آن توسعه موازی تعداد زیادی از چارچوب است! من عاشق انتخابی برای انتخاب هستم ، اما آیا ذکر کردم که همه آنها به اندازه یکدیگر بد هستند؟

اگر Zend Framework را می شناسید ، در نهایت خود را به عنوان یک توسعه دهنده Zend Framework توصیف می کنید. برای شما راحت نخواهد بود که در چارچوب دیگری بنویسید تا زمانی که فرصتی برای مقابله با آن پیدا کنید ، و اگر اغلب از آنها استفاده نکنید بسیاری از عملکردهای خام PHP را به خاطر نمی آورید. این ایده که ما به توسعه دهندگان خاص چارچوب تبدیل شده ایم ، فقط در بالای لایه های انتزاع کار می کنیم ، برای PHP کمی عجیب است. از این گذشته ، این زبان "حل مشکل وب" است. این به زبان C نوشته شده است و به خودی خود یک زبان سبک و سریع است ... به شرطی که منتظر اجرا نشوید یک فرایند راه انداز راه اندازی بزرگ چارچوب! از این زمینه مانیفست MicroPHP ظهور کرد ، نوشته شده توسط شخصی که ما او را Funkatron می نامیم (اگرچه نام او واقعاً Ed Finkler است). این یک سری اظهارات است که می گوید ساخت چند ماژول کوچک قابل همکاری اشکالی ندارد ، بزرگتر بهتر نیست و واقعاً زندگی برای جاوا بسیار کوتاه است - حتی اگر در PHP نوشته شده باشد.

پست های جذاب
Web Intents: آینده برنامه های وب
ادامه مطلب

Web Intents: آینده برنامه های وب

این مقاله اولین بار در شماره 229 مجله .net منتشر شد - پرفروش ترین مجله جهان برای طراحان و توسعه دهندگان وب.پسندیدن. بعدا بخوانید 1+ توییت. وبلاگ Tumblr tumbleUpon. طی چند سال اخیر ، دکمه های کوچک شکلا...
8 مرحله تا صندوق ورودی صفر
ادامه مطلب

8 مرحله تا صندوق ورودی صفر

پست الکترونیک. این کار به عنوان یک چیز شگفت انگیز شروع شد. روشی جادویی برای برقراری ارتباط فوری با دیگران ، فارغ از اینکه در کجای دنیا باشند. این می تواند انقلابی در نحوه تجارت ما ایجاد کند.خوب ، این ...
بینش صنعت: آیا مسابقات طراحی ویژگی خاصی دارند؟
ادامه مطلب

بینش صنعت: آیا مسابقات طراحی ویژگی خاصی دارند؟

افزایش مسابقات طراحی در بین جامعه نگرانی فزاینده ای است ، به طوری که بسیاری از هنرمندان معتقدند این تنها راهی برای تهیه مواد به صورت رایگان برای شرکت هاست. آیا واقعا موضوع این است؟ آیا مسابقات طراحی و...