PDA

View Full Version : سوال: کاهش زمان build پروژه های بزرگ



csvbcscp
یک شنبه 24 خرداد 1394, 08:47 صبح
سلام دوستان برنامه نویس

من اخیرا روی یک پروژه بزرگ، که شامل 20 پروژه و 10 سرویس WCF است کار میکنم.
برای تست لایه UI باید زمان زیادی را منتظر بمانم که تمام پروژه ها بیلد شوند،
اساتید محترم، را ه حلی برای کاهش مدت زمان بیلد دارید؟


http://stackoverflow.com/questions/30826048/do-you-have-any-solution-to-reduce-the-build-time

SabaSabouhi
یک شنبه 24 خرداد 1394, 13:08 عصر
سلام دوستان برنامه نویس

من اخیرا روی یک پروژه بزرگ، که شامل 20 پروژه و 10 سرویس WCF است کار میکنم.
برای تست لایه UI باید زمان زیادی را منتظر بمانم که تمام پروژه ها بیلد شوند،
اساتید محترم، را ه حلی برای کاهش مدت زمان بیلد دارید؟


http://stackoverflow.com/questions/30826048/do-you-have-any-solution-to-reduce-the-build-time

سلام
اگه پروژه‌ها مناسب تفکیک شده باشن، فقط مواردی که تو dependency قید شده باشه کامپایل می‌شه.
متاسفانه بسیار دیده می‌شه که پروژه‌ها بدون وابستگی تو reference پروژه‌ها دیگه میاد. که باید از این کار
اجتناب بشه.
با تعداد پروژه‌ی خیلی بیش از این چیزی که شما گفتین هم می‌شه کار کرد و مشکلی بابت کامپایل نداشت.

در ضمن واژه‌ی «استاد» فارسی هست و به صورت شکست جمع نمی‌شه. برای جمع از «استادان» استفاده کنید.

صبا صبوحی

reza_ali202000
یک شنبه 24 خرداد 1394, 13:56 عصر
احتمالا اسم فولدراتون فارسی هست. اونا رو انگلیسی کنید سرعت به شدت افزایش پیدا میکنه.

csvbcscp
دوشنبه 25 خرداد 1394, 11:43 صبح
سلام
اگه پروژه‌ها مناسب تفکیک شده باشن، فقط مواردی که تو dependency قید شده باشه کامپایل می‌شه.
متاسفانه بسیار دیده می‌شه که پروژه‌ها بدون وابستگی تو reference پروژه‌ها دیگه میاد. که باید از این کار
اجتناب بشه.
با تعداد پروژه‌ی خیلی بیش از این چیزی که شما گفتین هم می‌شه کار کرد و مشکلی بابت کامپایل نداشت.

در ضمن واژه‌ی «استاد» فارسی هست و به صورت شکست جمع نمی‌شه. برای جمع از «استادان» استفاده کنید.

صبا صبوحی

بابت راهنماییتون متشکرم
همه پروژه به همدیگه رفرنس ندادن، فقط همگی داخل یک Solution قرار دارن، به همین دلیل پس از هر تست باید همگی بیلد بشن
نمیشه بدون اینکه بخوام از چند Solution جدا استفاده کنم، برای تست گرفتن، زمانی تلف نشه؟؟

rezayeman
دوشنبه 25 خرداد 1394, 12:53 عصر
اگه بخوای همشون build نشن از منوی Build>Batch Build تیک پروژها رو بردار

SabaSabouhi
دوشنبه 25 خرداد 1394, 13:04 عصر
بابت راهنماییتون متشکرم
همه پروژه به همدیگه رفرنس ندادن، فقط همگی داخل یک Solution قرار دارن، به همین دلیل پس از هر تست باید همگی بیلد بشن
نمیشه بدون اینکه بخوام از چند Solution جدا استفاده کنم، برای تست گرفتن، زمانی تلف نشه؟؟

سلام
دوست عزیز، solution فعلی من بیش از 45 پروژه داره. فقط در صورتی که خودم بخوام، همه 45 تا پروژه رو مجدد کامپایل می‌کنه.
اگه به لایه‌ی Bll دست بزنم حدود دو سوم پروژه‌ها مجدد ساخته می‌شه، اما وقتی با لایه‌ی UI سر و کار دارم، غالباً بین یک تا 7
تا پروژه مجدد ساخته می‌شه.
من اصولاً موافق داشتن چند تا Solution نیستم، مگه شرایط خاص.
شما باید برای خودت یه نمودار درست کنی که مشخص باشه چه پروژه‌هایی باید به هم ارتباط داشته باشن خیلی از مشکلات حل می‌شه.
اول از همه متوجه می‌شی که کدوم پروژه‌ها بدون دلیل منطقی به هم ارتباط دارن که می‌تونی این ارتباط رو قطع کنی و دیگه این که
مشکل کامپایل تمام پروژه‌ها حل می‌شه.

صبا صبوحی

csvbcscp
سه شنبه 26 خرداد 1394, 08:33 صبح
سلام
دوست عزیز، solution فعلی من بیش از 45 پروژه داره. فقط در صورتی که خودم بخوام، همه 45 تا پروژه رو مجدد کامپایل می‌کنه.
اگه به لایه‌ی Bll دست بزنم حدود دو سوم پروژه‌ها مجدد ساخته می‌شه، اما وقتی با لایه‌ی UI سر و کار دارم، غالباً بین یک تا 7
تا پروژه مجدد ساخته می‌شه.
من اصولاً موافق داشتن چند تا Solution نیستم، مگه شرایط خاص.
شما باید برای خودت یه نمودار درست کنی که مشخص باشه چه پروژه‌هایی باید به هم ارتباط داشته باشن خیلی از مشکلات حل می‌شه.
اول از همه متوجه می‌شی که کدوم پروژه‌ها بدون دلیل منطقی به هم ارتباط دارن که می‌تونی این ارتباط رو قطع کنی و دیگه این که
مشکل کامپایل تمام پروژه‌ها حل می‌شه.

صبا صبوحی

ممنونم استاد

لایه UI فقط به لایه ViewModel رفرنس داده
لایه ViewModel به تمام سرویس ها رفرنس داده
با Build کردن لایه UI تمامی Reference ها دوباره Build میشن.
وقتی میخوام وابستگی رو حذف کنم با پیام زیر مواجه میشم
The dependency was added by the project system and cannot be removed

سوال من اینه که چطور میتونم، پروژه لایه UI رو به تنهایی Build کنم؟

http://stackoverflow.com/questions/30845590/error-while-removing-project-dependency-in-silverlight-and-vs2013

SabaSabouhi
سه شنبه 26 خرداد 1394, 10:55 صبح
ممنونم استاد

لایه UI فقط به لایه ViewModel رفرنس داده
لایه ViewModel به تمام سرویس ها رفرنس داده
با Build کردن لایه UI تمامی Reference ها دوباره Build میشن.
وقتی میخوام وابستگی رو حذف کنم با پیام زیر مواجه میشم
The dependency was added by the project system and cannot be removed

سوال من اینه که چطور میتونم، پروژه لایه UI رو به تنهایی Build کنم؟

http://stackoverflow.com/questions/30845590/error-while-removing-project-dependency-in-silverlight-and-vs2013

سلام
قضیه عجیب شد، چون لایه‌ی بالا وقتی تغییر می‌کنه به هیچ عنوان نباید لایه‌هایی پایینی دوباره Build بشن.
تنها چیزی به نظر من می‌رسه که ممکنه باعث این مشکل شده باشه اینه که تاریخ یکی از فایل‌های پروژه صحیح نباشه.
این قبلاً برای من پیش اومده و با ویرایش اون فایل ( برای این که تاریخ صحیح رو بگیره ) و یه Clean و Build مجدد مشکل حل شد.

صبا صبوحی