کتابخانه های مشترک در Dynamics 365 CE: چرا باید کد خود را متمرکز کنید

اگر در بیش از یک پروژه Dynamics 365 CE کار کرده اید ، احتمال دارد که شما همان قطعه کد را در چندین فرم ، افزونه یا گردش کار کپی کرده اید.
خواه تاریخ قالب بندی ، اعتبار سنجی زمینه ها ، یا استاندارد سازی منطق کسب و کار – این امر به مراتب بیشتر معقول است متمرکز کردن این منطق به کتابخانه های قابل استفاده مجدد.
در تیم ما ، ما با سازماندهی و ارجاع کد مشترک از مزایای عمده ای دیدن کرده ایم کتابخانه های مشترک در JavaScript و C#بشر در اینجا به همین دلیل ممکن است بخواهید همین کار را انجام دهید.
چرا کتابخانه های مشترک اهمیت دارند
1 قابلیت استفاده مجدد کد
به جای تکرار منطق در چندین کلاس افزونه یا اسکریپت های فرم ، می توانید:
- یک بار بنویسید ، چندین بار دوباره استفاده کنید.
- منطق خود را خشک نگه دارید (خود را تکرار نکنید).
مثال:
منطق اعتبار سنجی برای ABN ها ، محدوده تاریخ ، قالب های ایمیل یا مقایسه جستجو.
2 قوام در جبهه و پس زمینه
با تراز کردن منطق بین JS (فرم ها/روبان) و C# (افزونه ها/گردش کار) ، اطمینان می دهید:
- در همان قوانین اعتبار سنجی در هر دو لایه اعمال کنید.
- ابهام کمتری هنگام گزارش اشکالات.
جایزه: یک بار سند ، در همه جا درخواست کنید.
3 سریعتر سوار شدن و سرعت انحراف
توسعه دهندگان جدید نیازی به بازنویسی منطق ندارند – آنها می توانند بلافاصله از توابع ابزار استفاده کنند.
- کشف و استفاده از روشهای قابل استفاده مجدد آسان است.
- معماری تمیزتر ، مدولار تر.
4 اشکالات کاهش یافته
وقتی همه منطق در یک مکان زندگی می کنند:
- رفع فقط باید یک بار اتفاق بیفتد.
- هیچ خطری برای وصله یک پرونده وجود ندارد اما دیگران را فراموش نمی کند.
5 Devops & CI/CD دوستانه
شما می توانید:
- بسته بندی C# مجامع یاور با افزونه ها.
- کتابخانه های JS را با منابع وب خود بچسبانید.
- کنترل نسخه و تست خودکار را به راحتی اعمال کنید.
نمونه های دنیای واقعی
کتابخانه مشترک جاوا اسکریپت
-
formHelper.js
: شامل روش هایی مانندsetRequiredFields
باvalidateEmailFormat
باlockFieldsOnStatusChange
بشر - از طریق یک منبع وب در فرم ها بارگیری می شود.
C# کلاس ابزار مشترک
-
BusinessLogic.Helpers.cs
: منطق را برای مراحل افزونه سفارشی متمرکز می کند. - به عنوان یک مونتاژ با نام قوی ، در پروژه های افزونه مشترک مستقر شده است.
نکاتی برای اجرای
-
از نام های نام و نامگذاری روشن استفاده کنید: به عنوان مثال ،
Contoso.CRM.Helpers
بشر - کتابخانه های خود را نسخه کنید: به ردیابی تغییرات در طول زمان کمک می کند.
- بسته بندی خودکار: LIB مشترک را به خط لوله DevOps خود اضافه کنید.
افکار نهایی
کتابخانه های مشترک فقط در مورد پاکسازی نیستند – آنها در مورد ساخت راه حل های CRM باهوش تر ، حفظ و مقیاس پذیر تر هستند.
پس از اجرای این ساختار ، تعجب خواهید کرد که چگونه بدون آن ساخته اید.