آموزش مقدماتی تا حرفه ای جاوا اسکریپت
امکانات و قابلیت های جاوا اسکریپت
طراحان صفحات وب ، می توانند با استفاده از آموزش جاوا اسکریپت و یادگیری توابع و اشیاء آماده و از پیش تعریف شده جاوا اسکریپت ، قابلیت های زیادی را برای صفحات وب ایجاد کنند. برای مثال ،
- می توان قالب صفحه وب را طوری طراحی کرد که کاربران ، بتوانند به اجزای صفحه وب ، مانند رنگ پس زمینه ، اندازه و فونت متن و غیره ، دسترسی داشته باشند و آن ها را تغییر دهند.
- می توان با استفاده از کدهای گرافیکی ، برای صفحات وب ، انیمیشن ایجاد نمود و به کاربران این امکان را داد که به طور دلخواه ، قادر به جابجایی یا تغییر تصاویر گرافیکی باشند.
- می توان event ها را کنترل کرد و با زبان جاوا و Plugin ها ، ارتباط برقرار نمود.
- می توان فرم های ClintSide ایجاد کرد و اطلاعات وارد شده توسط کاربران را در فرم ها را اعتبارسنجی نمود و در صورت وجود هرگونه خطا در نحوه پر شدن فرم ها ، پیغام مناسب را نمایش داد.
اگرچه می توان به وسیله Java Script ، فرم های سمت کلاینت را که توسط کاربران تکمیل شده است ، به سمت server فرستاد ، اما جاوا اسکریپت ، قدرت ایجاد ارتباط متقابل بین server و client را به اندازه زبان جاوا ندارد.
پیش نیاز جاوا اسکریپت چیست؟
برای یاد گیری برنامه نویسی در سمت کلاینت در گام اول باید HTML و سپس CSS و بعد JavaScript را فرا بگیریم.
چرا باید آموزش JavaScript را دنبال کنیم؟
وظیفه جاوا اسکریپت ، افزودن منطق به فضای HTML ، است. در واقع به کمک HTML و CSS ، نمی توان یک صفحه وب کامل داشت. اصولاً ، جاوا اسکریپت یک زبان سمت کاربر یا front end است ، که بار منطقی فرآیندهای وب را بر عهده میگیرد. البته با به وجود آمدن زبان NodeJS ، امکان نوشتن سرویسهای وب در سمت سرور با جاوا اسکریپت نیز وجود دارد و امکان اجرای کدهای جاوا اسکریپت ، به عنوان زبان سمت سرور نیز فراهم شده است. برای تسلط کاملتر در سمت کلاینت زبان هایی بر پایهی جا واسکریپت که در تعامل با آن کار میکنند که نیاز به یادگیری جاوااسکریپت دارند، از جمله :Ajax، Bootstrap، vue.js، React همچنین تعدادی از تکنولوژی های سمت سرور مانند NodeJS و ExpressJS نیاز به دانستن JavaScript دارند، نه تنها تمامی این موارد در دوره های سایت هوشمندان می باشند بلکه دوره های برنامه نویسی سمت سرور نیز که باید بعد از برنامه نویسی سمت کلاین یاد گرفت آموزش داده خواهد شد. با html ساختار صفحه، با CSS قالب بندی صفحه و با JavaScript پویا کردن صفحه، تعامل بین المانها، رویداد ها و کاربر را تنظیم میکنیم.
ابزارها و کتابخانه های معروف JavaScript
یکی از مزایای جاوا اسکریپت ، فریمورک ها و کتابخانه هایی است که بر پایه این زبان شکل گرفتهاند. کتابخانه هر زبان برنامه نویسی، در واقع مجموعه ای از دستورات آن زبان است که در قالبی خلاصه و آماده ، مورد استفاده قرار می گیرد. یکی از مشهورترین و نام آشناترین کتابخانه های جاوا اسکریپت، JQuery است. جیکوئِری (JQuery) ، در واقع ، مجموعه ای از دستورات پیچیده جاوا اسکریپت است که به صورت بسیار ساده و آسان ، در اختیار همه قرار دارد.
این روزها جاوا اسکریپت، تنها یک زبان برنامه نویسی برای طراحی سایت و افزودن مقداری انیمیشن و حرکت و منطق به وب سایت ها نیست. فریم ورک ها و ابزارهای بسیار زیادی با کمک این زبان توسعه داده شدهاند ، که با کمک آنها می توان از اپلیکیشن های موبایل گرفته تا سیستم های پیچیده را پیاده سازی کرد. ابزارهایی مثل ReactJS ، یا Angular JS از جمله این ابزارها هستند.
بهطور کلی ، با زبان جاوا اسکریپت ، می توان از سرورهای وب گرفته تا اپلیکیشنهای موبایل و برنامه های کاربردی تحت وب را پیادهسازی نمود. ابزارهای زبان JavaScript ، این روزها به قدری گسترده شده اند که نمی توانیم بدون آنها ، به دنیای وب فکر کنیم. از بین مشهورترین ابزارها و فریم ورک های توسعه یافته برای زبان جاوا اسکریپت ، می توان به موارد زیر اشاره کرد:
- کتابخانه ReactJS : بسیاری از سایت ها و سرویس های تحت وب پیشرفته ، بر پایه این فریم ورک ، توسعه داده شدهاند.
- React Native : محصول دیگری از شرکت فیس بوک است که امکان تولید اپلیکیشن های موبایل را بر پایه زبان جاوا اسکریپت ، فراهم میکند. نمونه بارز آن اپلیکیشن موبایل اینستاگرام است.
- فریم ورک AngularJs گوگل : بسیاری از ابزارها و سرویسهای بزرگ بر پایهی آن توسعه داده شدهاند.
- NodeJS : زبان اپن سورسی که امکان برنامه نویسی با زبان جاوا اسکریپت را در سمت سرور فراهم میکند.
به طور کلی ، برای اجرای کدهای جاوا اسکریپت ، هیچ ابزار خاصی نیاز نیست. در واقع ، بر خلاف زبانهای دیگر که نیاز به یک کامپایلر برای اجرای کدها دارند، جاوا اسکریپت روی مرورگرهای اینترنت اجرا میشود. برای نوشتن کدها نیز یک editor متن ساده ، مانند Notepad ، نیاز هست؛ اما برای راحتی کار توصیه می شود از IDE (مانند Visual Studio Code) مناسب استفاده شود.
چرا این دوره جاوا اسکریپت؟
بعد از این دوره به شرط رعایت پیشنیاز، توانایی طراحی سمت کلاینت یک سایت با هر امکان دلخواه را خواهید داشت.
سرفصل های این دوره، از به روزترین منبع آموزشی زبان اصلی برنامه نویسی جاوا اسکریپت میباشد.
ترتیب توالی آموزش بنحویست که پیش نیازهای هر قسمت رعایت شده است.
هر قسمت آموزش دارای مثال عملی به همراه اجرای آن میباشد.
در این دوره برخی تکنولوژی های تکمیلی جاوا اسکریپت نیز آموزش داده شدهاند ازجمله:
آمورش HTML DOM و HTML BOM پرداخته شده است که در واقع تکمیل آموزش HTML است که نیاز به جاوا اسکریپت دارد.
Web API نیز که تکمیلی بر جاوا اسکریپت است و امکانات بسیار عالی برای برنامه نویس دارد.
و در آخر تکنولوژی ajax که مبتنی بر جاوااسکریپت و تعامل با سرور است.
بخش اول:
- معرفی جاوا اسکریپت
- محل کدهای جاوا اسکریپت
- خروجی در جاوا اسکریپت
- عبارات و کامنتها در جاوا اسکریپت
- متغیرها و ثابت ها در جاوا اسکریپت
بخش دوم:
- عملگرها و توابع ریاضی در جاوا اسکریپت
- تخصیص دادن و انواع داده در جاوا اسکریپت
- توابع و اشیا در جاوا اسکریپت
- شی STRING و متدهای آن در جاوا اسکریپت
بخش سوم:
- تکمیل شی STRING و متدهای آن در جاوا اسکریپت
- شی NUMBER و متدهای آن در جاوا اسکریپت
بخش چهارم:
- تکمیل شی NUMBER و متدهای آن در جاوا اسکریپت
- مرتب سازی و پیمایش آرایه در جاوا اسکریپت
بخش پنجم:
- ادامه آموزش آرایه ها و متدهای آرایه
بخش ششم:
- تکمیل آموزش آرایه ها و متدهای آرایه
بخش هفتم:
- شی Date، فرمت تاریخ و متدهای آن در جاوا اسکریپت
بخش هشتم:
- استفاده از شی Math,Random در جاوا اسکریپت
- عبارات منطقی و مقایسه ای در جاوا اسکریپت
- عبارات شرطی و دستور switch در جاوا اسکریپت
بخش نهم
- حلقه for,for in,for of و while و دستور break در جاوا اسکریپت
- تبدیل انواع داده در جاوا اسکریپت
بخش دهم:
- تکمیل تبدیل انواع داده در جاوا اسکریپت
- عملگرهای bitwise در جاوا اسکریپت
بخش یازدهم:
- عبارات regular در جاوا اسکریپت
- مدیریت خطاها در جاوا اسکریپت
بخش دوازدهم:
- تکمیل مدیریت خطاها در جاوا اسکریپت
- Hoisting در جاوا اسکریپت
- استفاده از کلمه کلیدی this
- توابع Arrow
بخش سیزدهم
- کلاس ها در جاوا اسکریپت
- Json در جاوا اسکریپت
بخش چهاردهم:
- خصوصیات اشیا
- متدهای اشیا
- نمایش اشیا
- Getter و setter
- constructor
- Prototype ها در اشیا
بخش پانزدهم:
- انواع ارسال پارامترهای تابع
- انواع Invocation تابع
بخش شانزدهم:
- Call کردن تابع
- Apply کردن تابع
- Closur ها در توابع
- ارث بری کلاسها
- استاتیک در کلاسها
- مفهوم Callback
بخش هفدهم:
- تکمیل مفهوم Callback
- مفهوم Asynchronous
- مفهوم Promises
- مفهوم Async/Await
- معرفی HTML DOM
بخش هجدهم:
- معرفی و متدهای HTML DOM:
- یافتن المانهای HTML
- تغییر و حذف و اضافه EVENT به المانهای HTML
- تغییر، اضافه و حذف المان های HTML
- تغییر، اضافه و حذف ATTRIBUTE و PROPERTY های المانهای HTML
بخش نوزدهم:
- ادامه HTML DOM:
- شی NAVIGATOR
- NODELIST ها
- COLLECTION
بخش بیستم:
- تکمیل NodList
- آموزش HTML BOM:
- اشیاه window,
- screen,
- location,
- history,
- navigator
- timing
بخش بیست یکم:
- تکمیل HTML BOM:
- Cookies
- آموزش wb api ها:
- Form api
- History api
- Storage api
- Worker api
بخش بیست دوم:
- تکمیل webWorker api:
- گرفتن موقعیت جغرافیایی کاربر
- آموزش ajax در جاوااسکریپت:
- شی xmlhttpRequest
بخش بیست سوم:
- خواندن فایل متنی از سرور با ajax و جاوااسکریپت
- Property ها و متد شی xmlhttpRequest
- نحوه ارسال داده به سمت سرور با متد post یا get
- خواندن یک فایل XML از سرور و نمایش محتویاتش با ajax
بخش بیست چهارم:
- Drag و Drop
- SSE
- Canvas