Automated Code Test
با توجه به فاکتورهای موجود در Defensive Coding، یکی از مواردی که کیفیت کد شما را تضمین خواهد کرد، استفاده کردن از (ACT) Automated Code Test میباشد. در این قسمت قصد داریم مزایای تست اتوماتیک و Unit Test را به عنوان یکی دیگر از ابعاد Defensive Coding ذکر کنیم.
به عنوان برنامه نویسی که در حال توسعه کد هستید و قابلیتهای جدیدی را به کد خود اضافه میکنید، باید کدی را که در آن تغییر ایجاد ...
رفع مشکلات: در قسمت قبل با ذکر یک مثال و بیان مشکلات آن از دیدگاه اصول Defensive Code قصد داشتیم که مساله را روشنتر کنیم. مواردی که در
قسمت قبل ذکر شدند، به سادهترین شکل ممکن بیان
شدند و شما به راحتی با بررسی این موارد و تفکر در کدهای خود، میتوانید
این موارد را در کدی که خودتان مینویسید رعایت کنید. حل پیچیدگیهای موجود در کد قبل، با در نظر گرفتن اصول مذکور و اصولهای طراحی مختلف میتواند به روشهای مختلفی انجام گیرد. ...
تعریف متدها در برنامه نویسی: متدها جزء اولین چیزهایی هستند که در هنگام شروع
برنامه نویسی در هر یک از زبانهای برنامه نویسی، برنامه نویس با آنها آشنا میشود. بنابراین متدها به عنوان اصلیترین Building Block ها در زبانهای برنامه
نویسی دارای اهمیت بسیار زیادی میباشند. متدها اولین جاهایی هستند که
ما میتوانیم کار خودمان را از آنها شروع کنیم و به سوی ...
Defensive Coding به معنی است که
شما با انجام یکسری کارها و در نظر گرفتن یکسری زیر ساختها در توسعهی نرم افزار
خود، به اهداف ذیل دست پیدا کنید: 1. Quality (کیفیت) 2. Comprehensible (جامعیت) 3. Predictable (قابلیت پیش بینی) دستیابی به هر کدام از این اهداف و روشهای اعمال آنها
بر روی یک پروژهی نرم افزاری، در ادامه بح ...
روش سوم:
DTO (Data transfer objects) در قسمتهای قبلی دو روش از روشهای موجود جهت تبادل دادهها بین لایهها، ذکر گردید
و علاوه بر این، مزایا و معایب هر کدام از آنها نیز ذکر شد. در این قسمت دو روش
دیگر، به همراه مزایا و معایب آنها برشمرده میشود. لازم به ذکر است هر کدام از
این روشها میتواند با توجه به شرایط موجود و نظر طراح نرم افزار، دارای تغییراتی
جهت رسیدن به یکسری اهداف و فاکتورها در نرم ...
معماری
لایه بندی شده، یک معماری بسیار همه گیر میباشد. به این خاطر که به راحتی SOC ، decoupling و
قدرت درک کد را بسیار بالا میبرد. امروزه کمتر برنامه نویس و فعال حوضهی نرم
افزاری است که با لایههای کلی و وظایف آنها آشنا نباشد ( UI layer آنچه که ما میبینیم، middle layer برای مقاصد منطق کاری، data
acce ...