الإنتقال للتصميم الجديد

دورة البرمجة باستخدام جافا سكريبت Javascript

دورة البرمجة باستخدام جافا سكريبت Javascript

الوصف

لغة جافاسكربت Javascript هي لغة برمجة نصية تستخدم بشكل أساسي في متصفحات الإنترنت ويمكن استخدامها في مجالات أخرى مثل بناء تطبيقات الهواتف الذكية.

لماذا تتعلم جافاسكربت؟

  • لغة لا بد من وجودها في مواقع الإنترنت الحديثة، لا يكاد موقع ويب مشهور لا يستخدمها
  • لغة لا تحتاج لمتطلبات تشغيل يمكنك البدء باستخدام محرر نصوص و متصفح إنترنت
  • باستخدامها يمكن بناء مواقع إنترنت تفاعلية ذات أداء و تجربة مستخدم أفضل
  • مجال العمل الوظيفي بها واسع و مطلوبة في سوق العمل
  • تعتبر من أشهر لغات البرمجة للواجهات.

 

في ماذا تستخدم Javascript؟

  • تطوير صفحات الويب.
  • تطوير تطبيقات الويب.
  • تطوير الألعاب.
  • تطوير تطبيقات الهواتف الذكية.
  • تطوير تطبيقات سطح المكتب عبر تقنيات.

 

أشهر المكتبات و إطارات العمل في جافا سكربت:

  • مكتبة جيكويري JQuery.
  • مكتبة فيو جي اس Vue.Js.
  • مكتبة Chart.Js.
  • مكتبة TensorFlow.Js.
  • إطار عمل أنجولار Angular.Js.
  • إطار عمل رياكت React.
  • إطار عمل نود جي اس Node.Js.
  • إطار عمل باك بون جي اس Backbone.Js.

ماذا سنتعلم في هذه الدورة؟

  • سنقوم بتنفيذ أكثر من مشروع
  • التعامل مع المتغيرات Variables
  • التعرف والتعامل مع أنواع البيانات Data Types
  • الأحداث Events
  • حلقات التكرار Loop
  • المنطق البرمجي والشروط Logic
  • الدوال البرمجية Functions
  • مصفوفات البيانات Arrays
  • الكائنات Objects
  • التعرف على نسخ جافاسكربت ES5, ES6
  • المجالات البرمجية Scopes
  • التعديل على محتوى الصفحات DOM
  • المؤثرات البصرية Animation
  • البرمجة الشيئية OOP
  • التعامل مع AJAX
  • التعامل مع JSON
  • كيفية التعامل مع الكعكات cookies
  • التخاطب مع المتصفح BOM
  • الفحص وحل المشاكل البرمجية Debugging
  • التعامل مع الأخطاء البرمجية Error handling
  • جودة وتنسيق البرمجة Code Style & Quality
  • التعامل مع Promises async / await
  • الاتصالات الشبكية Network Requests
  • تخزين البيانات localStorage / indexedDb

المشاريع

  • صفحة شخصية

    هذه الصفحة مبنيه على شكل لينكس terminal ألقِ نظره عليها. هذه الصفحة عباره عن صفحة شخصية لعبدالله الزهراني. تجد في هذه الصفحة معلومات خاصه بعبدالله الزهراني مثل مهاراته ومشاريعه اللي سواها وكيف تتواصل معاه.

    بواسطة: AbdullahAlzhrani

  • Graduate Plan

    إضافة تساعد الطلاب في الجامعات على إعداد خطة التخرج وحساب المعدل التراكمي.

    بواسطة: mohsowa

  • تتبع القراءة

    تطبيق يمكنك من متابعة قراءة الكتب حيث تستطيع من خلاله تسجيل تاريخ البدء في الكتاب والانتهاء منه ومعرفة التقدم اي عدد الصفحات التي تم قراءتها وكتابة مراجعة عن الكتاب

    بواسطة: Asma2021

الأقسام

المقدمة

سنتعرف في هذا القسم على هذه الدورة وماهي لغة جافاسكربت ومالأدوات التي سنحتاجها للعمل ومعلومات هامة للتعلم الذاتي والحصول على المساعدة

الحقيبة التدريبية (هديتك هنا)

ستجد في هذا القسم حقيبتك التدريبية والتي تحتوي على مراجع إضافية يمكنك التعلم منها + كتيب الأمثلة + الخرائط الذنية التي استخدمناها أثناء الدورة

الأساسيات

سنتعرف بهذا الدرس على الأمور الأساسية التي يجب التعرف عليها قبل البدء بالبرمجة باستخدام Javascript

مدخل إلى أنواع البيانات Data Types

سنتعرف في هذا القسم على أنواع البيانات البسيطة ماهي وكيف نتعامل معها

التفاعل مع المستخدمين Interactions

سنتعرف في السلسلة القادمة على كيفية التفاعل مع المستخدمين باستخدام النوافذ في Javascript

المنطق البرمجي Logic

المنطق البرمجي يستخدم لاتخاذ القرارات في البرمجة بناء على المخرجات المنطقية منها وسنتعرف في السلسلة القادمة على المنطق في البرمجة وكيفية التعامل معه

حلقات التكرار Loop

في السلسة القادمة سنتعرف على التكرار وأنواع وماهي فوائده

الدوال (الوظائف) Functions

حان الوقت للتعمق قليلا والتعرف على الوظائف Functions وكيف يمكن استخدامها لتحسين البرمجة واختصار الوقت

الكائنات Objects

ماهي الكائنات؟ سنتعرف في هذا القسم على الكائنات التي تعمل بطريقة مختلفة تماما عن Primitives في السابق

الأرقام Numbers

سنتعلم في هذا القسم طرق أخرى للتعامل مع الأرقام وسنتعامل أيضا مع الكائن Math للرياضيات

النصوص "السلاسل" Strings

سنقوم بهذا القسم من الدورة بدراسة النصوص أو السلاسل والدوال الإضافية لها كتحويل حالة الأحرف والبحث

المصفوفات Arrays

حان وقت تعلم المصفوفات وهي أحدى أنواع البيانات التي تقطع تحت مظلة الكائنات Objects وتستخدم لتخزين البيانات

الوقت والتاريخ Date & Time

الوقت والتاريخ لابد من استخدامها في لغات البرمجة لتحديد فترة زمنية معينة أو لمعرفة متى حدث شيء ما؟ سنتعلم في السلسلة القادمة كل شيء يخص التاريخ والوقت في دالة Date

ترميز كائنات جافاسكربت JSON

في السلسلة التالية سنتعلم كيفية استخدام JSON والذي يقوم بتحويل الكائنات لنصوص ليمكننا التعامل معها خارج لغة البرمجة

الجدولة والتوقيت Scheduling and Timing

سنقوم الآن بدراسة كيفية جدولة الأعمال البرمجية باستخدام javascript عبر استخدام وظائف في اللغة تساعدنا على تشغيل الشفرات البرمجية عبر توقيت زمني معين

استخدامات متقدمة في Functions & Objects

في هذا القسم سنتعرف على بعض الاستخدامات المتقدمة في الدوال "functions" والكائنات "objects"

البرمجة الكائنية (الشيئية) Object Oriented Programming OOP

سنتعرف في هذا الفصل على البرمجة الكائنية والتي يرمز لها بـ OOP وكيف يتم بناء classes لنقوم بتغليف البيانات أو تقليل كتابة المنطق البرمجي

التعامل مع الأخطاء Error Handling

ستحدث الأخطاء بلا شك أثناء التشغيل وقد تكون هذه الأخطاء لأسباب برمجية بحته وقد تكون لأسباب خارج نطاق المنطق البرمجي وسنتعرف بالسلسلة القادمة على كيفية التعامل معها

الوعود Promises

الآن وصلنا لمرحلة متقدمة نوعا ما أليس كذلك؟ أحسنت! هيا نتعرف على "الوعود" Promises وهي الكائنات التي تطلب من غيرها الإنتظار حتى تنتهي من عملها

الموديولز (الوحدات) Modules

سنتعرف في السلسلة القادمة على إحدى خصائص جافاسكربت التي تعتبر حديثة عليها الا وهي الوحدات Modules

التعامل مع الصفحات Document DOM

في السلسلة القادمة سنقوم بدراسة DOM وهي Document Object Model والتي من خلالها يمكننا الوصول للعناصر في المستند للصفحة والتعامل معها مثل تعديلها \ حذفها أو الإضافة عليها

الأحداث في الواجهة UI Events

سنتعلم في السلسلة القادمة كيفية التعامل مع الأحداث التي تتم في الواجهة مثل الضغط على ازرار الفأرة أو لوحة المفاتيح وكذلك أحداث نماذج البيانات والمتصفح نفسه.

أحداث النماذج Form events

وصلنا إلى النماذج forms. يوجد بها الكثير من الأحداث التي يمكن الاستفادة منها مثلا عند تغيير قيمة حقل معين أو الانتقال منه أو الاختيار المتعدد أو إرسال البيانات من النموذج

الأحداث في الصفحات Page Events

سنتحدث في هذا القسم عن الأحداث التي تتم في الصفحات والتي من خلالها نستطيع معرفة مثلا إذا تم تحميل الصفحة ومحتوى الصفحة ... الخ

النوافذ الخارجية Popup Windows

سنقوم بالسلسلة القادم بالتعرف على كيفية فتح النوافذ الخارجية في المتصفح والتعامل معها مثل اخذ البيانات منها واغلاقها

الإتصالات الشبكية Network Requests

وصلنا لمرحلة الاتصالات الشبكية الآن! وسنتعلم في الدروس القادمة كيفية القيام بالاتصالات الشبكية للحصول على معلومات أو إرسال بيانات معينة من خلال الصفحات باستخدام JavaScript

الكعكات Cookies

الكعكات Cookies هي عبارة عن بيانات صغيرة يتم تخزينها في متصفح المستخدم ونقلها عبر HTTP Requests وفي السلسلة القادمة سنقوم بالتعرف عليها والعمل معها

تخزين البيانات LocalStorage / SessionStorage

في السلسلة التالية سنتعرف على طريقة أخرى لتخزين البيانات في المتصفح وهي متقدمة قليلا عن Cookies وتختلف أيضا في طريقة عملها

قواعد البيانات IndexedDB

IndexedDB هي قواعد بيانات من نوع No-SQL مضمنة في المتصفحات وتعمل في لغة JavaScript وتستخدم لتخزين البيانات للتطبيقات في المتصفح.

العناصر المخصصة Custom Components

العناصر المخصصة "Custom components" هي عناصر يمكن تشكيلها لتصبح قوالب HTML قابلة لإعادة الاستخدام في المشاريع وسنتطرق لذلك في الدروس التالية

المشروع الأول #1

سنقوم بهذا المشروع بالتدرب على ماتعلمناه وتطبيقه في تنفيذ مشروع حاسبة تستخدم HTML + CSS + Javascript

المشروع الثاني #2

سنقوم بهذا المشروع بإنشاء تطبيق للملاحظات الشخصية والذي سوف يضم عدد من المفاهيم الكبيرة مثل Promises, Events, IndexedDB, Interactions, DOM

عينة من الدروس المجانية