phpStorm چیست؟
پیاچپیاستورم (PhpStorm) یک IDE حرفهای برای PHP و توسعه دهندگان وب است که با آخرین روندهای PHP و زبان وب همراه بوده، انواع ابزارهای مدرن را ادغام کرده و با پشتیبانی از فریمورکهای اصلی PHP، توسعه پذیری بیشتری را به ارمغان میآورد.PhpStorm با ارائه نمودارهای کلاس UML قابل ویرایش برای کدهای PHP به توسعهدهنده کمک میکند تا کد خود را درک کرده و تغییر دهد.
PhpStorm IDE بازآفرینی کد(code refactoring)، تکمیل خودکار(auto-completion)، جلوگیری از خطای سریع(on-the-fly error prevention)، اشکال زدایی با پیکربندی صفر(zero-configuration debugging) و ویرایشگر HTML، CSS و جاوا اسکریپت را ارائه میدهد.
ویژگیهای PHP Storm
یک پروژه را در PhpStorm باز کنید
هر کاری که در PhpStorm انجام میدهید در چارچوب یک پروژه انجام میشود تا به عنوان پایهای برای کمک به کدنویسی، بازسازی انبوه، سازگاری سبک کدنویسی و بسیاری از ویژگیهای IDE دیگر عمل میکند. با راه اندازی PhpStorm، صفحه خوش آمدگویی باز میشود.
از صفحه خوش آمدید، می توانید یک پروژه جدید از ابتدا ایجاد کنید، یک پروژه را مستقیم از سیستم کنترل نسخه (VCS) باز کنید، یا پروژهای را که در IDE دیگر یا در یک ویرایشگر اختصاصی ایجاد شده است، باز کنید.
اگر در حال حاضر قصد استفاده از وبسرور را در پروژه خود ندارید، فقط میتوانید پوشه را با فایلهای پروژه باز کنید. این گزینه پروژه انتخاب شده را همانطور که هست به PhpStorm وارد می کند (آن را باز می کند).
اگر علاوه بر فایلهای سورس، یک وبسرور برای استقرار برنامه پیکربندی شدهاید، از ویزارد New Project From Existing Files برای راهاندازی پروژه PhpStorm خود استفاده کنید. ویزارد، سناریوهای مختلف مربوط به مکان فایلهای سورس مختلف و تنظیمات سرور (in-place، لوکال یا ریموت) را پوشش میدهد و شما را از طریق پیکربندی پوشهها در زیر پروژه هدایت میکند.
بررسی رابط کاربری برنامه
- منوها (Menu) و نوارهای ابزار(Toolbar) دسترسی سریع به برخی از پرکاربردترین دستورات IDE را فراهم میکنند.
- نوار پیمایش(Navigation bar) یک جایگزین سریع برای Project view است که در آن میتوانید ساختار پروژه خود را پیمایش و فایلها را برای ویرایش باز کنید.
- نوار وضعیت (Status bar) شامل مجموعهای از ویجتهای قابل تنظیم است و پیشرفت کارهای پس زمینه را نشان میدهد.
- ویرایشگر (Editor) ناحیه کاری است که در واقع کد خود را مینویسید. دارای برگههایی برای پیمایش آسان بین فایلهای باز شده است.
- پنجره های ابزار(tool windows) متعدد دسترسی به وظایف توسعه را فراهم میکند: مشاهده ساختار پروژه، اجرا و دیباگ برنامه، ادغام با سیستمهای کنترل نسخه و سایر ابزارهای خارجی، تجزیه و تحلیل کد، جستجو، ناوبری میزبان از راه دور و غیره.
میانبر(Shortcut) برای همه چیز
در PhpStorm، تقریبا برای هر اقدامی، از جمله انتخاب و جابهجایی بین ویرایشگر و پنجرههای ابزار مختلف، میانبرهایی دارید.
از مفیدترین میانبرها برای فراخوانی اقدامات مکرر بدون تغییر فوکوس از ویرایشگر استفاده نموده و keymap خود را تنظیم کنید تا میانبرهای سفارشی برای دستورات مورد علاقه خود اختصاص دهید.
محیط PHP را پیکربندی کنید
PhpStorm یک IDE هوشمند است، اما ابتدا باید به آن اطلاع دهید که از کدام محیط PHP استفاده کند، اجزای PHP در کجا ذخیره و چگونه پیکربندی میشوند.
- اگر با یک وبسرور لوکال کار میکنید، برای آماده سازی محیط خود، رویه Configure local PHP interpreters را دنبال کنید.
- اگر با یک موتور PHP کار میکنید که بر روی یک میزبان(host) ریموت یا در یک محیط مجازی نصب شده است، برای آمادهسازی محیط خود، رویه Configure remote PHP interpreters را دنبال کنید.
- پشتیبانی از Docker در PhpStorm
- پشتیبانی Vagrant در PhpStorm
- پشتیبانی از WSL در PhpStorm
کدنویسی با دستیار هوشمند (smart assistance)
- تکمیل کد (Code completion)
PhpStorm به شما کمک میکند تا با تکمیل کد آگاه از متن و بررسی نوع PHP، روند کدنویسی را سرعت بخشید.
Basic completion گزینههای تکمیل کد را برای نام کلاسها، متدها و کلمات کلیدی در محدوده دید (scope) هنگام تایپ نشان میدهد.
Full Line code completion یک ویژگی مبتنی بر هوش مصنوعی است که از یک مدل یادگیری عمیق محلی برای پیشنهاد خطوط کامل کد استفاده میکند.
نکته: Full Line code completion به طور کامل در دستگاه لوکال، بدون ارسال هیچ کدی از طریق اینترنت اجرا میشود.
هنگام تایپ کد PHP، JavaScript/TypeScript یا کد CSS، پیشنهادات در ویرایشگر به صورت italic خاکستری نمایش داده میشوند. برای پذیرش پیشنهاد، Tab را فشار دهید.
- تجزیه و تحلیل کد استاتیک
IDE با مجموعه گستردهای از بازرسیها(Inspections) برای تجزیه و تحلیل کد استاتیک ارائه میشود. بازرسیها(Inspections) به شما کمک میکنند تا هر گونه اشکال از خطای تایپی گرفته تا خطاهای مهم که کیفیت، عملکرد و ساختار کد را به خطر میاندازد، پیدا کنید.
نوع خاصی از بازرسیهای PhpStorm، بررسی کیفیت کد توسط ابزارهای شخص ثالث، مانند PHP CS Fixer، Laravel Pint، PHPStan، Psalm، PHP_CodeSniffer و PHP Mess Detector است.
بازرسیها نه تنها به شما میگویند که مشکل کجاست، بلکه راهحلهایی سریع ارائه میکند که به شما کمک میکند فوری با آن برخورد کنید. برای مشاهده و اعمال اصلاحات موجود، روی نماد لامپ در کنار کد هایلایت شده، کلیک کرده یا کلیدهای Alt + Enter را فشار دهید.
برای کدی که درست است (یعنی در ویرایشگر هایلایت نشده) اما همچنان میتواند در شرایط فعلی بهینه شود، intention actions وجود دارد که در IDE به همان روش رفع سریع قابل دسترسی است: روی نماد لامپ کلیک یا Caret را تنظیم و کلیدهای Alt + Enter را فشار دهید.
- تولید کد(Code generation) و تمپلیتهای زنده (live templates)
PhpStorm راههای متعددی برای تولید بویلرپلیت (boilerplate) ارائه میدهد. برای باز کردن یک پنجره پاپآپ با ساختارهای بویلرپلیت موجود که میتوانید از موقعیت caret ایجاد، یا کلیدهای Alt + Insert را فشار دهید.
برای insert ساختارهای کد بزرگتر، مانند حلقهها، شرطها، اعلانها(declarations) یا دستورات چاپی، از تمپلیتهای زنده(live templates) استفاده کنید. برای insert یک تمپلیت زنده، کلیدهای Ctrl + J را فشار دهید.
پیمایش و جستجو
- همه جا را جستجو کنید (Search everywhere)
یکی از مفیدترین میانبرهایی که ارزش بالایی برای به خاطر سپردن دارد کلید shift است که کادر Search Everywhere را نشان میدهد: شروع به تایپ کنید تا PhpStorm به دنبال رشته جستجوی شما در بین همه فایلها، کلاسها و نمادهایی که به پروژه تعلق دارند و حتی در میان اقدامات IDE میپردازد.
- ناوبری کد (Code navigation)
میتوانید به سرعت در کدهای ویرایشگر، از جمله import یا سلسله مراتب تماس (call hierarchies)، با استفاده از اکشنها و پاپآپهای مختلف پیمایش کنید
برنامه خود را دیباگ کنید
PhpStorm با Xdebug ادغام میشود تا به شما امکان بدهد اطلاعات زمان اجرا را دریافت و تجزیه و تحلیل کنید، که برای تشخیص مشکلات و درک عمیق تر از نحوه عملکرد یک برنامه مفید است. به شما امکان می دهد:
- اجرای برنامه را به حالت تعلیق (Suspend) درآورید تا رفتار آن را با استفاده از نقاط شکست (breakpoint) بررسی کنید. چندین نوع نقطه انفصال، همراه با شرایط و فیلترها، به شما این امکان را میدهد که لحظه دقیقی را مشخص کنید که یک برنامه باید متوقف شود.
- با تغییر مقادیر متغیرها، ارزیابی عبارات(expressions) و غیره با وضعیت برنامه بازی کنید.
- مقادیر متغیرها، پشتههای فراخوانی، وضعیتهای رشته و غیره را بررسی کنید.
- اجرای گام به گام برنامه را کنترل کنید.
PhpStorm فرآیند راهاندازی و اجرای Xdebug را بهطور خودکار انجام میدهد و در حین حرکت، درخواستها و لینکهای اقدام لازم را به شما نشان میدهد.
خرید سرور مجازی در پنج موقعیت جغرافیایی ایران، ترکیه، هلند، آلمان و آمریکا با قابلیت تحویل آنی در پارسدو فراهم است.
کد خود را تست کنید
PhpStorm با محبوبترین فریم ورک های تست PHP ادغام می شود: PHPUnit، Pest، Behat، PHPSpec و Codeception، به طوری که میتوانید تست را ایجاد، مدیریت، اجرا نموده و نتایج آزمون را از داخل IDE بررسی کنید.
در PhpStorm میتوانید تستها را در ماژولهای مختلف یک پروژه PHP مستقل از یکدیگر پیکربندی و اجرا کنید. اگر پروژه PHP شما شامل چندین پروژه فرعی تحت مدیریت Composer است و هر یک از این زیرپروژهها دارای فریمورک آزمایشی قابل اجرا و یا فایل پیکربندی هستند، PhpStorm یک پیکربندی framework آزمایشی جداگانه برای هر زیر پروژه ایجاد میکند.
کنترل نسخه و تاریخچه محلی
PhpStorm با محبوب ترین ابزارهای کنترل نسخه یعنی Git، Mercurial، Perforce و Subversion ادغام میشود.
میتوانید تاریخچه کل پروژه یا فایلهای جداگانه خود را مرور، نسخههای فایل را مقایسه، شاخهها(branches) را مدیریت نموده و حتی بدون خروج از IDE، درخواستهای pull گیتهاب را پردازش کنید.
شما می توانید به سرعت به تمام اقدامات VCS از پنجره عملیاتی پاپآپ VCS یا دکمههای Alt + ` دسترسی پیدا کنید.
تاریخ محلی (Local History)
حتی اگر هنوز کنترل نسخه برای پروژه شما فعال نشده باشد، میتوانید تغییرات پروژه خود را پیگیری، فایلهای حذف شده را بازیابی نموده، تغییرات را برگردانید یا با Local History جدا کنید. Local History همیشه فعال است و به عنوان سیستم کنترل نسخه شخصی شما عمل کرده و به طور خودکار بازنگری های پروژه شما را که توسط رویدادهای مختلف ایجاد میشود، هنگام ویرایش، فرمت یا اصلاح کد، اجرای آزمایشها و غیره ثبت میکند.
دستیار هوش مصنوعی در PhpStorm
با دستیار هوش مصنوعی JetBrains، PhpStorm قدرتمندتر شده و اطلاعات بیشتری در دسترس خواهید داشت. وقت آن رسیده که خود را از کارهای تکراری رها کنید.
- تکمیل کد مبتنی بر LLM
دستیار هوش مصنوعی سبک کدنویسی شما را همراه با context پروژه و قراردادهای نامگذاری میآموزد تا بتواند خطوط، توابع و کل بلوکهای کد را به همان روشی که شما انجام میدهید تکمیل کند.
- چت هوش مصنوعی
روی یک کار تکرار کنید(Iterate)، فایلها، کلاسها و موارد استفاده از عناصر را جستجو کنید یا تقریبا هر چیزی را بپرسید، دستیار هوش مصنوعی به زبان پروژه شما صحبت میکند و از context، تغییرات محلی و سیستم کنترل نسخه آگاه است.
- داکیومنتیشن تولید شده توسط هوش مصنوعی
با استفاده از LLM on the fly، مستنداتی برای declaration ایجاد کنید.
- تولید کد در ویرایشگر
از دستیار هوش مصنوعی بخواهید که کد را مستقیم در ویرایشگر ایجاد کند.
- تولید کد تست PHP
دستیار هوش مصنوعی context یک بخش کد را برای کمک به تولید unit tests برای متدهایPHP تجزیه و تحلیل میکند.
- توضیح خطاهای مبتنی بر هوش مصنوعی در کنسول
هنگام اجرای اسکریپتهای PHP، واحد تست یا دستورات از فریمورکها و ابزارهای PHP خطا دریافت میکنید؟ دستیار هوش توضیح و راه حل را ارائه میدهد.
- ریفکتورینگ(Refactoring)
از دستورات از پیش تعریف شده یا سفارشی برای دستیار هوش مصنوعی برای توضیح کد، یافتن مشکلات و اصلاح کد خود با در نظر گرفتن زمینه خاص پروژه در PhpStorm استفاده کنید.