Table of Contents
چرا نوار های سفارشی Nx و منوها برای گردش کار شما مهم هستند
توسعه دهندگان بخش قابل توجهی از روز خود را صرف اجرای دستورات تکراری CLI - تست های ساختمانی، ساخت کد، یا پیمایش بین فضاهای کاری.Nx، چارچوب قدرتمند monorepo، در حال حاضر ارائه می دهد عالی و ویژگی های کنسول Nx، اما چند برابر بهره وری واقعی از خیاط رابط کاربر به وظایف خاص خود را.
مفاهیم اصلی: نوار ابزار Nx و منوها چیست؟
فضاهای کاری Nx اغلب شامل برنامه های متعدد و کتابخانه ها، هر کدام با مجموعه ای از اسکریپت های خود (build، خدمت، lint، تست، e2e و غیره) نوار ابزار ابزار و منوها یک لایه گرافیکی بر روی این دستورات را ارائه می دهند.در IDEs مانند Visual Studio Code یا WebStorm، افزونه کنسول Nx در حال حاضر یک پروژه جانبی با اقدامات پیکربندی خارجی اضافه می کند، به شما اجازه می دهد تا دستورالعمل های سفارشی را حتی با استفاده از طریق دستور های سفارشی سازی های سفارشی، حتی می توانید دستورالعمل های منوی سفارشی دیگر، حتی به شما اطلاع رسانی کنید.
جایی که سفارشی سازی اتفاق می افتد
- پسوندهای متحرک: کنسول Nx (VS Code, JetBrains] فایل های پیکربندی سطح کار (به عنوان مثال، یا که در آن شما می توانید وظایف سفارشی را تعریف کنید.
- در این میان، شما می توانید از طریق آن به صورت زیر به صورت زیر به صورت زیر استفاده کنید.
- Clbindings و ماکروها: کاربران پیشرفته می توانند دستورات Nx را با استفاده از ابزارهایی مانند یا سیستم های ماکرو IDE، زنجیره ای کنند.
- اسکریپت های مشتری: اسکریپت های npm را در تعریف کنید که دستورات Nx را می نامند، سپس آنها را به عناصر UI پیوند می دهد.
با استفاده از این لایه ها، می توانید یک نوار ابزار منسجم ایجاد کنید که همه چیز را از توسعه محلی به گام های CI / CD پوشش می دهد.
راهنمای گام به گام برای ایجاد نوار ابزار سفارشی Nx
۱- فضای کاری خود را برای سفارشی سازی آماده کنید
قبل از اضافه کردن هر عنصر UI، اطمینان حاصل کنید که فضای کاری شما تمیز و سازمان یافته است. Run برای تجسم وابستگی های پروژه و بررسی (FLT:5) برای تنظیمات هدف موجود، آخرین افزونه کنسول Nx را برای IDE خود نصب کنید.
۲- تعیین دقیق ترین دستورات
دستورالعمل های تیم خود را چندین بار در روز اجرا کنید:
- [[ویرایش]
- [FLT7] [آزمون های واحد]
- [در این میان]
- [[ویرایش]
- [FLT 10 ] (تصویرسازی مستقل)
قبل از ده فرمان، این لیست پایه ای برای نوار ابزار و ورودی منو شما خواهد بود.
۳- از Nx Console در “Favorites” استفاده کنید
افزونه کنسول Nx به شما اجازه می دهد تا پروژه ها و اهداف خاصی را به عنوان مورد علاقه علامت گذاری کنید. [۱] راست کلیک بر روی یک پروژه در نوار کنسول Nx و گزینه “اضافه به محبوب ها” در یک بخش جداگانه در بالای ۱۲:۱۲ ظاهر می شود، که به شما دسترسی یک کلیک می دهد، این ساده ترین شکل سفارشی سازی نوار ابزار است - هیچ فایل های مورد نیاز برای کنترل بیشتر دانه، شما می توانید وظایف سفارشی (F یا ۱۱:۱۱) ایجاد کنید.
۴- ایجاد وظایف سفارشی در تنظیمات کاری خود
وظایف سفارشی را تعریف کنید که چندین فرمان Nx را به صورت متوالی یا به صورت موازی اجرا می کنند، به عنوان مثال، زیر را به برنامه خود اضافه کنید:
"fastserve": {
"executor": "nx:run-commands",
"options": {
"commands": [
"nx build shared-ui",
"nx serve frontend"
],
"parallel": false
}
}
حالا، نوار ابزار سفارشی (از طریق کنسول Nx یا CLI) می تواند از استفاده کند، شما همچنین می توانید اقلام منو را در VS Code با استفاده از وظایف اضافه کنید.json، اما رویکرد بومی Nx Console تمیزتر است.
۵- یک منوی سفارشی با گروه های Task ایجاد کنید
برای تیم های بزرگتر، دستورات مربوط به گروه به یک منو واحد استفاده از Nx's [FLT16] با یک پیکربندی خاص، به عنوان یک منوی "پیش-commit" ایجاد کنید که با اضافه کردن آن به عنوان "pint، Format-check و تست های واحد، می توانید این را به عنوان یک اسکریپت سطح بالا در معرض قرار دهید و سپس آن را به ابزار Nx Consolebar با اضافه کردن آن به عنوان "روش سفارشی یا استفاده از وظایف.
آزمون و آزمون
پس از تنظیم، هر دستور را از نوار ابزار جدید یا منو اجرا کنید، بررسی کنید که خروجی ها درست هستند و هیچ چیز جریان های کاری موجود را نمی شکند.از یک همکار بخواهید تا تست کند – چشم های تازه اغلب مراحل گم شده یا برچسب های گیج کننده را برای بازتاب فرکانس استفاده واقعی تنظیم می کنند.
تکنیک های سفارشی سازی پیشرفته
استفاده از Keybindings IDE و Macros
فراتر از نوار ابزار، شما می توانید میانبرهای صفحه کلید را به وظایف سفارشی Nx CLI اختصاص دهید.در VS Code، باز و یک میانبر صفحه کلید را به یک فرمان مانند همراه با یک رشته Nx CLI، برای توالی های پیچیده، از افزونه هایی مانند "macros" برای ایجاد اقدامات متعدد با یک کلید کلید استفاده کنید.
ادغام ابزارهای خارجی
شما می توانید دکمه هایی را که مرورگر را در یک URL توسعه محلی باز می کنند، یک ممیزی فانوس دریایی را اجرا می کنند یا به یک محیط مرحله ای متصل می شوند.از Nx استفاده کنید (FLT:19) با executors سفارشی یا اسکریپت های پوسته سفارشی.
اشتراک گذاری تنظیمات در سراسر تیم
ابزار سفارشی خود را به عنوان یک تیم تجزیه و تحلیل با ذخیره آنها در مخزن محل کار را تعریف کنید. تعریف وظایف سفارشی در یا یک مشترک سند استفاده در نظر گرفته شده در یک ReadME یا یک اختصاص داده شده [FLT 23] هنگامی که توسعه دهندگان جدید repo، آنها همان گردش کار دریافت کنید.
مثال واقعی جهانی: یک ابزار توسعه کامل-Stack
بیایید یک نوار ابزار برای یک مونوترپو حاوی یک Frontend Angular، یک Node.js backend و یک کتابخانه انواع مشترک طراحی کنیم.
- [در این میان] [از روی زمین] [از روی زمین] [[[[۱]]]] [[۱۰]]]] [[۱۰]]]] [[۳]]]] [[۳]]]]] [[۱۰]]] [[۳]]]] [۳] [۳]] [۳] [۳] [۳] [۳] [۳] [۳] [۳] [۳] [۶] [۶] [۶] [۳] [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [۳]]]]]]]]]]]] [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر روی [بر [بر [بر روی [بر روی [بر [بر [بر
- [در این باره] [مشرکان]: [[۱]] [[۱۰]] [۱۰] [۱۰] [۱]] [۱۰] [۱۰] [۱]] [۱۰] [۱] [۱۰] [۱]] [۱۰] [۱۰] [۱۰] [۱] [۱۰] [۱] [۱] [۱۰] [۱] [۱] [۱] [۳] [۳] [۳] [۳] [۱۰] [۳] [۳] [۱۰] [۳] [۱] [۱] [۱] [۱] [۱] [۳] [۱۰] [۳] [۳] [۱] [۱] [۱۰] [۱۰] [۱۰] [۱۰] [۳] [۱۰] [۱۰] [۳] [۱۰] [۳] [۳] [۱۰] [۱۰] [۱۰] [۱۰] [۱۰] [۱۰] [۱۰] [۱۰] [۱۰] [۱۰] [۱۰] [۱] [۱۰] [۱۰] [۱۰] [۱۰] [۱۰] [۳] [۳] [۱۰] [۱] [۱۰] [۱۰] [۱۰] [۱۰] [
- [در این میان] [[[۱]]] [[۱۰]]] [[۱۰]]]] [[۱۰]]]] [[۱۰]]]] [[۳]]]] [[۱۰]]]]] [[۱۰]]] [[۳]]]] [۳] [۲]]] [۳] [بر پروژه های آسیب دیده [بران] [۳۲] [۳۲] [۳] [۳۲] [۳] [۳] [۳] [۳] [بر [۳] [۳] [۳] [۳] [۳] [۳] [۳] [۳] [۳] [۳] [۵] [۳] [۳] [۳] [۳] [۳] [بر [۳] [۳] [بر [بر [۳] [بر [بر [بر [بر [بر [بر [۳] [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [بر [۳] [۳] [۳] [بر [بر [بر [بر [بر [بر [بر [بر [بر [
- ساخت و صادرات - ساخت جلو و کپی فایل های استاتیک به [FLT 27].
- [[۱] [۱۰] [[۱۰]]] [[۱۰]]] [۱]]] [۱]] [۱]] [۱]] [۱]]] [۱]] [۱]] [۱]] [۱۰] [۱]] [۱]] [۱]] [۱] [۱]] [۱] [۱]] [۱] [۱]] [۱] [۱] [۱] [۲] [۲] [۲] [۲] [۲] [۱]]] [۲] [۲]]]]] [۲] [۲]] [۲] [۲]]]]]] [۱]]]]] [۳] [۳] [۳] [۳] [۱] [۳] [۳] [۳] [۳] [۳] [۱] [۳]]] [۳] [۳] [۳] [۳] [۱]] [۳] [۱] [۱] [۱] [۱] [۳] [۳] [۳] [۳] [۱] [۳]] [۳] [۱] [۱] [۱] [۳]
هر دکمه به عنوان یک هدف سفارشی در پروژه مربوطه (FLT:28) ایجاد شده و سپس از طریق Nx Console مورد علاقه قرار می گیرد. دکمه “Deploy” شامل یک چک پیش پرواز است که از Nx (FLT 29:29) executor با چندین مرحله استفاده می کند.
بهترین روش ها برای سفارشی سازی های قابل نگهداری
- نام واضح است: از برچسب های توصیفی مانند " ⁇ Start All" (با Emojis برای تشخیص سریع بصری) استفاده کنید.
- محدوده: نوار ابزار را زیر 12 تا 10 آیتم نگه دارید تا از دستورات ثانویه گروه به یک منو واحد اجتناب کنید.
- مستندات خودکار: یک جدول علامت گذاری شده از شما اهداف سفارشی با استفاده از اسکریپت.
- کنترل مقاومت: همیشه پیکربندی سفارشی را انجام دهید تا هر عضو تیم از آن بهره مند شود.
- [[۱] [۱۰] [۱۰] [۱۰] [۱۰] [۱۰] [۱۰] [۱۰] [۱۰] [۱۰] [۱۰] [۱۰] [۱۰]] [۱۰] [۱۰] [۱۰] [۱۰] [۱۰] [۱۰] [۱۰] [۱۰] [۱۰] [۱۰] [۱] [۱۰] [۲] [۵] [۲] [۵] [۵] [۵] [۵] [۵] [۵] [۵] [۵] [۵] [۵] [۵] [۲] [۵] [۵] [۵] [۵] [۲] [۲] [۵] [۵] [۵] [۵] [۵] [۲] [۲] [۲] [۱۰] [۲] [۵] [۲] [۵] [۵] [۱۰] [۱۰] [۵] [۵] [۵] [۱۰] [۵] [۵] [۵] [۵] [۵] [۵] [۱۰] [۵] [۵] [۵] [۵] [۵] [۵] [۵] [۵] [۵] [۵] [۱۰] [۵
قرص های معمول و چگونگی اجتناب از آن
- راه های سخت افزاری: از Nx (FLT 31) و متغیرهای برای حفظ پیکربندی قابل حمل استفاده کنید.
- بیش از حد مهندسی: یک نوار ابزار سفارشی برای دستور شما تنها یک بار در هفته اجرا کنید.
- تغییر در تغییرات: هنگامی که Nx را ارتقاء دهید، اهداف سفارشی خود را آزمایش کنید.
- تشخیص بازخورد تیم: [FLT 1] تیم خود را بررسی کنید تا اطمینان حاصل کنید که نوار ابزار نقاط درد واقعی را حل می کند، نه آنهایی که خیالی هستند.
اندازه گیری سودهای بهره وری
پس از پیاده سازی نوار ابزار سفارشی و منو CLI، صرفه جویی در زمان را دنبال کنید: قبل از سفارشی سازی، چند ثانیه بیشتر طول کشید تا یک زنجیره فرمان معمولی (به عنوان مثال، ساخت + تست + lint) را دنبال کنید؟ پس، زمان را با یک کلیک، حتی 10 ثانیه صرفه جویی در هر عمل، اگر یک توسعه دهنده 20 زنجیره در روز را اجرا کند، که بیش از سه دقیقه ذخیره می شود، اما در طول یک دوره 10 ساعته، و یا یک دوره 10 ساعته، سرعت یک دوره 10 ساعت، و یک دوره 10 ساعت، در طول یک دوره حرکت، و یک تیم، و یا یک دوره 10 ساعت، صرفه جویی در هر هفته، صرفه جویی در هر هفته، صرفه جویی در هر هفته، و یا 10 ساعت، و یا 10 ساعت، صرفه جویی در هر هفته، صرفه جویی در هر هفته، و یا 10 ساعت، صرفه جویی در هر هفته، صرفه جویی در هر هفته، صرفه جویی در هر هفته، صرفه جویی در هر هفته، و یا 10 ساعت، صرفه جویی در هر هفته، صرفه جویی در هر هفته، صرفه جویی در هر بار، صرفه جویی در هر بار، صرفه جویی در هر بار، صرفه جویی در هر بار، صرفه جویی در هر هفته، صرفه جویی در هر هفته، صرفه
منابع خارجی برای خواندن بیشتر
- [[ویرایش] [۱] [۱] [۱]
- [[ویرایش] [۱] [۱۰] [۱] [۱] [۱] [۲] [۳] [۱] [۱] [۱] [۱] [۱] [۲] [۳] [۳] [۳] [۱] [۳] [۱] [۳] [۱] [۳] [۱] [۳] [۳] [۳] [۳] [۳] [۳] [۳] [۳] [۳] [۳] [۳] [۳] [۳] [۳] [۳] [۱] [۳] [۳] [۳] [۳] [۳] [۳] [۳] [۱] [۱] [۱] [۳] [۳] [۳] [۳] [۱] [۳] [۳] [۳] [۳] [۳] [۳] [۳] [۳] [۳] [۳] [۳] [۳] [۱] [۱] [۳] [۱] [۱] [۱] [۱] [۳] [۳] [۳] [۳] [۳] [۳] [۳] [۳] [۱] [۳] [۳]
- [در این میان] [مشرکان] فرمان های پیشین را اجرا می کند.
- [[ویرایش] [۱] [۱۰] [۱]
- [Nx Console Advanced] [Nrwl Blog]
نتیجه گیری
ابزار سفارشی Nx و منوها فقط لوکس نیستند – آنها یک سرمایه گذاری عملی در کارایی تیم توسعه شما هستند.با انتخاب دقیق دستورات با فرکانس بالا، استفاده از ابزارهای مورد علاقه Nx و وظایف سفارشی خود و ادغام با IDEs، شما می توانید یک فضای کاری ایجاد کنید که اصطکاک را شروع می کند: سه ابزار واضح تر و سپس استفاده از دکمه های استفاده واقعی خود را افزایش دهید.