جاوا اسکریپت چیست ؟ + توضیحات ۰ تا ۱۰۰ کامل / ۲۰۲۲


جاوا اسکریپت چیست ؟ + توضیحات ۰ تا ۱۰۰ کامل
جاوا اسکریپت چیست ؟ JavaScript که به اختصار JS نیز شناخته می شود، یکی از محبوب ترین زبان های برنامه نویسی است. جاوا اسکریپت یک زبان سطح بالا، پویا، شی گرا و تفسیری است که از انواع روش های برنامه نویسی پشتیبانی می کند. این زبان برای برنامه نویسی سمت سرور، اپلیکیشن های موبایل، بازی ها و برنامه های دسکتاپ قابل استفاده است. بنابراین می توان فهمید که زبان برنامه نویسی جاوا اسکریپت یک زبان همه کاره است.
اگر با هر یک از این اصطلاحات آشنا نیستید نگران نباشید، زیرا در زیر به توضیح هر یک از آنها خواهیم پرداخت. برای درک بهتر جاوا اسکریپت، ابتدا باید به سوالاتی مانند زبان کامپایلر چیست و تفاوت زبان مفسر چیست، به چه نوع زبان های برنامه نویسی سمت سرور و سمت کاربر گفته می شود پاسخ دهید؟ بدانید. هنگامی که این مفاهیم را درک کردید، می توانید شروع به یادگیری جاوا اسکریپت کنید.
همانطور که می دانید کامپیوترها فقط به زبان صفر و یک (Binary) صحبت می کنند و زبان دیگری را نمی فهمند. ما ابتدا سعی کردیم با ماشین ها به زبان خودشان که نزدیک به صفر و یک است ارتباط برقرار کنیم. این نوع زبان ها که مستقیماً با پردازنده ارتباط برقرار می کنند، زبان های سطح پایین نامیده می شوند. یکی از این زبان ها اسمبلی است.
اما یادگیری و تسلط بر این زبان ها برای برنامه نویسان بسیار سخت بود. بنابراین کارشناسان تصمیم گرفتند زبان هایی بسازند که به زبان انسان نزدیک تر باشد. به این زبان ها زبان های سطح بالا می گویند. زبانهای سطح بالا مانند JavaScript کار را برای برنامهنویسان آسانتر میکنند زیرا ساختار نوشتاری و منطق آنها به زبان انسانی بسیار نزدیکتر است. بنابراین می توان نتیجه گرفت که آموزش جاوا اسکریپت نسبت به سایر زبان های برنامه نویسی سطح پایین آسان تر است.
همانطور که مشاهده می کنید در تعریف زبان برنامه نویسی جاوا اسکریپت به این موضوع اشاره شد که این زبان نوعی از زبان های تفسیری است. برای درک ماهیت زبان های برنامه نویسی مفسر، ابتدا فکر کنید که یک مترجم هستید. دو راه دیگر برای ترجمه یک متن وجود ندارد. یا باید آنچه را که دریافت می کنید خط به خط و همزمان ترجمه کنید یا باید کل مطلب را یک جا ترجمه کنید. این دقیقاً تفاوت بین یک زبان مترجم و یک زبان کامپایل شده است.
زبانهای برنامه نویسی مفسری چه نوع زبان هایی هستند؟
در زبان های تفسیر شده، کد منبع خط به خط تفسیر می شود، یعنی پس از تفسیر و اجرای خط اول، به خط دوم می رود که روند اجرا را کند می کند. بر خلاف زبان کامپایلر، این زبان ها به سیستم عامل وابسته نیستند زیرا به طور همزمان از طریق یک مترجم اجرا می شوند.
به چه زبان هایی، زبان برنامه نویسی کامپایلری میگویند؟
بیایید کمی بیشتر و تخصصی تر توضیح دهیم. در زبان های کامپایل شده، تمام کدهای منبع به یکباره کامپایل (ترجمه) شده و به طور کامل اجرا و اجرا می شوند. خروجی ای که کامپایلر به شما می دهد یک فایل کامپایل شده برای سیستم عامل شماست که هیچ وابستگی به کد نوشته شده ندارد. در واقع زبان های کامپایلر وابسته به سیستم عامل هستند و امکان استفاده از کدهای کامپایل شده روی سیستم عامل دیگری وجود ندارد.
نقاط قوت زبان جاوا اسکریپت چیست ؟
هر کدام از زبان های مورد استفاده در دنیای برنامه نویسی نقاط قوت و ضعف خود را دارند و زبان جاوا اسکریپت نیز از این قاعده مستثنی نیست. این زبان به دلیل مزایای فراوانی که دارد در بین برنامه نویسان بسیار محبوب است که به اختصار به برخی از آنها اشاره می کنیم:.
- بر اساس بررسی سایت stackoverflow محبوبترین زبان برنامه نویسی سال ۲۰۱۸ است
- برای پردازش و اجرا به کامپایلر احتیاجی ندارد.
- یادگیری جاوا اسکریپت نسبت به خیلی از زبانهای برنامه نویسی راحتتر است.
- به صورت کراس پلتفورم روی مرورگرها یا پلتفرمهای مختلف اجرا میشود.
- نسبت به زبانهای برنامه نویسی دیگر سبکتر و سریعتر است.
- فریم ورک ها،کتابخانهها و به صورت کلی ابزارهای بسیار زیادی را در اختیارتان قرار میدهد.
- زبان بومی مرورگر وب است و در مرورگر کاربران پردازش میشود.
- امکان ایجاد صفحات وب تعاملی و پویا را به برنامه نویسان میدهد.
- در جواب عمل کاربران، عکس العمل نشان میدهد.
نقاط ضعف زبان برنامه نویسی جاوا اسکریپت چیست؟
برخی از ضعفهای این زبان برنامه نویسی عبارتند از :
- دشواری در تشخیص دلیل خطا دادن و مشکل در دیباگ کردن
- محدودیت در اجرای اسکریپتهای جاوا اسکریپت با ایجاد محدودیت هایی جهت حفظ امنیت
- اجرا نشدن بر روی مرورگرهای قدیمی
- نفوذپذیری نسبت به اکسپلویتها و عوامل مخرب
- می تواند برای اجرای کدهای مخرب در کامپیوتر کاربران استفاده شود.
- با رندر شدن متفاوت بر روی ابزارهای مختلف میتواند باعث ایجاد تناقض و نداشتن یکپارچگی شود.
تاریخچه زبان برنامه نویسی جاوا اسکریپت چیست ؟
جاوا اسکریپت اولین بار در می۱۹۹۵ در ۱۰ روز توسط برندن ایچ، یکی از کارکنان شرکت Netscape متولد شد! در ابتدا این شرکت به این نتیجه رسیده بود که به صفحات وب پویا و جذابتری احتیاج دارد. این اولین قدم به سوی ساخت زبانی ساده بود. آقای براندان ایچ از طرف این شرکت مامور شد که زبانی اسکریپتی برای صفحات وب و دست بردن در کدهای HTML بسازد. ماموریت آقای ایچ این بود زبانی را ارائه کند که نه تنها متخصصان برنامه نویسی از آن استقبال کنند، بلکه به راحتی مورد استفاده طراحان هم باشد.
این شرکت در ابتدا به فکر ارتقا و ساده سازی زبان Schema بود، اما در نهایت به این نتیجه رسید که به زبانی مشابه جاوا اما با سینتکس ساده تر نیاز دارد. در ابتدا نام این زبان برنامه نویسی موکا بود که بعداً به Mona تغییر یافت. در شهریور همان سال نام این زبان به لایو اسکریپت تغییر یافت و در پایان مجموعه با انتخاب نام جاوا اسکریپت، تغییر نام تکمیل شد.
این نام تنها به این دلیل نهایی شد که زبان برنامه نویسی جاوا در آن روزها بسیار محبوب بود. انتخاب این نام برای این زبان بسیار هوشمندانه بود. زیرا در آن زمان با انتخاب این نام، این زبان توانست سهم زیادی از بازار جاوا را به خود اختصاص دهد. با این حال، در سال ۱۹۹۶، جاوا اسکریپت برای استانداردسازی به ECMA ارسال شد. سرانجام، اولین استاندارد جاوا اسکریپت، ECMAScript، در سال ۱۹۹۷ منتشر شد. اولین اسکریپت ECMA-262 ECMA و آخرین نسخه آن، ECMAScript 2017، در ژوئن ۲۰۱۷ منتشر شد.
شی گرایی در جاوا اسکریپت چیست به چه معنی است؟
شی گرایی یک الگو و طرز تفکر در برنامه نویسی است. رویکرد برنامه نویسی شی گرا، جزء به کل یا از پایین به بالا (Bottom-Up) است. یعنی ابتدا واحدهای کوچکی از برنامه ایجاد می شود و با اتصال این واحدهای کوچک به یکدیگر واحدهای بزرگتری تشکیل می شود و به این ترتیب برنامه کاملتر می شود. برنامه نویسی شی گرا دو مفهوم کلاس و شی (Object) را ارائه می دهد.
شی گرایی در برنامه نویسی می تواند بسیاری از مشکلات را برای شما حل کند و فرآیند کدنویسی را آسان تر کند. از آنجایی که مفاهیم شی گرایی بسیار نزدیک به دنیای واقعی هستند، درک آن برای برنامه نویس آسان خواهد بود. در شی گرایی، بر خلاف سایر روشهای کدنویسی، مانند رویه، شما مستقیماً با اشیا (Objects) کار میکنید به جای اینکه با تعداد زیادی متغیر و توابع دست و پنجه نرم کنید. برای درک بهتر این موضوع بهتر است با یک مثال این موضوع را توضیح دهیم.
زبانهای سمت سرور و سمت کاربر چه تفاوتی هایی دارند؟
برخی از زبان ها در سرور (سایت) پردازش و اجرا می شوند و سپس نتیجه برای کاربر ارسال می شود. این زبان ها برای برقراری ارتباط به نرم افزاری نیاز دارند که وب سرور نامیده می شود. اما نکته جالب در مورد زبان جاوا اسکریپت این است که هم برای برنامه نویسی سمت سرور و هم برای برنامه نویسی سمت کاربر قابل استفاده است. اما در گذشته دامنه این زبان به برنامه نویسی سمت کاربر محدود می شد. کدهای زبان برنامه نویسی سمت کاربر همانطور که از نام آن پیداست در سیستم کاربر پردازش و اجرا می شوند.
جاوا اسکریپت یک زبان تفسیری سطح بالا است که از شی گرایی پشتیبانی می کند. این زبان در سمت کاربر پردازش و اجرا می شود. البته با کمک فریمورک هایی مانند Node.JS و Express.JS می توان از این زبان به عنوان زبان سمت سرور نیز استفاده کرد.
کاربرد جاوا اسکریپت در دنیای برنامه نویسی چیست؟
قبلاً در مورد محبوبیت زبان جاوا اسکریپت صحبت کردیم. این محبوبیت بی دلیل نیست زیرا با این زبان شی گرا می توانید سایت های بی جان خود را زنده کنید و با کاربران خود در تعامل باشید. یعنی می توانید انیمیشن، فایل های صوتی و تصویری را در سایت خود نمایش دهید. همچنین می توانید یک تایمر در سایت خود تنظیم کنید، رنگ ها را با حرکت ماوس تغییر دهید و بسیاری موارد دیگر که صفحات وب را جذاب تر می کند.
- آموزش نصب ویندوز ۱۱ با فلش
- آموزش بازگردانی پیج هک شده اینستاگرام
- راه های جلوگیری از هک اینستاگرام
- بازگردانی پیج دیسیبل شده اینستاگرام
اما این تمام چیزی نیست که جاوا اسکریپت به شما می دهد. می توانید از این زبان برای شروع ساخت اپلیکیشن های وب، موبایل و دسکتاپ استفاده کنید. برای این منظور می توانید از فریم ورک های مختلف جاوا اسکریپت استفاده کنید که مجموعه ای از کتابخانه ها را در اختیار شما قرار می دهند. یکی دیگر از کارهای جالبی که می توانید با این زبان انجام دهید، توسعه بازی های رایانه ای مبتنی بر مرورگر است. بنابراین به طور کلی کاربردهای زبان جاوا اسکریپت را می توان به صورت زیر توصیف کرد
- برنامه نویسی فرانت اند
- برنامه نویسی بک اند با جاوا اسکریپت
- برنامه نویسی نرم افزارهای موبایل
- برنامه نویسی نرم افزارهای دسکتاپ
جاوا اسکریپت چیست و چگونه کار میکند؟
اکنون که می دانیم جاوا اسکریپت چیست و چه کاربردهایی دارد، ممکن است تعجب کنید که جاوا اسکریپت در مرورگرهای مختلف چگونه اجرا می شود. پاسخ به این سوال موتورهای پردازشگر هستند. مرورگرهای مختلف از موتورهای مختلفی برای اجرای کد جاوا اسکریپت استفاده می کنند که در زیر به برخی از آنها اشاره می شود.
- موتور V8 برای مرورگرهای اپرا و کروم
- موتور SpiderMonkey برای فایرفاکس
- موتورهای Trident و Chakra برای ورژنهای مختلف اینترنت اکسپلورر
- موتور ChakraCore برای مرورگر Edge
- موتورهای Nitro و SquirrelFish برای مرورگر سافاری
این موتورها ابتدا کد جاوا اسکریپت را ترجمه می کنند. سپس اسکریپت ها برای اجرای کد به زبان ماشین کامپایل می شوند. البته این بدان معنا نیست که زبان جاوا اسکریپت فقط بر روی مرورگرهای وب اجرا می شود. این زبان برنامه نویسی تقریبا بر روی تمامی پلتفرم ها با استفاده از JavaScript Virtual Machine قابل اجرا است.
۲ دیدگاه