آموزش نوشتن و بازسازی کدهای PHP قابل تست - آخرین آپدیت

دانلود Writing and Refactoring Testable PHP

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره:

نوآوری در یک کدبیس PHP شلوغ و سازمان‌نیافته دشوار است. توسعه تست‌محور (TDD) یک رویکرد توسعه حرفه‌ای‌تر است که به جلوگیری از بروز خطاهای پس‌روندی (Regressions)، افزایش اعتماد توسعه‌دهنده به کدبیس و تمیز نگه داشتن کد برای تغییرات منطق کسب‌وکار کمک می‌کند. در این دوره، می‌آموزید که توسعه‌دهندگان PHP چگونه می‌توانند از TDD در پروژه‌های جدید استفاده کنند و کدهای پروژه‌های موجود را بازسازی (Refactor) نمایند.

این دوره با GitHub Codespaces ادغام شده است؛ یک محیط توسعه ابری فوری که تمام قابلیت‌های IDE مورد علاقه شما را بدون نیاز به تنظیمات محلی روی سیستم فراهم می‌کند. با GitHub Codespaces، می‌توانید در هر زمان و با هر دستگاهی تمرین عملی داشته باشید—در حالی که از ابزاری استفاده می‌کنید که احتمالاً در محیط‌های کاری واقعی با آن مواجه خواهید شد. برای شروع، ویدیو “استفاده از GitHub Codespaces در این دوره”را مشاهده کنید.


سرفصل ها و درس ها

مقدمه Introduction

  • مفاهیم و تکنولوژی‌هایی که باید بدانید Concepts and technologies you should know

  • توسعه تست‌محور و بازسازی در PHP Test-driven development and refactoring in PHP

  • استفاده از GitHub Codespaces در این دوره Using GitHub Codespaces with this course

1. شما اینجا چه می‌کنید؟ 1. What Are You Doing Here?

  • تست خودکار Automated testing

  • زمان مناسب برای بازسازی کد When to refactor

  • تعریف انواع تست‌ها Define types of testing

  • بازسازی کد (Refactoring) چیست؟ What is refactoring?

2. TDD در یک پروژه جدید 2. TDD a New Project

  • نوشتن کدهای قابل تست Write testable code

  • نوشتن یک تست واحد شکست‌خورده، پاس کردن تست و بازسازی Write a failing unit test, make the test pass, refactor

  • نوشتن تست پذیرش (Acceptance Test) Write an acceptance test

  • پیکربندی پروژه برای تست‌ها Configure a project for tests

3. چه مواردی در پروژه‌های موجود (Legacy) باید بازسازی شوند 3. What to Refactor in Existing (Legacy) Projects

  • فایل‌هایی که اغلب تغییر می‌کنند Files that are modified often

  • تغییر تعداد زیادی از فایل‌ها برای یک قابلیت Change lots of files for one feature

  • وابستگی شدید (Strong Coupling) Strong coupling

  • بلاک‌های بزرگ منطقی Large chunks of logic

  • منطق نادرست OOP Incorrect OOP logic

  • کدهای غیرضروری Unnecessary code

  • استفاده از Mockها Using mocks

  • شناسایی بهترین نقطه برای شروع Identifying the best place to start

4. مثال‌هایی از بازسازی تست‌محور 4. Examples of Test-Driven Refactoring

  • استخراج قابلیت‌ها (با استفاده از TDD) Extract functionality (using TDD)

  • افزودن یک تست پاس شده Add one passing test

  • ساده‌سازی شرط‌ها Simplify conditionals

  • ساده‌سازی امضای توابع Simplify function signatures

  • شناسایی توابع شکننده و افزودن تست Identify a brittle function and add tests

5. مثال‌های OOP در بازسازی تست‌محور 5. OOP Examples of Test-Driven Refactoring

  • شناسایی اشیاء از توابع مرتبط Identify objects from related functions

  • جایگزینی شرط‌ها با کلاس‌های رابط (Interface) Replace conditionals with interfaced classes

  • افزودن Null Objects Add null objects

  • افزودن Value Objects (تست آسان) Add value objects (easy to test)

  • جایگزینی آرایه‌ها با اشیاء Replace arrays with objects

6. سرعت بخشیدن به پیشرفت با حرکت آهسته‌تر 6. Moving Fast by Moving Slower

  • کد بدون وابستگی (Decoupled) Decoupled code

  • کد تمیزتر Cleaner code

  • تبدیل شدن به یک توسعه‌دهنده بهتر Become a better developer

  • جلوگیری از خطاهای پس‌روندی Prevent regressions

  • ایجاد پیشرفت مستمر Make steady progress

7. TDD و بازسازی در دنیای واقعی 7. TDD and Refactoring in the Real World

  • مدیریت در مواجهه با ددلاین‌های نزدیک With a looming deadline

  • کار با مدیر محصولی که TDD و بازسازی را نمی‌شناسد With a PM that doesn’t understand TDD and refactoring

  • کار با تیمی که TDD و بازسازی را نمی‌شناسد With a team that doesn't understand TDD and refactoring

  • کار روی پروژه‌های با کد اسپاگتی On a spaghetti-code project

جمع‌بندی Conclusion

  • گام‌های بعدی Next steps

نمایش نظرات

آموزش نوشتن و بازسازی کدهای PHP قابل تست
جزییات دوره
2h 22m
39
(آخرین آپدیت)
4,812
- از 5
ندارد
دارد
دارد
Gary Kovar
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Gary Kovar Gary Kovar

توسعه دهنده ارشد Back-End و مهندس نرم افزار

Gary Kovar یک توسعه دهنده ارشد Back-end و مهندس نرم افزار با تمرکز بر PHP است.

گری یک متخصص است مهندس پایان با تجربه گسترده در برنامه نویسی شی گرا، وردپرس، سیمفونی و لاراول. او مشتاق آزمایش خودکار و بازسازی مداوم است.

گری نرم افزار را برای ده ها مشتری از جمله مایکروسافت، دیزنی، و ناسا ارسال کرده است.