*** چرخی که برای ما نچرخد باید دوباره اختراع شود ***

انجمنی برای برنامه نویسان اندروید به زبان دلفی (Delphi-Android)

*** چرخی که برای ما نچرخد باید دوباره اختراع شود ***

انجمنی برای برنامه نویسان اندروید به زبان دلفی (Delphi-Android)

*** چرخی که برای ما نچرخد باید دوباره اختراع شود ***
در این انجمن انشاءالله در مورد دیدگاههای خود راجع به برنامه نویسی، امنیت شبکه، دلفی و اصول برنامه نویسی و برنامه نویسی برای اندروید توسط دلفی مطالبی ارائه خواهم کرد. از شما خوانندگان محترم و فرهیخته تقاضا دارم با ارسال نظر، نقد و پیشنهاد به تقویت این وبلاگ کمک نمایید. با سپاس فراوان از همکاری شما.
پیام های کوتاه
طبقه بندی موضوعی
آخرین نظرات
  • ۱۹ فروردين ۹۷، ۰۲:۵۸ - قالب رضا
    :)
  • ۱۰ خرداد ۹۴، ۲۲:۰۲ - lpln
    mamnoon

بنام خدا

 

  امروز میخواهم درباره ردیابی باگ و مفهوم آن کمی صحبت کنم. هر برنامه نویسی میداند که برنامه رایانه ای بدون باگ وجود ندارد! البته کسی ممکن است ادعا کند یک برنامه کوچک چند خطی می توان نوشت که باگ نداشته باشد اما پاسخ من به چنین ادعایی آن است که برنامه مورد نظر برای چه کسی و چه هدفی طراحی و نوشته شده است؟  اگر برنامه ای بدون متقاضی و بدون هدف باشد مطمئناً مورد بحث ما نیست. منظور از متقاضی و هدف در حقیقت مشتری است. مشتری در تعامل با نرم‌افزار همیشه نکات و مواردی را که به کارایی و منافع او مربوط است متذکر و یا نیاز دارد. این نکات و موارد معمولا یا بصورت باگ و یا درخواست ویژگی و یا درخواست خدمات و پشتیبانی خود را نشان میدهند.   خب تا اینجا ظاهرا چیز جدیدی نگفتیم و شاید بگویید این ها بدیهیات است اما اصل موضوع که برنامه بدون باگ نداریم را اثبات میکند!  البته لازم است در اینجا کلمه باگ تعریف شود.  از نظر تاریخی کلمه باگ (Bug) به معنی حشره یا مگس از زمانی برای نرم‌افزار باب شد که در اولین رایانه های ساخته شده از لامپ های الکترونی استفاده میشد. در آن زمان مدارات رایانه دارای حجم انبوهی از سیمها و اتصالات بصورت لحیم کاری شده بود. مثلا حجم رایانه ای که تنها محاسبه برد گلوله توپ را بر اساس زاویه آتش و سایر پارامتر ها انجام میداد حدود یک ساختمان دو یا سه طبقه بود! در مواردی حشره ها در لابلای مدارات این رایانه خانه میکردند و چون ولتاژ بین اتصالات لامپی (که در واقع کار ترانزیستور ها و فلیپ فلاپ را بر عهده داشتند) بسیار بالا بود (از مرتبه چند ده ولت) لذا امپدانس یا مقاومت بین اتصالات تغییر کرده و در عملکرد یا دقت محاسبات رایانه مزبور تاثیر فراوانی می گذاشتند.  به همین دلیل فرد یا افرادی باید با سم پاشی و جاروبک هایی هر از گاهی به تمیز کردن مدارات پرداخته و مشکلات رایانه را حل می کردند! به این افراد دیباگر (Debugger) می گفتند.  از آن زمان تاکنون این نام (باگ) برای هر  ایراد نرم‌افزاری بکار می‌رود. تقریبا می توان گفت هر چیزی که باعث رفتار و یا عملکرد نادرست و یا ناخواسته یک برنامه رایانه‌ای شود، بنحوی که آن رفتار و عملکرد نه در طراحی اولیه و اصلی نرم‌افزار و نه در مجموعه درخواست های مشتری نرم‌افزار باشد را باگ می گوییم.  البته در مواردی هنگام تحویل اولین نسخه نرم‌افزار به مشتری خود یا مشتری متوجه می شود که باید چیزها و قابلیت ها جدیدی به نرم‌افزار افزوده شود، در این موارد نیز باز هم می‌توان گفت نرم‌افزار از نظر مشتری دارای نقص بوده و آنرا باید باگ محسوب کرد اما چون این موضوع در طراحی یا نیازمندی اولیه نبوده، لذا آنرا به ویژگی جدید می شناسیم.  خب تا اینجا با مفهوم کلی کلمه باگ آشنا و متوجه یک دسته بندی اولیه هم شدیم: باگ و ویژگی جدید. ویژگی جدید هم یک باگ در نتیجه تعامل خواسته های مشتری با نرم‌افزار است.   اگر تاکنون برنامه نویسی کرده باشید با هر دو این موارد برخورد کرده اید و احتمالا متوجه حجم تصاعدی آنها با حجم و پیچیدگی برنامه خود شده اید.  تقریبا میتوان گفت 80 درصد یک نرم‌افزار در 20 درصد زمان مقرر آماده میشود اما 80 درصد زمان پروژه برای حل مشکلات آن یعنی باگها صرف میشود.   این موضوع از نظر زمان و هزینه تمام شده نرم‌افزار بسیار مهم است و نیاز به بررسی و تحلیل دارد. اگر روند رسیدگی به باگها دارای نظم نباشد مدت پروژه و در نتیجه هزینه تمام شده افزایش چشمگیری یافته و برنامه نویس یا برنامه نویسان و مشتری را به سوی یاس خواهد کشاند. این موضوع ممکن است  تا جایی پیش برود که برنامه نویسان احساس کنند اگر سبزی فروشی باز می کردند وضع شان بهتر بود!!  راه حل استفاده از ردیاب باگ یا همان Bug Tracker است.

نظرات  (۱)

https://movabletype.org/documentation/author/textile-2-syntax.html

ارسال نظر

کاربران بیان میتوانند بدون نیاز به تأیید، نظرات خود را ارسال کنند.
اگر قبلا در بیان ثبت نام کرده اید لطفا ابتدا وارد شوید، در غیر این صورت می توانید ثبت نام کنید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی