جاوا اسکریپت: از javascipt برای ساخت اپلیکیشنهای تکصفحهای (Single Page Applications | SPA) نیز استفاده میشود. SPA در واقع وب اپلیکیشنی است که تنها یک صفحه مبتنی بر HTML را به نمایش درمیآورد و محتوا براساس تعاملات کاربر با صفحه بهروزرسانی میشود. SPAها معمولا با فریمورکهای جاوا اسکریپت مانند AngularJS یا React و یا Vue.js ساخته میشوند. جیمیل، گوگل مپس و Airbnb از مشهورترین اپلیکیشنهای تکصفحهای امروزی به حساب میآیند.
اما نقش و کاربرد javascipt در توسعه SPA دقیقا چیست؟ Angular.js به عنوان مثال فریمورکی در سمت سرور است که انقیاد داده دوطرفه (Bidirectional Data Binding) را امکانپذیر میکند. به کمک انقیاد داده، هر زمان که مدلها تغییر میکنند، صفحه پیش روی کاربر نیز بهروزرسانی میشود. AngularJS ضمنا میتواند هم کنترلر و هم مدل را درون مرورگر کاربر نگه دارد.
ReactJS هم یکی دیگر از فریمورکهایی است که در ساخت اپلیکیشنهای تکصفحهای کاربردی ظاهر میشود. از جمله مزایای این فریمورک میتوان به موارد زیر اشاره کرد:
دنیای توسعه بازی هم فضای دیگری است که کاربرد javascipt در آن حسابی به چشم میآید، خصوصا بازیهای موبایل و تحت وب. در حال حاضر انبوهی موتور بازیسازی مبتنی بر javascipt داریم که میتوانید از گیتهاب به آنها دسترسی پیدا کنید. از برجستهترین موارد میشود به Phaser ،Pixi.js ،melonJS ،kiwi.js و Three.js اشاره کرد.
این موتورها فرایند بازیسازی را سریعتر و آسان میکنند و قابلیتهای اضافه مانند فیزیک و انیمیشن را نیز در اختیارتان میگذارند. ناگفته نماند که بسیاری از وبسایتهای معروف بازیهای تحت وب مانند 1001Games و Miniclip انبوهی بازی متکی بر جاوا اسکریپت دارند.
از جاوا اسکریپت هم در ساخت بازیهای دوبعدی و هم بازیهای سهبعدی استفاده میشود. علاوه بر این میتوانید از فریمورکهای مختلف جاوا اسکریپت برای ساخت بازی موبایل یا حتی دسکتاپ کمک بگیرید. برخی از معروفترین بازیهایی که به این زبان نوشته شدهاند، Tower Building ،2048 ،Bejeweled و Words with Friends نام دارند.
javascript در وب اغلب همراه HTML و CSS استفاده میشود. این سه عنصر در وب تکمیل کننده همدیگر هستند. بهصورت کلی میتوان گفت که اگر صفحه وب را به انسان تشبیه کنیم، HTML نقش استخوانبندی آن انسان را بر عهده دارد. CSS جسم و پوشش آن و جاوا اسکریپت نقش تحرکات آن را بر عهده خواهد داشت. در واقع javascript صفحات وب را زنده، فعال و پویا نگه میدارد. این زبان موجب تعامل دو طرفه میان کاربر و صفحات وب میشود و برای ایجاد تجربه کاربری مطلوب، مهمترین عنصر در برنامه نویسی وب بهحساب میآید. نمونهای از تعامل بین کاربر و صفحات وب با javascript را میتوان بهصورت زیر بیان کرد.
زمانی که کاربر، فرمی را در صفحات وب، اعم از فرم ثبتنام، فرم خرید و غیره را پر میکند، در آخر پیامی تحت عنوان «پیام شما ارسال شد»، «ثبت نام با موفقیت انجام شده» و و مواردی از این دست برای او نشان داده میشود و در پشت پرده اتفاقاتی رخ خواهد داد. این در واقع همان کاری است که javascript انجام میدهد.
یکی دیگر از کاربردهای javascript، توسعه برنامههای موبایل است. از javascript میتوان برای توسعه برنامههای اندروید، iOS و ویندوز استفاده کرد. برخی از پرکاربردترین فریمورکهای javascript برای برنامههای تلفن همراه به صورت فهرست زیر است:
جاوا اسکریپت دارای مزیتهایی است که آن را تبدیل به انتخاب بهتری نسبت به رقبای خود میکند. چند مزیت استفاده از Java Script به شرح زیر است:
شی گرایی یک الگو و شیوه تفکر در برنامه نویسی است. رویکرد برنامه نویسی شی گرا از جزء به کل یا پایین به بالا است (Bottom-Up). یعنی در ابتدا واحدهای کوچکی از برنامه ایجاد میشوند و با پیوند این واحدهای کوچک به یکدیگر، واحدهای بزرگتر شکل میگیرند و به همین ترتیب برنامه کاملتر میشود. برنامه نویسی شی گرا دو مفهوم کلاس (Class) و شی (Object) را ارائه میدهد.
شی گرایی در برنامه نویسی میتواند مشکلات زیادی را برای شما حل کند و باعث سادهتر شدن فرآیند کدنویسی شود. از آنجایی که مفاهیم شی گرایی به شدت به دنیای واقعی نزدیک است، درک آن برای برنامه نویس آسان خواهد بود. در شی گرایی برخلاف روشهای کدنویسی دیگر مانند رویه ای به جای دست و پنجه نرمکردن با تعداد زیادی متغیر و توابع، مستقیما با اشیا (Objects) کار میکنید. برای درک بهتر این موضوع بهتر است با مثالی این مطلب را توضیح دهیم.
کارگاهی را در نظر بگیرید که دارای دستگاههای تولیدی مختلف است. این کارگاه را میتوان به عنوان یک کلاس در نظر گرفت. هر یک از این دستگاهها محصول متفاوتی تولید میکنند که میتوان آنها را به عنوان شی در نظر گرفت. اگر برای محصولات مشکلی پیش بیاید یا اگر بخواهیم تغییر در آنها ایجاد کنیم نیازی به تخریب و از نو ساختن کارگاه نیست.
به عنوان مثال اگر محصول خروجی کیک باشد، زمانیکه بخواهیم کیک شیرینتری داشته باشیم لازم نیست تغییری در کارگاه یا دستگاهها ایجاد کنیم، کافیست کمی شکر به خمیر کیک اضافه کنیم. این دقیقا همان اتفاقی است که در برنامه نویسی شی گرا میافتد.