دوشنبه ۱۳ آبان ۹۸ | ۱۰:۰۴ ۸۶ بازديد
Defensive programming يا اين كه كد زدن تدافعي يك تمرين است كه در آن ناكامي در كدنويسي را پيش گويي ميكنيد , و آنگاه كد پشتيباني شده را براي شناسايي , جداسازي , و در بعضي موردها , براي رهايي از باخت پيش گويي شده ميافزاييد .
ساخت برنامه تدافعي ميتواند به ما در يافتن نقص و عيوب در مرجع ياري دهد . با انگيزه قرار دادن نقص در آن , ما ميتوانيم آن ها را زودتر پيداكنيم , كه باعث به داشتن قابل انعطاف افزاري پايدارتر و افتتاح از آن در حين كوتاهتر مي شود .
كد نوشتن تدافعي بر اين فرض پايدار است كه باگ هايي در كد ما موجود هست , به اين ترتيب ما مي بايست راه و روش هايي بي آلايش خيس براي شناسايي و يا اين كه تقابل با اين مشكلات پيداكنيم . براي مثال , تايمرهاي دربان يك كامپونت مرسوم از سيستم هاي درنظرگرفته شده ميباشند كه براي فعال سازي دوباره اپليكيشن يا اين كه مشقت بار افزار بعد از شناسايي اخلاق و رفتار غيرمعمول پباده سازي گرديده اند .
Checksum ها المان هاي رايجي از packet هاي منتقل شده في مابين node ها ميباشند كه خطاهاي ناشي از رابطه دربين node ها شناسايي مي نمايد .
اين دو مثال از كد نويسي دفاعي ميباشند كه فعلا همگاني ميباشند .
تاريخچه ساخت برنامه تدافعي
در حين 1960 تا 1998 , براي بسط دهندگان امري واضح بود كه براي اجراي strict code نياز به محل ورود هاي زياد مختص داشتند . اولي مشكلي كه وجود داشت به دور پرتاب كردن نادرست هاي كدنويسي بود . مثلا , چنانچه يك تجزيه كننده XML با يك كاراكتري مواجه ميشد و آن را فهم و شعور نميكرد .