مشاوره رایگان
دریافت لینک های دانلود دریافت پستی درب منزل مبلغ کل: تومان
جهت دریافت کد تخفیف به کانال تلگرام مراجعه و یا با پشتیبان آنلاین هماهنگ نمایید

آموزش سی شارپ قسمت 50 : Debugging برنامه ها


Debugging به معنی جستجو برای پیداکردن خطاهای موجود در برنامه است. همچنین به بررسی خطاهایی که ممکن است در طول برنامه بوجود بیاید اشاره می کند.

در این تمرین به بررسی سه نوع از خطاها خواهیم پرداخت:

  • خطای زمان طراحی برنامه
  • خطاهای زمان اجرای برنامه
  • خطاهای منطقی

هرچه کدنویسی شما طولانی تر باشد پیداکردن خطاهای موجود در آن دشوارتر خواهد بود. در انتهای این بخش یاد خواهید گرفت که در کجای برنامه شروع جستجوی خطاها کنید. اما فعلا فرض کنید که اشکال زدایی یک هنر است و با تمرین آسانتر می شود.

خطاهای زمان طراحی

خطاهای زمان طراحی اشتباهاتی هستند که قبل از اجرای برنامه مرتکب می شویم. در حقیقت بیشتر وقتها با وجود خطاهای زمان طراحی برنامه دیگر کار نمی کند. یک popup message ظاهر میشود و به ما میگوید که خطایی در برنامه وجود دارد و آیا میخواهیم ادامه دهیم؟

خطاهای زمان طراحی به سادگی قابل تشخیص هستند زیرا #C به محض وجود خطا در کد نویسی در زیر آن یک خط زیگزاگ رنگی میکشد.

این خطوط زیگزاگ سه نوع هستند. آبی ، قرمز و سبز.

خطوط زیگزاگ آبی Edit and Continue نامیده می شوند به این معنی که میتوانیم بدون اینکه مجبور باشیم برنامه را متوقف کنیم در کدنویسی تغییراتی بدهیم.

خطوط زیگزاگ قرمز خطاهای Syntax  نام دارند و به معنی وجود خطا در ساختار کدنویسی می باشد بعنوان مثال جا انداختن علامت " ; " در انتهای یک خط یا جا انداختن براکت { در دستور if.

خطوط زیگزاگ سبز Compiler Warnings نام دارند. این خطوط هنگامی ظاهر میشوند که #C متوجه خطاهایی میشود که ممکن است برنامه را با مشگل مواجه کنند مانند وجود متغیری که در طول برنامه از آن استفاده نشده باشد.

خطوط زیگزاگ قرمز

در تصویر زیر خط زیگزاگ قرمز را در زیر textbux2 می بینید. در ورژن قدیمی Visual Studio بجای خط قرمز خط آبی وجود دارد.

Red Wavy underline in C# denoting an error

این یک خطای Edit and Continue است. وجود این خطا به این دلیل است که فرم داری کنترلی بنام textbox2 نیست. نام کنترل textbox1 است. برای رفع خطا تنها باید عدد 2 را با 1 عوض کنیم. با این تغییر برنامه با موفقیت اجرا خواهد شد. با نگهداشتن ماوس بر روی خط زیگزاگ توضیحی در باره خطا نشان داده خواهد شد. با کلیک کردن بر روی فلش کنار لامپ لیستی از راههای رفع خطا ظاهر می شود.

A list of potential fixes for an error

با وجود این بعضی از این راه حل ها سودمند نیستند.

خطوط زیگزاگ قرمز

این خطوط به معنی وجود خطای Syntax در ساختار کدنویسی است. (syntax گرامر زبان برنامه نویسی است. قرار گیری تمام براکتها و علامتهای سمی کالن  " ; " در syntax تعریف می شود. خطای syntax به معنی اشتباه در ساختار کدنویسی است.)

در کد زیر علامت " ; " انتهای خط کد را جا انداخته ایم.

Red Wavy Underline in C#

نگهداشتن ماوس بر روی خط قرمز زیگزاگ پیغام زیر به ما نشان میدهد:

C# Error Explanation

پیغام بالا میگوید در جایی که خط زیگزاگ قرمز کشیده شده وجود " ; " لازم است.

در کد زیر پرانتز  " (  "  دستور if  را جا انداخته ایم.

A Syntax Error in C#

با قراردادن پرانتز خط زیگزاگ قرمز حذف خواهد شد.

خطوط زیگزاگ سبز

وجود این خطوط پیغام خطای کامپایلر هستند. #C به شما هشدار میدهد که مشکلی در اجرای برنامه بوجود خواهد آمد. بعنوان مثال در زیر کدی داریم که در زیر آن خط زیگزاگ سبز رنگ ظاهر شده است.

Green Wavy Underline

با نگهداشتن ماوس بر روی خط زیگزاگ سبز رنگ پیغام زیرظاهر خواهد شد:

Compiler Warning in C#

#C به این علت این پیغام خطا را به ما نشان میدهد که مقداری از حافظه را برای یک متغیر کنار گذاشته ایم اما از آن متغیر در برنامه استفاده نکرده ایم.

رفع خطای بالا ساده است چون پیغام خطا قابل درک است . اما همیشه خطاهای compiler مانند بالا قابل درک نیستند و پیغامی که نشان داده می شود کمکی به رفع خطا نمی کند.

به هر حال زنگ سبز خط زیگزاگ به معنی است که #C به ما میگوید در برنامه خطایی وجود دارد و باید آن را رفع کنیم.

در تمرین خطاهای Run Time را بررسی خواهیم کرد.

فصلِ: 1 , تعداد قسمت ها: 9 , سطح: صفر تا صد
موضوعات: آموزش سی شارپ

این فصل در یک نگاه:

آموزش ارسال پیامک، آموزش ارسال پیامک تکی و گروهی ، ارسال پیامک به صورت اختصاصی برای هر مشترک، دریافت پیامک، مشاهده وضعیت…

توضیحات کلی مجموعه:   آیا می دونید قیمت نرم افزارهای مدیریت پیامک در حدود 150 هزار تومان است؟ اما توسط این دوره شما میتونید با مبلغ بسیار کمتر یک نرم افزار مدیریت پیامک رو به صورت کاملا حر…
فصلِ: 9 , تعداد قسمت ها: 59 , سطح: صفر تا صد
موضوعات: آموزش سی شارپ

این فصل در یک نگاه:

در این فصل که فصل پایانی این دوره می باشد در مورد نحوه ساختن فایل نصبی سریع یا همان quick installer که روش پیشنهاد شده م…

توضیحات کلی مجموعه: پس از بازخوردهای بسیار خوبی که از دوره های آموزش برنامه نویسی سیستم اتوماسیون اداری و آموزش برنامه نویسی سیستم فروش و انبارداری مشاهده کردیم، تصمیم گرفتیم با توجه به درخ…
فصلِ: 13 , تعداد قسمت ها: 120 , سطح: صفر تا صد
موضوعات: آموزش سی شارپ

این فصل در یک نگاه:

در این فصل که فصل آخر از مجموعه بزرگ آموزش سیستم اتوماسیون اداری می باشد در ابتدا در مورد اسناد و نامه های خارج از سازما…

دوره صفر تا صد  آموزش برنامه نویسی و پیاده سازی سیستم اتوماسیون اداری تحت شبکه. (توصیه می شود دومی مجموعه را حتما ببینید) امروزه اطلاعات یکی از مهمترین و با ارزشترین منابع هر اداره و یا ساز…
فصلِ: 4 , تعداد قسمت ها: 14 , سطح: مقدماتی

این فصل در یک نگاه:

توضیح تنظیمات گرافیک و صدا در یونیتی پیاده سازی منو ها …

به نام خدا   بازی‌سازی یک حرفه بسیار جذاب است و تبدیل شدن به یک بازی‌ساز حرفه‌ای آرزوی همه ماست. اینکه بتوانیم دنیای خاصی خلق کنیم و در این دنیا قوانین خود را پیاده کنیم، همیشه ما را به وج…
فصلِ: 11 , تعداد قسمت ها: 92 , سطح: صفر تا صد

این فصل در یک نگاه:

اجرای سیستم روی سیستم، قرار دادن سیستم روی سرور، تعریف Connetion String، آشنایی با فایل App.config، ساخت رشته اتصال به ص…

مهمترین تکنولوژیهای استفاده شده در این دوره پروژه محور (سیستم فروش کالا و انبارداری) طراحی گرافیکی به روش WPF (Windows Presentaion Foundation) آموزش کامل برنامه نویسی xaml (برای طراحی های …
فصلِ: 5 , تعداد قسمت ها: 25 , سطح: صفر تا صد

این فصل در یک نگاه:

فصل پنجم…

توضیحات کلی مجموعه: درباره گیت: لذت پیش بردن پروژه های برنامه نویسی خود را با بهترین ورژن کنترل سیستم جهان تجربه کنید کامل ترین دوره ی آموزشی گیت و گیت هاب به همراه مثال های کاربردی گی…

تولید شده توسط کلیک سایت

پشتیبانی آنلاین
آماده پاسخگویی هستیم
انتخاب تصویر جهت ارسال:
در حال ضبط صدا

(جهت توقف و یا لغو ضبط از دکمه های زیر استفاده کنید)

توقف و ارسال :
لغو ضبط
در حال حاضر تمامی کارشناسان آفلاین هستند. همواره می توانید با شماره تلگرام / واتساپ 09010005000 به صورت آنلاین با ما در ارتباط باشید. جهت ورود به واتساپ کلیک کنید
0 پیام جدید
پشتیبان در حال تایپ ...
ارسال تصویر ضبط صدا
0 کارشناسان آنلاین می باشند
این گفت و گو توسط پشتیبان به اتمام رسید