Upload
masoud-sharifi
View
357
Download
4
Embed Size (px)
Citation preview
{چرا نودجیاس؟
مسعود شریفیسید رامین طاهری
اردیبهشت ۱۳۹۵
Masoud-Sharifi.ir
این یک سوال بی اهمیتی نیست که چرا باید از نود برای توسعه نرم افزارهای حتت وب استفاده کنیم و ما
در این چند اسالید سعی در پاسخ به این سوال داریم.
اهمیت انتخاب نودجیاس برای استفاده در
نرم افزار های حتت وب
به راحتی می توان یک منونه اولیه راحت و سریع از هر نوع برنامه حتت وبی در مقایسه با جاوا و دیگر زبانهای برنامه نویسی
ساخت.به عنوان مثال : نود سرور مورد نیاز خودش و ماژول هایش رو به طور خودکار راه اندازی می کند و شما نیازی
نیست که درگیر تنضیمات آپاچی یا اجنین ایکس شوید.جامعه بزرگ نود با دانش خیلی زیاد ماژول های آماده ای را
ایجاد کرده است که براحتی می توان از آنها استفاده کرد و در زمان صرفه جویی کرد.
ساخت منونه اولیه خیلی راحت و سریع
Node Package Managerیک روش استاندارد برای اشترک گذاری کد در جامعه نود
است.شما می توانید از هزاران ماژول به اشتراک گذاشته شده در این جامعه استفاده کنید و مترکز اصلی خود را روی هسته نرم
افزارتان بگذارید. به راحتی می توانید نسخه این ماژول ها را در نرم افزارتان اضافه کنید تا نگران تغییرات این ماژول در نسخه های
بعد نباشید.
NPM
مقایسه تعداد ماژول های نوشته شده برای نود در مقابل ماژول ها
برای زبان های دیگر
www.ModuleCounts.com
تعدادی از سرویس دهندگان ابری مانند:u Joyent cloudu Herokuu Nodejitsuفناوری نود را به عنوان فناوری کالس اول خود معرفی کردهاند
و اجرا و توسعه نرم افزار را خیلی آسان کرده اند.
پلتفرم ابری
مانگودیبی یک پایگاه دادههای سندگرای منتباز، کارا، مقیاسپذیر ، بدون نیاز به طرحبندی اولیه نوشته شده در زبان برنامهنویسی سی++
است.مانگودیبی برای رفع مشکالتی طراحی شده که با پایگاه دادههای
رابطهای به سادگی رفع منیشوند.مانگودیبی به جای اینکه همانند پایگاه های دادههای رابطهای
کالسیک دادهها را در جداول ذخیره کند، دادههای ساختاریافته را در اسنادی با قالبی شبیه به جیسون ذخیرهسازی می کند، و بدین ترتیب
یکپارچهسازی دادهها را در برخی اقسام برنامههای کاربردی آسانتر و سریعتر می کند.
مانگودیبی چیست؟
اگر شما از پایگاه داده ای مانند مونگو یا ردیس استفاده می کنید که رابطه ای نیستند، بهترین گزینه
برای ارتباط برقرار کردن این دیتابیس ها نود می باشد.
MongoDB and Redis
جاوا اسکریپت زبان حتت کالینت است که توسعه دهندگان وب حتما باید این زبان را بلد باشند. این بدین معنی است که تقریبا
بیشتر توسعه دهندگان می توانند کد جاوااسکریپت حتت کالینت را بخوانند و می توان افرادی را پیدا کرد که بتوانند جاوا اسکریپت
را خوب، قوی و به صورت ساختار خوب پیاده سازی کنند.این توسعه دهندگان می توانند با نود به راحتی ارتباط برقرار
کنند.
JavaScript
معماری نود با توجه به خاصیت تعامل non-blocking به شما کمک می کند که به مشکل عملکرد و مقیاس پذیری غلبه
کنید. برای فهم این موضوع وبسرور آپاچی و نود را در نظر بگیرید، وب سرور آپاچی مانند پخنت پیتزا می ماند که تا وقتی
پیتزا های قبلی آماده نشدند منی توانید درخواست های پیتزاهای جدید را بدهید و حتما باید صبر کنید تا پیتزا های قبل آماده
شوند در حالی که نود را بدین صورت در نظر بگیرید که می توان در حین آماده شدن پیتزا های قبل درخواست های جدید را هم
همزمان آماده کرد.این قابلیت به سادگی در زبان های دیگر قابل پیاده سازی نیست.
Architecture
مقدار تعداد پردازش درخواست ها در یک برنامه مشابه
در زبان های مختلف
به لطف عملکرد باال، شما نیاز به پرداخت هزینه های زیادی برای سخت افزار مورد نیاز سرور نود نیستید.چون در اغلب موارد نیاز به تنظیمات پیچیده برای نود نیستید ، در زمان مدیریت سرور نود نیز
صرفه جویی می کنید.بنابراین شما هزینه ای برای راهاندازی ، تعمیر و نگهداری آپاچی و
NGINX نباید پرداخت کنید.
Costs
PHP نود در مقایسه با CPU مقدار میزان پردازش
در این چند اسالید مزایای استفاده از نود در یک پروژه حتت وب ذکر شد. انتخاب زبان برای اجرای یک پروژه به پارامترهای دیگری
نیز بستگی دارد که ممکن است نود پاسخگو در این موارد نباشد. انتخاب زبان برنامه نویسی برای هر پروژه متفاوت است و باید با
توجه به مزایا و معایب، بهترین زبان برای اجرای پروژه انتخاب شود.
ممنون از توجه شما
پایان