آی تی تیم وبلاگ

جاوا اسکریپت (JavaScript )

دسته بندی: برنامه نویس یار

بروزرسانی شده در 12 بهمن 1400

java script

جاوا اسکریپت

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

این سوالی است که برای بسیاری از افراد علاقه مند به آموزش برنامه نویسی و طراحی وب پیش می‌آید. همانطور که می‌دانید در دنیای برنامه نویسی همانند دنیای واقعی، با زبان‌های بسیاری روبرو هستیم که هر کدام مزایا و معایب خاص خود را دارند. ما در این مقاله، قصد داریم یکی از محبوب‌ترین زبان‌های این حوزه یعنی جاوا اسکریپت را به شما معرفی کنیم. اگر مایل هستید با آموزش جاوا اسکریپت وارد دنیای برنامه نویسی شوید و می‌خواهید در مورد زبان JavaScript و کاربردها و ویژگی‌های آن بیشتر بدانید، در ادامه این مقاله با itteam همراه باشید.

زبان برنامه نویسی جاوا اسکریپت چیست؟

JavaScript که به اختصار JS نیز نامیده می‌شود، یکی از محبوبترین زبان‌های برنامه نویسی است. جاوا اسکریپت زبانی سطح بالا، داینامیک، شی‌گرا و تفسیری است که از شیوه‌های مختلف برنامه نویسی پشتیبانی می‌کند. از این زبان می‌توان برای برنامه نویسی سمت سرور (Server Side)، اپلیکیشن‌های موبایل، بازی و اپلیکیشن‌های دسکتاپ استفاده کرد. بنابراین می‌توان اینگونه برداشت کرد که زبان برنامه نویسی جاوا اسکریپت ، یک زبان همه فن حریف است.

اگر با هر یک از این اصطلاحات آشنایی ندارید نگران نباشید، زیرا در ادامه به توضیح هر یک از آن‌ها خواهیم پرداخت. برای اینکه بهتر متوجه چیستی زبان جاوا اسکریپت شوید، در ابتدا باید جواب سوالاتی مانند زبان کامپایلری چیست و چه تفاوتی با زبان مفسری دارد؟، زبان برنامه نویسی سمت سرور و سمت کاربر به چه نوع زبان‌هایی گفته می‌شود؟ را بدانید. پس از درک این مفاهیم می‌توانید آموزش جاوا اسکریپت را شروع کنید.

همانطور که می‌دانید کامپیوترها تنها به زبان صفر و یک (Binary) صحبت می‌کنند و زبان دیگری را متوجه نمی‌شوند. ما در ابتدا برای برقراری ارتباط با ماشین‌ها سعی کردیم به زبان خود آنها، یعنی زبانی که به زبان صفر و یک نزدیک‌تر است، صحبت کنیم. به این نوع زبان‌ها که به صورت مستقیم با پردازنده در ارتباط‌اند، در اصطلاح، زبان‌های سطح پایین (Low Level) گفته می‌شود. از جمله این زبان‌ها می‌توان به اسمبلی اشاره کرد.

اما یادگیری و تسلط به این زبان‌ها برای برنامه نویسان فوق العاده سخت بود. بنابراین متخصصین تصمیم به ساخت زبان‌هایی گرفتند که به زبان انسان‌ها نزدیک‌تر باشد. در اصطلاح به این زبان‌ها، زبان‌های سطح بالا (High Level) می‌گویند. زبان‎های سطح بالایی مانند JavaScript کار را برای برنامه‎نویسان ساده‌تر کردند، زیرا ساختار نوشتاری و منطق آن‌ها بسیار به زبان انسان‌ها نزدیک‌تر شده است. پس می‌توان اینگونه نتیجه گرفت که آموزش جاوا اسکریپت نسبت به سایر زبان‌های برنامه نویسی سطح پایین ساده‌تر است.

همانطور که دیدید در تعریف زبان برنامه نویسی جاوا اسکریپت به این نکته اشاره شد که این زبان از نوع زبان‌های مفسری است. برای درک ماهیت زبان‌های برنامه نویسی مفسری ابتدا فکر کنید که شما یک مترجم هستید. برای ترجمه یک متن، دو راه بیشتر ندارید. یا باید آنچه را دریافت می‌کنید به صورت خط به خط و همزمان ترجمه کنید، یا کل مطلب را یک جا ترجمه کنید. این دقیقا همان تفاوت میان زبان‌های مفسری (Interpreter) و زبان‌های کامپایلری (Compiled) است.

جاوا اسکریپت
جاوا اسکریپت (JavaScript ) 3

زبان‌های برنامه نویسی مفسری چه نوع زبان هایی هستند؟

در زبان‌های مفسری (Interpreted) سورس کد به صورت خط به خط تفسیر می‌شود یعنی پس از تفسیر و اجرای خط اول به خط دوم می‌رود که این روند باعث کند شدن پروسه اجرا می‌شود. این زبان‌ها برعکس زبان کامپایلری به سیستم‌عامل وابسته نیستند چرا که به صورت همزمان و از طریق مفسر، اجرا می‌شوند.

به چه زبان هایی، زبان برنامه نویسی کامپایلری می‌گویند؟

اجازه دهید کمی بیشتر و تخصصی‌تر در این باره توضیح دهیم. در زبان‌های کامپایل شده تمام سورس کدها به یکباره کامپایل (ترجمه) شده و به صورت کامل پردازش و اجرا می‌شوند. خروجی ای که کامپایلر در اختیار شما قرار می‌دهد یک فایل کامپایل شده برای سیستم‌عامل مورد نظر شما است که هیچ وابستگی به کدهای نوشته‌شده ندارند. در واقع زبان‌های کامپایلری به سیستم‌عامل وابسته هستند و امکان استفاده از کدهای کامپایل شده بر روی سیستم‌عامل دیگری وجود ندارد.

شی گرایی در جاوا اسکریپت به چه معنی است؟

شی گرایی یک الگو و شیوه تفکر در برنامه نویسی است. رویکرد برنامه نویسی شی گرا از جزء به کل یا پایین به بالا است (Bottom-Up). یعنی در ابتدا واحدهای کوچکی از برنامه ایجاد می‌شوند و با پیوند این واحدهای کوچک به یکدیگر، واحدهای بزرگ‌تر شکل می‌گیرند و به همین ترتیب برنامه کامل‌تر می‌شود. برنامه نویسی شی گرا دو مفهوم کلاس (Class) و شی (Object) را ارائه می‌دهد.

شی گرایی در برنامه نویسی می‌تواند مشکلات زیادی را برای شما حل کند و باعث ساده‌تر شدن فرآیند کدنویسی شود. از آنجایی که مفاهیم شی گرایی به شدت به دنیای واقعی نزدیک است، درک آن برای برنامه نویس آسان خواهد بود. در شی گرایی برخلاف روش‌های کدنویسی دیگر مانند رویه ای به جای دست و پنجه نرم‌کردن با تعداد زیادی متغیر و توابع، مستقیما با اشیا (Objects) کار می‌کنید. برای درک بهتر این موضوع بهتر است با مثالی این مطلب را توضیح دهیم.

کارگاهی را در نظر بگیرید که دارای دستگاه‌های تولیدی مختلف است. این کارگاه را می‌توان به عنوان یک کلاس در نظر گرفت. هر یک از این دستگاه‌ها محصول متفاوتی تولید می‌کنند که می‌توان آن‌ها را به عنوان شی در نظر گرفت. اگر برای محصولات مشکلی پیش بیاید یا اگر بخواهیم تغییر در آن‌ها ایجاد کنیم نیازی به تخریب و از نو ساختن کارگاه نیست.

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

زبان‌های سمت سرور و سمت کاربر چه تفاوتی هایی دارند؟

پردازش و اجرای برخی زبان‌ها بر روی سرور (سایت) صورت می‌گیرد و سپس نتیجه به سوی کاربر ارسال می‌شود. این زبان‌ها برای برقراری ارتباط به نرم‌افزاری احتیاج دارند که به آن وب سرور گفته می‌شود. اما نکته جالبی که در مورد زبان JavaScript وجود دارد این است که از این زبان می‌توان هم برای برنامه نویسی سمت سرور و هم سمت کاربر استفاده کرد. اما در گذشته قلمروی این زبان تنها به برنامه نویسی سمت کاربر محدود می‌شد. کدهای زبان‌های برنامه نویسی سمت کاربر همانطور که از اسم آن مشخص است در سیستم کاربر پردازش و اجرا می‌شوند.

جاوا اسکریپت یک زبان سطح بالا و مفسری است که از شی گرایی پشتیبانی می‌کند. این زبان در سمت کاربر پردازش و اجرا می‌شود. البته با کمک فریم ورک هایی مانند Node.JS و Express.JS می‌توان به عنوان زبان سمت سرور هم از این زبان استفاده شود.

محمد کریمی

متولد 1375.متخصص طراحی و برنامه نویسی وب سایت . عضو مجموعه تخصصی ITTEAM .