اپلیکیشن اندرویدی فلشکارت آموزشی دیباگینگ و رفع اشکال در برنامههای روبی با 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).
این اپلیکیشن فارسی برای یادگیری و مرور محتوای آموزشی از طریق فلشکارت طراحی شده است. کارتها را یکییکی مرور کنید، پاسخ پرسشها را به یاد بیاورید و نتیجه هر پاسخ را ثبت کنید. محتوای دوره پس از نصب درون برنامه در دسترس است تا برای مطالعه روزمره معمولاً به اتصال مداوم اینترنت نیاز نداشته باشید.
محتوای آموزشی در قالبهای متنوع ارائه میشود تا هم برای یادگیری مفاهیم جدید و هم برای تثبیت آموختهها قابل استفاده باشد.
- رابط کاربری فارسی و راستچین با فونت وزیر.
- تم روشن و تیره مطابق تنظیمات سیستم.
- صفحهبندی ساده برای انتخاب دوره و شروع مرور.
- نمایش تعداد دفعات مرور هر فصل.
- انتخاب چند فصل برای مرور همزمان.
- امکان تمرکز بر فصلهایی که هنوز مرور نشدهاند.
این اپلیکیشن برای دانشآموزان، دانشجویان، داوطلبان آزمونها و علاقهمندان به یادگیری طراحی شده است؛ بهویژه کسانی که میخواهند مطالب آموزشی را در زمانهای کوتاه مرور کنند، دانستههای خود را بسنجند و مطالعه منظمتری داشته باشند.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.