تک دیک

واژه نامه و مجله آموزشی کامپیوتر و فناوری

نقطه وقفه Breakpoint

نقطه وقفه یا Breakpoint چیست؟

نقطه وقفه یا نقطه انفصال (Breakpoint) به مکان توقف یا مکث عمدی در سورس کد یک برنامه گفته می‌شود. از وقفه‌های حاصل از این نوع نقاط به منظور اشکال زدایی برنامه در آن مکان استفاده می‌شود.

در واقع نقاط وقفه ابزاری هستند که به توسعه دهنده کمک می‌کنند تا در یک لحظه‌ی خاص یا هنگام رسیدن به یک دستور معین، اطلاعات مورد نیاز نسبت به وضعیت برنامه را به دست آورد، مقدار متغیرها را بررسی کرده، در صورت لزوم تغییرات مورد نیاز را اعمال نموده و اجرای برنامه را از همان نقطه ادامه دهد (البته این اجرای پس از وقفه علاوه بر نوع تغییرات به ویژگی‌های دیباگر Debugger یا اشکال یاب نیز بستگی دارد اما در اکثر دیباگرهای امروزی از این قابلیت پشتیبانی می‌شود). معمولا برای پیاده‌سازی نقاط انفصال به صورت نرم‌افزاری، دستوری در نقطه متناظر قرار داده می‌شود که دیباگر را فراخوانی می‌کند. در مدل دیگر، یک دستور نامعتبر در مکان مربوطه قرار می‌گیرد که منجر به بروز وقفه‌ای عمدی در اجرای برنامه می‌شود و طبیعتا دیباگر مدیریت آن را برعهده خواهد گرفت.

معمولا از نقاط انفصال برای توقف اجرای برنامه، درست پیش از رسیدن به یک دستور (Instruction) معین استفاده می‌شود. به این نوع نقاط وقفه Instruction Breakpoint (نقطه وقفه دستوری) گفته می‌شود. نوع دیگری از نقاط وقفه نیز وجود دارد که تنها در صورت برآورده شدن یک شرط (صحت یک عبارت)، اجرای برنامه را متوقف می‌کنند. این نوع نقاط وقفه را Conditional Breakpoint (نقطه وقفه شرطی) می‌نامند.

در ویژوال استودیو با کلیک روی نوار سمت چپ ویرایشگر کد می‌توانید به سادگی یک Breakpoint معمولی، در خط متناظر با آن ایجاد نمایید. در سایر دیباگرها نیز روش مشابهی برای ایجاد نقطه‌ی وقفه درنظر گرفته شده است.

نقطه وقفه Breakpoint
نمونه‌ای از نقاط وقفه (Breakpoint) در دیباگر ویژوال استودیو که به خط ششم اشاره می‌کند. به رنگ متمایز این خط و دایره توپری که در نوار سمت چپ این خط قرار گرفته است توجه کنید.

پیوندهای پیشنهادی تک دیک

لینک واژه در ویکیپدیا

امیرحسین شهسواری

عاشق دنیای رایانه و فناوری به خصوص برنامه نویسی هستم؛ یادگرفتن و البته یاد دادن چیزای جالبی که یاد گرفتم باعث خوشحالیم میشه و از اولویت‌های اصلی زندگیم به حساب میاد. از مدیریت و نوشتن در تک دیک هم واقعا لذت می‌برم :)

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *