فرق بین جاوا و جاوا اسکریپت چیست ؟

تاریخ : ۱۱ آبان ۱۳۹۵ | دسته بندی : مقالات | برچسب ها : ,,,,,

شاید اگر از بسیاری از افراد که دانش لازم در خصوص برنامه نویسی را ندارند سئوال کنید که تفاوت بین جاوا و JavaScript در چیست به شما در پاسخ بگویند که JavaScript یک زبان برنامه نویسی است که از جاوا برگرفته شده است و یکی از نوادگان یا نسل های برنامه نویسی جاوا است ، این مطلب نه تنها درست نیست بلکه کاملا اشتباه است و تفاوت این دو زبان در واقعیت بسیار بیشتر از اینها است.

جاوا یک زبان برنامه نویسی شیء گرا یا Object Oriented است که با استفاده از یک مفسر یا interpreter قابلیت اجرا شدن بر روی چندین سیستم عامل را دارد. زبان برنامه نویسی جاوا توسط شرکت Sub Microsystems طراحی و پیاده سازی شد و هدف اصلی آن ایجاد کردن زبان برنامه نویسی با قابلیت تولید نرم افزار قابل استفاده بر روی پلتفرم های مختلف بود. از طرفی JavaScript توسط شرکت Netscape طراحی و معرفی شد و در واقع یک زبان برنامه نویسی به حساب نمی آید بلکه یک زبان اسکریپت نویسی است که بیشتر شبیه به زبان های برنامه نویسی سمت کلاینت یا Client Side ای مثل PHP عمل می کند. این زبان اسکریپت نویسی قابلیت ایجاد کردن نرم افزارهای Stand Alone مثل جاوا را ندارد که بتواند در چندین پلتفرم کار کند در عوض زبان اسکریپت نویسی است که برای استفاده در مرورگرهای اینترنتی طراحی و پیاده سازی شده است.
ایده زبان برنامه نوسی جاوا بر روی کاغذ بسیار جذاب و جالب بود ، این زبان برنامه نویسی به برنامه نویس ها این امکان را می داد که بتوانند یک برنامه نویسند که بتواند در اکثر سیستم عامل ها کار کند. جاوا برای رسیدن به این هدف تصمیم گرفت از زبان کد نویسی استفاده کند که در هیچ سیستم عاملی بصورت ذاتی وجود نداشته باشد. در عوض جاوا کدهای خاص خود را تولید می کرد و آن را توسط یک ماشین مجازی اجرا می کرد و توسط یک مفسر یا مترجم یا چیزی که شما به عنوان interpreter می شناسید کد مربوطه را به کد بومی سیستم عامل مربوط تبدیل می کرد. همانطور که گفتیم پروژه جاوا روی کاغذ پروژه بسیار خوبی بود اما مشکل اصلی که وجود داشت این بود که کدهای جاوا با توجه به فرآیند تبدیلی که باید انجام می شد به نسبت کدهای بومی یا Native Code های خود سیستم عامل کند تر اجرا می شدند. دلیل این کندی چیزی جز این نبود که هر کدام از کدهای جاوا مجبور بودند که برای اجرا دو بار پردازش شوند ، ابتدا یک فرآیند پردازشی توسط ماشین مجازی و فرآیند پردازشی بعدی توسط سیستم عامل مورد نظر بایستی انجام می شد.

JavaScript همانطور که اعلام کردیم یک زبان اسکریپت نویسی است بنابراین نیازی به فرآیند کامپایل شدن و کامپایلر ندارد و توسط مرورگر یا Browser های اینترنت اجرا می شود. زمانیکه یک مرورگر اینترنتی مثل فایرفاکس یا کروم یا اینترنت اکسپلورر خدا بیامرز یک کد JavaScript را دریافت می کند آن را پردازش می کند و در نهایت دستورهایی که درون اسکریپت وجود دارند را اجرا می کند. هدف اصلی JavaScript این است که سطحی از تعامل را بتواند با کاربران و صفحات وب ایجاد کند که در حالت عادی نمی توان با دستورات و تگ های HTML ساده به آن دست پیدا کرد. از JavaScript می توان با ترکیب تکنولوژی های دیگری مثل AJAX نیز استفاده کرد و با اینکار می توان یک محیط تعاملی بسیار خوب با کاربر ایجاد کرد. یکی از قابلیت های جالب JavaScript این است که می تواند با عناصری که در کدهای خودش وجود ندارند نیز تعامل برقرار کند این در حالی است که کدهای Java نمی توانند چنین کاری را انجام دهند. نرم افزارهایی که با جاوا نوشته می شوند فقط می توانند خود را درون صفحات HTML جاسازی کنند و از آن زمان به بعد نرم افزار کار خود را انجام می دهد و تعاملی بیشتر از آن نخواهد داشت. جاوا و JavaScript دو زبان کاملا متفاوت هستند که حتی هر کدام برای اجرا شدن به نیازمندیهای کاملا متفاوتی وابسته هستند . نصب کردن قابلیت جاوا بر روی مرورگرهای اینترنتی شما اصلا به این معنی نیست که شما از این به بعد می توانید از اسکریپت هایی که توسط JavaScript نوشده شده اند بر روی انها استفاده کنید و این فرآیند کاملا برعکس نیز وجود دارد ، بصورت کلی می توانیم تفاوت های جاوا و JavaScript را به شکل زیر عنوان کنیم :

جاوا یک زبان برنامه نویسی شیء گرا است در حالیکه JavaScript یک زبان اسکریپت نویسی شیء گرا است
نرم افزارهای نوشته شده با جاوا قبالیت اجرا بر روی ماشین مجازی و مرورگرهای اینترنتی را دارند اما کدهای JavaScript فقط بر روی مرورگرهای اینترنتی اجرا می شود و ذاتا برای همین نوع کار طراحی و پیاده سازی شده است.
برنامه های نوشته شده با جاوا بایستی کامپایل شوند در صورتیکه کدهای JavaScript فقط یک متن ساده هستند و نیازی به کامپایل ندارندهر کدام از این زبان ها نیاز به پلاگین ها و نیازمندی های متفاوتی برای اجرا شدن دارند.

 

حسن موحد

عاشق طراحی وب سایت هستم و 8 سال هست در این زمینه فعالیت می کنم و تمرکزم بر روی خرسند نگه داشتن مشتری است .

ارسال نظر