اذهب إلى المحتوى

السؤال

نشر

السلام عليكم .. اتعامل مع ال APIs المختلفة التى تقدمها بعض المواقع مثل mockAPI وغيرها ..  والتعامل معها سهل بفضل الله .. من حيث الميثودس المختلفة مثل Get , Post, Delete and Put .. لكنى عندما اتعامل مع الفاير بيز بنفس الطريقة والاكواد التى اتعامل معها فى هذه ال APIs فانا اجد دائما اخطاء .. ولاحظت من الدورات انهم يستخدمون مع الفاير بيز constructors مختلفة حسب الشئ الذى أريد أن أخزنه .. وسؤال هو هل من الضرورى عمل constructors لكى استطيع التعامل مع الفاير بيز ؟

لمن لم يفهم سؤال .. هذا مثال ل constructor 

class Product {
  constructor(id, ownerId, title, imageUrl, description, price) {
    this.id = id;
    this.ownerId = ownerId;
    this.title = title;
    this.imageUrl = imageUrl;
    this.description = description;
    this.price = price;
  }
}

export default Product;

 

Recommended Posts

  • 1
نشر

المُنشئ ، constructor  في البرمجة الكائنية هي دالة خاصة  يتم النداء عليها أثناء إنشاء مثيل (instance) و يسمح بتخصيص الذاكرة اللازمة للكائن وتهيئة سماته (attributes)

أما Firebase  فهو مجموعة من خدمات الإستضافة لأي نوع من أنواع التطبيقات فهي توفر خدمات متعددة من بينها :

  • قاعدة بيانات Realtime - في الوقت الفعلي ، مستضافة على السحابة ، قاعدة بيانات NoSQL
  • خدمة الاشعارات
  • تسجيل دخول المستخدم وهويته
  • التخزين السحابي - تخزين ملفات قابل للتطوير 

و لتخزين البيانات في firebase  فمن الضروري عمل constructors  على حسب ما تود تخزينه في قاعدة البيانات مثلا في لغة java نكتب 

public static class User {

  public String date_of_birth;
  public String full_name;
  public String nickname;

  public User(String dateOfBirth, String fullName) {
    // ...
  }

  public User(String dateOfBirth, String fullName, String nickname) {
    // ...
  }

}

DatabaseReference usersRef = ref.child("users");

Map<String, User> users = new HashMap<>();
users.put("alanisawesome", new User("June 23, 1912", "Alan Turing"));
users.put("gracehop", new User("December 9, 1906", "Grace Hopper", "happy man"));

usersRef.setValueAsync(users);

وسوف تخزن المعلومات على الشكل التالي 

{
  "users": {
    "alanisawesome": {
      "date_of_birth": "June 23, 1912",
      "full_name": "Alan Turing"
    },
    "gracehop": {
      "date_of_birth": "December 9, 1906",
      "full_name": "Grace Hopper",
      "nickname": "happy man"
    }
  }
}

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...