برنامه نویسی

مورد 87: به احتمال استفاده از یک فرم سریال سفارشی فکر کنید

1. مشکل فرم سریالی پیش فرض

  • فرم سریالی استاندارد می تواند جایگزینی یک اجرای یکبار مصرف را غیرممکن کند.
  • بسیاری از کلاس های کتابخانه جاوا ، مانند Biginteger ، از این محدودیت رنج می برد.
  • باید ارزیابی کرد که آیا فرم سریال استاندارد از نظر انعطاف پذیری ، عملکرد و تصحیح مناسب است یا خیر.

2. چه زمانی شکل سریالی استاندارد قابل قبول است؟

  • هنگامی که بازنمایی فیزیکی شی با محتوای منطقی آن یکسان است.
  • مثال: یک کلاس نام با سه رشته (نام خانوادگی ، نام و نام میانی).

3. مشکلات هنگام استفاده از فرم سریال استاندارد هنگامی که بازنمایی فیزیکی با محتوای منطقی متفاوت است

  • این برنامه API عمومی را به اجرای داخلی وصل می کند و از تغییرات آینده جلوگیری می کند.
  • مصرف فضا را افزایش می دهد و جزئیات غیر ضروری را ذخیره می کند.
  • به دلیل مسیرهای غیر ضروری در نمودار شی می تواند در زمان اجرای ناکارآمد باشد.
  • این می تواند باعث سرریز باتری شود ، به خصوص در لیست های بزرگ ذکر شده.

4. مثال: سریال سازی یک لیست زنجیر شده (stringlist)

  • فرم سریال پیش فرض تمام گره ها و پیوندهای داخلی را ذخیره می کند ، که ناکارآمد است.
  • راه حل: فقط تعداد عناصر و رشته مرتبط با آنها را ذخیره کنید.
  • این باعث کاهش فضای شلوغ و عملکرد سریال سازی می شود.

5. اجرای به صورت سریالی سفارشی

  • روش ها را ایجاد کنید نوشتن اشمیه readObject برای کنترل سریال سازی.
  • از اصلاح کننده گذرا برای جلوگیری از جزئیات غیر ضروری استفاده کنید.
  • برای اطمینان از سازگاری در آینده ، همیشه با DefaultWritOobject و defaultreadObject تماس بگیرید.
  • API سریال شده را با serial (campos) و serialdata (روش ها) مستند کنید.

6. حتی بیشتر مشکل بیشتر با جداول هش

  • موقعیت عناصر به کد هش سوئیچ بستگی دارد ، که می تواند بین اعدام ها تغییر کند.
  • سریال سازی ساختار فیزیکی یک جدول هش می تواند متغیرهای آن را فاسد کند.
  • راه حل: فقط جفت های ارزش کلیدی را ذخیره کرده و ساختار را در Deside of Desire بازآفرینی کنید.

7. قوانین عمومی برای سریال سازی کارآمد

  • هر زمینه ای را که جزئی از وضعیت منطقی شیء نیست ، به عنوان یک گذرا اعلام کنید.
  • از سریال سازی فیلدهای مشتق شده که مقدار آنها قابل محاسبه است ، خودداری کنید.
  • از سریال سازی نشانگرهای برای ساختارهای بومی JVM خودداری کنید.

پایان

  • فرم سریال استاندارد فقط در صورتی که برای وضعیت منطقی شیء کافی باشد باید پذیرفته شود.
  • برای کنترل بیشتر ، از یک فرم سریالی سفارشی استفاده کنید ، از کارآیی و انعطاف پذیری اطمینان حاصل کنید.
  • این امر از مشکلات آینده در زمینه نگهداری ، عملکرد و سازگاری API سریال جلوگیری می کند.

نمونه هایی از کتاب:

شرح تصویر
بشر

شرح تصویر

بشر

شرح تصویر

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا