اسفند, ۱۳۹۷ بدون نظر اخبار

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

تصور کن یک وب سایت نوشتی. تو ساختار سایتت رو با HTML تعیین می کنی. بعد به سراغ CSS میری و سعی می کنی یه دستی به سر و روی سایت بکشی! خوب بدک نیست… تا اینجای کار یه فسیل سایت از عصر پارینه سنگی داری که تقریبا هیچ حرکتی (به جز انیمیشن های ابتدایی CSS نمی کنه). بذار بگم تو به چی احتیاج داری: معجون زندگی بخش! معجون زندگی بخش، فسیل تو رو به یک دایناسور واقعی تبدیل می کنه! البته حدس می زنم کار وبسایت تو شکار و شرحه شرحه کردن دیگران نباشه. اما به هر حال… old sport عزیز! ما جدا احتیاج به دیدن علائم حیاتی سایتت داریم!

معجون زندگی بخشی که ازش حرف زدم جاوا اسکریپته! javascript در حال حاضر یکی از محبوب ترین زبان های برنامه نویسی دنیاست. اگر این حرفم باعث نمیشه بقیه برنامه نویس های جمع احساس غریبی کنن، در واقع در صورتی که برنامه نویس وب باشی جاوا اسکریپت یکی از سه زبانیه که صددرصد با اون ها سر و کار داری!

Js زبانیه که برای واکنش پذیر کردن صفحات وب و در نتیجه بهبود تجربه کاربری یا UX اون ها استفاده میشه. با استفاده از جاوا اسکریپت می تونی به سایتت چیز های جذابی مثل نقشه، اسلایدر تصاویر، منو های واکنش گرا، پیام های توجه و … رو اضافه کنی.

البته میشه با این محبوب ترین زبان برنامه نویسی برای سمت سرور (Server Side)، اپلیکیشن های موبایل، بازی و اپلیکیشن های دسکتاپ برنامه نوشت. ما اینجا با یک حقه باز همه فن حریف طرف هستیم دوستانِ من!

جاوا اسکریپت چگونه کار می کند

javascript یک جور زبان اسکریپتی بر اساس متنه. یعنی می تونه حتی لا به لای کد های HTML نوشته و وقتی که صفحه در حال لود شدنه اجرا بشه. همینطور برای اجرا مستقیما به کامپایلر احتیاج نداره! اینجا یک سوال بزرگ خودش رو نشون میده! پس جاوا اسکریپت دقیقا چطور اجرا میشه؟

در جواب این سوال باید بگم که مرورگر های مختلف برای اجرای جاوا اسکریپت از موتور خاصی به اسم Javascript Virtual Machine یا ماشین مجازی جاوا اسکریپت استفاده می کنن. این انجین یا موتور در مرورگر های مختلف نام های متفاوتی داره:

  • موتور V8 برای مرورگر های کروم و اپرا
  • موتور SpiderMonkey برای فایرفاکس (میمون عنکبوتی؟!!)
  • موتور Trident و Chakra برای ورژن های مختلف اینترنت اکسپلورر و ChakraCore برای مرورگر Edge
  • موتور Nitro و SquirrelFish برای سافاری (برنامه نویسی را در دریا و جنگل حیوانات تجربه کنید!!!)
  • و…

کلی اسم جانوران خشکی و دریا اینجا آورده شد اما خوب… هنر همه این حیوانات دوست داشتنی به این ترتیبه:

  1. انجین یا موتور جاسازی شده داخل مرورگر (اگر موتور روی مرورگر سوار باشه) js رو ترجمه یا Parse می کنه
  2. انجین اسکریپت ها رو به زبان ماشین کامپایل می کنه
  3. کد زبان ماشین اجرا میشه!

 

البته این رو همین الان بهت بگم! معنی این حرف ها این نیست که جاوا اسکریپت قراره فقط روی مرورگر اجرا بشه! Javascript  به طور شگفت انگیزی روی تقریبا تمام پلتفرم ها با استفاده از همین JavaScript Virtual Machine اجرا میشه! گفتم ‘تقریبا’ چون یک درصد احتمال میدم ممکنه پلتفرمی باشه که جاوا اسکریپت در حال حاضر روش اجرا نشه! من که یه مرتاض هندی نیستم که طالع جاوا اسکریپت رو ببینم!

تاریخچه جاوا اسکریپت

جاوا اسکریپت اولین بار در می ۱۹۹۵ در ۱۰ روز(!) توسط برندن ایچ، یکی از کارکنان شرکت Netscape متولد شد! در ابتدای کار اسم این زبان برنامه نویسی Mocha بود که بعد به Mona تغییر پیدا کرد! در سپتامبر همون سال اسم اون به LiveScript تغییر کرد و در آخر سریال تغییر اسم با انتخاب اسم JavaScript به اتمام خودش رسید! اون هم به این خاطر که اون روز ها زبان برنامه نویسی Java خیلی پرطرفدار شده بود!

به هر حال در سال ۱۹۹۶ جاوا اسکریپت برای استاندارد شدن به سازمان ECMA سپرده شد. در نهایت اولین استاندارد جاوا اسکریپت با نام ECMAScript در سال ۱۹۹۷   منتشر شد. اولین اکما اسکریپت ECMA-262 و آخرین ورژن اون با اسم ECMAScript 2017 در ژوئن ۲۰۱۷ منتشر شد.

نقاط قوت جاوا اسکریپت

جاوااسکریپت چیست ؟-mosiogroup.ir

 

خوب old sport های گرامی! نوبت به بخش جذاب ضیافت رسید! واقعا چرا باید این یارو جاوا اسکریپت اینقدر مهم باشه؟! باید بگم javascript مزایای خیلی زیادی داره (البته اگر برنامه نویس وب هستی در سمت کاربر حق انتخاب خاصی نداری!!!). ولی مجبورم توجه دوستان برنامه نویس اپلیکیشن و دسکتاپم رو با عرق جبین جلب کنم! دوستان من! شما عاشق جاوا اسکریپت میشید اگر بدونید:

  • بر اساس بررسی سایت stackoverflow محبوب ترین زبان برنامه نویسی سال ۲۰۱۸ هست!
  • به کامپایلر احتیاج نداری
  • یادگیری جاوا اسکریپت نسبت به خیلی از زبان های برنامه نویسی راحت تره
  • می تونه به صورت کراس پلتفورم روی مرورگر ها یا پلتفرم های مختلف اجرا بشه
  • وب سایتت رو کنش پذیر کنه و در نتیجه تجربه کاربر یا UX رو بهبود می بخشه
  • نسبت به زبان های برنامه نویسی دیگه سبک تر و سریع تره

نقاط ضعف جاوا اسکریپت

خوب old sport! دنیا جای نامردیه! همیشه در مورد خوبی های چیزی یک قطار حرف داریم. اما در سایه ها، معایب و نقاط ضعف ناجوانمردانه کمین کردن! در واقع همه چیز های خوشمزه یک نیمه سرطانزا در خودشون دارن! در مورد جاوا اسکریپت بیشتر این نقاط ضعف در امنیت خلاصه میشه! نقاط منفی این محبوب ترین زبان برنامه نویسی ۲۰۱۸ از این قراره:

  • نفوذپذیری نسبت به اکسپلویت ها و عوامل مخرب
  • می تونه برای اجرای کد های مخرب روی کامپیوتر کاربران استفاده بشه
  • با رندر شدن متفاوت روی برازر های مختلف می تونه باعث ایجاد تناقض و نداشتن یکپارچگی بشه
  • همیشه روی مرورگر های متفاوت پشتیبانی نمیشه

نتیجه گیری

اگر طراحی سایت رو مثل ساختن یه خونه در نظر بگیریم، تو با HTML در و دیوار های خونه رو اونطور که می خوای بالا میاری و سازی. بعد احتمالا با CSS دیوار ها رو رنگ و بعضی جاها رو کاشی کاری می کنی یا کاغذ دیواری می کشی. خونه به نظر تموم شده ولی رفیق! جدا قابل زندگی نیست! حالا باید با js بهش لامپ و لوستر و پکیج گرمایشی اضافه کنی! توی دنیای واقعی ما با javascript به سایت ها زندگی می بخشیم! علاوه بر اون جاوا اسکریپت برای برنامه نویسی سمت سرور یا بک اند سایت، برنامه نویسی اپلیکیشن های موبایل و برنامه نویسی دسکتاپ و حتی بازی ها استفاده میشه. برای اینکه بفهمی js چطور این کار ها رو می کنه و بیشتر با این دوست حساسمون آشنا بشی، حتما مقالات بعدی رو دنبال کن! در ضمن اگر دوست داری از این دوستمون غیبت یا حتی تعریف کنی قسمت نظرات منتظرته old sport! البته می دونم که جلو روش هم میگی… به هر حال… چقدر خوشحال میشم اگر بدونم مهمون های این ضیافت چه کسانی هستن! امضا: گتسبی!

برچسب ها
درباره نویسنده

Leave a Reply

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *