دوره دیباگینگ و رفع اشکال در برنامههای روبی با Pry همراه با فلشکارت آموزشی — ارائه روی فلش مموری
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره دیباگینگ و رفع اشکال در برنامههای روبی با Pry
موضوع کلی: برنامه نویسی
موضوع میانی: روبی (Ruby)
📋 سرفصلهای دوره
- 1. مقدمهای بر دیباگینگ و اهمیت آن در توسعه نرمافزار
- 2. انواع خطاها در برنامههای روبی: Syntax, Runtime, Logic
- 3. روشهای سنتی رفع اشکال: `puts`, `p`, `pp`
- 4. محدودیتهای دیباگینگ با چاپ متغیرها
- 5. معرفی دیباگرهای تعاملی و مزایای آنها
- 6. Pry چیست و چرا باید از آن استفاده کنیم؟
- 7. نصب و راهاندازی Pry و نیازمندیها
- 8. اجرای اولین جلسه دیباگینگ با `binding.pry`
- 9. آشنایی با محیط Pry: پرامپت و ورودیها
- 10. خروج از یک جلسه Pry: دستورات `exit` و `!!!`
- 11. حرکت در کد: دستور `next` برای اجرای خط بعدی
- 12. ورود به متدها: دستور `step` برای کاوش عمیقتر
- 13. ادامه اجرا تا نقطه توقف بعدی یا پایان برنامه: دستور `continue`
- 14. مشاهده متغیرهای محلی و مقادیر آنها
- 15. بررسی `self` و زمینه اجرایی (Context) فعلی
- 16. دسترسی به متغیرهای اینستنس و کلاس (`@var`, `@@var`)
- 17. اجرای کدهای روبی دلخواه در یک جلسه Pry
- 18. استفاده از سیستم راهنمای داخلی: `help` و `?`
- 19. دستور `ls`: لیست کردن متدها و متغیرهای در دسترس
- 20. فیلتر کردن خروجی `ls` با گزینهها (`-g`, `-m`, `-c`)
- 21. بررسی متدهای یک آبجکت یا کلاس خاص
- 22. تغییر زمینه اجرایی به یک آبجکت دیگر: دستور `cd`
- 23. مشاهده مکان فعلی در کد: `whereami`
- 24. نمایش پشته فراخوانی (Call Stack): دستور `bt` یا `backtrace`
- 25. مشاهده تاریخچه دستورات وارد شده: `hist`
- 26. اجرای مجدد دستورات از تاریخچه
- 27. استفاده از `_` برای دسترسی به نتیجه آخرین عبارت اجرا شده
- 28. استفاده از `__` برای دسترسی به خروجی دوم از آخر
- 29. دسترسی به ورودیها و خروجیهای جلسه با `_in_` و `_out_`
- 30. بررسی استثناها (Exceptions) با دستور `wtf?`
- 31. نمایش سورس کد یک متد: `show-source` یا `$`
- 32. پیدا کردن محل تعریف یک متد (`show-source MyClass#my_method`)
- 33. نمایش مستندات (Documentation) یک متد با `show-doc`
- 34. جستجوی متدها در کلاسها و ماژولها: `find-method`
- 35. نویگیشن در پشته فراخوانی: دستورات `up` و `down`
- 36. پرش به یک فریم خاص در پشته: `frame <n>`
- 37. ایجاد نقطه توقف (Breakpoint) با دستور `break`
- 38. مدیریت نقاط توقف: لیست کردن، فعال و غیرفعال کردن
- 39. حذف نقاط توقف (`break --delete`)
- 40. نقاط توقف شرطی (Conditional Breakpoints)
- 41. ویرایش زنده کد با دستور `edit`
- 42. باز کردن فایل فعلی در ویرایشگر پیشفرض: `edit -c`
- 43. اجرای دستورات شل (Shell) از داخل Pry (`. ls -la`)
- 44. ورود به حالت شل (Shell Mode)
- 45. پیکربندی Pry: آشنایی با فایل `.pryrc`
- 46. سفارشیسازی پرامپت (Prompt) در Pry
- 47. تغییر رنگبندی و هایلایت کد
- 48. ایجاد دستورات سفارشی (Custom Commands)
- 49. استفاده از هوکهای (Hooks) Pry مانند `before_session` و `after_session`
- 50. معرفی پلاگینها و اکوسیستم Pry
- 51. نصب و مدیریت پلاگینهای Pry
- 52. پلاگین `pry-byebug`: یکپارچهسازی با قابلیتهای Byebug
- 53. دستورات تکمیلی `pry-byebug`: `finish`, `next!`, `step!`
- 54. دیباگینگ خط به خط در کدهای سطح C روبی با `pry-byebug`
- 55. پلاگین `pry-stack_explorer`: کاوش پیشرفته و بصری پشته
- 56. پلاگین `pry-rescue`: شروع خودکار Pry هنگام بروز استثنا
- 57. پیکربندی `pry-rescue` برای برنامههای مختلف
- 58. پلاگین `pry-remote`: دیباگینگ پروسههای ریموت
- 59. اتصال به سرور `pry-remote` در حال اجرا
- 60. دیباگینگ برنامههای چندنخی (Multi-threaded)
- 61. چالشهای دیباگینگ کدهای همزمان (Concurrent Code)
- 62. استفاده از Pry برای کاوش در Gemها و کتابخانههای شخص ثالث
- 63. دیباگینگ کدهای داخل یک Gem نصب شده
- 64. ایجاد ماکروها (Macros) برای خودکارسازی کارهای تکراری
- 65. تکنیکهای پیشرفته در فایل `.pryrc`
- 66. دیباگینگ کدهای متاپروگرمینگ (Metaprogramming)
- 67. ردیابی اجرای متدهای تعریف شده به صورت داینامیک
- 68. استفاده از Pry برای درک کدهای پیچیده دیگران
- 69. یکپارچهسازی Pry با ابزارهای تست (RSpec, Minitest)
- 70. قرار دادن `binding.pry` در تستهای ناموفق برای بررسی وضعیت
- 71. استفاده از Pry در محیط Production (با احتیاط فراوان)
- 72. مفهوم Binding و نقش کلیدی آن در `binding.pry`
- 73. سناریوی عملی: دیباگینگ یک برنامه ریلز (Ruby on Rails)
- 74. قرار دادن `binding.pry` در کنترلرهای ریلز
- 75. بررسی پارامترها (`params`) و سشن (`session`) در یک درخواست وب
- 76. دیباگینگ در مدلهای Active Record و کوئریهای دیتابیس
- 77. استفاده از Pry در کنسول ریلز (`rails console`)
- 78. دیباگینگ در Viewها و Helperهای ریلز
- 79. دیباگینگ Background Jobs (مانند Sidekiq یا Resque)
- 80. سناریوی عملی: دیباگینگ یک برنامه سیناترا (Sinatra)
- 81. سناریوی عملی: دیباگینگ یک اسکریپت خط فرمان (CLI)
- 82. رفع اشکال مشکلات مربوط به حافظه (Memory Leaks)
- 83. شناسایی آبجکتهای بزرگ و رفرنسهای ناخواسته با Pry
- 84. دیباگینگ مشکلات مربوط به عملکرد (Performance)
- 85. تجزیه و تحلیل ساختارهای دادهای پیچیده (آرایهها، هشها)
- 86. دیباگینگ کدهای مبتنی بر API و درخواستهای شبکه
- 87. شبیهسازی (Mocking) و بررسی پاسخهای API در Pry
- 88. دستور `stat`: نمایش اطلاعات وضعیت فعلی آبجکت
- 89. غیرفعال کردن موقت Pry با `disable-pry`
- 90. تفاوت Pry با IRB (Interactive Ruby Shell) و برتریهای آن
- 91. استفاده از Pry به عنوان یک REPL قدرتمند برای کدنویسی اکتشافی
- 92. ذهنیت دیباگینگ: فرضیهسازی، تست، و نتیجهگیری منطقی
- 93. چه زمانی از دیباگر استفاده نکنیم؟ (جایگزینها مانند لاگینگ)
- 94. ترکیب Pry با لاگینگ (Logging) برای رفع اشکال موثر و جامع
- 95. اشتباهات رایج در استفاده از Pry و نحوه اجتناب از آنها
- 96. جمعبندی دوره و گامهای بعدی برای تسلط بیشتر در دیباگینگ
- 97. **دیباگینگ پیشرفته با Pry:** بررسی stack trace، دستورات `whereami`, `backtrace`, `frame` و پیمایش بین فریمها.
- 98. **تکنیکهای شرطی و breakpointها در Pry:** استفاده از conditional breakpoints، دستور `break` و رفع اشکال در حلقهها و توابع بازگشتی.
- 99. **سفارشیسازی Pry:** پیکربندی Pry با فایل `~/.pryrc`، افزودن دستورات سفارشی و یکپارچهسازی با ویرایشگرهای کد.
- 100. **رفع اشکال در برنامههای روبی پیچیده:** دیباگینگ gemها، برنامههای چند رشتهای و برنامههای مبتنی بر وب فریمورکها (Rails, Sinatra).
محتویات بسته آموزشی
🌐 سامانه آنلاین فلشکارت؛ مرور هدفمند و هوشمند
اکانت ارائهشده، دسترسی به نسخه تحت وب سامانه فلشکارت ویژه این دوره را فراهم میکند. این سامانه از الگوریتم زمانبندی مرور SM-2 استفاده میکند و بر اساس ارزیابی شما از میزان یادآوری هر کارت، زمان مرورهای بعدی را تنظیم میکند.
به این ترتیب، کارتهای دشوارتر میتوانند زودتر مرور شوند و برای تثبیت مطالب در حافظه، برنامه مرور متناسبتری داشته باشید.
مدتزمان معادل آموزشی بر اساس برآورد این دوره در گواهی درج میشود.
گواهی دوزبانه با استعلام آنلاین
پس از تکمیل فعالیتهای لازم و تأیید درخواست، گواهی پایان دوره به زبان فارسی و انگلیسی صادر میشود. گواهی دارای لینک اختصاصی و QR Code برای بررسی و استعلام آنلاین است.
این گواهی صرفاً بهعنوان گواهی اتمام دوره آموزشی صادر میشود و معادل مدرک دانشگاهی، آکادمیک یا مدرک رسمی مورد تأیید نهادهای دولتی نیست. صدور آن منوط به تکمیل شرایط دوره و تأیید نهایی درخواست است.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.