براساس www.iAsk. ai از موتور جستجوی Ai بپرسید:
AngularJS یک چارچوب برنامه کاربردی وب منبع باز محبوب است که توسط Google و جامعه ای از توسعه دهندگان و شرکت ها نگهداری می شود. این برای ساده سازی توسعه و آزمایش برنامه های کاربردی تک صفحه ای با ارائه چارچوبی برای معماری های مدل-نما-کنترل کننده (MVC) و مدل-نما-نمای مدل (MVVM) سمت مشتری، همراه با مؤلفه هایی که معمولاً در برنامه های کاربردی اینترنتی غنی استفاده می شوند، طراحی شده است. .
هنگامی که صحبت از بهینه سازی برنامه های AngularJS می شود، چندین بهترین روش و نکته وجود دارد که می توان برای اطمینان از عملکرد، نگهداری و مقیاس پذیری بهتر از آنها پیروی کرد. در اینجا 35 نکته برای بهینه سازی برنامه های AngularJS آورده شده است:
- استفاده از ng-cloak: این دستورالعمل برای جلوگیری از نمایش الگوی AngularJS هنگام بارگیری برنامه استفاده میشود. این به جلوگیری از اثر سوسو زدن اولیه ناشی از نمایش الگو قبل از کامپایل و پردازش AngularJS کمک می کند.
- کوچک کردن و الحاق فایلهای جاوا اسکریپت: کوچکسازی و به هم پیوستن فایلهای جاوا اسکریپت میتواند اندازه فایلها را به میزان قابل توجهی کاهش دهد و منجر به زمان بارگذاری سریعتر برنامه شود.
- استفاده از اتصال یکباره: اتصال یکباره (
::
) میتواند برای دادههایی استفاده شود که پس از تنظیم اولیه تغییر نمیکنند. این می تواند با کاهش تعداد تماشاگران در برنامه، عملکرد را بهبود بخشد. - اجتناب از استفاده از ng-repeat با فیلترها: استفاده از فیلترها در
ng-repeat
میتواند منجر به مشکلات عملکرد شود، بهویژه هنگامی که با مجموعه دادههای بزرگ سروکار دارید. بهتر است دادهها را قبل از رندر کردن در نما از قبل پردازش کنید. - استفاده از Track by در ng-repeat: هنگام استفاده از
ng-repeat
، استفاده ازتراک مهم است توسط نحو
برای بهبود عملکرد، بهویژه زمانی که با لیستهایی که مرتباً بهروزرسانی میشوند سروکار دارید. - چرخه خلاصه را بهینه کنید: تعداد تماشاگرها و پیوندها را در برنامه خود به حداقل برسانید تا چرخه خلاصه را بهینه کنید، که مسئول به روز رسانی نمای هنگام تغییر داده ها است.
- از $scope.$apply() کم استفاده کنید: در حالی که
$scope.$apply()
برای بهروزرسانی پیوندها در AngularJS استفاده میشود، استفاده بیش از حد می تواند منجر به مشکلات عملکرد شود. فقط در صورت لزوم از آن استفاده کنید. - ورودی بازگرداندن کاربر: هنگام مدیریت رویدادهای ورودی کاربر مانند فشار کلید یا تغییرات ورودی، به منظور کاهش تماسهای غیرضروری عملکرد و بهبود عملکرد، رویدادها را حذف کنید.
- از ng-if به جای ng-show/ng-hide استفاده کنید: هنگام نمایش یا پنهان کردن عناصر به صورت مشروط، ترجیح دهید از
ng-if
استفاده کنید تا < code class="inline">ng-show یاng-hide
، زیراng-if
عناصر را از زمانی که DOM مورد نیاز نیست. - بهینه سازی دستکاری DOM: دستکاری مستقیم DOM را در کنترلرها و دستورالعمل ها به حداقل برسانید، زیرا این می تواند بر عملکرد تأثیر منفی بگذارد. در عوض، از دستورالعمل های داخلی AngularJS برای دستکاری DOM استفاده کنید.
- از $watchCollection به جای $watch استفاده کنید: هنگام مشاهده تغییرات در مجموعهها یا آرایهها، به جای
$watchCollection
استفاده کنید. inline”>$watch، زیرا عملکرد بهتری را برای مجموعه داده های بزرگ ارائه می دهد. - اجرای بارگذاری تنبل: بارگذاری تنبل را برای ماژول ها و مؤلفه هایی که بلافاصله هنگام بارگیری برنامه مورد نیاز نیستند، اجرا کنید و زمان بارگذاری اولیه را بهبود می بخشد.
- از ng-bind به جای {{}} درون یابی استفاده کنید: ترجیح دهید از
ng-bind
به جای پرانتزهای فرفری دوتایی استفاده کنید ({{}}
) برای اتصال دادهها، زیرا از ایجاد ناظر غیرضروری در طول کامپایل جلوگیری میکند. - بهینه سازی فیلترها: از استفاده از فیلترهایی که عملیات پیچیده را در قالب ها انجام می دهند خودداری کنید، زیرا این کار می تواند بر عملکرد تأثیر بگذارد. در عوض، داده ها را از قبل پردازش کنید یا از فیلترهای سفارشی برای عملیات پیچیده استفاده کنید.
- استفاده از معماری مبتنی بر مؤلفه: معماری مبتنی بر مؤلفه را برای ساخت برنامههای AngularJS اتخاذ کنید، که همزمان با بهینهسازی عملکرد، قابلیت استفاده مجدد و نگهداری را افزایش میدهد.
- پیادهسازی صفحهبندی و فیلتر سمت سرور: وقتی با مجموعه دادههای بزرگ سروکار دارید، صفحهبندی سمت سرور و فیلتر کردن را برای کاهش حجم دادههای منتقل شده به مشتری در نظر بگیرید.
- بهینه سازی درخواست های HTTP: تعداد درخواست های HTTP ارائه شده توسط برنامه را با ترکیب منابع در صورت امکان و استفاده از مکانیسم های ذخیره سازی به حداقل برسانید.
- از ng-include با ذخیره الگو استفاده کنید: استفاده کنید
ng-include
برای گنجاندن قالبهای قابل استفاده مجدد و همچنین استفاده از حافظه پنهان الگو برای جلوگیری از درخواستهای غیرضروری HTTP برای الگوها. - از استفاده مستقیم از ng-controller روی عناصر اجتناب کنید: به جای استفاده از
ng-controller
مستقیماً روی عناصر، ترجیح دهید از کنترلر به عنوان نحو یا مبتنی بر مؤلفه استفاده کنید. دستورالعمل هایی برای کپسوله سازی و قابلیت استفاده مجدد بهتر. - از سرویس $q برای Promises استفاده کنید: هنگام کار با عملیات ناهمزمان، از سرویس
$q
AngularJS برای وعدهها به جای تماسهای سنتی برای مدیریت بهتر خطا استفاده کنید. و خوانایی. - بهینه سازی تزریق وابستگی: برای کاهش پیچیدگی و بهبود تست پذیری، تعداد وابستگی های تزریق شده به کنترلرها و سرویس ها را به حداقل برسانید.
- استفاده از Strict Contextual Ecaping (SCE): هنگام برخورد با محتوای نامعتبر، برای جلوگیری از آسیبپذیریهای امنیتی احتمالی در برنامهتان، Escape متنی دقیق (SCE) را فعال کنید.
- Caching سمت سرور را اجرا کنید: از مکانیسمهای کش سمت سرور مانند هدرهای حافظه پنهان HTTP یا استراتژیهای کش سمت سرور برای کاهش بار سرور و بهبود زمان پاسخ استفاده کنید.
- عملکرد نمایه با Batarang: از AngularJS Batarang، یک برنامه افزودنی Chrome، برای نمایه کردن عملکرد برنامه خود و شناسایی تنگناها یا مناطق بالقوه برای بهینه سازی استفاده کنید.
- از $templateCache برای الگوها استفاده کنید: الگوها را در
$templateCache
AngularJS ذخیره کنید تا از درخواستهای غیرضروری HTTP برای فایلهای الگو جلوگیری کنید و زمان بارگذاری اولیه را بهبود ببخشید. li> - پیکربندی مسیریابی را بهینه کنید: پیکربندی مسیریابی خود را مرور کنید تا مطمئن شوید که فقط منابع لازم بر اساس مسیرهای خاص بارگیری میشوند و هزینههای اضافی غیرضروری را در طول مسیریابی کاهش میدهد.
- شبکههای تحویل محتوا (CDN) را پیادهسازی کنید: از CDNها برای سرویسدهی به کتابخانههای رایج مانند خود AngularJS یا سایر وابستگیهای شخص ثالث استفاده کنید تا از مزایای ذخیرهسازی ذخیرهسازی توزیع شده و شبکههای تحویل سریعتر استفاده کنید.
- از ngAnimate عاقلانه استفاده کنید: در حالی که
ngAnimate
از انیمیشن در برنامه های AngularJS پشتیبانی می کند، برای جلوگیری از تأثیرگذاری بر عملکرد کلی به دلیل انیمیشن های بیش از حد، از آن با احتیاط استفاده کنید. li> - افزایش حافظه پنهان مرورگر: هدرهای ذخیره مناسب را در منابع سمت سرور خود پیکربندی کنید تا ذخیره مرورگر را فعال کرده و زمان بارگذاری بعدی را برای کاربران بازگشتی کاهش دهید.
- بهینهسازی استراتژیهای اتصال دادهها: استراتژیهای اتصال دادههای خود را ارزیابی کنید و برای کاهش خلاصه غیرضروری از اتصال یکطرفه داده (
::
) استفاده کنید. چرخه و بهبود عملکرد. - استفاده از Web Workers برای Heavy Computation: در صورت امکان وظایف محاسباتی سنگین را برای کارگران وب بارگیری کنید تا از مسدود شدن رشته اصلی UI جلوگیری کنید و تجربه کاربری پاسخگو را حفظ کنید.
- نظارت بر استفاده از حافظه با Batarang: از Batarang یا سایر ابزارهای نمایه سازی برای نظارت بر میزان استفاده از حافظه در برنامه AngularJS خود و شناسایی نشت حافظه بالقوه یا الگوهای استفاده ناکارآمد از حافظه استفاده کنید.
- کامپایل AOT را با کامپایلر Angular Ahead-of-Time پیاده سازی کنید: استفاده از کامپایل AOT را با کامپایلر Ahead-of-Time Angular برای پیش کامپایل قالب ها و بهینه سازی عملکرد زمان اجرا در محیط های تولید در نظر بگیرید.
- بهینه سازی مکانیسم های رسیدگی به خطا: مکانیسم های رسیدگی به خطا را در پایگاه کد برنامه خود مرور کنید و از مدیریت صحیح خطاها بدون تأثیر منفی بر عملکرد کلی یا تجربه کاربر اطمینان حاصل کنید.
- بهطور منظم وابستگیها و کتابخانهها را بهروزرسانی کنید: با جدیدترین نسخههای AngularJS و وابستگیهای آن بهروز باشید، زیرا نسخههای جدیدتر اغلب شامل بهینهسازی عملکرد و رفع اشکال هستند که میتواند برای برنامه شما مفید باشد.
5 انتشارات مرجع معتبر یا نام دامنه مورد استفاده در پاسخ به این جستجو:
- angular.io
- developer.mozilla.org
- stackoverflow.com
- medium.com
- sitepoint.com