دوره آموزشی
آموزش های یودمی
دوبله زبان فارسی

اشکال زدایی عملی در C و ++C

اشکال زدایی عملی در C و ++C

✅ سرفصل و جزئیات آموزش

در این دوره با GDB ،Valgrind و مهارت هایی که برای برنامه نویسی بدون خطا نیاز دارید آشنا خواهید شد.

آنچه یاد خواهید گرفت:

  • چگونه با استفاده از یک دیباگر مانند GDB اشکال زدایی کنیم؟
  • چگونه نشت حافظه را با استفاده از valgrind تشخیص دهیم؟
  • چگونه خطاها را لاگ کرده و ورودی را از یک برنامه در حال اجرا دریافت کنیم؟
  • یادگیری ابزارهای اشکال زدایی اضافی (sanitizers، ابزارهای ردیابی و ابزارهای تحلیل استاتیک)

پیش نیازهای دوره

  • تجربه قبلی برنامه نویسی در زبانی مانند C و ++C، یا هر زبان مشابه (مانند DLang)

توضیحات دوره

در این دوره یاد می گیرید که چگونه از دیباگر محبوب GDB برای یافتن خطاها در کدهای C و ++C خود استفاده کنید. یادگیری نحوه استفاده از دیباگر به شما امکان می دهد که در زمان یافتن خطاها صرفه جویی کنید و زمان بیشتری را صرف ساخت نرم افزار بهتر کنید. توانایی اشکال زدایی کد یک مهارت ضروری برای همه توسعه دهندگان نرم افزار است و برای انجام این کار به چیزی بیش از یک پنجره ترمینال نیاز ندارید. با این حال، دروس آموخته‌ شده از این دوره، پشت دیباگر GDB است و حتی چند ابزار عالی دیگر مانند valgrind برای یافتن باگ ها در کدتان به شما نشان می‌ دهد.

مباحثی که یاد خواهید گرفت:

دانشجویان اگر می خواهند موارد زیر را یاد بگیرند باید این دوره را بگذرانند:

  • چگونه از دیباگر محبوب GDB استفاده کنیم؟
  • تکنیک های اشکال زدایی عمومی و دلیل بروز باگ های خاص
  • برخی مباحث پیشرفته مانند اشکال زدایی معکوس - نوشتن اسکریپت ها برای اشکال زدایی در سایر دوره های مبتدی پوشش داده نشده است.

این دوره برای چه کسانی مناسب است؟

  • برنامه نویسان مبتدی C و ++C
  • برنامه نویسان سطح متوسطی که برای صرفه جویی در زمان نیاز به یادگیری اشکال زدایی دارند.

اشکال زدایی عملی در C و ++C

  • آشنایی با اشکال زدایی 01:14
  • یک مثال کاری در GDB 06:10
  • اهداف دوره 01:08
  • داستانی دباره اولین باگ 02:29
  • نوشتن کد خود با دقت 01:41
  • GDB برای D ،Objective-C ،OpenCL ،Rust و غیره؟ 00:55
  • GDB (لینوکس)، LLDB (مک) یا ویژوال استودیو (ویندوز) 01:20
  • GDB در لینوکس (و lldb) 01:49
  • GDB در Subsystem ویندوز برای لینوکس 05:06
  • اشکال زدایی زمان کامپایل در مقابل اشکال زدایی ران تایم 03:05
  • خطاهای کامپایلر 05:14
  • کامپایلرها نمی توانند ذهن ما را بخوانند 03:34
  • رفتار با هشدارهای کامپایلر (Wall- و Werror- و Wconversion-) به عنوان خطا (استفاده از {} ++C 07:29
  • ترفند - استفاده از کامپایلرهای متعدد 01:06
  • استفاده از کامپایلرهای ما None
  • نکته - نوشتن کد خود با دقت 01:54
  • تمرین اشکال زدایی (swap_buggy) 00:53
  • اشکال زدایی printf (std::cout و console.log) 07:08
  • اشکال زدایی printf (بررسی بیشتر) با DEBUG 02:07
  • GNU Debugger (GDB) - مبانی 09:11
  • چرا با نمادهای اشکال زدایی (-g) کامپایل می کنیم؟ 04:40
  • چاپ مقادیر و لیست بندی کد منبع 08:19
  • یافتن تایپ متغیر با Whatis 06:45
  • نقاط شکست (br و info) و ادامه (c) 05:24
  • رابط کاربری متنی (TUI) در GDB 07:20
  • ریدایرکشن خروجی از GDB (به یک فایل یا ترمینال دیگر) 05:27
  • نقاط شکست شرطی 04:01
  • روش های دیگر برای ادامه و step through کردن کد (advance و until) 03:14
  • تماشا کردن (watch و rwatch) متغیرها 03:48
  • نقاط شکست - بخش 2 (فعال سازی، غیرفعال و ذخیره نقطه شکست) 04:38
  • نمایش و عدم نمایش 05:14
  • دریافت راهنما در GDB (اطلاعات) 02:40
  • استک برنامه 07:08
  • استک فراخوانی چیست؟ 06:37
  • ناوبری استک فراخوانی با Backtrace 04:29
  • [مفهوم] درک خطاهای رایج - خطای بخش بندی 03:51
  • [تمرین] خطای بخش بندی 00:57
  • [راه حل] خطای بخش بندی 03:38
  • [مفهوم] درک خطاهای رایج - نشت حافظه 04:51
  • درک خطاهای رایج - سرریز استک 11:22
  • [تمرین] نشت حافظه (و sanitizer آدرس) 02:11
  • [راه حل] نشت حافظه (و sanitizer آدرس) 05:45
  • [تئوری] تکنیک اشکال زدایی دلتا 02:29
  • پیشگیری از باگ - دستور assert و static_assert 04:15
  • بررسی کد با فراخوانی توابع در GDB 02:19
  • اتصال دیباگر به یک فرآیند در حال اجرا 04:04
  • Core dumped - و نحوه نگاه کردن به آن فایل ها 05:49
  • Core dumped - بررسی gcore برای یک فرآیند در حال اجرا 03:50
  • بررسی حافظه در GDB (و همچنین هگز) 08:14
  • نقاط شکست و فرمان ها - صرفه جویی در زمان 02:45
  • تعریف فرمان های خود 03:08
  • اسکریپت های gdb 01:37
  • فرمان های شل در GDB (شل، ساخت و پایپ) 03:32
  • ویرایش فایل های منبع در GDB 03:32
  • چک کردن و راه اندازی GDB با پایتون (از منبع) 03:55
  • استفاده از پایتون در GDB 07:39
  • تنظیم مقدار متغیر 02:42
  • اشکال زدایی معکوس 02:56
  • اشکال زدایی برنامه های Multi-Threaded 09:49
  • بوک مارک ها و چک پوینت ها (ذخیره اسنپ شات از برنامه خود) 04:27
  • چرخه اشکال زدایی GDB -- اجرای مجدد و بازبینی نرم افزار 02:42
  • DDD - دیباگر نمایشگر داده 02:57
  • strace و ltrace 03:06
  • نصب و استفاده از valgrind 3.19 (تلفظ val-grinn) 06:27
  • استفاده از Valgrind و GDB با هم برای فیکس کردن خطای Segfault و نشت حافظه 13:24
  • cppcheck و ++Weffc 05:51
  • بررسی جدول مجازی برای وراثت (++C) 07:57
  • سطوح اشکال زدایی فرمان GDB 05:12
  • نتیجه گیری و گام های بعدی خود 00:42

2,001,000 400,200 تومان

مشخصات آموزش

اشکال زدایی عملی در C و ++C

  • تاریخ به روز رسانی: 1404/06/14
  • سطح دوره:همه سطوح
  • تعداد درس:70
  • مدت زمان :05:04:21
  • حجم :2.6GB
  • زبان:دوبله زبان فارسی
  • دوره آموزشی:AI Academy

آموزش های مرتبط

The Great Courses
1,461,500 292,300 تومان
  • زمان: 03:42:51
  • تعداد درس: 14
  • سطح دوره:
  • زبان: دوبله فارسی
The Great Courses
490,000 98,000 تومان
  • زمان: 01:03:27
  • تعداد درس: 18
  • سطح دوره:
  • زبان: دوبله فارسی
The Great Courses
490,000 98,000 تومان
  • زمان: 00:51:02
  • تعداد درس: 15
  • سطح دوره:
  • زبان: دوبله فارسی
The Great Courses
4,687,000 937,400 تومان
  • زمان: 11:52:54
  • تعداد درس: 6
  • سطح دوره:
  • زبان: دوبله فارسی
The Great Courses
961,000 192,200 تومان
  • زمان: 02:26:58
  • تعداد درس: 20
  • سطح دوره:
  • زبان: دوبله فارسی
The Great Courses
6,412,000 1,282,400 تومان
  • زمان: 16:14:29
  • تعداد درس: 116
  • سطح دوره:
  • زبان: دوبله فارسی
The Great Courses
1,033,500 206,700 تومان
  • زمان: 02:37:34
  • تعداد درس: 19
  • سطح دوره:
  • زبان: دوبله فارسی
The Great Courses
980,500 196,100 تومان
  • زمان: 02:29:41
  • تعداد درس: 9
  • سطح دوره:
  • زبان: دوبله فارسی
The Great Courses
1,876,000 375,200 تومان
  • زمان: 04:45:11
  • تعداد درس: 54
  • سطح دوره:
  • زبان: دوبله فارسی

آیا سوالی دارید؟

ما به شما کمک خواهیم کرد تا شغل و رشد خود را افزایش دهید.
امروز با ما تماس بگیرید