اکما اسکریپت (ECMAScript) چیست و تفاوت آن با JavaScript❤️
اکما اسکریپت (ECMAScript) چیست و چه تفاوتی با جاوا اسکریپت (JavaScript) دارد؟ احتمالا شما نیز واژه اکما اسکریپت (ECMAScript) را شنیده باشید. بعضیها تصور میکنند که اکما اسکریپت همان جاوا اسکریپت است. بعضی دیگر فکر میکنند که اکما اسکریپت یک زبان جدا از جاوا اسکریپت است. هردوی این تصورات درباره ECMAScript و JavaScript اشتباه هستند. در این مقاله از آموزش برنامه نویسی، ابتدا به تعریف اکما اسکریپت و جاوا اسکریپت خواهیم پرداخت و سپس به تفاوت بین اکما اسکریپت (ECMAScript) و جاوا اسکریپت (JavaScript) خواهیم پرداخت.
موضوعاتی که در این مقاله بررسی خواهیم کرد:
- تفاوت بین اکما اسکریپت و جاوا اسکریپت چیست؟
- جاوا اسکریپت (JavaScript) چیست؟
- سازمان اکما اینترنشنال (ECMA International) چیست؟
- اکما اسکریپت (ECMAScript) چیست؟
- چرا جاوا اسکریپت از استاندارد اکما اسکریپت استفاده میکند؟
- تفاوت بین ECMAScript و JavaScript
- ورژنهای مختلف جاوا اسکریپت براساس استاندارد ECMAScript
تفاوت بین اکما اسکریپت و جاوا اسکریپت چیست؟
قبل از اینکه به تفاوت میان اکما اسکریپت و جاوا اسکریپت بپردازیم، ابتدا باید تعریفی از هردو داشته باشیم و در انتها به تفاوت بین آنها بپردازیم. پس در ادامه مقاله با ماه همراه باشید.
جاوا اسکریپت (JavaScript) چیست؟
جاوا اسکریپت با کوتهنوشت (JS)، یک زبان اسکریپتنویسی همه منظوره، چند پارادایمی، کراس پلتفرم، مفسری، سطح بالا و شیءگرا است. البته موتورهای جدید جاوا اسکریپت قابلیت کامپایل در لحطه را دارند که باعث شده است سرعت آن افزایش پیدا کند.
با اینکه جاوا اسکریپت یک زبان اسکریپتنویسی است اما با قدرتی که دارد از آن به عنوان زبان برنامه نویسی نیز یاد میشود. توسط جاوا اسکریپت میتوان در هر پلتفرمی (ویندوز، لینوکس، مک، اندروید، iOS و...) برنامه نویسی کرد.
اولین نسخه جاوا اسکریپت در سال 1995 توسط برندان آیک در شرکت نتاسکیپ (Netscape) با نام Mocha طراحی شد و بعدها به LiveScript و در نهایت به JavaScript تغییر نام پیدا کرد. جاوا اسکریپت با زبان برنامه نویسی جاوا کاملا متفاوت است و شباهت نام آنها به این دلیل است که زبان برنامه نویسی جاوا در آن زمان محبوب بود و برندان آیک بخاطر بازاریابی، نام آن را جاوا اسکریپت گذاشت تا مخاطبان زیادی جذب شوند.
برای اطلاعات بیشتر در مورد جاوا اسکریپت، مقاله زیر را مطالعه کنید:
سازمان اکما اینترنشنال (ECMA International) چیست؟
ECMA مخفف کلمات «European Computer Manufacturers Association» به معنی «سازمان تولیدکنندگان کامپیوتر اروپا» است. ECMA International یک سازمان بینالمللی است که به طور ویژه در حوزه توسعه استانداردهای الکترونیکی و کامپیوتری فعالیت میکند. به همین دلیل معمولاً به عنوان سازمان استانداردسازی معروف است. این سازمان در سال 1961 تأسیس شد و در حال حاضر دفتر اصلی آن در سوئیس قرار دارد.
سازمان ECMA به همراه سایر سازمانهای استانداردسازی، به تعیین استانداردهای جدید و بهبود فرایندهای صنعتی مرتبط با تکنولوژیهای مختلف، مانند زبانهای برنامه نویسی و ارتباطات بیسیم، پردازش سریع و ذخیرهسازی دادهها، میپردازد. هدف اصلی این سازمان، تسهیل و بهبود فرایندهای صنعتی مختلف با استفاده از استانداردهای جدید الکترونیکی و کامپیوتری است.
به عبارت سادهتر، سازمان ECMA سعی میکند یک سری قوانین و مقررات بینالمللی وضع کند تا کل دنیا از این قوانین تبعیت کنند و لوازم الکترونیکی و کامپیوتری را بهصورت یکپارچه و با استانداردهای مشخص جهانی تولید کنند. این کار باعث میشود که هر کشور، منطقه و... بهصورت خودسر طبق قوانین خود لوازم الکترونیکی و کامپیوتری نسازند.
برای مثال هماکنون در سرتاسر جهان، لوازم الکترونیکی بسیاری به شکلهای مختلف تولید میشوند که باید با ولتاژ برق خانگی کشورهای مختلف سازگار باشند. این موضوع منجر به افزایش هزینه تولید محصول و عدم یکپارچگی آن میشود که سازمان بینالمللی ECMA این قبیل مشکلات را حل کرده است.
اکما اسکریپت (ECMAScript) چیست؟
اکما اسکریپت با کوتهنوشت (ES)، یک زبان استاندارد برای اسکریپتنویسی است که توسط سازمان ECMA طراحی و استانداردسازی شده است. هماکنون نیز این استانداردسازیها هر سال در حال توسعه و بهبود هستند.
اگر بخواهیم سادهتر بگوییم، اکما اسکریپت (ECMAScript) یک سری قوانین و استانداردسازیهای تعیین شده توسط سازمان ECMA است و هرکسی میتواند این قوانین را رعایت کند و زبان اسکریپتنویسی خودش را بسازد. زبان جاوا اسکریپت نیز براساس استانداردهای ECMAScript در حال توسعه و بهبود است.
چرا جاوا اسکریپت از استاندارد اکما اسکریپت استفاده میکند؟
جاوا اسکریپت تا سال 1997 استانداردسازی نشده بود و بهطور گسترده هم پذیرفته نشده بود. این مسئله باعث شده بود که مرورگرهای مختلف با اجرای جاوا اسکریپت به مشکل بخورند و بهطور صحیح و مشابه هم اجرا نشوند. در حقیقت هر مرورگر موتور (Engine) مخصوص به خود را داشت و وظیفه موتورها این بود که کدهای جاوا اسکریپت (سطح بالا) را به کد ماشین (سطح پایین) تبدیل کرده تا برای کاربر به اجرا در بیاید.
تفاوت موتورهای (Engine) در هر مرورگر، باعث میشد که کدهای جاوا اسکریپت در مرورگرهای مختلف به شکل متفاوتی اجرا شوند. مرورگرها نیازمند این بودند که از یک سری استاندارد بینالمللی تبعیت کنند تا کدها در مرورگرهای مختلف به شکل یکسان اجرا شوند.
بخاطر همین مسئله شرکت نتاسکیپ، جاوااسکریپت را به سازمان اکما اینترنشنال (ECMA International) برای استانداردسازی ارسال کرد و نتیجه آن نسخه استاندارد شدهای به نام اکما اسکریپت (ECMAScript) شد.
تفاوت بین ECMAScript و JavaScript
در حقیقت جاوا اسکریپت یک زبان اسکریپتنویسی است که تا قبل از سال 1997 استانداردسازی نشده بود و از سال 1997 مطابق استانداردهای ECMAScript توسعه داده شد تا مرورگرهای مختلف در اجرای کدهای جاوا اسکریپت مشابه هم عمل کنند و به مشکل برنخورند.
اولین نسخه استاندارسازی جاوا اسکریپت با نام رسمی ECMAScript 1 و نام غیررسمی ES1 منتشر شد. بزرگترین تغییرات جاوا اسکریپت در نسخههای ES5 در سال 2009 و ES6 در سال 2015 بودند. جاوا اسکریپت از سال 2016 نام غیررسمی را در آن حذف کرد و با نام رسمی ECMAScript 2016 ارائه کرد. از آن زمان هر سال یک ورژن جدید ارائه میکند.
ورژنهای مختلف جاوا اسکریپت براساس استاندارد ECMAScript
سال انتشار | نام رسمی | نام غیر رسمی |
1997 | ECMAScript 1 | ES1 |
1998 | ECMAScript 2 | ES2 |
1999 | ECMAScript 3 | ES3 |
منتشر نشد. | ECMAScript 4 | ES4 |
2009 | ECMAScript 5 | ES5 |
2015 | ECMAScript 2015 | ES6 |
2016 | ECMAScript 2016 | - |
2017 | ECMAScript 2017 | - |
2018 | ECMAScript 2018 | - |
2019 | ECMAScript 2019 | - |
2020 | ECMAScript 2020 | - |
2021 | ECMAScript 2021 | - |
2022 | ECMAScript 2022 | - |
جمعبندی
تفاوت بین ECMAScript و JavaScript چیست؟ در این مقاله دانستیم که سازمان بینالمللی اکما یا ECMA International چیست؟ سپس با تعریف اکما اسکریپت (ECMAScript) آشنا شدیم. در نهایت به تفاوت بین اکما اسکریپت و جاوا اسکریپت پرداختیم. اگر سوالی درباره جاوا اسکریپت و اکما اسکریپت دارید، لطفا در قسمت نظرات با ما در میان بگذارید.