PDA

View Full Version : گفتگو: چطور از دوباره کاری در پروژه ها جلوگیری کنیم؟



c_doost
چهارشنبه 01 خرداد 1392, 19:47 عصر
سلام

در پروژه های متوسط به بالا ( پروژه های کاربردی مثل حسابداری و ... ) ممکنه یک بخش را که در این پروژه مینویسیم در پروژه های دیگر هم کاربرد داشته باشه ( مثلا یک دفترچه تلفن که توی بیشتر نرم افزار ها کاربرد داره)
حالا افراد تیم برنامه نویسی باید چیکار کنند تا از این کدی که الان نوشتین در پروژه های مشابه در آینده استفاده کنند؟

m.j_banitaba
چهارشنبه 01 خرداد 1392, 20:28 عصر
تبدیل به dll کنن.

c_doost
چهارشنبه 01 خرداد 1392, 20:29 عصر
تبدیل به dll کنن.

یعنی هر چیزی که امکان داره در یکجا دیگه استفاده بشه میتونه تبدیل به دی ال ال بشه؟

m.j_banitaba
چهارشنبه 01 خرداد 1392, 20:36 عصر
بلی میتونه .

c_doost
چهارشنبه 01 خرداد 1392, 21:00 عصر
بعد اگر یه جاییش تغیرر کوچیکی داشته باشه چی؟

wolf_majid
چهارشنبه 01 خرداد 1392, 22:25 عصر
شما جاهایی رو که میشه در برنامه های دیگه استفاده کرد تبدیل به یک پروژه جدا کنید و اون رو توی پروژه هاتون add کنید
مثلا" دفترچه تلفن در نرم افزار حسابداری شاید بتونه یک پروژه مجزا باشه (در صورتیکه بانکش با بانک نرم افزار حسابداری یکی نباشه)

danialafshari
پنج شنبه 02 خرداد 1392, 00:23 صبح
سلام
بهتره کد های مشابهه و توابع پر استفاده از جمله تاریخ رو در کلاس قرار بدید و در پروژه ها می تونید با Add کردن کلاس از توابع موجود در اون استفادده کنید
موفق باشید

c_doost
پنج شنبه 02 خرداد 1392, 07:52 صبح
شما جاهایی رو که میشه در برنامه های دیگه استفاده کرد تبدیل به یک پروژه جدا کنید و اون رو توی پروژه هاتون add کنید
مثلا" دفترچه تلفن در نرم افزار حسابداری شاید بتونه یک پروژه مجزا باشه (در صورتیکه بانکش با بانک نرم افزار حسابداری یکی نباشه)
منظور شما از اد کردن چیه؟

پروژه های جدا را بصورت دی ال ال دربیارم؟

c_doost
پنج شنبه 02 خرداد 1392, 07:53 صبح
سلام
بهتره کد های مشابهه و توابع پر استفاده از جمله تاریخ رو در کلاس قرار بدید و در پروژه ها می تونید با Add کردن کلاس از توابع موجود در اون استفادده کنید
موفق باشید
میشه یه نمونه کد بگذارید؟

wolf_majid
پنج شنبه 02 خرداد 1392, 09:22 صبح
منظور شما از اد کردن چیه؟

پروژه های جدا را بصورت دی ال ال دربیارم؟

نه نیازی نیست
به روش زیر عمل کنید
شما پروژه خودتون (منظور پروژه ایست که میخواهید به آن پروژه دیگری رو اضافه کنید) رو بسازید بعد از منوی file , add گزینه exisitng project رو انتخاب کنید
زمانیکه روی add reference کلیک کردید form projects رو انتخاب و dll مورد نظر رو انتخاب کنید
مزیت اینکار اینه که هر وقت خواستید میتونید پروژه add شده رو نیز ویرایش کنید و تغییرات همون لحظه اعمال میشه

فقط باید پروژه ای که می خواهید Add کنید رو خروجیش رو از نوع classLibray بگذارید تا dll رو ایجاد کنه

c_doost
پنج شنبه 02 خرداد 1392, 12:06 عصر
نه نیازی نیست
به روش زیر عمل کنید
شما پروژه خودتون (منظور پروژه ایست که میخواهید به آن پروژه دیگری رو اضافه کنید) رو بسازید بعد از منوی file , add گزینه exisitng project رو انتخاب کنید
زمانیکه روی add reference کلیک کردید form projects رو انتخاب و dll مورد نظر رو انتخاب کنید
مزیت اینکار اینه که هر وقت خواستید میتونید پروژه add شده رو نیز ویرایش کنید و تغییرات همون لحظه اعمال میشه

فقط باید پروژه ای که می خواهید Add کنید رو خروجیش رو از نوع classLibray بگذارید تا dll رو ایجاد کنه

من برای ساخت پروژه A که ممکنه در ساخت پروژه های B,C ...... کاربرد داشته باشه باید چه کارهایی بکنم؟

wolf_majid
پنج شنبه 02 خرداد 1392, 13:23 عصر
پروژه A رو بسازید و خروجیش رو از نوع Class Libray بگذارید
توی پروژه های B,c,...... فقط Add Exisiting Project کنید و سپس با Add Reference پروژه A رو بیارید در دل پروژه های B,C,....
فقط به این نکته توجه داشته باشید که هر تغییری در پروژه A در تمامی پروژه هایی که این پروژه رو Add کردند تاثیر داره

alireza724
پنج شنبه 02 خرداد 1392, 16:34 عصر
نظر من هم DLL هست
هر وفت که تغییری صورت گرفت DLL تغییر بدید
این کار در پروژه های خیلی بزرگ استفاده میشه

c_doost
پنج شنبه 02 خرداد 1392, 21:27 عصر
نظر من هم DLL هست
هر وفت که تغییری صورت گرفت DLL تغییر بدید
این کار در پروژه های خیلی بزرگ استفاده میشه

یعنی یه شیوه استاندارده که در پروژه های بزرگ مرسومه؟

دوست عزیز ،wolf_majid (http://barnamenevis.org/member.php?85916-wolf_majid) منظور شما را نفهمیدمم بیشتر توضیح بدید لطفا

nima.sh
پنج شنبه 02 خرداد 1392, 21:45 عصر
سلام دوست عزیز...
شما اگه مباحث مربوط به شی گرایی رو بلد باشی،جواب همه ی این سوالات رو میگیری....
اگه رشته تون کامپیوتر باشه،درس مهندسی نرم افزار دارید،که به طور مفصل به مبحث شی گرایی میپردازه...
موفق باشی....

c_doost
پنج شنبه 02 خرداد 1392, 22:00 عصر
سلام دوست عزیز...
شما اگه مباحث مربوط به شی گرایی رو بلد باشی،جواب همه ی این سوالات رو میگیری....
اگه رشته تون کامپیوتر باشه،درس مهندسی نرم افزار دارید،که به طور مفصل به مبحث شی گرایی میپردازه...
موفق باشی....


شی گرایی کماکان آشنام

مهندسی نرم افزارم فقط میگه قابلیت استفاده مجدد از نرم افزار که من چیزی عملی نفهمیدم در عمل نمیدونم چیگار کنم

aram_java
پنج شنبه 02 خرداد 1392, 22:47 عصر
سلام دوست عزیز
همون طور که دوستمون هم اشاره کردن اگر با شی گرایی آشنایی داشته باشی به راحتی با استفاده از ترفند های شی گرایی و معماری نرم افزار می تونی از یک کد در چند جا و چند پروژه استفاده کنی . برای این کار می تونی از ماژولاریتی که یکی از معماری های نرم افزاره استفاده کنی و با هر کدوم از این عناصری که میخوای تو پروژه های بعدی هم استفاده کنی مانند یک ماژول رفتار کنی و برنامه در اصل ترکیبی از ماژول های مختلف باشه که روی معماریت سوار میشن و قابلیت استفاده مجددش هم خیلی بالاست.

c_doost
پنج شنبه 02 خرداد 1392, 23:37 عصر
سلام دوست عزیز
همون طور که دوستمون هم اشاره کردن اگر با شی گرایی آشنایی داشته باشی به راحتی با استفاده از ترفند های شی گرایی و معماری نرم افزار می تونی از یک کد در چند جا و چند پروژه استفاده کنی . برای این کار می تونی از ماژولاریتی که یکی از معماری های نرم افزاره استفاده کنی و با هر کدوم از این عناصری که میخوای تو پروژه های بعدی هم استفاده کنی مانند یک ماژول رفتار کنی و برنامه در اصل ترکیبی از ماژول های مختلف باشه که روی معماریت سوار میشن و قابلیت استفاده مجددش هم خیلی بالاست.
من تا حالا توی سی شارب چیزی به اسم ماژول نشنیدم لطفا بیشتر توضیح بدید
ولی فکر میکنم با کلاس ها شه یه کارهایی کرد

aram_java
جمعه 03 خرداد 1392, 00:34 صبح
ماژولاریتی ربطی به سی شارپ یا هیچ زبان دیگه ای نداره و تو همه زبان های شی گرا قابل پیاده سازیه.ماژولاریتی یک معماری نرم افزاره مثل معماری 3 لایه یا mvc و معماری های دیگه که همشون کانسپتن و باید فرد بیاد اونو تو زبان خودش پیاده کنه و معماری ماژولار هم یه معماریه که برنامه رو به صورت ماژول های مختلف در نظر میگیری که یه سری اصول داره که باید برای موفق بودن پیاده سازیت ازشون پیروی کنی.سعی میکنم چند تا کتاب برات بزارم که در این مورده.

c_doost
جمعه 03 خرداد 1392, 08:13 صبح
ماژولاریتی ربطی به سی شارپ یا هیچ زبان دیگه ای نداره و تو همه زبان های شی گرا قابل پیاده سازیه.ماژولاریتی یک معماری نرم افزاره مثل معماری 3 لایه یا mvc و معماری های دیگه که همشون کانسپتن و باید فرد بیاد اونو تو زبان خودش پیاده کنه و معماری ماژولار هم یه معماریه که برنامه رو به صورت ماژول های مختلف در نظر میگیری که یه سری اصول داره که باید برای موفق بودن پیاده سازیت ازشون پیروی کنی.سعی میکنم چند تا کتاب برات بزارم که در این مورده.
اگه کتاب بزاری ممنون میشم

اگه میشه یه پروژه پیاده سازی شده ماژولاریتی برام بزار اینجوری بهتر مفهوم حرف شما را میگیرم

با تشکر