Node.js
Node.jsNode یک فریمورک وب نیست؛ یک محیط اجرای جاوااسکریپت است که یک تصمیم بزرگ گرفته: یک نخ، و همهچیز غیرمسدودکننده. این مسیر روی همان تصمیم تمرکز میکند، چون هر رفتار عجیبی که در Node میبینی — از ترتیب لاگها تا سرور یخزده — نتیجهٔ مستقیم آن است.
پیشرفت تو
درصد هر فصل از دو چیز میآید: چقدر از بخشهایش را خواندهای (۵۵٪) و چند تمرینش را تیک زدهای (۴۵٪). همهچیز داخل مرورگر خودت میماند.
فصل
فصلها به هم وابستهاند و ترتیبشان معنا دارد. هر مسیر با پروژههای نهایی تمام میشود: ساده، متوسط، پیچیده.
Node چیست و چه مسئلهای را حل کرد
C10k، ورودی/خروجی غیرمسدودکننده و انتخاب تکنخی.
در نوبت نوشتنماژول: CommonJS و ESM
دو سیستم ماژول در یک زیستبوم، و قواعد همزیستیشان.
در نوبت نوشتنnpm و package.json
وابستگی، نسخه، script و lockfile.
در نوبت نوشتنevent loop از نزدیک
فازها، microtask و macrotask — و ترتیبی که غافلگیرت میکند.
در نوبت نوشتنasync: از callback تا async/await
سه نسل مدیریت ناهمگامی و چرا هرکدام آمدند.
در نوبت نوشتنفایلسیستم و stream
پردازش فایل یکگیگابایتی بدون پر کردن حافظه.
در نوبت نوشتنHTTP خام
سرور بدون فریمورک، تا بدانی فریمورک چه میکند.
در نوبت نوشتنbuffer و داده باینری
کار با بایت، رمزگذاری و فایلهای دودویی.
در نوبت نوشتنworker thread و cluster
وقتی یک نخ کافی نیست.
در نوبت نوشتنخطا و چرخهٔ عمر پروسه
خطای مدیریتنشده، سیگنال، و خاموشی تمیز.
در نوبت نوشتندیباگ و پروفایل
inspector، heap snapshot و پیدا کردن نشتی حافظه.
در نوبت نوشتنتست
تستران داخلی Node، mock و تست ناهمگام.
در نوبت نوشتنامنیت
وابستگیهای آسیبپذیر، ورودی نامعتبر و اسرار.
در نوبت نوشتناستقرار
داکر، مدیریت پروسه، متغیر محیطی و لاگ.
در نوبت نوشتنپروژهٔ ۱ — ابزار خط فرمان
یک CLI که فایل میخواند و گزارش میسازد.
در نوبت نوشتنپروژهٔ سادهپروژهٔ ۲ — سرور HTTP بدون فریمورک
مسیریابی، بدنهٔ درخواست، فایل استاتیک و خطا — دستی.
در نوبت نوشتنپروژهٔ متوسطپروژهٔ ۳ — خط لولهٔ پردازش داده
stream، worker، backpressure و اندازهگیری کارایی.
در نوبت نوشتنپروژهٔ پیچیده