چشمانداز Tempest؛ فریمورک PHP که سر راهت نمیایسته
خلاصهٔ کاملتر
برنت، سازندهٔ Tempest، میگه مردم زیاد ازش میپرسن «چرا» یه فریمورک جدید ساخته، برای همین خواسته چشماندازش رو مرتب بنویسه. اونو در یه جمله جمع میکنه: Tempest یه فریمورک PHP مدرن و جامعهمحوره که سر راهت نمیایسته و جرأت میکنه خارج از چارچوب فکر کنه. بعد این جمله رو در چهار ستون باز میکنه.
ستون اول جامعهمحوریه. به گفتهٔ برنت، Tempest اولش یه پروژهٔ آموزشی بود بدون قصد جدی، ولی مردم پیگیرش شدن و فقط بعد از شکل گرفتن یه جامعهٔ قوی تصمیم گرفتن جدیش کنن. الان سه عضو اصلی روش وقت میذارن، بیش از ۵۰ مشارکتکنندهٔ دیگه داره و یه سرور Discord فعال با نزدیک ۴۰۰ عضو. برنت میگه هیچوقت پروژهٔ تکنفره نبوده و هرچند در مقایسه با Symfony یا Laravel راه داره، مومنتوم قابلتوجهی داره.
ستون دوم در آغوش گرفتن PHP مدرنه. مزیت شروع از صفر یه صفحهٔ تمیزه؛ Tempest از همون اول ویژگیهای مدرن PHP رو به کار گرفته و میخواد با upgraderهای داخلی (مثل Laravel Shift ولی توی خود فریمورک) این کارو ادامه بده. مثالهایی که میزنه property hooks، attributes (مثل #[Get('/books/{book}')] روی متد کنترلر) و proxy objectها هستن.
ستون سوم «سر راه نبودن» ئه. به گفتهٔ برنت، Tempest طوری طراحی شده که کدت رو هرجور بخوای ساختار بدی، بدون تحمیل convention؛ چه MVC کلاسیک، چه DDD، چه میکروسرویس. پشت این انعطاف یکی از قویترین ویژگیهاش هست: discovery. discovery بدون دخالت دستی به فریمورک بینش میده و routing، کامندهای کنسول، view componentها، event listenerها، middleware، schedule و migration رو مدیریت میکنه؛ برای production کاملاً cache میشه پس سربار پرفورمنس نداره و حتی میتونی کلاسهای discovery مخصوص پروژهٔ خودتو بنویسی. Tempest همچنین قابلگسترشه: هر بخش فریمورک رو با پیادهسازی یه interface و وصل کردنش به container میشه جایگزین کرد.
ستون چهارم فکر کردن خارج از چارچوبه. چون Tempest ریشهٔ آموزشی داره، خیلی از ویژگیهاش چیزهای عادی رو بازاندیشی میکنن؛ مثلاً کامندهای کنسول که تو Tempest شبیه اکشنهای کنترلر طراحی شدن، یا ORMش که هدفش مدلهای واقعاً decoupled ئه، و موتور view ش که اصیلترین موتور تمپلیت یعنی HTML رو در آغوش میگیره (با نحوی مثل :foreach و :if). برنت در پایان میگه کاربران Tempest میگن این فریمورک نقطهٔ شیرین بین استحکام Symfony و شیوایی Laravel ئه: سبک و نزدیک به PHP خام، و در عین حال قدرتمند و پرامکانات.
نکات کلیدی:
- چشمانداز Tempest: فریمورک PHP مدرن، جامعهمحور، بیمزاحم و جسور
- از PHP مدرن مثل property hooks، attributes و proxy objects استفاده میکنه
- discovery بدون پیکربندی، routing و کامند و migration و... رو کشف میکنه و برای production کش میشه
- کامندهای کنسول و ORM و موتور view شبیه رویکردهای رایج بازاندیشی شدن




