تفاوت زبان برنامه نویسی php با Node.js

۲۸شهریور ۱۳۹۵
۵۹
تفاوت زبان برنامه نویسی php با Node.js

تفاوت زبان برنامه نویسی php با Node.js

در این مقاله از آذرآنلاین به مقایسه دو زبان برنامه نویسی قدرتمند php  و node.js می پردازیم و این دو زبان را از جنبه های مختلف مورد بررسی قرار می دهیم و به کاربردهای هر دو زبان اشاره خواهیم کرد ، با آذرآنلاین همراه باشید .

زبان php چیست ؟ 

زبان پی اچ پی با هدف نوشتن اسکریپتهای وب نوشته شد. در واقع هدف فرار از پیچیدگیهای Perl و نوشتن CGI با زبانهایی مثل C و ارائه دستوراتی ساده برای طراحان صفحات وب بود. پی اچ پی اولیه زبانی با دستورات محدود و ساده بود که بیشتر برای کارهای ساده و برای طراحان وب سایتها و نه برنامه نویسان حرفه ای بود. این زبان کم کم پیشرفت کرد و بخصوص Open Source بودن آن باعث شد تسریع این حرکت شد. در مرحله اول تعداد دستورات و توابع این زبان گسترش پیدا کرد بطوریکه امروز نیز براحتی کارهای نسبتا پیچیده ای مثل کار با سوکتها یا تصاویر با توابع این زبان قابل اجرا است. همچنین از لحاظ معماری این زبان با پشتیبانی از شی گرایی پیشرفت مهم دیگری داشته است. پی اچ پی به طور کلی یکی از زبانهای معمول برای نوشتن اسکریپتهای اجرایی در محیط یونیکس ، لینوکس (هرچند که در ویندوز نیز به خوبی اجرا می شود) و کار با نرم افزار مدیریت بانک اطلاعات MySQL است.

زبان Node.js چیست ؟

 Node.js یک پلتفرم بر اساس موتور جاوا اسکریپت گوگل V8  است. Node.js برای ساخت سریعتر و مقیاس پذیرتر اپلیکیشن های تحت شبکه می باشد.این پلتفرم از  تکنولوژی non-blocking I/O که یک تکنولوژی event-driven به جای استفاده از روش سنتی Treading  است.

در زبان های سمت سرور موجود مانند java ,PHP  هر کاربری که به سرور متصل می شود یک thread به ازای آن کاربر به وجود می آید.اگر تعداد اتصال های همزمان افزایش یابد ناچار به افزایش منابع مانند حافظه RAM  و افزایش سرور های موجود خواهیم بود که این به نوبه خود سبب افزایش هزینه ها خواهد شد.

Node.js این مشکل را به وسیله نحوه تغییر اتصال به سرور حل می کند.در این روش هر اتصال به صورت یک رویداد اجرا می شود و نه به صورت یک thread.

Node.js یک پلتفرم سمت سرور است که بر مبنای موتور جاوا اسکریپتی گوگل موسوم به V8 ایجاد شده و به شما امکان می‌دهد که با کمکjavascript   برای سمت سرور برنامه بنویسید و فقط یک thread ایجاد کنید و تمام درخواست‌ها را به صورت رویداد (event) مدیریت کنید درست مثل مدیریت eventها در جاوا اسکریپت .

 

اشتراک گذاری

رامین نوروزی

ارسال نظر

نشانی ایمیل شما منتشر نخواهد شد.
تمام حقوق برای آذرآنلاین محفوظ می باشد.
enamad