سلام.
در مورد پیاده سازی متود Apend (یا صحیحش، Append)... احتمالا جایی شنیده اید که استفاده از StringBuilder برای Append کردن یک رشته Performance بهتری نسبت به حالتیکه string رو با استفاده از Operator += به هم الحاق میکنیم داره، به همین دلیل در پیاده سازی تابع فوق از کلاس StringBuilder استفاده کرده اید. اما دست نگهدارید!
متودی که شما نوشته اید Performance بسیار کمی داره. فرض کنید لازم هستش تا صدها رشته رو توسط متود شما به یک رشته موجود اضافه کنیم. بدین ترتیب صدها بار StringBuilder باید new بشه و ... در حالیکه اگر صدها بار از += روی همون رشته اصلی استفاده میکردیم، کارایی کد به مراتب بهتر بود. در حقیقت، شما دارید Operator += رو مجددا Implement میکنید، اما پیاده سازی شما، نه تنها برتری ای نسبت به پیاده سازی موجود نداره، بلکه به مراتب کندتر و پیچیدهتر از پیاده سازی اصلی است.
موفق باشید.
در مورد پیاده سازی متود Apend (یا صحیحش، Append)... احتمالا جایی شنیده اید که استفاده از StringBuilder برای Append کردن یک رشته Performance بهتری نسبت به حالتیکه string رو با استفاده از Operator += به هم الحاق میکنیم داره، به همین دلیل در پیاده سازی تابع فوق از کلاس StringBuilder استفاده کرده اید. اما دست نگهدارید!
متودی که شما نوشته اید Performance بسیار کمی داره. فرض کنید لازم هستش تا صدها رشته رو توسط متود شما به یک رشته موجود اضافه کنیم. بدین ترتیب صدها بار StringBuilder باید new بشه و ... در حالیکه اگر صدها بار از += روی همون رشته اصلی استفاده میکردیم، کارایی کد به مراتب بهتر بود. در حقیقت، شما دارید Operator += رو مجددا Implement میکنید، اما پیاده سازی شما، نه تنها برتری ای نسبت به پیاده سازی موجود نداره، بلکه به مراتب کندتر و پیچیدهتر از پیاده سازی اصلی است.
موفق باشید.