جاوا اسکیریپت
- DOTWEB
جاوا اسکیریپت
اگر بخواهیم کمی حرفهایتر به این زبان نگاه کنیم، جاوا اسکریپت یک زبان محبوب مبتنی بر شی، داینامیک و مفسری است. این زبان برای برنامه نویسی سمت سرور و سمت کاربر استفاده میشود که در تمامی سایت های استفاده از آن را در سمت کاربر میتوانیم مشاهده کنیم.
اگر با این مفاهیم آشنایی ندارید نگران نباشید در ادامه مختصراً به آنها میپردازیم.
شیگرایی یک تفکر و شیوه در برنامهنویسی است. در برنامه نویسی شیگرا کدها در واحدهای کوچکتری تقسیمبندی میشوند و در طی برنامه این واحدها باهم پیوند میخورند تا برنامهی نهایی ایجاد شود.
زبان مفسری (Interpreter) زبانی است که کدهای آن به صورت خط به خط ترجمه و اجرا میشوند! این زبان مقابل زبانهای کامپایلری (Compiled) قرار میگیرد که یکباره کل کدها ترجمه و اجرا میشوند. بنابراین سرعت اجرای زبانهای مفسری نسبت به زبانهای کامپایلری کمتر است.
تعریف معنی جاوا اسکریپت به زبان خودمانی!
اگر هنوز متوجه نشدهاید که دقیقا جاوا اسکریپت چیست و چه کاربردی دارد، نگران نباشید، در این قسمت حتما معنای آن را متوجه میشوید. فرض کنید ساختار یک صفحه وب مانند آناتومی بدن انسان است. بدن انسان در ابتدا یک اسکلت است که روی این اسکلت گوشت و پوست و.. قرار گرفته است.
در وب هم اسکلت اولیه توسط زبان HTML ایجاد میشود. یعنی المان های اصلی صفحه مثل متن، تصویر، لینک و… در صفحه قرار میگیرند. اما این خروجیها هیچ جذابیتی ندارند. پس باید به سراغ زبان دوم یعنی CSS برویم. به کمک CSS به این اسکلت پوست و گوشت میبخشیم. یعنی المانهای صفحه دارای رنگ، اندازه و ویژگیهای طراحی میشوند.
در گام بعدی باید به سراغ ایجاد عضلات برای ایجاد حرکت برویم. اینجاست که جاوا اسکریپت به میدان میآید. برای ایجاد هرگونه حرکت در صفحه وب به آن نیاز داریم. برای نمونه منوهای کشویی، اسلایدر و گالری تصاویر و… به کمک این زبان ایجاد میشوند در اصل در صفحه وب هر تغییری که بدون رفرش کردن صورت میگیرد از زبان جاوا اسکیریپت استفاده کرده است.
شی گرایی در جاوا اسکریپت به چه معنی است؟
شی گرایی یک الگو و شیوه تفکر در برنامه نویسی است. رویکرد برنامه نویسی شی گرا از جزء به کل یا پایین به بالا است (Bottom-Up). یعنی در ابتدا واحدهای کوچکی از برنامه ایجاد میشوند و با پیوند این واحدهای کوچک به یکدیگر، واحدهای بزرگ تر شکل میگیرند و به همین ترتیب برنامه کامل تر میشود. برنامه نویسی شی گرا دو مفهوم کلاس (Class) و شی (Object) را ارائه میدهد.
شی گرایی در برنامه نویسی می تواند مشکلات زیادی را برای شما حل کند و باعث سادهتر شدن فرآیند کدنویسی شود. از آنجایی که مفاهیم شی گرایی به شدت به دنیای واقعی نزدیک است، درک آن برای برنامه نویس آسان خواهد بود. در شی گرایی برخلاف روشهای کدنویسی دیگر مانند رویه ای به جای دست و پنجه نرمکردن با تعداد زیادی متغیر و توابع، مستقیما با اشیا (Objects) کار میکنید. برای درک بهتر این موضوع بهتر است با مثالی این مطلب را توضیح دهیم.
کارگاهی را در نظر بگیرید که دارای دستگاههای تولیدی مختلف است. این کارگاه را میتوان به عنوان یک کلاس در نظر گرفت. هر یک از این دستگاهها محصول متفاوتی تولید میکنند که میتوان آنها را به عنوان شی در نظر گرفت. اگر برای محصولات مشکلی پیش بیاید یا اگر بخواهیم تغییر در آنها ایجاد کنیم نیازی به تخریب و از نو ساختن کارگاه نیست.
به عنوان مثال اگر محصول خروجی کیک باشد، زمانیکه بخواهیم کیک شیرینتری داشته باشیم لازم نیست تغییری در کارگاه یا دستگاهها ایجاد کنیم، کافیست کمی شکر به خمیر کیک اضافه کنیم. این دقیقا همان اتفاقی است که در برنامه نویسی شی گرا میافتد که در زبان جاوا اسکیریپت هم میتوان از آن استفاده کرد.
چه پیشزمینههایی برای یادگیری جاوا اسکریپت نیاز است؟
تاریخچه جاوا اسکیریپت
همه چیز از دههی ۹۰ میلادی شروع شد.
جاوااسکریپت طی 6 ماه از می تا دسامبر ۱۹۹۵ ساخته شد. در آن زمان شرکت NetScape حضوری فعّال در دنیای جدید وب داشت. مرورگر این شرکت رقیب جدّی اوّلین مرورگر مشهور وب یعنی NCSA Mosaic بود. بسیاری از کسانی که جزء مؤسسان Netscape بودند، قبلاً در ساخت Mosaic .دست داشتند و حالا که مستقل شده بودند و بودجهی کافی هم داشتند، به اندازهی کافی آزادی داشتند که دنیای وب را رو به جلو برده و گسترش دهند. و این همان موضوعی بود که باعث تولّد جاوااسکریپت شد.
NetScape به دنبال راهی برای پویاتر کردن صفحات وب بود. بنابراین آقای براندان ایچ را مأمور کرد تا یک زبان اسکریپتی کوچکبرای صفحات وب و دستکاری HTML بسازد. آنها نمیخواستند این زبان فقط برای برنامهنویسان حرفهای قابل استفاده باشد، بلکه مخاطبین این زبان طرّاحان بودند. زیرا آن زمان هنوز دنیای وب در ابتدای کار بود و HTML هم آنقدر ساده بود که غیر برنامهنویسان به راحتی بتوانند با آن کار کنند. به همین دلیل این زبان جدید که میخواست بخشی از مرورگر شود باید توسّط آنها هم قابل استفاده میبود. این زبان Mocha نام گرفت. آقای ایچ میخواست زبانی مثل زبان Scheme برای مرورگر بسازد، زبان Scheme نسخهای ساده شده از زبان Lisp بود که برای یادگیری و… بسیار مناسب بود و یادگیری همانند اچ تی ام ال و سی اس اس الان ساده بود.
مزایای جاوا اسکریپت
صفحات HTML شما را پویا میکند.
میتواند cookie بسازد و استفاده کند.
قابلیتهای زیادی در کنترل Browser بیننده دارد.
قابلیت برنامه نویسی را به صفحات HTML شما میدهد.
میتوان از آن در تمامی صفحات وِب، بدون توجه به حجم دادهها و فایل، استفاده کرد.
نزدیک بودن این زبان برنامهنویسی به زبانهای برنامهنویسی دیگر نظیر C++ ، C و #C
فراهم کردن برنامهنویسی Dynamic که در دنیای مدرن امروزه بسیار مورد استفاده قرار میگیرد.
دنیایی از کتابخانه و فریمورک دارد که در نهایت توسعه صفحات وب را برای برنامه نویسان آسان میکند.
یک زبان برنامه نویسی رویداد محور (Event-based) میباشد که در مصارف صنعتی کاربردهای بسیاری دارد.
فراگیری زبان جاوا اسکریپت نسبت به دیگر همتایان آن بسیار ساده میباشد. به علاوه منابع این زبان به صورت آنلاین و آفلاین در دسترس عموم قرار دارد.
وقتی بهعنوان یک زبان سمت کاربر (Client-Side) از آن استفاده میشود، به محض باز شدن مرورگر، جاوا اسکریپت نیز به سرعت شروع بهکار میکند.
به لطف جاوا اسکریپت، برنامهنویسان نیازی به یادگیری زبانهای مختلف سمت کاربر یا سمت سرور ندارند. بهعبارت دیگر زبان جاوا اسکریپت تمامی امکانات مورد نیاز را در یک پکیج برای برنامه نویسی بک اند و برنامه نویسی فرانت اند فراهم میکند که بیشتر استفاده آنرا امروزه در قسمت فرانت اند در طراحی سایت مشاهده میکنیم.
معایب جاوا اسکریپت
کند بودن از مهمترین معایب این زبان برنامه نویسی است که بهدلیل عدم کامپایل شدن بهوجود میآید.
دیباگ کردن بسیار مشکل.
فقط بر روی مرورگرها اجرا میشود.
از قابلیت چند ریسمانی (Multithreading) پشتیبانی نمیکند.
امکان مبادله با سرور سایت را ندارد چون روی مرورگر اجرا میشود.
جاوا اسکریپت در سمت کاربر، اجازه خواندن و نوشتن فایل ها را نمیدهد.
ترجمهی کدهای نوشته شده در این زبان در برخی از مرورگرها متفاوت میباشد.
گاهی برای سو استفاده از سایت برخی کاربران امکان اجرای اسکریپتها را بر روی مرورگر خود لغو میکنند.
اگرچه گفته شد بیشتر مروگرها از آن پشتیبانی میکنند ولی در برخی مرورگرهای قدیمی قابل اجرا نشدن نیست.
اصلی ترین عیب زبان برنامه نویسی جاوااسکریپت، قابل مشاهده بودن تمامی کدهای نوشته شده در آن است به گونه ای که نفوذ پذیری به آنها کار ساده ای است و همین عامل امنیت وبسایت را کمی کاهش می دهد (البته با انجام یکسری کارها این امنیت قابل تامین می باشد).
اگرچه ارور جاوااسکریپت به ندرت در مرورگرها دیده میشود، اما در صورت ایجاد خطا تمام وبسایت از کار میافتد.
جمع بندی
درنهایت از آنجایی که پیشبینیها نشان میدهند در آیندهای نه چندان دور همه چیز به سمت بستر وب تعاملی خواهد رفت، ما بیش از پیش به زبانی مانند جاوا اسکریپت نیاز خواهیم داشت که بتواند پاسخگوی تمام خواستههای ما باشد.
همچنین در حال حاضراین زبان بسیار محبوب و مورد استفاده است، این بدین معناست که شما منبعی نامحدود برای یادگیری و پیشرفت و فرصتهای شغلی خوبی برای آینده پیش رو دارید.
پس میتواند انتخاب درستی برای شروع باشد که بتوانید با یادگیری این زبان پا به عرصه طراحی سایت بگذارید.
برای اطلاعات بیشتر میتوانید از طریق صفحه تماس با ما و یا صفحه اینستاگرام با تیم ما در ارتباط باشید.