أخر الاخبار

تعلم جافا سكريبت نظرة تفصيلية على الكائنات

تحميل كتاب تعلم جافا سكريبت

كتاب تعلم لغة JavaScript

كتاب PDF تعلم جافاسكربت, رافقت زيادة إستخدام شبكة الانترنت زيادة كبيرة في الطلب على مطوري مواقع الويب. و تطورت تقنيات الويب كثيراً في الآونة الأخيرة و أصبح تطوير واجهات تفاعليه امراً هيناً يسهّل القيام به. لوجود كم كبير من المكتبات الجاهزة التي تعتمد على جافاسكربت, لكن هذا أدى إلى عدم إهتمام جزء كبير من المطورين باللغة اﻷساسية. التي كتبت فيها تلك المكتبات مما يورث قصوراً في فهمهم لطريقة عمل تلك المكتبات و كيفية تعاملها مع المتصفح خلف الستار.

تعتبر لغة java script من أهم لغات البرمجة التي لا بُد من تعلم جافاسكريبت learn javascript و هي لغة عالية المستوى و تستخدم هذه اللغة في متصفحات الويب لإنشاء صفحات أكثر تفاعلية.

قامت شركة نتسكيب Netscape بتطويرها كوسيلة لإضافة عناصر ديناميكية وتفاعلية للمواقع. و ظهرت لغة JavaScript للمبرمجين الهواة وتم ملاحظتها من عموم المبرمجين المحترفين وتطويرها javascript programming language. و إصدار نسخ أعلى قوة منها لآحقاً لتصبح اللغة الأكثر إثارة للإهتمام من عام 2015 حتى الآن.

لذا أتى هذا الكتاب محاولاً أن يشرَح للمطورين أصحاب المعرفة المتوسطة للغة جافاسكربت أو اولئك الذين يألفون. إستخدام مكتباتها كيف تعمل لغة جافاسكربت عبر شرحه للكائنات و ما يتعلق بها شرحاً عميقاً يؤدي إلى فهم آلية عمل اللغة نفسها, و يحتوي الكتاب على 16 فصل.

في جافا سكريبت، الكائنات هي هياكل بيانات قابلة للتمثيل للأشياء الحقيقية أو المفاهيم في العالم الحقيقي. فهي تسمح لك بتنظيم البيانات والسلوك المرتبط بها في كودك.

لإنشاء كائن في جافا سكريبت، يجب عليك تعريف الصف الذي يصف الكائن ومن ثم إنشاء مثيل (أو نسخة) من تلك الصف. يمكن تعريف الصف باستخدام الكلمة الرئيسية class، ويمكن إنشاء مثيل باستخدام الكلمة الرئيسية new.

فلنقم بإعطاء مثال بسيط. لنفترض أننا نريد تمثيل كائنٍ يُمثل السيارة. يمكن تعريف الصف "Car" بهذا الشكل:

class Car {
  constructor(brand, model, year) {
    this.brand = brand;
    this.model = model;
    this.year = year;
  }

  startEngine() {
    console.log("Engine started");
  }

  stopEngine() {
    console.log("Engine stopped");
  }
}

في هذا المثال، لدينا صف يسمى "Car" يحتوي على ثلاثة خصائص (brand و model و year) واثنين من الأساليب (startEngine و stopEngine).

لإنشاء مثيل من الكائن والعمل معه، يمكنك استخدام الكلمة الرئيسية new كما يلي:

const myCar = new Car("Toyota", "Camry", 2022);
console.log(myCar.brand); // النتيجة: "Toyota"
console.log(myCar.year); // النتيجة: 2022
myCar.startEngine(); // النتيجة: "Engine started"

في هذا المثال، قمنا بإنشاء مثيل جديد من الكائن "Car" باستخدام القيم "Toyota" و "Camry" و 2022 للخصائص brand و model و year على التوالي. ثم استخدمنا العملية "." للوصول إلى الخصائص والأساليب الموجودة في المثيل.

هذا مثال بسيط يوضح كيفية استخدام الكائنات في جافا سكريبت. يمكنك إضافة المزيد من الخصائص والأساليب حسب احتياجاتك لتمثيل الكائنات بشكل أكثر تعقيدًا وواقعية.

هل يمكنني استدعاء الأساليب في الكائنات من خارج الصف الذي تم تعريفه فيه؟

لا يمكن استدعاء الأساليب في الكائنات من خارج الصف الذي تم تعريفه فيه، إلا إذا تم تعريف الأسلوب بشكل عام (public) في الصف.

في جافا سكريبت، هناك ثلاثة مستويات للتصريح (visibility levels) للأعضاء في الصف: public و protected و private. افتراضياً، فإن الأعضاء (الخصائص والأساليب) في الصف هي عامة (public)، وبالتالي يمكن الوصول إليها من أي مكان في البرنامج.

للوصول إلى الأساليب في الكائنات من خارج الصف الذي تم تعريفه فيه، يجب عليك تعريف الأسلوب بشكل عام (public) في الصف. هناك أيضًا مستوى الوصول المحمي (protected) الذي يسمح بالوصول إلى الأعضاء من الصف والأصناف المشتقة (subclasses)، ولكنه ليس متاحًا للاستخدام خارج الصف أو الأصناف المشتقة.

لتوضيح ذلك، هذا مثال يوضح كيفية استدعاء الأسلوب من خارج الصف:

class Car {
  constructor(brand, model, year) {
    this.brand = brand;
    this.model = model;
    this.year = year;
  }

  startEngine() {
    console.log("Engine started");
  }

  stopEngine() {
    console.log("Engine stopped");
  }
}

const myCar = new Car("Toyota", "Camry", 2022);
myCar.startEngine(); // يمكن استدعاء الأسلوب startEngine() من الكائن

في هذا المثال، يمكننا استدعاء الأسلوب startEngine() من الكائن myCar لأنه تم تعريفه كأسلوب عام (public) في الصف "Car".

ومع ذلك، إذا تم تعريف الأسلوب كـ private، فلن يكون من الممكن استدعاءه من خارج الصف. وبالتالي، يتعين عليك تعديل مستوى الوصول إلى public إذا كنت ترغب في استدعاء الأسلوب من خارج الصف.

class Car {
  constructor(brand, model, year) {
    this.brand = brand;
    this.model = model;
    this.year = year;
  }

  // الأسلوب معتمد بشكل افتراضي (بدون تحديد المستوى)
  startEngine() {
    console.log("Engine started");
  }

  // الأسلوب معتمد كأسلوب خاص (private)
  stopEngine() {
    console.log("Engine stopped");
  }
}

const myCar = new Car("Toyota", "Camry", 2022);
myCar.startEngine(); // يمكن استدعاء الأسلوب startEngine() من الكائن
myCar.stopEngine(); // سيؤدي إلى خطأ، لأن الأسلوب stopEngine() هو خاص (private)

في المثال الثاني، لن يتمكن الكود من استدعاء الأسلوب stopEngine() لأنه تم تعريفه كأسلوب خاص (private) في الصف "Car".

هل يمكنني استدعاء الأساليب الخاصة (private) في الكائنات من داخل الصف؟

نعم، يمكنك استدعاء الأساليب الخاصة (private) في الكائنات من داخل الصف نفسه. في جافا سكريبت، الأساليب الخاصة (private) تكون مرئية (visible) فقط داخل الصف الذي تم تعريفها فيه. وهذا يعني أنه لا يمكن الوصول إليها من خارج الصف، ولكن يمكن استدعاؤها واستخدامها داخل الصف نفسه. لتوضيح ذلك، هذا مثال يوضح كيفية استدعاء الأسلوب الخاص (private) من داخل الصف:

class Car {
  constructor(brand, model, year) {
    this.brand = brand;
    this.model = model;
    this.year = year;
  }

  startEngine() {
    console.log("Engine started");
    this.processInternalData(); // استدعاء الأسلوب الخاص من داخل الصف
  }

  stopEngine() {
    console.log("Engine stopped");
    this.processInternalData(); // استدعاء الأسلوب الخاص من داخل الصف
  }

  // الأسلوب الخاص (private)
  processInternalData() {
    console.log("Processing internal data");
  }
}

const myCar = new Car("Toyota", "Camry", 2022);
myCar.startEngine(); // يمكن استدعاء الأسلوب startEngine() من الكائن
myCar.stopEngine(); // يمكن استدعاء الأسلوب stopEngine() من الكائن

في هذا المثال، يمكننا استدعاء الأسلوب processInternalData() (الذي هو أسلوب خاص) من داخل الأساليب العامة (public) في الصف "Car"، مثل startEngine() و stopEngine().

ومع ذلك، لا يمكن استدعاء الأسلوب الخاص (private) من خارج الصف. ستتلقى خطأ إذا حاولت استدعاءه مباشرة من خارج الصف.

const myCar = new Car("Toyota", "Camry", 2022);
myCar.processInternalData(); // سيؤدي إلى خطأ، لأن الأسلوب processInternalData() هو خاص (private)

في المثال الثاني، ستحدث خطأ لأن الأسلوب processInternalData() هو خاص (private) ولا يمكن الوصول إليه من خارج الصف.

فهرس كتاب تعلم JavaScript

  1. الكائنات في جافاسكربت.
  2. التعامل مع الكائنات و الخاصيات.
  3. الكائن Object().
  4. الدوال function().
  5. الكائن الرئيسي العام.
  6. الكلمة المحجوزة this.
  7. المجالات في جافاسكربت.
  8. خاصية prototype التابعة للدوال.
  9. المصفوفات Arrays() في جافاسكربت.
  10. السلاسل النصية String().
  11. الأعداد Number().
  12. القيم المنطقية Boolean().
  13. التعامل مع السلاسل النصية و الأعداد و القيم المنطقية الأولية.
  14. القيمة Null.
  15. القيمة undefined.
  16. الدوال الرياضية.

ميزات لغة جافا سكربت

  1. تعتبر لغة سهلة التعلم و هي أقرب من اللغة الإنجليزية بعكس لغة الجافا.
  2. هي لغة برمجة مستقلة وليست كما يعتقد البعض أنها مرتبطة بلغة جافا.
  3. تعتبر لغة تفاعلية و سهلة الإستخدام و سريعة.
  4. تستخدم الجافا سكريبت في البرمجة من طرف العميل أو ما تدعى client side لكنها تتميز بالعديد من التقنيات والميزات.
  5. توفّر خدمات تحكمية أكبر بالمتصفحات.
  6. تتميز بواجهات غنية ويمكنك سحب وإسقاط المكونات لتغني واجهتك بالعناصر المطلوبة.
  7. تعتبر لغة برمجة وظيفية.
محمد الصادق عثمان
بواسطة : محمد الصادق عثمان
محمد الصادق محمد عثمان طالب جامعي في جامعة السودان للعلوم والتكنلوجيا
تعليقات




    حجم الخط
    +
    16
    -
    تباعد السطور
    +
    2
    -