mohamad100000
پنج شنبه 06 تیر 1392, 13:29 عصر
سلام دوست عزيز
يه سوال تخصصي داشتم كه اميدوارم بتوني جوابشو بدي
من دارم مهندسي نرم افزار مي خونم و برنامه هايي كه مدلسازي مي كنم با سي شارپ كدنويسي مي كنم، و در طراحي نمودار هاي Sequence ، سه نوع كلاس را به ما معرفي كردند، كلاس كنترلي ،كلاس entity و كلاس هاي واسط.
فرض بر اين بگيريم كه براي ذخيره داده ها در ديتا بيس، يك كلاس كنترلي ديگر بنام Transaction تعرف مي كنيم كه كلاس entity فقط بيانگر منطق برنامه كاربردي باشد نه مطنق ذخيره سازي، و براي ذخيره سازي داده ها از كلاس Transaction استفاده مي كنيم.يعني از كلاس Entity به كلاس Transaction بفرستيم.
نكته مهمي ديگر اينست : كه كلاس ها نبايد بهم وابستگي داشته باشنده و تنها وابستگي اون ها از طريق كلاس كنترلي برنامه است كه سناريو جريان كاررا در خود تعريف كرده است.
يعني به اين شكل:
داده از واسط به وسيله كلاس كنترلي گرفته مي شود.
در كلاس entity ارزيابي و ذخيره مي شود.سپس
دوباره كلاس كنترلي ، كنترل برنامه را بدست مي گيرد
به كلاس Transaction دستور مي دهد، داده ها را از كلاس Entity دريافت و در ديتابيس ذخيره كند.
اما وقتي در محيط سي شارپ مدلم رو پياده سازي مي كنم با يك مشكل خيلي حاد برخورد مي كنم. و اون مشكل اينه كه در ارتباطات بين كلاس ها ، كلاس Entity من توسط مخرب از بين ميرود.
وقتي كنترل برنامه از Entity به كلاسي ديگر واگذار مي شود. مخرب ديگر با توجه به اينكه هيچ اشاره گري به اون توجه اي نداره ، شي كلاس Entity رو از بين ميبره.
حال سوال مبهم من براي كلاس Entity اينه:
چگونه يك كلاس Entity پايدار رو در سي شارپ تعريف كنيم؟
كلاسي كه در پس زمينه كلاس هاي ديگه فعال باشه و توسط مخرب از بين نره؟
كلاسي كه طول عمر اون بدست مخرب نباشه ؟
يك كلاس كه تا آخر سناريو من دوام بياره؟
يه سوال تخصصي داشتم كه اميدوارم بتوني جوابشو بدي
من دارم مهندسي نرم افزار مي خونم و برنامه هايي كه مدلسازي مي كنم با سي شارپ كدنويسي مي كنم، و در طراحي نمودار هاي Sequence ، سه نوع كلاس را به ما معرفي كردند، كلاس كنترلي ،كلاس entity و كلاس هاي واسط.
فرض بر اين بگيريم كه براي ذخيره داده ها در ديتا بيس، يك كلاس كنترلي ديگر بنام Transaction تعرف مي كنيم كه كلاس entity فقط بيانگر منطق برنامه كاربردي باشد نه مطنق ذخيره سازي، و براي ذخيره سازي داده ها از كلاس Transaction استفاده مي كنيم.يعني از كلاس Entity به كلاس Transaction بفرستيم.
نكته مهمي ديگر اينست : كه كلاس ها نبايد بهم وابستگي داشته باشنده و تنها وابستگي اون ها از طريق كلاس كنترلي برنامه است كه سناريو جريان كاررا در خود تعريف كرده است.
يعني به اين شكل:
داده از واسط به وسيله كلاس كنترلي گرفته مي شود.
در كلاس entity ارزيابي و ذخيره مي شود.سپس
دوباره كلاس كنترلي ، كنترل برنامه را بدست مي گيرد
به كلاس Transaction دستور مي دهد، داده ها را از كلاس Entity دريافت و در ديتابيس ذخيره كند.
اما وقتي در محيط سي شارپ مدلم رو پياده سازي مي كنم با يك مشكل خيلي حاد برخورد مي كنم. و اون مشكل اينه كه در ارتباطات بين كلاس ها ، كلاس Entity من توسط مخرب از بين ميرود.
وقتي كنترل برنامه از Entity به كلاسي ديگر واگذار مي شود. مخرب ديگر با توجه به اينكه هيچ اشاره گري به اون توجه اي نداره ، شي كلاس Entity رو از بين ميبره.
حال سوال مبهم من براي كلاس Entity اينه:
چگونه يك كلاس Entity پايدار رو در سي شارپ تعريف كنيم؟
كلاسي كه در پس زمينه كلاس هاي ديگه فعال باشه و توسط مخرب از بين نره؟
كلاسي كه طول عمر اون بدست مخرب نباشه ؟
يك كلاس كه تا آخر سناريو من دوام بياره؟