نوبت و سال چاپ : | 2 / 1399 | تعداد صفحات : | 310 |
نوع جلد / قطع: | شومیز / وزیری | وزن: | 465 |
ویرایش : | 2 | شابک | 9786002051349 |
موضوع اصلی : | کامپیوتر | موضوع فرعی : | برنامه نویسی تحت وب |
دریافت فایل:
امروزه دیگر اینترنت مجموعهای از وبسایتهای ایستا برای مصرف انفعالی نیست. کاربران مرورگر (و موبایل) تجربههای غنیتر و تعاملیتر را انتظار دارند. در دههی گذشته و پس از آن، اپلیکیشنهای شبکه همانند اپلیکیشنهای دسکتاپ عمل کردهاند. گرچه تجربههای ما با نرمافزار تغییر کرد ولی ابزارهای در دسترس ما به عنوان توسعهدهندگان نرمافزار چندان تغییر نکردهاند. کامپیوترها سریعتر شدند و معماری تراشههای چندهستهای متداول هستند. ذخیرهساز دادهها و پهنای باند ارزانتر شده است. اما هنوز با ابزارهایی برای توسعهی اپلیکیشن استفاده میکنیم که برای این منظور طراحی نشدهاند. به همین دلیل توسعهی اپلیکیشنهای شبکه یک فرآیند کُند و گران محسوب میشود. توسعهدهندگان از زبانهای مختلف، سبکهای برنامهنویسی مختلف، نگهداری کد پیچیده، اشکالزدایی و غیره استفاده میکنند. مسالهی مقیاسپذیری در این موارد یک مشکل جدی محسوب میشود. ویژگیهای مدرن نرمافزار، مثل دادههای بیدرنگ، بازیهای چندنفره و فضاهای ویرایش همکارانه، خواهان سیستمهایی هستند که قابلیت اداره کردن هزاران اتصال همزمان را بدون هرگونه اشکالی داشته باشند. هنوز محدود به چارچوبهایی هستیم که در ساخت اپلیکیشنهای قدیمی به کار میروند، به یک پایگاه دادهی رابطهای روی یک سرور واحد و کاربر واحد مقید هستید. Node برای طراحی اپلیکیشنهای مقیاسپذیر تحت شبکه به کار میرود. Node بسیار سریع است و جاوااسکریپت را درک میکند. Node اغلب زبانهای برنامهنویسی معروف دنیا و کامپایلر سریع جاوااسکریپت را کنار هم قرار داد و از طریق C++ امکان دسترسی به سیستم عامل را فراهم ساخته است. فهرست مطالب فصل 1: آشنایی با محیط Node 1-1. ویژگیهای Node.js 1-2. نصب Node.js 1-3. نصب کامپایلر gcc 1-4. جاوااسکریپت به عنوان زبان سیستمها 1-5. کتابخانههای استاندارد 1-6. گسترش جاوااسکریپت 1-7. V8 ، جاوااسکریپت و بهینهسازیها فصل 2 : برنامهنویسی ناهمگامِ رویدادگرا 2-1. طراحی یکتای Node 2-2. آشنایی با حلقهی رویداد 2-3. شنود رویدادها 2-4. تایمرها 2-5. همروندی و خطاها 2-6. ساخت فید توییتر با استفاده از رویدادهای فایل فصل 3 : جریان دادهها در گرهها و کلاینتها 3-1. چرا از استریم استفاده کنیم؟ 3-2. تشریح استریمها 3-3. ایجاد سرور HTTP 3-4. HTTPS ، TLS (SSL) و اَمن کردن سرور 3-5. شیء درخواست 3-6. کارکردن با سرآیندها 3-7. اداره کردن دادههای POST 3-8. ایجاد و ارسال تصاویر با Node فصل 4 : استفاده از Node برای دستیابی به سیستم فایل 4-1. دایرکتوریها و تکرار روی فایلها و پوشهها 4-2. خواندن از فایل 4-3. نوشتن در فایل 4-4. سرویسدهی به فایلهای ایستا 4-5. اداره کردن آپلود فایل 4-6. مرورگر سادهی فایل فصل 5 : مدیریت اتصال چند کلاینت به طور همزمان 5-1. آشنایی با همروندی 5-2. مسیریابی درخواستها 5-3. استفاده از Redis برای ردیابی حالت کلاینت 5-4. اداره کردن نشستها 5-5. احراز هویت اتصالها فصل 6 : ایجاد اپلیکیشنهای بیدرنگ 6-1. معرفی AJAX 6-2. ارتباطات دوطرفه با socket.io 6-3. شنود برای رویدادهای ارسالی از سرور 6-4. ساخت اپلیکیشن ویراستار متن همکارانه فصل 7 : استفاده از چندفرآیندی 7-1. مدل تکنخی در Node 7-2. ایجاد فرآیندهای فرزند 7-3. برقراری ارتباط با فرزند 7-4. تجزیه فایل با استفاده از چند فرآیند 7-5. استفاده از PM2 برای مدیریت چند فرآیند 7-6. بههنگامسازیهای فعالیت بیدرنگ نتایج چندین کارگر فصل 8 : مقیاسپذیری اپلیکیشن 8-1. چه زمانی مقیاسپذیری انجام شود؟ 8-2. اجرای چندین سرور Node 8-3. صفهای پیام RabbitMQ 8-4. استفاده از ماژول UDP در Node 8-5. استفاده از Twilio برای ایجاد ربات پیامک در Heroku فصل 9 : میکروسرویسها 9-1. چرا میکروسرویس ؟ 9-2. از معماری سهردیفی تا چهارردیفی 9-3. استقرار میکروسرویسها 9-4. اپلیکیشنهای بدون سرور 9-5. میکروسرویسهای کانتینری کتاب مرجع کامل Node.js (توسعه اپلیکیشن های تحت شبکه) اثر ساندرو پاسکوئالی و کوین فابورگ.
طراحی و پیاده سازی توسط ایده گستران
تمامی حقوق برای کتاب درخشش محفوظ است