موضوع مقاله: تاریخچه نسخه‌های اکما اسکریپت | مخاطب: عمومی | لحن: دانشنامه‌ای | ساختار: عنوان، مقدمه، 3 بخش، جمع‌بندی | مقاله: | # تاریخچه نسخه‌های اکما اسکریپت | مقدمه: اکما اسکریپت یک استاندارد برای زبان جاوااسکریپت است که توسط اکما اینترنشنال توسعه یافته است. | ## بخش 1: تاریخچه نسخه‌های اکما اسکریپت | نسخهتاریخ انتشارنامتغییرات از نسخه قبلیویرایشگر۱ژوئن ۱۹۹۷نسخه اولگای لستلی جونیور۲ژوئن ۱۹۹۸تغییرات سینتکس برای حفظ مشخصات به‌طور کامل با استاندارد بین‌المللی ISO / IEC 16262 هماهنگ شده‌است.مایک کولیشاو۳دسامبر ۱۹۹۹عبارت باقاعده اضافه شده، مدیریت کردن بهتر رشته‌ها، بیانیه‌های جدید برای کنترل، هندل کردن استثناها به وسیلهٔ try/catch ، تعریف دقیق تر از خطاها، قالب بندی برای خروجی عددی و سایر امکانات هامایک کولیشاو۴رها شدهبه دلیل اختلافات سیاسی در مورد پیچیدگی زبان، نسخه چهارم رها شد.بسیاری از ویژگی‌های ارائه شده برای نسخه چهارم به صورت کامل حذف شدند و برخی از آنها در نسخه ششم قرار گرفتند.۵دسامبر ۲۰۰۹مود "strict" اضافه می‌شود، یک زیرمجموعه به منظور بررسی دقیق تر خطا و اجتناب از ساختارهای احتمالی خطا ارائه می‌شود.ابهامات زیادی را در مشخصات نسخه ۳ روشن می‌سازد و رفتارهای پیاده‌سازی شده دنیای واقعی را که از مشخصات آن متفاوت است فراهم می‌کند.ویژگی‌های جدیدی از قبیل دریافت کننده‌ها و تنظیم کننده‌ها، پشتیبانی از کتابخانه JSON و انعکاسکامل تر در مورد خواص شیءها اضافه می‌شود.Pratap Lakshman , Allen Wirfs-Brock۵٫۱ژوئن ۲۰۱۱این ویرایش ۵٫۱ استاندارد اکما اسکریپت به‌طور کامل با نسخه سوم استاندارد بین‌المللی ISO / IEC 16262: 2011 سازگار است.Pratap Lakshman, Allen Wirfs-Brock۶ژوئن ۲۰۱۵اکما اسکریپت ۲۰۱۵ (ES2015)نسخه ۶ - اکما اسکریپت ۲۰۱۵ را ببینیدآلن ویرفس بروک۷ژوئن ۲۰۱۶اکما اسکریپت ۲۰۱۶ (ES2016)نسخه ۷ - اکما اسکریپت ۲۰۱۶ را ببینیدبراون ترلسون۸ژوئن ۲۰۱۷اکما اسکریپت ۲۰۱۷ (ES2017)نسخه ۸ - اکما اسکریپت ۲۰۱۷ را ببینیدبراون ترلسون۹ژوئن ۲۰۱۸اکما اسکریپت ۲۰۱۸ (ES2018)نسخه ۹ - اکما اسکریپت ۲۰۱۸ را ببینیدبراون ترلسون۱۰ژوئن ۲۰۱۹اکما اسکریپت ۲۰۱۹ (ES2019)نسخه ۱۰ - اکما اسکریپت ۲۰۱۹ را ببینیدبراون ترلسون، بردلی فاریاس، جردن هاربند۱۱ژوئن ۲۰۲۰اکما اسکریپت ۲۰۲۰ (ES2020)نسخه ۱۱ - اکما اسکریپت ۲۰۲۰ را ببینیدجردن هاربند، کوین اسمیت۱۲ژوئن ۲۰۲۱اکما اسکریپت ۲۰۲۱ (ES2021)نسخه ۱۲ - اکما اسکریپت ۲۰۲۱ را ببینیدجردن هاربند، شویو گو، مایکل فاکارا، کوین اسمیت۱۳ژوئن ۲۰۲۲اکما اسکریپت ۲۰۲۲ (ES2022)نسخه ۱۳ - اکما اسکریپت ۲۰۲۲ را ببینیدشویو گو، مایکل فاکارا، کوین اسمیت در ژوئن 2004 Ecma International استاندارد ECMA-357 را منتشر کرد، که در آن یک اکستنشن برای اکما اسکریپت، به نام اکما اسکریپت برای XML (یا E4X) تعریف شده‌است. نسخه ۴ (رها شده) چهارمین نسخه ECMA-262 (یا 4 اکما اسکریپت یا ES4) اولین نسخه بزرگ اکما اسکریپت از زمان انتشار سوم آن در سال ۱۹۹۹ بود. مشخصات (همراه با اجرای مرجع) برای کامل کردن آن تا اکتبر ۲۰۰۸ مورد هدف قرار گرفت. خلاصه ای از این زبان توسط گروهی که برروی آن کار می‌کردند در ۲۳ اکتبر ۲۰۰۷ منتشر شد. تا اوت ۲۰۰۸، طرح پیشنهادی اکما اسکریپت 4 به یک پروژه با نام اکما اسکریپت Harmony ویرایش یافت. ویژگی‌های مورد بحث برای اکما اسکریپت Harmony در آن زمان شامل موارد زیر بودند: کلاس‌ها یک سیستم ماژول حاشیه نویسی نوع اختیاری و تایپ استاتیک، احتمالاً با استفاده از یک سیستم نوع ساختاری ژنراتورها و تکرار کننده‌ها تخصیص مخرب و انواع داده جبری. هدف این ویژگی‌ها تا حدی برای حمایت بهتر از برنامه‌نویسی در ابعاد بزرگ و پویایی بعضی از توانایی‌های اسکریپت برای بهبود عملکرد بود. به عنوان مثال، تامارین (ماشین مجازی برای اکشن اسکریپت، توسعه داده شده و متن باز شده توسط ادوب) قابلیت پشتیبانی فقط در زمان تدوین (JIT) را برای کلاس‌های خاصی از اسکریپت داشت. علاوه بر معرفی ویژگی‌های جدید، پیشنهاد اصلاح کردن بعضی از اشکالات و باگ‌های ES3 در نسخه ۴ داده شد. اینها و دیگر اصلاحات و پشتیبانی از رمزگذاری/رمزگشایی JSON، به اکما اسکریپت، در مشخصات نسخه ۵ اضافه شد. پس از آن که مشخصات ES-CP (مشخصات جامع) تکمیل شد کار بر روی نسخه ۴ آغاز گردید و در حدود ۱۸ ماه ادامه یافت که آن پیشرفت‌های آهسته موجب همزمان شدن تئوری جاوا اسکریت ۲ نت اسکیپ با تجربه پیاده‌سازی جی اسکریپت دات نت مایکروسافت شد. | ## بخش 2: تاریخچه نسخه‌های اکما اسکریپت | در اواخر سال ۲۰۰۷، یک بحث بین آیک، که بعداً به عنوان CTO بنیاد موزیلا انتخاب شد، و کریس ویلسون، معمار پلتفرم مایکروسافت برای اینترنت اکسپلورر، در تعدادی از وبلاگ‌ها پخش شد. ویلسون اخطار داد که به دلیل تغییرات پیشنهادی اکما اسکریپت، این زبان در بعضی موارد با نسخه‌های قبلی موجب ناسازگاری خواهد شد، این به روز رسانی منجر به «شکستن وب» و سهامدارانی که با تغییرات مخالفت می‌کنند، «از دیدگاه مخفی» خواهند شد. آیک با بیان اینکه ویلسون "موارد جعلی را در وبلاگ " تکرار می‌کند، پاسخ خود را آغاز کرد و با این که تلاشی برای سرکوب مخالفان و به چالش کشیدن منتقدان با ارائهٔ نمونه‌هایی خاص از ناسازگاری وجود داشته‌است، مخالفت کرد. نسخه ۵ یاهو، مایکروسافت، گوگل و دیگر مخالفان نسخه چهارم، کمیته فرعی را برای طراحی یک به روز رسانی کمتر جاه طلبانهٔ اکما اسکریپت ۳ تشکیل دادند که به‌طور آزمایشی اکما اسکریپت 3.1 نامگذاری شد. این نسخه بر روی امنیت و به روز رسانی کتابخانه‌ها تمرکز دارد و تأکید زیادی نیز بر سازگاری دارد. پس اتفاق ذکر شده و بحث و اختلاف عموم، تیم اکما اسکریپت 3.1 و اکما اسکریپت 4 با سازش موافقت کردند: "دو نسخه به طور موازی با هماهنگی بین تیم‌ها کار خواهند کرد تا اطمینان حاصل شود که اکما اسکریپت 3.1 همچنان یک زیرمجموعه اصلی از اکما اسکریپت 4 در مفهوم و سینتکس زبان، خواهد ماند. " با این حال، فلسفه‌های مختلف در هر تیم منجر به شکست‌های مکرر در قانون زیرمجموعه شدن نسخه‌های قدیمی در نسخه‌های جدیدتر شد، و شکی ایجاد کرد که آیا مخالفان اکما اسکریپت ۴ در آینده از این نسخه حمایت خواهند کرد و آن را ارائه خواهند داد یا نه. پس از گذشت بیش از یک سال از اختلاف نظر در مورد آینده اکما اسکریپت در کمیته ۳۹ فنی اکما، این دو تیم در ماه ژوئیه ۲۰۰۸ به توافق جدید دست یافتند: برندان آیک اعلام کرد که اکما TC39 بر روی پروژه اکما اسکریپت ۳٫۱ (که بعدها به اکما اسکریپت نسخه ۵ تغییر یافت) با همکاری کامل تمام گروه‌ها و فروشندگان که حداقل دو پیاده‌سازی متقابل را تا اوایل سال ۲۰۰۹ هدف قرار می‌دهند با تمرکز کار خواهند کرد. در آوریل ۲۰۰۹، اکما TC39 طرح «نهایی» نسخه پنجم را منتشر کرد و اعلام کرد که تست‌های پیاده‌سازی‌های متقابل از این خبر می‌دهند که تا اواسط ماه ژوئیه کامل خواهند شد. نسخه ۶ - اکما اسکریپت ۲۰۱۵ نسخه ششم، که ابتدا اکما اسکریپت ۶ (ES6) شناخته شد و بعداً به اکما اسکریپت ۲۰۱۵ تغییر نام یافت، در ژوئن ۲۰۱۵ نهایی شد. به عنوان اولین مشخصه "هارمونی اکما اسکریپت"، آن را به عنوان "هارمونی ES6 " نیز می‌شناسند. | ## بخش 3: تاریخچه نسخه‌های اکما اسکریپت | نسخه ۷ - اکما اسکریپت ۲۰۱۶ نسخه هفتم، که به‌طور رسمی اکما اسکریپت ۷ شناخته می‌شود، در ژوئن ۲۰۱۶ نهایی شد. ویژگی‌های استاندارد اصلی عبارتند از بلوک دامنه برای متغیرها و توابع، الگوهای تخریب (برای متغیرها)، صدا زدن توابع دنباله وار، اپراتور توانی ** برای اعداد، کلمات کلیدیawait وasync برای برنامه‌نویسی به صورت غیر همزمان. نسخه ۸ - اکما اسکریپت ۲۰۱۷ نسخه هشتم، که به‌طور رسمی اکما اسکریپت ۲۰۱۷ شناخته می‌شود، در ژوئن ۲۰۱۷ نهایی شد. نسخه ۹ - اکما اسکریپت ۲۰۱۸ نسخه ۹، که به‌طور رسمی اکما اسکریپت ۲۰۱۸ شناخته می‌شود، در ژوئن ۲۰۱۸ نهایی شد. نسخه ۱۰ - اکما اسکریپت ۲۰۱۹ نسخه ۱۰، که به‌طور رسمی اکما اسکریپت ۲۰۱۹ شناخته می‌شود، در ژوئن ۲۰۱۹ نهایی شد. نسخه ۱۱ - اکما اسکریپت ۲۰۲۰ نسخه ۱۱، که به‌طور رسمی اکما اسکریپت ۲۰۲۰ شناخته می‌شود، در ژوئن ۲۰۲۰نهایی شد. نسخه ۱۲ - اکما اسکریپت ۲۰۲۱ نسخه ۱۲، که به‌طور رسمی اکما اسکریپت ۲۰۲۱ شناخته می‌شود، در ژوئن ۲۰۲۱ منتشر شد. نسخه ۱۳ - اکما اسکریپت ۲۰۲۲ نسخه ۱۳، که به‌طور رسمی اکما اسکریپت ۲۰۲۲ شناخته می‌شود، در ژوئن ۲۰۲۲ منتشر شد. این نسخه await سطح بالا را معرفی می‌کند و اجازه می‌دهد کلمه کلیدی در سطح بالای ماژول‌ها استفاده شود. ES.Next ای اس دات نکست نام پویایی است که به هر آنچه که نسخه بعدی در زمان نوشتن است، اشاره دارد. | ## جمع‌بندی | (در واقع امکانات نسخه‌های بعدی اکما اسکریپت) ویژگی‌های ای اس دات نکست به‌طور صحیح پیشنهاد نامیده می‌شوند، زیرا، با این تعریف، مشخصات و امکانات آن هنوز مشخص و نهایی نشده‌است.