Codino School – Telegram
Codino School
1.91K subscribers
160 photos
277 videos
18 files
292 links
پروفایل تخصصی مدرس :
https://www.github.com/imanghafoori1

آموزش ترفندهای clean code, آموزش laravel

@codino_admin
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
▫️php artisan check:routes

آیا آدرس تمام کنترلرهایی که در تعریف route ها نوشتیم صحیح است؟

🔬🔬🔬

#microscope

@codino
👍5🔥2👎1
This media is not supported in your browser
VIEW IN TELEGRAM
آیا میشه بدون repository pattern موقع اجرای تست ها eloquent query ها رو دور زد؟؟؟

@codino
👍7👎1
This media is not supported in your browser
VIEW IN TELEGRAM
استفاده از اطلاعات فرضی در تست ها به جای دیتابیس واقعی

⚫️ User::addFakeRow([...]);

@codino
👍2👎1
This media is not supported in your browser
VIEW IN TELEGRAM
پاک کردن خودکار doc block های به درد نخور از کنترلرها با استفاده از میکروسکوپ

⚫️ php artisan check:generic_docblocks

🔬🔬🔬

#microscope

@codino
3👎1🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
💥 امکان جدید میکروسکوپ

⚫️ php artisan check:aliases

🔬🔬🔬

#microscope

@codino
👍2👎1🎉1
⚫️ آیا از میکروسکوپ در پروژه تون استفاده می کنید؟
————————————————————

👍. بله

👎. خیر

😁. کاربردش رو نمیدونم.

@codino
👎77😁31👍27🔥1👏1
⚫️ آیا می تونید در قسمت comment ها بگید که
دلیل استفاده نکردن شما از microscope چه چیزی هست؟
———————————————
👍- ملاحظات مربوط به زیر پا گذاشته شدن حریم خصوصی
❤️ - به نظرم میکروسکوپ با ساختار فعلی پروژه ما مطابقت نخواهد داشت.
🔥 - تمیزی کد برامون مهم نیست.
🙏 - مدیر تیم موافق نیست.
👎 - فرصت نشده بریم سمت ش.
😁- می ترسم کد رو بدتر خراب کنه.
🤯 - به اندازه کافی تست داریم.
....

@codino
👎38😁8🤯53👍2🔥1👏1
This media is not supported in your browser
VIEW IN TELEGRAM
چرا نباید از میکروسکوپ استفاده کنیم؟

@codino
4👎2🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
💥 امکان جدید میکروسکوپ

⚫️ php artisan enforce:query

🔬🔬🔬

#microscope

@codino
👍6
This media is not supported in your browser
VIEW IN TELEGRAM
💥 امکان جدید میکروسکوپ

⚫️ php artisan enforce:helper_functions

تو نسخه های جدید میکروسکوپ داریم امکانات پولی laravel shift رو ارائه میکنیم.

🔬🔬🔬

#microscope

@codino
👏15👍3
This media is not supported in your browser
VIEW IN TELEGRAM
5. Laravel test tricks - Using the Container

مواجهه با کدهایی که مقادیر غیر قابل پیش بینی تولید میکنند.
👇👇👇
#test_tricks

@codino
👍91🤯1
Media is too big
VIEW IN TELEGRAM
The Factory Design Pattern - A real world usage example


@codino
👍11🔥1👏1
الان ۲۰۰k قبوله ؟

@codino
👏416🤩4👍3🔥3🎉2🤯1
💥 دستور جدید میکروسکوپ:

⚫️ php artisan check:dynamic_where



برای تبدیل کوئری های این شکلی :

::whereFamilyName('...')...

به معادل:

::query()->where('family_name', '...')


(هر موقع وقت کنم براش یه ویدیو ضبط خواهم کرد.)

@codino
👏12👍1🤔1🤯1
👍15😁10
⚙️ تنظیمات مناسب برای ایجاد code coverage برای تست ها در فایل php.ini


.\vendor\bin\phpunit --coverage-html reports

برای ایجاد coverage report ابتدا باید از لینک زیر جهت دانلود xdebug extension استفاده کنید و سپس آن را در پوشه ext کپی کنید و نام فایل رو به php_xdebug.dll تغییر بدید.
در قدم بعدی فایل php.ini رو طبق خطوط زیر تغییر بدید تا افزونه بارگزاری بشود.

https://xdebug.org/download


به انتهای فایل php.ini افزوده شود:
[XDebug]
zend_extension=xdebug
xdebug.mode=coverage
xdebug.start_with_request=trigger

🕯 میتونید از دستور php -m جهت مشاهده ی لیست افزونه های بارگزاری شده استفاده کنید.

🕯 دقت داشته باشید که اگر قصد دارید از xdebug در تعامل با phpstorm و مرورگر استفاده کنید باید xdebug.mode=debug باشد. در این صورت دستور زیر رو به composer.json اضافه کنید:

"noscripts": {
"test": "
php -d xdebug.mode=coverage -r \"require 'vendor/bin/phpunit';\" -- --coverage-html build/coverage",

...


و با استفاده از composer run test آن را اجرا کنید.

📎 برگرفته از : XDebug Setup for PHP 8


@codino
👍7👏4🙏1
Media is too big
VIEW IN TELEGRAM
ایجاد html code coverage برای تست ها

@codino
🔥8
Forwarded from Codino School (ایمان)
This media is not supported in your browser
VIEW IN TELEGRAM
استفاده از اطلاعات فرضی در تست ها به جای دیتابیس واقعی

⚫️ User::addFakeRow([...]);

@codino