سه شنبه, ۲۵ اردیبهشت, ۱۴۰۳ / 14 May, 2024
مجله ویستا
پارامترهای مهم در برنامهنویسی
● اجرای صحیح برنامه و خاتمهی درست آن (Run Time)
شاید شما هم در گزارشهای خبری شنیده باشید كه در نرمافزار سیستمعامل WIN ۹۵ چندهزار اشكال وجود داشته است! و شاید از شنیدن این خبر خیلی هم تعجب كرده باشید. با توضیحاتی كه در بخش قبلی داده شد مشخص است كه این اشكالات نمیتواند به خطاهای نگارشی(Syntay error) مربوط باشد(چرا؟) بیشتر این اشكالات ناشی از خطاهایی است كه در زمان اجرای برنامه بوجود میآیند. به همین دلیل این نوع خطاها را در اصطلاح، خطاهای زمان اجرای برنامه (Run Time Error) مینامند. همچنانكه از نام آن هم پیدا است این نوع خطاها در زمان اجرای برنامه بوجود آمده و باعث اختلال در روند صحیح اجرای برنامه میگردند.
سعی میكنم با ذكر یك مثال ساده موضوع را بیشتر شرح بدهم.
▪ فرض كنید بخواهیم برنامهای بنویسیم كه مقدار n! را محاسبه كند. در این صورت برنامهی زیر را ملاحظه كنید:
۱۰ Input n
۲۰ fact %=۱
۳۰ for i=۱ to n
fact%=fact%*i
next I
۴۰ print n; “!= “ ; fact %
۵۰ end
اگر این برنامه را به ازاء ۰=n ، ۳=n و یا ۶=n اجرا كنید، جواب درستی خواهید گرفت. ولی اگر برنامه را به ازای ۲۰=n اجرا كنید، برنامه دچار مشكل شده و پایانی ناموفق خواهد داشت و مفسر زبان Basic گزارش خطایی مانند Overflow را به شما خواهد داد. علت وجود این خطا این است كه در سطر ۲۰متغیر fact از نوع صحیح كوتاه معرفی شده است كه میتواند حداكثر مقدار ۳۲۷۶۷ را داشته باشد و چون ۴۰۳۲۰=!۸ ، بنابراین این برنامه میتواند حداكثر برای ۷=n درست اجرا شود. مثال فوق یك نمونهی كوچك از خطاهای زمان اجرای برنامههای كامپیوتری است كه امیدواریم شما را با خطاهایی كه در زمان اجرای برنامه بوجود میآیند آشنا كرده باشد.
خطاهای زمان اجرا را هرگز دستكم نگیرید. حتی برنامهنویسان بسیار باتجربه هم ممكن است با چنین مشكلاتی مواجه گردند. یكی از رایجترین خطاهای زمان اجرا خطاهای Overflow و Underflow میباشند كه همیشه باعث قطع اجرای برنامه گردیده و تقریباً تمام زبانهای برنامهنویسی به طور واضح گزارش خطایی به استفاده كننده میدهند.
نكتهای كه در اینجا ذكر آن مهم به نظر میرسد این است كه متأسفانه خطاهای مورد بحث هرگز توسط مفسر(یا كامپایلر) تشخیص داده نمیشوند و به همین دلیل جهت پرهیز از آنها باید در مرحلهی برنامهنویسی به تمام جزییات برنامه دقت كرد و پس از اتمام برنامه نیز آن را با توجه بیشتر آزمایش نمود. همین دقت نظرها و توجهات در دههی اخیر منجر به بوجود
آمدن روشهای نوین برنامهنویسی گردیده كه بتوان تا حد ممكن از بروز خطا ممانعت به عمل آورد. همچنین الگوهای خاصی برای آزمایش برنامهها تهیه شده است. ولی با این حال هیچیك از این روشها كامل و بینقص نبوده و همچنان دقت در برنامهنویسی یك ضرورت انكارناپذیر است. لذا سعی میكنیم در اینجا چند نكتهی مهم را مطرح كنیم كه با رعایت این نكات تا حد ممكن از انواع خطاها از جمله خطاهای زمان اجرا دوری كنید.
۱) در موقع برنامهنویسی تا جاییكه میتوانید دقیق باشید. گاهی رفع كردن یك خطا در برنامهی نوشته شده چندین برابر بیش از نوشتن كل برنامه، دقت و حوصله میطلبد.
۲) باتجربهترین برنامهنویسان نیز هرگز از مراجعه به كتب مرجع برنامهنویسی و راهنمای دستورالعملها كه به صورت Help در نرمافزارهای برنامهنویسی وجود دارند، بینیاز نیستند. پس اگر با نحوهٔ استفاده، محدودیتها و قابلیتهای یك دستورالعمل آشنایی كامل ندارید حتماً قبل از استفاده از آن به كتب مرجع مراجعه كنید.
۳) همیشه سعی كنید مجموعه عملیات مُنسجم و واحدی را كه لازم است در برنامه استفاده كنید، به صورت یك تابع بنویسید. در این صورت از دو مزیت بهره بردهاید: اول اینكه آزمایش و رفع خطای یك تابع كوچك به مراتب سادهتر از عیبیابی در كل برنامه است. دوم اینكه اگر در برنامههای دیگر بخواهید همان عملیات را انجام بدهید، به راحتی میتوانید از تابع حاضر و آماده استفاده كنید.
۴) قبل از استفاده از هر تابع حتماً آن را به دقت آزمایش كرده و از صحت عملكرد آن مطمئن شوید.
۵) در هر دستور جایگزینی حتماً طرفین تساوی را به دقت تعیین كنید و از تطابق متغیر و مقدار جایگزین مطمئن شوید. به خصوص اگر این دستور در داخل یك حلقه باشد كه هر بار مقدار جدیدی جایگزین میشود.
۶) برنامهنویسی دقت و حوصلهی زیاد میطلبد. اگر تمركز ندارید و یا كمحوصله هستید انتظار نداشته باشید كه برنامهای بدون خطا و جذاب بنویسید.
۷) مطمئن باشید هر چقدر تمرین برنامهنویسی بیشتری داشته باشید كمتر با خطاهای مختلف روبرو میشوید.
۸) نكته آخر اینكه دقت، مطالعه و صرف حوصله رمز موفقیت شما در برنامهنویسی خواهد بود.
نمایندگی زیمنس ایران فروش PLC S71200/300/400/1500 | درایو …
دریافت خدمات پرستاری در منزل
پیچ و مهره پارس سهند
تعمیر جک پارکینگ
خرید بلیط هواپیما
ایران مجلس شورای اسلامی قوه قضاییه قوه قضائیه مجلس دولت رهبر انقلاب شورای نگهبان دولت سیزدهم صادق زیباکلام مجلس دوازدهم انتخابات
هواشناسی تهران پلیس قتل شهرداری تهران پلیس راهور بارش باران سازمان هواشناسی سلامت سیل دستگیری شورای شهر تهران
قیمت دلار قیمت طلا قیمت خودرو خودرو سایپا بورس بانک مرکزی بازار خودرو دلار مسکن حقوق بازنشستگان ایران خودرو
نمایشگاه کتاب همایون شجریان سحر دولتشاهی فردوسی کتاب شاهنامه نمایشگاه کتاب تهران سینمای ایران تلویزیون نمایشگاه بینالمللی کتاب تهران دفاع مقدس تئاتر
دانشگاه تهران وزارت علوم تحقیقات و فناوری فضا
رژیم صهیونیستی غزه اسرائیل فلسطین جنگ غزه آمریکا روسیه حماس چین افغانستان ترکیه اوکراین
استقلال فوتبال پرسپولیس فولاد خوزستان لیگ برتر لیگ برتر ایران مهدی طارمی فولاد باشگاه استقلال رئال مادرید لیگ برتر فوتبال ایران بازی
هوش مصنوعی همراه اول گوگل موبایل تبلیغات اینستاگرام فناوری دوربین ناسا شفق قطبی نوآوری دبی
خواب کاهش وزن زوال عقل ویتامین کودک تجهیزات پزشکی افسردگی واکسن فشار خون