• شماره ركورد
    8176
  • عنوان
    بررسي اصل تك مسئوليتي و بازسازي كد بر مبناي آن
  • سال تحصيل
    1399-1400
  • استاد راهنما
    دكتر سعيد پارسا
  • چکيده
    اصل تك مسئوليتي يكي از مهم¬ترين قواعد مهندسي¬ نرم¬افزار مي¬باشد. اين اصل بيان مي¬دارد كه يك كلاس بايد فقط و فقط يك دليل براي تغيير داشته باشد، كه آن را به صورت يك مسئوليت واحد تجلي مي¬بخشد. تعريف اصل تك مسئوليتي بسيار ساده است، اما همين سادگي باعث كج انديشي و انتقادات بسياري شده است. از نظر منتقدين، اين اصل در بيان مسئوليت و دليل يكتا بودن ابهاماتي داشته، و بر اين باورند كه اجتناب از جفت¬شدگي و افزايش انسجام عملكرد بهتري را به ارمغان مي¬آورد. با بررسي دلايل طرد به اين نتيجه رسيده¬ايم كه نارسايي از ماهيت اصل نيست، بلكه اغلب منتقدين تحليل نادرستي داشته¬اند. مسئوليت واحد در ابتدا با كمك مدل اهداف به هدفي يگانه در يك نرم افزار تبديل شده، و سپس آن هدف در لايه-هاي پايين¬تر به مجموعه¬اي از زير اهداف تقسيم مي¬شود. و نهايتا در آخرين سطح به متدها خواهيم رسيد، كه هر كدام از آن¬ها عملكرد خاص خود را با روش¬هايي همچون بازگشت يك مقدار، چاپ يا نمايش حاصل، درج در پايگاه داده، و نوشتن مقدار در پورت به خارج منتقل مي¬كنند. اعمال صحيح اين قانون در طراحي پروژه¬هاي تجاري موجب بهبود ساختار و افزايش معيارهاي كيفي نرم¬افزاري مي¬گردد، از اين رو شايسته است كه اين قانون را در چرخه¬ي توسعه¬ي نرم¬افزار به بهترين نحو ممكن جامعه¬ي عمل بپوشانيم. به دلايل مختلفي ممكن است كه بيش از يك مسئوليت به واحدهاي نرم¬افزاري اختصاص يابد. و نرم¬افزاري در تقابل با اصل تك مسئوليتي توليد شود. اين امر موجب شده است كه بازسازي كد بر اساس اصل تك مسئوليتي به يكي از چالش برانگيزترين موضوعات حوزه¬ي مهندسي نرم افزار شود.
  • نام دانشجو

    عليرضا اردلاني

  • تاريخ ارائه
    12/30/2020 12:00:00 AM
  • متن كامل
    70426
  • پديد آورنده

    عليرضا اردلاني

  • تاريخ ورود اطلاعات
    1399/10/28
  • عنوان به انگليسي
    A Survey of Software Refactoring Techniques to Achieve the Single Responsibility Principle
  • كليدواژه هاي فارسي
    اصل تك مسئوليتي , بازسازي كد , متد طولاني , برش بندي , استخراج متد
  • كليدواژه هاي لاتين
    Single Responsibility Principle , Refactoring , Slicing , Extract Method , Extract Class