جاوا اسکریپت چیست؟

اگر به برنامه نویسی علاقمند باشی یا دستی بر آن داشته باشی میدونی که امروزه زبان های برنامه نویسی مختلفی وجود دارد که هر یک کاربرد خاص خود را دارند. امروزه یکی از محبوب ترین و قدرتمند ترین زبان ها برنامه نویسی جاوا اسکریپت است که علاوه بر استفاده در سمت کلاینت جهت ایجاد صفحات وب پویا، برای برنامه نویسی سمت سرور و طراحی برنامه های دسکتاپ استفاده می شود. همچنین شاید جالب باشه که بدونی طراحی اپلیکیشن اندروید یا IOS با جاوا اسکریپت امکان پذیر است!! اگر میخای با آموزش جاوا اسکریپت به برنامه نویس حرفه ای و همه فن حریف تبدیل بشی در این مقاله همراه ما باش.جاوا اسکریپت چیست؟زبان جاوا اسکریپت چیست؟جاوا اسکریپت الان که در سال 2020 هستیم یکی از خفن ترین و همه فن حریف ترین زبان های برنامه نویسی که روز به روز در حال پیشرفت است. جاوا اسکریپت چند سال متوالی است که با کسب بیشترین امتیاز در سایت StackOverFlow رتبه اول زبان های برنامه نویسی را به خود اختصاص میده. جاوا اسکریپت یک زبان سطح بالاست و به زبان انسان (انگلیسی) نزدیک است. همونطور که میدونیم کامپیوتر ها فقط صفر و یک رو میفهمند اما کار با زبان های سطح پایین که به زبان کامپیوتر یعنی صفر و یک نزدیک است بسیار مشکل است به همین دلیل زبان های سطح بالایی مانند جاوا اسکریپت ایجاد شدند تا کدنویسی برای انسان ها آسان و قابل فهم تر باشد.زبان JavaScript یک زبان مفسری است. زبان های مفسری زبان هایی هستند که سورس کد برنامه به صورت خط به خط اجرا و تفسیر می شود و پس از اجرای خط اول به خط بعدی می رود. زبان های مفسری نسبت به زبان های کامپایلری که سورس کد به صورت یکجا اجرا می شود از سرعت اجرا کمتری برخوردار هستند اما خطایابی در آن ها آسان تر است. همچنین زبان های مفسری به علت اجرای همزمان توسط مفسر به سیستم عامل وابستگی ندارند. همچنین امروزه اصول شی گرایی به بهترین نحو در جاوا اسکریپت قابل پیاده سازی است.تاریخچه جاوا اسکریپتBrendan Eich یکی از اعضای شرکت Netscape جاوا اسکریپت در سال 1995 به وجود آورد. قبل از تولد جاوا اسکریپت صفحات وب ابتدا فقط با HTML ساخته می شدند که بسیار زشت بودند پس از مدتی با رنمایی CSS صفحات وب جان گرفتند و زیبا شدند اما همچنان جای یک زبان برای پردازش عملیات های سمت مرورگر کاربر و دستکاری کد های HTML خالی بود که آقای براندان ایچ مامور ایجاد آن بود. جاوا اسکریپت یک زبانی است شبیه با زبان جاوا اما با ساختار و سینتکس ساده تر و قابل استفاده برای همه!چون در آن زمان، زبان جاوا بسیار محبوب بود. نام این زبان جاوا اسکریپت گذاشته شد تا با یک انتخاب هوشمندانه بخشی از بازار و طرفداران جاوا را ربوده و از آن خود کند. در ادامه سازمان ECMA مسئول استاندارد سازی این زبان شد و اولین اکما اسکریپت با نام ECMA-262 در سال 1997 و آخرین آن که ECMAScript 2020 نام دارد و در سال 2020 منتشر شد.جاوا اسکریپت در سمت کاربر و سمت سرورشاید چند سال پیش هذف از یادگیری جاوا اسکریپت تنها پردازش و اعمال تغییرات سمت مرورگر کاربر بود اما جاوا اسکریپت ثابت کرد خیلی از این حرف ها قوی تر عمل میکنه و میشه باهاش پا به دنیای جذاب برنامه نویسی سمت سرور گذاشت!!!! شاید بگی چطوری؟؟ الان بهت میگم.در سال 2020 که این مقاله نوشته شده با جاوا اسکریپت و فریمورک های قوی که در سمت توسعه سمت Client داره میشه تقریبا هر وب اپلیکیشنی رو به بهترین و حرفه ای ترین حالت ممکن طراحی کرد. با فریمورک های جاوا اسکریپتی مانند React , Vue js , Angular میشه وب اپلیکیشن های نوین تک صفحه ای Single Page و برنامه های Server Less ساخت. این فریمورک ها توانسته اند در مدت زمان کوتاه به علت کارایی بالا، محبوبیت بالایی کسب کرده و در استارت آپ ها و سایت های بزرگی مورد استفاده قرار بگیرند.همونطور که اطلاع داریم تمام سایت ها و پلفرم ها نیاز به برنامه نویسی و پیاده سازی منطق و عملیات های برنامه در سمت سرور دارند . جاوا اسکریپت پس از بدست گرفتن برنامه نویسی سمت کاربر، حالا با ابزار های قوی چون Node js وارد میدون توسعه سمت سرور شده. Express.JS محبوب ترین فریمورک نود جی اس است که برای پیاده سازی پلفرم های در سمت سرور به کار گرفته میشه.همچنین با React Native قادر به پیاده سازی اپلیکیشن های موبایل برای اندروید و IOS خواهید بود و با Electron js بهترین برنامه های تحت دسکتاپ رو برای پلتفرم های مختلفی مانند ویندوز و مکینتاش و ... میتوان ساخت.نحوه کار جاوااسکریپت در مرورگر هاشاید تا اینجای کار سوالی در ذهنت به وجود آمده باشه که جاوا اسکریپت چگونه در مرورگر های مختلف اجرا میشه؟ جواب این سوال موتور های پردازشی است!! مرورگر های مختلف هر یک دارای موتور پردازشی مختص به خود هستند که کدهای جاوا اسکریپت را اجرا می کنند:SpiderMonkey موتور پردازش فایرفاکسV8 موتور پردازش کروم و اپراTrident و Chakra موتور پردازش ورژن های مختلف اینترنت اکسپلوررChakraCore موتور پردازش مرورگر EdgeNitro و SquirrelFish موتور پردازش مرورگر سافاری اپلاین موتورها وظیفه ترجمه کدهای جاوا اسکریپتی در مرحله اول و سپس تبدیل به زبان ماشین و در نهایت اجرا کدها را بر عهده دارند. قابل ذکر است که جاوا اسکریپت علاوه بر مرورگرها تقریبا بر روی تمام پلفرم ها قابل اجرا است.مزایا جاوا اسکریپتهر زبان برنامه نویسی دارای مزایا و معایبی است و جاوا اسکریپت هم از آن مستثنی نیست. در ادامه برخی از مهمترین نقاط قوت و نقاط ضعف جاوا اسکریپت رو بررسی می کنیم:محبوب ترین زبان برنامه نویسی چند سال متوالی بر اساس آمار سایتstackoverflowبدون نیاز به کامپایلر اجرا می شود.بسیار سریع و سبک است.وجود ابزارها و فریمورک های زیاد مانند Jquery , Ajax , React js , Vue js , Angularساخت انیمیشن و اسلاید تصاویردستکاری کدهای HTMLاجرا در مروگر ها و اجرا سمت سروراجرا روی تقریبا تمامی پلتفرم ها به صورت کراس پلتفرمو صد ها مزایای دیگر ...معایب جاوا اسکریپتخطایابی و رفع اشکالات احتمالی ممکن است کمی دشوار به نظر برسد.در برخی مواقع امکان عدم یکپارچگی به علت اجرا در پلتفرم های مختلف وجود دارد.نفوذ پذیری نسبتا بالا نسب به عوامل مخرب مانند اکسپلویت‌هاآیا جاوا اسکریپت همان جاوا است؟خییییر، اصلا دچار چنین اشتباهی نشو! این فقط یک شباهت اسمی است! جاوا و جاوا اسکریپت هر دو زبان برنامه نویسی قدرتمندی هستند اما از نظر کد نویسی و سینتکس و نحوه اجرا کاملا متفاوت هستند.همانطور که در بالا گفته شد علت شباهت نام این دو زبان به زمان تلود جاو اسکریپت بر میگرده که به علت محبوبیت بالای زبان جاوا در آن زمان تصمیم گرفته شد نام این زبان جدید جاوا اسکریپت باشد تا این شباهت نام باعث جلب توجه برنامه نویس ها شود.تفاوت جاوا اسکریپت و اکما اسکریپت چیست؟همونطور در این مقاله بررسی کرئیم جاوا اسکریپت یک زبان برنامه نویسی است اما اکما اسکریپت ECMAScript یک استاندارد بهینه برای جاوا اسکریپت است و تمام مرورگرها موتورهای پردازشی خود را بر اساس این استانداردها بروزرسانی می کنند. اولین اکما اسکریپت با نام ECMA-262 در سال 1997 و آخرین آن که ECMA 11 نام دارد در سال 2020 منتشر شده است.بیا نتیجه بگیریمدر این مقاله به بررسی جاوا اسکریپت پرداختیم و با ویژگی های آن آشنا شدیم. متوجه شدیم جاوا اسکریپت امروزه علاوه بر سمت کاربر در سمت سرور با استفاده از ابزاری مانند Node js قابل به کار گیری است و حتی میشه با جاوا اسکریپت اپلیکیشن های موبایل و برنامه های تحت دسکتاپ برای پلتفرم های مختلف طراحی کرد. پیش بینی ها ر ارتباط با توسعه وب نشان داده که این زبان قدرتمند روز به روز بیش از پیش مورد استفاده قرار گرفته و به قول معروف بیش از پیش بازار را در دست خود خواهد گرفت. جاوا اسکریپت و تسلط بر فریمورک های آن یک امتیاز عالی در بازار ایران و دنیا به حساب میاد و دارای بازار کار بسیار مناسبی است. اگر تصمیم گرفتی تبدیل به جاوا اسکریپت کار حرفه ای بشی آموزش جاوا اسکریپت در هیرود را دنبال کن ?منبع: هیرود