من در این مقاله چند مهارت، تکنولوژی و ملاحظاتی که باید در انتخاب آنها درنظر بگیرید را جمعآوری کردهام تا به شما در این راه کمک کند. انتخاب ابزار مناسب به یکی از بزرگترین چالشهای ما تبدیل شده است؛ اکوسیستم نود جی اس، تقریبا در هر زمینهای گزینههای جذاب و بالقوهای را ارائه داده است.Vanilla یا TypeScript ؟ Ava، Mocha یا Jest؟ یا شاید nest.js ؟ آیا باید ماژول هایES6 را در پروژه های بعدی خودم داشته باشم یا بچسبم به روش های خوب قدیمی؟
ترکیب و تطبیق همه اینها مستلزم آشنایی عمیق با پیامدهای آنها است. این مجموعه ابزار و پارادایمهای غنی، شما را تشویق میکند تا وارد سرزمینهای ناشناخته شوید!!
امیدوارم مطالبی که در ادامه میخوانید به شما در مسیرتان کمک کند.
۱. از ویژگیهای typescript ، متفکرانه استفاده کنید
typescript رشد بسیار سریع و ناگهانی داشته است؛ این نمودار شگفتانگیز در این جا رشد ۵ برابری typescript PRS را نشان میدهد که هر گونه شک و تردیدی را از بین میبرد. تحقیقات نشان میدهد که مانع از بروز خطا میشود و جامعه توسعهدهندگان نیز عاشق آن هستند. اگرچه برخی هنوز به آن شک دارند.( این پست عالی و استدلال شده را که توسط Eric Elliott نوشته شده را بررسی کنید.) اما خب کاملاً روشن است که typescript برنده است.
اگر با دقت به موارد زیر دقت کنید typescript در واقع دو نوع پیشنهاد منحصر به فرد را روی میز میآورد. type-safty ( از جمله اسناد بهتر و intellisense) وdesign construct های پیشرفته. تیمها از typescript برای typescript بهتر استفاده میکنند؛ اما ناخواسته و بدون برنامه قبلی از ویژگیهای آن مثل - generics, abstract classes, interfaces, namespaces و … نیز استفاده میکنند. تیمها سبک طراحی خود را از vanilla JavaScript به OOP به دلیل «قانون ابزارها» تغییر میدهند. به خاطر بسپارید، که بر اساس تعصب از یک ابزار استفاده نکنید و بسنجید که آیا این انتخاب درستی برای پروژه است یا خیر؟ اما اگر فکر میکنید این روش کدنویسی درست است، مشکلی نیست با آن پیش بروید! فقط به دلایل اشتباه کد و سبک طراحی خود را تغییر ندهید.
۲.جعبه ابزار تست خود را مدرن کنید، Ava و Jest در حال تغییر این بازی هستند
اتفاقات بزرگی در زمینه تست اتفاق میافتد، طبق آخرین بررسیهای جامعهی JS، رضایت توسعهدهندگان از ابزارهای تست، بیش از هر دامنهی دیگری بوده است. انقلابی در حال رخ دادن است، سربازان قدیمی مثل Mocha و Jasmine در حال عوض کردن جای خود با بچه های جدید و پیشرفته، مثل Jest و Ava، در صدر جدول هستند. از این روش مدرن تشکر میکنم، چراکه میتوان تستهای بیشتری را انجام داد؛ به عبارتی زمین بیشتری را پوشاند و اشکالات بیشتری را پیدا کرد. چرا؟
۱. سرعت - این ابزارها به لطف مدل اجرای multi-process، بسیار سریع هستند. آنها همچنین از بهینهسازیهای پیشرفته مثل: اولویت بندی تستهای کندتر، برای اجرا کردن آنها در ابتدای کار و فراگیری وضعیت تستها با گذشت زمان استفاده میکنند.
۲.تجربه عالی برای توسعهدهنده - ابزارهای تست مدرن، برای همراهی با تجربه کدنویسی و ارائه بینشهای ارزشمند، طراحی شدهاند. بهعنوان مثال، در صورت عدم موفقیت یک تست، jest یا Ava ، فقط گزارش عدم موفقیت را برای شما نمایش نمیدهند؛ بلکه کد مربوطه را هم از واحدی که مورد تست قرار گرفته استخراج میکنند.
برخی از ابزارهای سنتی، برای اجرای آزمایش گاه به گاه طراحی شدهاند. در زمانهایی که تیم، یک بار برای توسعه در مکانی مستقر میشود، کشف یک باگ بعد از ۴ ساعت به اندازه کافی خوب نیست. ابزارهای مدرن اجازه میدهند تا تستهای در حال اجر، بهطور مداوم حتی در هنگام کدنویسی نیز انجام شود؛ این رویکرد امکان آزمایش لایههای بیشتر و موارد استفاده بیشتر را زودتر فراهم میکند. به این عمل ” shift left” یا شیفت چپ گفته میشود.
۳. با آخرین ویژگیهای جاوااسکریپت، که به زودی رشد میکنند ملاقات کنید
من زیاد طرفدار دنبال کردن ویژگیهای جدید در زبانها نیستم. گاهیاوقات این اسباب بازیهای درخشان، برخلاف سادگی در کد و شفاف بودن آن کار میکنند. هرازگاهی، برخی از ویژگیهای با ارزش جاوااسکریپت ارائه میشوند؛ بنابراین ارزش دیدن لیست پیشنهادات TC3 و node.green را برای شناسایی ویژگی های جذاب جدید و متناسب با سبک برنامهنویسی شما را دارد.
۴. امنیت: بیاموزید که مثل یک مهاجم فکر کنید
اگر نمیتوانید مثل یک مهاجم فکر کنید، پس قطعا نمیتوانید مثل یک مدافع هم فکر کنید. شما نباید برای کارهای امنیتی و دفاعی از شرکتهای شخص ثالث استفاده کنید یا فقط به اسکنرهای امنیتی استاتیک متکی باشید. یکی از راههای مفید برای عمیقتر شدن درک امنیتی شما، حمله به نمونه کدهای آسیبپذیر است. در زیر، لینک مثالی مفید را برای شما میگذارم،تا از آن استفاده کنید :
لیستی از بهترین تمرینهای امنیتی نودجیاس،که شامل بیش از ۲۳ ایده حمله به کدهای جاوااسکریپتی است.
۵. برنده اسکار ۲۰۱۹، Nest.js را بررسی کنید
پس از سالها زندگی اکسپرس، به کمی (nest (js هم نیاز داریم. با چنین رشد شگفتانگیزی، به سادگی نمیتوانید آن را نادیده بگیرید. من فکر میکنم که Nest.js قابل توجهترین چیزی است که برای اولینبار در Node.js در سال ۲۰۱۸/۲۰۱۹ رخ داده است.
بر خلاف اکسپرس، سبک طراحی آن بسیار الهام گرفته شده از Angular - opinionated ،TypeScript-based است. با توجه به همه این موارد خوب، من هیچ تردیدی ندارم که تیمهایی که اولین قدمهای خود را با Node.js برمیدارند، با Nest.js سریعتر حرکت میکنند و نه با رویکرد حداقلی اکسپرس.
دیدگاه و پرسش
در حال دریافت نظرات از سرور، لطفا منتظر بمانید
در حال دریافت نظرات از سرور، لطفا منتظر بمانید