Combinable نبودن value object

bzmind ‌
9 بهمن ۱۴۰۰

سلام استاد اشرافی عزیز، ببخشید توی قسمت بیستم که درباره value object ها حرف زدید، شما یه ولیو ابجکت به نام phone number ساختید، ولی این اصلا combinable نبود فک کنم، ینی اوپراتور بعلاوه و منها رو براش پیاده سازی نکردید، ولی اول ویدیو گفتید که وَلیو ابجکت باید combinable باشه، من یخورده گیج شدم، چون اصلا 2 تا شماره تلفن جمع کردنش هم معنی ای نداره، یعنی موقع جمع کردن و منها کردن، دقیقا چیکار باید کرد با اون شماره تلفن ها، اینکه ما این 2 تا اوپراتور رو براش پیاده سازی نکنیم، اصول ولیو ابجکت رو زیر پا نزاشتیم؟

ممنون

1194

1 پاسخ
  • محمد اشرافی9 بهمن ۱۴۰۰

    سلام ، بله گفتیم یکی از خصوصیات  Value object ها  اینه که می تونه Combinable باشن ولی به این مورد باید توجه کنید ، و اگر اشتباه نکنم توی همون جلسه یا جلسات بعدی  هم گفتم ، درصورتی که قابل Combine باشن ، و اصلا ما نیاز به Combine کردن اشون داشته باشیم

    -----

    2 تا موردی که باید حتما توی Value Object ها رعایت بشه Key Less بودن و immutable بودنه ( Self Validation هم که جای خود اش رو داره 😀)

    و ایکنه اگر لازم باشه می تونید قابلیت combinable رو هم بسته به نیازتون بهش اضافه کنید ، مثلا توی برنامه لازم دارید 2 تا Phone Number رو با هم جمع کنید و در  نتیجه اون 2 تا شماره رو در قالب یک string array به دست بیارید  و مواردی به این شکل