ورود

View Full Version : حرفه ای: مشکل مدیریت و دیباگ کدهای با حجم بالا



hmahdavi921
جمعه 19 شهریور 1395, 17:18 عصر
سلام خدمت دوستان برنامه نویس
مدتی هست که در یک آژانس مسافرتی مشغول کار با وب سرویس ها هستم .از mvc استفاده میکنیم . مشکلی که دارم اینه که برای انجام یک کار (رزرو بلیط هواپیما ) کدهای بسیار زیادی رو باید تست و دیباگ کنم . تمام کارهای دیتابیسی در کلاسی جداگانه انجام میشه و برخی از کارهارو هم تا جایی که میتونم سعی میکنم در داخل متدها انجام بدم و در کلاس دیگری این متد ها رو مینویسم. اما باز هم در یک کنترلر پرواز چندین هزار سطر کد وجود داره که نیازمند تست و دیباگ مکرر هستن . میخواستم از دوستانیکه تجربه کار در پروژه های بزرگ رو دارن راهنمایی کنن که چه طوری میتونم این کار رو بهتر و با دقت بیشتری و البته راحتتر انجام بدم؟
با تشکر

hakim22
شنبه 20 شهریور 1395, 10:44 صبح
اول اینکه به طور کلی وقتی متدی بیش از 10 تا 15 خط کد داره حتما یک اشکالی در کار هست. نباید بلاکهای بزرگ کد داشته باشید. بد نیست مفاهیم Code Smell (https://en.wikipedia.org/wiki/Code_smell) را بررسی کنید.
منظور از Code Smells علائمی است که نشان میدهد کد شما کد خوبی نیست و باید بهینه یا اصلاح شود.

استفاده کردن از تزریق وابستگی و ابزارهایی مانند IoC Container می تواند حجم کدهای شما را کم کند همچنین در مدیریت کدها بسیار مفید باشد.

اما اگر شما نیاز فوری به یک راه حل دارید و می خواهید در سریعترین زمان ممکن کد بهتری در اختیار داشته باشید بهتر است از تکنیک های Code Refactoring (https://en.wikipedia.org/wiki/Code_refactoring) استفاده کنید. در خود Visual Studio با کلیک راست کردن روی کدها می توانید این ابزار را فراخوانی کنید. همچنین ابزار پیشرفته تر آن در افزونه هایی مثل Resharper وجود دارد.

منظور از Code Refactoring این است که یک کد بزرگ را به چندین متد با کدهای کوچکتر تقسیم کنیم. خود VS با تحلیل کد می توانید پارامترهای ورودی و خروجی بسازد و بجای چند خط کد متد جایگزین کنید. البته اگر شما با دقت بازه های کد را انتخاب کنید نتیجه ی بهتری می گیرید و کنترل بهتری روی خروجی دارید.

با تقسیم شد یک کد به قسمتهای کوچکتر شما فقط باید قسمتهای کوچکتر را رفع عیب کنید و بعد از مدتی تشخیص محل خطا ساده میشود.

hmahdavi921
شنبه 20 شهریور 1395, 21:49 عصر
اول اینکه به طور کلی وقتی متدی بیش از 10 تا 15 خط کد داره حتما یک اشکالی در کار هست. نباید بلاکهای بزرگ کد داشته باشید. بد نیست مفاهیم Code Smell (https://en.wikipedia.org/wiki/Code_smell) را بررسی کنید.
منظور از Code Smells علائمی است که نشان میدهد کد شما کد خوبی نیست و باید بهینه یا اصلاح شود.

استفاده کردن از تزریق وابستگی و ابزارهایی مانند IoC Container می تواند حجم کدهای شما را کم کند همچنین در مدیریت کدها بسیار مفید باشد.

اما اگر شما نیاز فوری به یک راه حل دارید و می خواهید در سریعترین زمان ممکن کد بهتری در اختیار داشته باشید بهتر است از تکنیک های Code Refactoring (https://en.wikipedia.org/wiki/Code_refactoring) استفاده کنید. در خود Visual Studio با کلیک راست کردن روی کدها می توانید این ابزار را فراخوانی کنید. همچنین ابزار پیشرفته تر آن در افزونه هایی مثل Resharper وجود دارد.

منظور از Code Refactoring این است که یک کد بزرگ را به چندین متد با کدهای کوچکتر تقسیم کنیم. خود VS با تحلیل کد می توانید پارامترهای ورودی و خروجی بسازد و بجای چند خط کد متد جایگزین کنید. البته اگر شما با دقت بازه های کد را انتخاب کنید نتیجه ی بهتری می گیرید و کنترل بهتری روی خروجی دارید.

با تقسیم شد یک کد به قسمتهای کوچکتر شما فقط باید قسمتهای کوچکتر را رفع عیب کنید و بعد از مدتی تشخیص محل خطا ساده میشود.

در ابتدا ممنون به خاطر پاسخ جامع و مفیدتون. باید بگم که از refactoring , Resharper همیشه استفاده میکنم و تا جایی که بتونم کدهارو به قسمت های کوچکتر تقسیم میکنم . به خاطر استفاده از Resharper و قابلیتهای اون خطاهای کدنویسی و کدهای اضافی بسیار کمی دارم . اما در مورد IoC Container اگر امکانش هست منبعی رو معرفی کنید

Moien Tajik
یک شنبه 21 شهریور 1395, 00:01 صبح
در این آموزش در قسمت Architecture and Testing آموزش کاملی درباره IoC و Repository و Refactor کردن کامل یک پروژه داده شده : http://p30download.com/fa/entry/65012/