استایل دهی خودکار کد برای لاراول با پکیج Laravel Pint
حفظ یک سبک کدنویسی منسجم برای خوانایی، نگهداری و همکاری در هر پروژه نرمافزاری حیاتی است. در اکوسیستم Laravel، بسته Laravel Pint بهعنوان ابزاری قدرتمند برای اصلاح خودکار سبک کدنویسی معرفی میشود که بهراحتی اطمینان حاصل میکند کد PHP شما با استانداردهای از پیش تعیینشده مطابقت دارد. در این راهنما، به بررسی بسته Laravel Pint، ویژگیها، نصب، پیکربندی و ادغام آن میپردازیم تا راهنمایی جامع برای بهبود جریان کاری توسعه در Laravel ارائه دهیم.
معرفی و مراحل نصب پکیج Laravel Pint
فهرست مطالب
- بسته Laravel Pint چیست؟
- چرا از بسته Laravel Pint استفاده کنیم؟
- نصب بسته Laravel Pint
- نصب سراسری
- نصب بر اساس پروژه
- استفاده از بسته Laravel Pint
- پیکربندی بسته Laravel Pint
- استفاده از پیشتنظیمات
- ایجاد پیکربندی سفارشی
- سفارشیسازی قوانین
- ادغام بسته Laravel Pint با PhpStorm
- نصب در PhpStorm
- فعالسازی بررسی Laravel Pint
- ادغام بسته Laravel Pint با CI/CD
- مقایسه Laravel Pint با PHP-CS-Fixer
- نتیجهگیری
بسته Laravel Pint چیست؟
Laravel Pint یک اصلاحکننده سبک کد نویسی PHP با دیدگاه خاص است که برای مینیمالیستها طراحی شده است. این ابزار بر پایه PHP-CS-Fixer ساخته شده و فرآیند حفظ سبک کدنویسی تمیز و منسجم در پروژههای Laravel را ساده میکند. بهطور پیشفرض، Pint از سبک کد نویسی Laravel پیروی میکند، اما از طریق پیشتنظیمات و قوانین قابل تنظیم، انعطافپذیری بالایی را ارائه میدهد.
چرا از بسته Laravel Pint استفاده کنیم؟
استفاده از Laravel Pint در جریان کاری توسعه مزایای متعددی دارد:
- بدون نیاز به پیکربندی: Pint بهصورت پیشفرض با سبک کد نویسی Laravel کار میکند و نیاز به تنظیمات اولیه ندارد.
- فرمتدهی خودکار کد: با اصلاح خودکار مشکلات سبک کدنویسی، در زمان صرفهجویی میشود.
- یکپارچگی در سراسر پروژهها: اطمینان حاصل میکند که تمام اعضای تیم از استانداردهای کدنویسی یکسانی پیروی میکنند.
- ادغام با PHP-CS-Fixer: از قابلیتهای قدرتمند PHP-CS-Fixer بهرهمند میشود و پایهای قابل اعتماد برای اصلاح سبک کد فراهم میکند.
- ادغام با مراحل CI/CD: بهراحتی در جریانهای کاری خودکار ادغام میشود.
- ادغام با Composer: بهراحتی از طریق Composer نصب میشود و بهطور یکپارچه در سیستم مدیریت بستههای Laravel قرار میگیرد.
- سبک و سریع: بدون وابستگیهای غیرضروری، راهحلی سریع ارائه میدهد.
- قوانین قابل تنظیم: میتوانید قوانین خود را بر اساس نیازهای پروژه تعریف کنید.
- پیشتنظیمات قابل تنظیم: از استانداردهای مختلف کدنویسی مانند PSR-12 و PER پشتیبانی میکند و به توسعهدهندگان اجازه میدهد سبک مورد نظر خود را انتخاب یا تعریف کنند.
نصب بستهٔ Laravel Pint
پکیج Laravel Pint به PHP نسخهٔ ۸.۱ یا بالاتر نیاز دارد. میتوانید آن را بهصورت سراسری یا برای هر پروژه بهطور جداگانه نصب کنید.
نصب سراسری
برای نصب Pint بهصورت سراسری، دستور زیر را اجرا کنید:
1 | composer global require laravel/pint |
پس از نصب، میتوانید در هر پروژهٔ Laravel از آن استفاده کنید:
نصب برای پروژه خاص
برای نصب Pint فقط برای یک پروژهٔ خاص Laravel، دستور زیر را اجرا کنید:
1 | composer require laravel/pint --dev |
علامت –dev اطمینان حاصل میکند که Pint بهعنوان یک وابستگی توسعه اضافه میشود.
استفاده از بستهٔ Laravel Pint
پس از نصب، اجرای Pint بسیار ساده است. به دایرکتوری ریشهٔ پروژهٔ خود بروید و دستور زیر را اجرا کنید:
1 | ./vendor/bin/pint |
این دستور کد شما را تحلیل کرده و بهطور خودکار هرگونه مشکل سبک کدنویسی را بر اساس پیشتنظیم Laravel اصلاح میکند. برای اجرای آزمایشی (بدون اعمال تغییرات)، از دستور زیر استفاده کنید:
1 | ./vendor/bin/pint --test |
برای مشاهدهٔ اطلاعات دقیق دربارهٔ تغییراتی که Pint اعمال میکند، از علامت verbose استفاده کنید:
1 | ./vendor/bin/pint --test -v |
برای فرمتدهی به یک فایل یا دایرکتوری خاص، از دستور زیر استفاده کنید:
1 | pint path/to/file.php |
پیکربندی بستهٔ Laravel Pint
در حالی که Pint با تنظیمات پیشفرض خود بهخوبی کار میکند، میتوانید رفتار آن را با ایجاد یک فایل pint.json در دایرکتوری ریشهٔ پروژهٔ خود سفارشیسازی کنید. این فایل JSON به شما امکان میدهد پیشتنظیمات و قوانین خاصی را مشخص کنید.
استفاده از پیشتنظیمات
پیشتنظیمات مجموعهای از قوانین هستند که Pint اعمال میکند. برای استفاده از استاندارد کدنویسی PSR-12، فایل pint.json شما باید بهصورت زیر باشد:
1 2 3 | { "preset": "psr12" } |
Laravel Pint از پیشتنظیمات مختلفی پشتیبانی میکند، از جمله:
- laravel: سبک کدنویسی پیشفرض Laravel
- psr12: استاندارد کدنویسی PSR-12
- per: مجموعه قوانین گسترشیافتهٔ PHP که بر پایهٔ PSR-12 ساخته شده است
ایجاد پیکربندی سفارشی
برای ایجاد یک فایل pint.json در ریشهٔ پروژهٔ خود، دستور زیر را اجرا کنید:
1 | pint --generate |
این دستور فایلی مشابه زیر ایجاد میکند:
1 2 3 4 5 6 | { "preset": "laravel", "rules": { "array_syntax": {"syntax": "short"} } } |
شما می توانید این فایل را تغییر دهید تا قوانین را بر اساس نیازهای پروژه خود سفارشی سازی کنید.
سفارشیسازی قوانین
میتوانید قوانین خاص خود را در فایل pint.json فعال یا غیرفعال کنید. برای مثال:
1 2 3 4 5 6 7 8 9 | { "preset": "laravel", "rules": { "array_syntax": {"syntax": "short"}, "no_unused_imports": true, "single_quote": true, "ordered_imports": true } } |
در مثال بالا:
- array_syntax استفاده از آرایهها را به سینتکس کوتاه [] محدود میکند.
- no_unused_imports ایمپورتهای استفادهنشده را حذف میکند.
- single_quote استفاده از کوتیشن تکی را الزامی میکند.
- ordered_imports ترتیب الفبایی ایمپورتها را برقرار میکند.
ادغام Laravel Pint با PhpStorm
نصب در PhpStorm
برای ادغام Pint با PhpStorm، میتوانید مسیر اجرایی Pint را در تنظیمات IDE مشخص کنید:
به مسیر Settings > Tools > External Tools بروید و روی + کلیک کنید تا ابزار جدیدی اضافه کنید. سپس جزئیات را مانند زیر وارد کنید:
- Name: Laravel Pint
- Program: vendor/bin/pint (example: /path/to/project/vendor/bin/pint)
- Arguments: $FilePathRelativeToProjectRoot$
- Working directory: $ProjectFileDir$
اکنون میتوانید با کلیک راست روی هر فایل PHP، از گزینه Laravel Pint استفاده کنید.
فعالسازی بررسی Laravel Pint
اگر میخواهید PhpStorm بهصورت خودکار کد شما را مطابق با Pint بررسی و اصلاح کند:
- از مسیر Settings > File Watchers یک Watcher جدید برای Pint اضافه کنید.
- در زمان ذخیرهٔ فایل، Pint بهصورت خودکار اجرا خواهد شد.
ادغام Laravel Pint با CI/CD
ادغام Pint در مراحل CI/CD مانند GitHub Actions، GitLab CI یا Bitbucket Pipelines باعث میشود سبک کدنویسی پروژه بهصورت مداوم بررسی شود. یک مثال برای GitHub Actions:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | name: Pint on: [push, pull_request] jobs: pint: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Set up PHP uses: shivammathur/setup-php@v2 with: php-version: '8.2' - name: Install dependencies run: composer install - name: Run Laravel Pint run: ./vendor/bin/pint --test |
این تنظیم باعث میشود هر بار که یک کد جدید Push یا Pull Request ایجاد میشود، Pint بهصورت خودکار اجرا و خطاهای سبک کدنویسی را بررسی کند.
مقایسه Laravel Pint با PHP-CS-Fixer
ویژگی | Laravel Pint | PHP-CS-Fixer |
پیکربندی صفر (Zero Config) | ✅ | ❌ |
تمرکز بر Laravel | ✅ | ❌ |
بر پایه PHP-CS-Fixer | ✅ | – |
پشتیبانی از قوانین سفارشی | ✅ | ✅ |
استفاده آسان با Composer | ✅ | ✅ |
نیاز به پیکربندی اولیه | ❌ | ✅ |
در واقع Pint یک رابط سادهتر و از پیش تنظیمشده بر پایه PHP-CS-Fixer است، که استفاده از آن در پروژههای Laravel را بسیار ساده و بدون دردسر میسازد.
نتیجهگیری
Laravel Pint ابزار فوقالعادهای برای حفظ انسجام در سبک کدنویسی PHP است، مخصوصاً برای کسانی که از فریمورک Laravel استفاده میکنند. با پشتیبانی از پیکربندی صفر، پیشتنظیمات انعطافپذیر، و قابلیت ادغام با IDEها و CI/CD، Pint ابزاری ضروری برای هر توسعهدهندهٔ PHP است که به کیفیت و یکنواختی کد اهمیت میدهد. چه در حال کار بر روی پروژهای کوچک باشید یا در یک تیم بزرگ کار کنید، استفاده از Laravel Pint میتواند استانداردسازی، بازبینی، و نگهداری کد را به سطح بالاتری برساند.
هیچ نظری ثبت نشده است