#مقالات_برمجية📙📙
🌐💻واجهة برمجة التطبيقات Application Programming Interface: ما هي؟ ولم قد أحتاجها؟
لا بد أنك سمعت الكثير حول مصطلح واجهة برمجة التطبيقات API ضمن مجتمع المبرمجين، حيث أنه يشير إلى مفهوم تقني بالغ الأهمية ومستخدم بكثرة في كل مكان تقريبًا على شبكة الإنترنت، لذا سنذهب معًا في رحلة برمجية نبين فيها ما هو الـ API ولماذا يستخدمه المبرمجون؟
واجهة برمجة التطبيقات API
API هو اختصار لـ Application Programming Interface وتعني واجهة برمجة التطبيقات وهي تقنية تتيح للتطبيقات التواصل مع بعضها البعض برمجيًا.
بشكل عام يقصد أغلب المبرمجون بقول API واجهات برمجة التطبيقات التي تسهل نقل البيانات والتي تقدم للمبرمج معلومات على هيئة XML أو JSON ليستخدمها ضمن البرامج والمواقع الخاصة به. فمثلًا تطبيق الطقس يستخدم API تزوده بالمعلومات الخاصة بالطقس في كل مدن العالم ومهمة البرنامج فقط عرض هذه المعلومات، ولكن مفهوم الـ API أوسع من ذلك بكثير.
✅أهمية API
يسهل مفهوم واجهة برمجة التطبيقات حياة المبرمجين كافة، حيث يحتاج المبرمج إلى إضافة بعض الخصائص والميزات ضمن التطبيقات المختلفة والتي تتواجد على شكل API، التي لن يكون من السهل بنائها في كل مرة من الصفر.
لنقل مثلًا أن المبرمج يود إضافة تشغيل الكاميرا إلى التطبيق، فإن المنصة التي يطور تطبيقه لها سواء أندرويد أو ويندوز أو أي منصة أخرى توفر له API خاصة بالكاميرا يمكنه إضافتها ببضع أسطر أو حتى سطر واحد وتعمل الكاميرا بشكل جيد.
هذا النوع من الـ API توفره الشركات المسؤولة عن أنظمة التشغيل للمبرمجين، ليتمكنوا من تشغيل الميزات المختلفة في النظام بأفضل شكل ممكن وبطريقة مكتوبة مسبقًا من قبل مبرمجين محترفين في الشركة، وتكون الـ API عبارة عن صلة وصل بين التطبيق الجديد والميزة المسؤولة عنها، سواء كانت الكاميرا أو الموقع Location أو متصفح الإنترنت أو البطارية أو أي ميزة أخرى.
وفي حال كانت واجهة برمجة التطبيقات مسؤولة عن تقديم معلومات JSON أو XML يكون المفهوم مختلف قليلًا، حيث يمكن لأي موقع أو مصدر معلومات أن يقدم API للمطورين لتقديم هذه المعلومات بطريقة منظمة، وتكون الـ API هنا عبارة عن رابط محدد مهمته التواصل مع قاعدة البيانات بطريقة منظمة وتقديم البيانات المختلفة إلى المطور ليقوم المطور بعد ذلك بعرضها ضمن التطبيق أو الموقع بأي شكل يريده.
🔰واجهة برمجة التطبيقات
من أشهر الأمثلة على هذا النوع هي الـ API المسؤولة عن أسعار العملات والطقس والأخبار وغيرها.
كيف تعمل واجهة برمجة التطبيقات
تتكون أي API من قسمين رئيسيين، الأول هو الوصف الذي يشرح طريقة عرض البيانات وتبادلها، والقسم الثاني هو البرنامج الذي يبنى بطريقة تناسب الوصف الذي قدمه القسم الأول ليستقبل البيانات ويعرضها على شكل معلومات مفيدة للمستخدمين.
يقوم الموقع أو البرمجية الخاصة بتقديم البيانات بنشرها بشكل واضح ومحدد، بينما يقوم البرنامج أو الموقع المسؤول عن عرض هذه البيانات بقراءة ما تم نشره وتنظيم عرضه.
🛡أنواع واجهة برمجة التطبيقات
يوجد ثلاثة أنواع أساسية من الـ API بحسب أسلوب برمجتها والتعامل معها وهي:
API الميزات البرمجية: وهو النوع الذي تكون فيه الـ API مسؤولة عن تسهيل البرمجة وتمكين المبرمج من استخدام ميزات كثيرة وتضمينها في برنامجه دون الحاجة إلى برمجتها من الصفر، مثل إضافة عناصر التعامل مع قواعد البيانات دون كتابتها بالتفصيل.
API المعلومات: وغالبًا ما تكون عنوان أو رابط بسيط URL يقدمه موقع أو جهة معينة تملك بيانات وتقوم بتنظيمها بشكل متعارف عليه مثل XML أو JSON، ويتيح الرابط للمبرمجين الحصول على هذه البيانات بشكل مجاني أو مأجور وعرضها في التطبيقات والمواقع الإلكترونية مثل مواقع الطقس والكتب والأخبار والأفلام والعملات.
API البرامج عن بعد: وهي نوع من الـ API يمكن من خلاله تشغيل برامج موجودة في مكان بعيد عن طريق الاستدعاء المتاح لهذه البرامج ليتم استخدامها كما لو أنها موجودة محليًا بالفعل، ومن الأمثلة عليها المواقع التي يستخدمها الكثيرون عبر الشبكة بدلًا من تنصيب برامج الأوفيس.
لماذا تستخدم الـ API؟
تتيح فكرة واجهة برمجة التطبيقات وخاصة فيما يتعلق بتقديم البيانات من الجهات المختلفة الكثير من المرونة لإنشاء تطبيقات غير محدودة ومفيدة، هذا إلى جانب أن الـ API تقوم بالكثير من العمل بالنيابة عن المبرمج وتقدم له البيانات والميزات المختلفة بشكل ممتاز ومبرمج مسبقًا.
يمكن برمجة الـ API لتقوم بتحديث البيانات تلقائيًا دون الحاجة إلى تعديلها بشكل يدوي، بل تقوم الـ API بعملية القراءة والتنظيم والتحليل وتكون نتيجتها معلومات مفيدة يمكن استخدامها بشكل غير محدود.
في الوقت الحالي لا يمكن لأي مبرمج الاستغناء عن مفهوم الـ API وكلما ازداد حجم البيانات وحجم البرنامج أو الموقع الذي يتم بناؤه كلما ازدادت أهمية استخدام عدة أنواع من الـ API لتضمين ميزات
🌐💻واجهة برمجة التطبيقات Application Programming Interface: ما هي؟ ولم قد أحتاجها؟
لا بد أنك سمعت الكثير حول مصطلح واجهة برمجة التطبيقات API ضمن مجتمع المبرمجين، حيث أنه يشير إلى مفهوم تقني بالغ الأهمية ومستخدم بكثرة في كل مكان تقريبًا على شبكة الإنترنت، لذا سنذهب معًا في رحلة برمجية نبين فيها ما هو الـ API ولماذا يستخدمه المبرمجون؟
واجهة برمجة التطبيقات API
API هو اختصار لـ Application Programming Interface وتعني واجهة برمجة التطبيقات وهي تقنية تتيح للتطبيقات التواصل مع بعضها البعض برمجيًا.
بشكل عام يقصد أغلب المبرمجون بقول API واجهات برمجة التطبيقات التي تسهل نقل البيانات والتي تقدم للمبرمج معلومات على هيئة XML أو JSON ليستخدمها ضمن البرامج والمواقع الخاصة به. فمثلًا تطبيق الطقس يستخدم API تزوده بالمعلومات الخاصة بالطقس في كل مدن العالم ومهمة البرنامج فقط عرض هذه المعلومات، ولكن مفهوم الـ API أوسع من ذلك بكثير.
✅أهمية API
يسهل مفهوم واجهة برمجة التطبيقات حياة المبرمجين كافة، حيث يحتاج المبرمج إلى إضافة بعض الخصائص والميزات ضمن التطبيقات المختلفة والتي تتواجد على شكل API، التي لن يكون من السهل بنائها في كل مرة من الصفر.
لنقل مثلًا أن المبرمج يود إضافة تشغيل الكاميرا إلى التطبيق، فإن المنصة التي يطور تطبيقه لها سواء أندرويد أو ويندوز أو أي منصة أخرى توفر له API خاصة بالكاميرا يمكنه إضافتها ببضع أسطر أو حتى سطر واحد وتعمل الكاميرا بشكل جيد.
هذا النوع من الـ API توفره الشركات المسؤولة عن أنظمة التشغيل للمبرمجين، ليتمكنوا من تشغيل الميزات المختلفة في النظام بأفضل شكل ممكن وبطريقة مكتوبة مسبقًا من قبل مبرمجين محترفين في الشركة، وتكون الـ API عبارة عن صلة وصل بين التطبيق الجديد والميزة المسؤولة عنها، سواء كانت الكاميرا أو الموقع Location أو متصفح الإنترنت أو البطارية أو أي ميزة أخرى.
وفي حال كانت واجهة برمجة التطبيقات مسؤولة عن تقديم معلومات JSON أو XML يكون المفهوم مختلف قليلًا، حيث يمكن لأي موقع أو مصدر معلومات أن يقدم API للمطورين لتقديم هذه المعلومات بطريقة منظمة، وتكون الـ API هنا عبارة عن رابط محدد مهمته التواصل مع قاعدة البيانات بطريقة منظمة وتقديم البيانات المختلفة إلى المطور ليقوم المطور بعد ذلك بعرضها ضمن التطبيق أو الموقع بأي شكل يريده.
🔰واجهة برمجة التطبيقات
من أشهر الأمثلة على هذا النوع هي الـ API المسؤولة عن أسعار العملات والطقس والأخبار وغيرها.
كيف تعمل واجهة برمجة التطبيقات
تتكون أي API من قسمين رئيسيين، الأول هو الوصف الذي يشرح طريقة عرض البيانات وتبادلها، والقسم الثاني هو البرنامج الذي يبنى بطريقة تناسب الوصف الذي قدمه القسم الأول ليستقبل البيانات ويعرضها على شكل معلومات مفيدة للمستخدمين.
يقوم الموقع أو البرمجية الخاصة بتقديم البيانات بنشرها بشكل واضح ومحدد، بينما يقوم البرنامج أو الموقع المسؤول عن عرض هذه البيانات بقراءة ما تم نشره وتنظيم عرضه.
🛡أنواع واجهة برمجة التطبيقات
يوجد ثلاثة أنواع أساسية من الـ API بحسب أسلوب برمجتها والتعامل معها وهي:
API الميزات البرمجية: وهو النوع الذي تكون فيه الـ API مسؤولة عن تسهيل البرمجة وتمكين المبرمج من استخدام ميزات كثيرة وتضمينها في برنامجه دون الحاجة إلى برمجتها من الصفر، مثل إضافة عناصر التعامل مع قواعد البيانات دون كتابتها بالتفصيل.
API المعلومات: وغالبًا ما تكون عنوان أو رابط بسيط URL يقدمه موقع أو جهة معينة تملك بيانات وتقوم بتنظيمها بشكل متعارف عليه مثل XML أو JSON، ويتيح الرابط للمبرمجين الحصول على هذه البيانات بشكل مجاني أو مأجور وعرضها في التطبيقات والمواقع الإلكترونية مثل مواقع الطقس والكتب والأخبار والأفلام والعملات.
API البرامج عن بعد: وهي نوع من الـ API يمكن من خلاله تشغيل برامج موجودة في مكان بعيد عن طريق الاستدعاء المتاح لهذه البرامج ليتم استخدامها كما لو أنها موجودة محليًا بالفعل، ومن الأمثلة عليها المواقع التي يستخدمها الكثيرون عبر الشبكة بدلًا من تنصيب برامج الأوفيس.
لماذا تستخدم الـ API؟
تتيح فكرة واجهة برمجة التطبيقات وخاصة فيما يتعلق بتقديم البيانات من الجهات المختلفة الكثير من المرونة لإنشاء تطبيقات غير محدودة ومفيدة، هذا إلى جانب أن الـ API تقوم بالكثير من العمل بالنيابة عن المبرمج وتقدم له البيانات والميزات المختلفة بشكل ممتاز ومبرمج مسبقًا.
يمكن برمجة الـ API لتقوم بتحديث البيانات تلقائيًا دون الحاجة إلى تعديلها بشكل يدوي، بل تقوم الـ API بعملية القراءة والتنظيم والتحليل وتكون نتيجتها معلومات مفيدة يمكن استخدامها بشكل غير محدود.
في الوقت الحالي لا يمكن لأي مبرمج الاستغناء عن مفهوم الـ API وكلما ازداد حجم البيانات وحجم البرنامج أو الموقع الذي يتم بناؤه كلما ازدادت أهمية استخدام عدة أنواع من الـ API لتضمين ميزات
برمجية بدلًا من كتابتها من الصفر، والذي قد يكون مستحيلًا في بعض الأحيان، إضافة لاستيراد معلومات مفيدة ومحدثة لعرضها للمستخدمين وهو أمر لا يمكن إلا للجهات المسؤولة عن جمع هذه البيانات بالقيام به.
✅أمثلة شهيرة عن استخدام واجهة برمجة التطبيقات
دعونا نتعرف على بعض أشهر الـ APIs الموجودة والتي تقدمها الشركات للمبرمجين:
➖خرائط غوغل: تقوم شركة غوغل بتقديم خدمة الخرائط والتي يمكن استخدامها بشكل منفصل للتعرف على كل مواقع العالم وأفضل الطرق بين أي موقعين والمسافات الفاصلة بين أي نقطتين، إضافة إلى معرفة موقع مكان معين عند البحث عنه.
لكن الأمر لا يتوقف هنا فشركة غوغل تقدم API خاصة بخدمة الخرائط مهمتها إتاحة هذه الخرائط للمبرمجين ليقوم المبرمجون بتضمينها ضمن التطبيقات والمواقع الخاصة بهم، وعن طريق ذلك أصبحت خرائط غوغل هي المعيار الأساسي العالمي المسؤول عن الخرائط ونجدها في كل مكان.
IBM واتسون: وهي خدمة API تقدم فيها شركة IBM الشهيرة ثمار جهدها وتعبها في مجال الذكاء الاصطناعي بشكل عام بما فيه من ميزات مختلفة ومعالجة اللغات الطبيعية بشكل خاص. تتيح هذه الخدمة إمكانية استخدام أنظمة ذكية ضمن التطبيقات والمواقع للتعرف على الوجوه والكائنات في الصور وقراءة النصوص وبالتالي فهي تقدم للمبرمج الميزات الذكية دون الحاجة إلى العمل
لسنوات لتطوير مثل تلك الميزات.
➖موقع Twitter: يتيح موقع تويتر الشهير API خاصة به يمكن استخدامها على نطاق واسع وبشكل فعال. تتيح للمستخدمين إمكانية تسجيل الدخول عن طريق حساباتهم على تويتر أو مشاركة التطبيق أو الموقع الخاص بالمبرمج إلى أصدقائهم في موقع توتير، مما يسهل عليهم استخدام المواقع دون الحاجة لإنشاء حسابات منفصلة لكل موقع، إلى جانب إمكانية عرض أحدث التغريدات ضمن مواقع أخرى غير تويتر.
➖موقع Facebook: لا يمكن إهمال موقع فيسبوك بوجود أكثر من مليار مستخدم نشط ضمنه، حيث يوفر واجهة برمجة التطبيقات الشهيرة التي تمكن المستخدمين من تسجيل الدخول إلى المواقع المختلفة عن طريقها، إلى جانب عدة ميزات تشمل تحليل البيانات وإنشاء تطبيقات صوتية وغيرها.
➖موقع Slack: من أشهر المواقع التي توفر API للشركات ليقوم الموظفون بالتواصل مع بعضهم البعض، وذلك ضمن بيئة مهنية متكاملة تسمح بتبادل الصور والملفات والروابط وإنشاء الأقسام المختلفة.
لا يسعنا ذكر كل الـ APIs المتاحة عبر الشبكة فهي كثيرة جدًا حيث يمكن أن تجد لكل فكرة تدور في ذهنك موقع يقدم بيانات أو خدمات مناسبة لها.
✅أمثلة شهيرة عن استخدام واجهة برمجة التطبيقات
دعونا نتعرف على بعض أشهر الـ APIs الموجودة والتي تقدمها الشركات للمبرمجين:
➖خرائط غوغل: تقوم شركة غوغل بتقديم خدمة الخرائط والتي يمكن استخدامها بشكل منفصل للتعرف على كل مواقع العالم وأفضل الطرق بين أي موقعين والمسافات الفاصلة بين أي نقطتين، إضافة إلى معرفة موقع مكان معين عند البحث عنه.
لكن الأمر لا يتوقف هنا فشركة غوغل تقدم API خاصة بخدمة الخرائط مهمتها إتاحة هذه الخرائط للمبرمجين ليقوم المبرمجون بتضمينها ضمن التطبيقات والمواقع الخاصة بهم، وعن طريق ذلك أصبحت خرائط غوغل هي المعيار الأساسي العالمي المسؤول عن الخرائط ونجدها في كل مكان.
IBM واتسون: وهي خدمة API تقدم فيها شركة IBM الشهيرة ثمار جهدها وتعبها في مجال الذكاء الاصطناعي بشكل عام بما فيه من ميزات مختلفة ومعالجة اللغات الطبيعية بشكل خاص. تتيح هذه الخدمة إمكانية استخدام أنظمة ذكية ضمن التطبيقات والمواقع للتعرف على الوجوه والكائنات في الصور وقراءة النصوص وبالتالي فهي تقدم للمبرمج الميزات الذكية دون الحاجة إلى العمل
لسنوات لتطوير مثل تلك الميزات.
➖موقع Twitter: يتيح موقع تويتر الشهير API خاصة به يمكن استخدامها على نطاق واسع وبشكل فعال. تتيح للمستخدمين إمكانية تسجيل الدخول عن طريق حساباتهم على تويتر أو مشاركة التطبيق أو الموقع الخاص بالمبرمج إلى أصدقائهم في موقع توتير، مما يسهل عليهم استخدام المواقع دون الحاجة لإنشاء حسابات منفصلة لكل موقع، إلى جانب إمكانية عرض أحدث التغريدات ضمن مواقع أخرى غير تويتر.
➖موقع Facebook: لا يمكن إهمال موقع فيسبوك بوجود أكثر من مليار مستخدم نشط ضمنه، حيث يوفر واجهة برمجة التطبيقات الشهيرة التي تمكن المستخدمين من تسجيل الدخول إلى المواقع المختلفة عن طريقها، إلى جانب عدة ميزات تشمل تحليل البيانات وإنشاء تطبيقات صوتية وغيرها.
➖موقع Slack: من أشهر المواقع التي توفر API للشركات ليقوم الموظفون بالتواصل مع بعضهم البعض، وذلك ضمن بيئة مهنية متكاملة تسمح بتبادل الصور والملفات والروابط وإنشاء الأقسام المختلفة.
لا يسعنا ذكر كل الـ APIs المتاحة عبر الشبكة فهي كثيرة جدًا حيث يمكن أن تجد لكل فكرة تدور في ذهنك موقع يقدم بيانات أو خدمات مناسبة لها.
باذن الله ثم بدعمكم لنا بنشر رابط القناة ستصبح اكبر قناة منظمة تحتوي على العديد من السلاسل التي تستطيع الوصول اليها من خلال الفهرس علما بان هذه القناة لانحصل منها على فلوس وانما نرجوا الجزاء من الله فهل انتم معنا وستشاركون الرابط
Anonymous Poll
99%
معكم
1%
لسنا معكم
Mastering_Machine_Learning_with_.pdf
12.2 MB
كتاب بعنوان:
Mastering Machine Learning with Python in Six Steps, 2nd Edition
كتاب جميل جدا يقوم بشرح مجال تعلم الآلة باستخدام #Python بشكل احترافي
#Machine_Learnnig #Python #English
#كتب_برمجية
Mastering Machine Learning with Python in Six Steps, 2nd Edition
كتاب جميل جدا يقوم بشرح مجال تعلم الآلة باستخدام #Python بشكل احترافي
#Machine_Learnnig #Python #English
#كتب_برمجية
#مقالات_برمجية📙
💻🌐ما هو #فايربيز #Firebase ؟ وما الغاية منه ؟
لربما سمعتم كثيرا عن منصة فايربيز (Firebase) من شركة غوغل وتتساءلون عن ماهيتها ودورها في مساعدة المبرمجين على بناء تطبيقات عصرية بأقل مجهود. أنا كذلك مرت على ذهني هذه الأسئلة عندما تعرفت على هذه المنصة قبل مدة، وبعد بحث وقراءة لبعض الدروس والمقالات أدركت جيدا قيمتها وقمت بتجربة عدد من مزاياها في بعض المشاريع الشخصية لكي أستطيع تطبيق ما قرأته وبالتالي استيعابه جيدا.
وحتى أختصر عليكم الطريق، سأشرح لكم في هذا الدرس ما هي خدمة Firebase ؟ ما أهم المزايا والوظائف التي توفرها، ولماذا المبرمجون اليوم هم في أمس الحاجة لمثل هذه المنصات.
هذا المقال سيكون نظريا بالأساس لأن هدفنا منه هو إعطاؤكم نظرة عامة عن الموضوع، ولكن المؤكد أنه ستكون هناك دروس عملية في قادم الأيام إن شاء الله.
📌ما هي منصة Firebase إذن ؟ وما هو الهدف الأساسي من ورائها ؟
تخيل أنك تريد ـ كرائد أعمال ـ تطوير تطبيق مثل WhatsApp، قد تبدو المسألة من الوهلة الأولى بسيطة ولا تحتاج سوى لمطور تطبيقات بارع لكي يقوم بالمهمة. ولكن إذا قمنا بنظرة أكثر شمولية ودقة فإننا سنحتاج لما هو أكثر من ذلك :
➖أولا، وكما قلنا سنحتاج لمطور تطبيقات أندرويد و iOS (في غالب الأحيان نتحدث عن مطورين اثنين).
➖ثانيا، سيكون علينا البحث عن مطور لبناء واجهة خلفية (Backend) لإدارة قاعدة بيانات التطبيق وكذلك لتوفير مختلف الواجهات البرمجية APIs التي سيستهلكها عملاء (Clients) أندرويد و iOS.
➖ثالثا، مع مرور الوقت وازدياد عدد مستخدمي التطبيق سيكون علينا الزيادة في إمكانيات الخادم أو الخوادم التي تستضيف الواجهة الخلفية للتطبيق، في هذه الحالة قد نكون في حاجة لمهندس شبكات لكي يتكفل بالموضوع.
هذا فقط فيما يتعلق بالجانب التقني، وإذا ما أظفنا لهذه اللائحة مصاريف التسويق والخدمات الأخرى فربما تصبح الميزانية أكبر بكثير مما تخيلناه أو توقعناه في البداية. إضافة إلى أنه ليس سهلا دائما إيجاد مطورين أكفاء للتكفل بكل تلك المهام.
⚙هنا يأتي دور "فايربيز"
بفضل منصة Firebase، أصبح بإمكان مطور تطبيقات الموبايل (والويب كذلك) أن يشغل كل تلك المهمات في نفس الوقت، أي أنه بات بمقدوره أن يكون مطورا شاملا قادرا على إنجاز تطبيق معقد ومتكامل من الصفر إلى مرحلة الإنتاج دون أن يقلق من مسألة الخادم والبنية التحتية المرافقة له. "فايربيز" يضع في متناولنا بنية تحتية متكاملة توفر كافة المزايا والمقومات التي يفترض أن تكون متواجدة في أي تطبيق.
التعامل مع هذه المنصة سهل ولا ينطوي على أي صعوبة تذكر، فعن طريق ال Firebase Sdk يمكن للمطورين التواصل مع واجهات فايربيز المبرمجية انطلاقا من جهة العميل (Client side)، ولكل منصة مستهدفة (ويب، أندرويد، iOS) هناك Sdk خاص بها.
🛡تأسست Firebase في عام 2011 من طرف مطوران اسمهما James Tamplin و Andrew Lee، وبعد ذلك بثلاث سنوات قامت شركة Google بالإستحواذ عليها وتطويرها بشكل كبير بهدف منح المطورين بنية تحتية (Backend) جاهزة وقابلة للتوسيع (Scalable) لدعم مشاريعهم الخاصة مهما كان حجمها.
هذا النوع من المنصات تعرف باسم Backend as a service platform واختصارا BaaS.
💎أهم المنتوجات/الخدمات التي توفرها منصة "فايربيز"
قد لا يكفينا مقال واحد لكي نمر على جميع الخدمات التي يوفرها Firebase، لذلك سنحاول أن نذكر فقط أهمها وأكثرها استخداما من قبل المطورين :
🔮منتجات فايربيز
Cloud Firestore : قاعدة بيانات من نوع NoSQL، تمكن من تخزين البيانات وجلبها أو مزامنتها مع مختلف العملاء (Clients) المتصلين بتلك القاعدة.
Cloud Storage : عبارة عن مساحة لتخزين واستدعاء مختلف أنواع الملفات الخاصة بالمستخدمين مثل الصور، الفيديوهات إلخ..
Authentication : من أهم وأشهر الخدمات التي توفرها منصة Firebase. هذه الخدمة تتيح للمطورين وضع نظام لتعريف وإثبات هوية المستخدمين (تسجيل الدخول) من خلال عدة وسائل (فيسبوك، غوغل، رسائل قصيرة، الإيميل وكلمة السر إلخ...)، وكل هذا فقط من خلال أسطر برمجية قليلة تعد في كثير
من الأحيان على أصابع اليدين.
Cloud Messaging : هذه الخدمة تسهل على مطوري تطبيقات الموبايل وضع نظام لإرسال التنبيهات إلى أجهزة المستخدمين حيث التطبيق مثبت. بالإضافة لذلك، تستطيع معاينة البيانات والتحليلات (Analytics) المتعلقة بتلك التنبيهات بناء على سلوك المستخدمين حيالها.
Firebase Hosting : خدمة استضافة للملفات الساكنة مثل HTML ،CSS و JavaScript بالإضافة إلى أنواع أخرى من الملفات التي تقدم عن طريق ما يعرف بشبكة لتوصيل المحتوى أو اختصارا CDN عبر بروتوكول Https الآمن.
Firebase Remote Config : خدمة سحابية تمكن المطورين من التحكم في عدد من الإعدادات الخاصة بتطبيقاتهم (Configuration) وتغييرها بدون إجبار المستخدمين على تحديث تلك التطبيقات في أجهزتهم.
💻🌐ما هو #فايربيز #Firebase ؟ وما الغاية منه ؟
لربما سمعتم كثيرا عن منصة فايربيز (Firebase) من شركة غوغل وتتساءلون عن ماهيتها ودورها في مساعدة المبرمجين على بناء تطبيقات عصرية بأقل مجهود. أنا كذلك مرت على ذهني هذه الأسئلة عندما تعرفت على هذه المنصة قبل مدة، وبعد بحث وقراءة لبعض الدروس والمقالات أدركت جيدا قيمتها وقمت بتجربة عدد من مزاياها في بعض المشاريع الشخصية لكي أستطيع تطبيق ما قرأته وبالتالي استيعابه جيدا.
وحتى أختصر عليكم الطريق، سأشرح لكم في هذا الدرس ما هي خدمة Firebase ؟ ما أهم المزايا والوظائف التي توفرها، ولماذا المبرمجون اليوم هم في أمس الحاجة لمثل هذه المنصات.
هذا المقال سيكون نظريا بالأساس لأن هدفنا منه هو إعطاؤكم نظرة عامة عن الموضوع، ولكن المؤكد أنه ستكون هناك دروس عملية في قادم الأيام إن شاء الله.
📌ما هي منصة Firebase إذن ؟ وما هو الهدف الأساسي من ورائها ؟
تخيل أنك تريد ـ كرائد أعمال ـ تطوير تطبيق مثل WhatsApp، قد تبدو المسألة من الوهلة الأولى بسيطة ولا تحتاج سوى لمطور تطبيقات بارع لكي يقوم بالمهمة. ولكن إذا قمنا بنظرة أكثر شمولية ودقة فإننا سنحتاج لما هو أكثر من ذلك :
➖أولا، وكما قلنا سنحتاج لمطور تطبيقات أندرويد و iOS (في غالب الأحيان نتحدث عن مطورين اثنين).
➖ثانيا، سيكون علينا البحث عن مطور لبناء واجهة خلفية (Backend) لإدارة قاعدة بيانات التطبيق وكذلك لتوفير مختلف الواجهات البرمجية APIs التي سيستهلكها عملاء (Clients) أندرويد و iOS.
➖ثالثا، مع مرور الوقت وازدياد عدد مستخدمي التطبيق سيكون علينا الزيادة في إمكانيات الخادم أو الخوادم التي تستضيف الواجهة الخلفية للتطبيق، في هذه الحالة قد نكون في حاجة لمهندس شبكات لكي يتكفل بالموضوع.
هذا فقط فيما يتعلق بالجانب التقني، وإذا ما أظفنا لهذه اللائحة مصاريف التسويق والخدمات الأخرى فربما تصبح الميزانية أكبر بكثير مما تخيلناه أو توقعناه في البداية. إضافة إلى أنه ليس سهلا دائما إيجاد مطورين أكفاء للتكفل بكل تلك المهام.
⚙هنا يأتي دور "فايربيز"
بفضل منصة Firebase، أصبح بإمكان مطور تطبيقات الموبايل (والويب كذلك) أن يشغل كل تلك المهمات في نفس الوقت، أي أنه بات بمقدوره أن يكون مطورا شاملا قادرا على إنجاز تطبيق معقد ومتكامل من الصفر إلى مرحلة الإنتاج دون أن يقلق من مسألة الخادم والبنية التحتية المرافقة له. "فايربيز" يضع في متناولنا بنية تحتية متكاملة توفر كافة المزايا والمقومات التي يفترض أن تكون متواجدة في أي تطبيق.
التعامل مع هذه المنصة سهل ولا ينطوي على أي صعوبة تذكر، فعن طريق ال Firebase Sdk يمكن للمطورين التواصل مع واجهات فايربيز المبرمجية انطلاقا من جهة العميل (Client side)، ولكل منصة مستهدفة (ويب، أندرويد، iOS) هناك Sdk خاص بها.
🛡تأسست Firebase في عام 2011 من طرف مطوران اسمهما James Tamplin و Andrew Lee، وبعد ذلك بثلاث سنوات قامت شركة Google بالإستحواذ عليها وتطويرها بشكل كبير بهدف منح المطورين بنية تحتية (Backend) جاهزة وقابلة للتوسيع (Scalable) لدعم مشاريعهم الخاصة مهما كان حجمها.
هذا النوع من المنصات تعرف باسم Backend as a service platform واختصارا BaaS.
💎أهم المنتوجات/الخدمات التي توفرها منصة "فايربيز"
قد لا يكفينا مقال واحد لكي نمر على جميع الخدمات التي يوفرها Firebase، لذلك سنحاول أن نذكر فقط أهمها وأكثرها استخداما من قبل المطورين :
🔮منتجات فايربيز
Cloud Firestore : قاعدة بيانات من نوع NoSQL، تمكن من تخزين البيانات وجلبها أو مزامنتها مع مختلف العملاء (Clients) المتصلين بتلك القاعدة.
Cloud Storage : عبارة عن مساحة لتخزين واستدعاء مختلف أنواع الملفات الخاصة بالمستخدمين مثل الصور، الفيديوهات إلخ..
Authentication : من أهم وأشهر الخدمات التي توفرها منصة Firebase. هذه الخدمة تتيح للمطورين وضع نظام لتعريف وإثبات هوية المستخدمين (تسجيل الدخول) من خلال عدة وسائل (فيسبوك، غوغل، رسائل قصيرة، الإيميل وكلمة السر إلخ...)، وكل هذا فقط من خلال أسطر برمجية قليلة تعد في كثير
من الأحيان على أصابع اليدين.
Cloud Messaging : هذه الخدمة تسهل على مطوري تطبيقات الموبايل وضع نظام لإرسال التنبيهات إلى أجهزة المستخدمين حيث التطبيق مثبت. بالإضافة لذلك، تستطيع معاينة البيانات والتحليلات (Analytics) المتعلقة بتلك التنبيهات بناء على سلوك المستخدمين حيالها.
Firebase Hosting : خدمة استضافة للملفات الساكنة مثل HTML ،CSS و JavaScript بالإضافة إلى أنواع أخرى من الملفات التي تقدم عن طريق ما يعرف بشبكة لتوصيل المحتوى أو اختصارا CDN عبر بروتوكول Https الآمن.
Firebase Remote Config : خدمة سحابية تمكن المطورين من التحكم في عدد من الإعدادات الخاصة بتطبيقاتهم (Configuration) وتغييرها بدون إجبار المستخدمين على تحديث تلك التطبيقات في أجهزتهم.
🛠النهاية
هذه فقط عينة بسيطة من الإمكانيات التي توفرها منصة Firebase، إذا أردتم معرفة المزيد حول هذا الموضوع أدعوكم لزيارة الموقع الرسمي لفايربيز وتطبيق بعض الأمثلة العملية التي تجدونها.
نسيت أن أخبركم بأن Firebase توفر خطة مجانية (Spark Plan) للمطورين لأغراض التجريب والتعلم. بينما هناك خطتين مدفوعتين إضافيتين، أولاهما (Flame Plan) تكلف 25 دولار في الشهر، والثانية (Blaze Plan) للتطبيقات والمشاريع الأكبر وفيها يتم الدفع حسب الموارد المستهلكة.
هذه فقط عينة بسيطة من الإمكانيات التي توفرها منصة Firebase، إذا أردتم معرفة المزيد حول هذا الموضوع أدعوكم لزيارة الموقع الرسمي لفايربيز وتطبيق بعض الأمثلة العملية التي تجدونها.
نسيت أن أخبركم بأن Firebase توفر خطة مجانية (Spark Plan) للمطورين لأغراض التجريب والتعلم. بينما هناك خطتين مدفوعتين إضافيتين، أولاهما (Flame Plan) تكلف 25 دولار في الشهر، والثانية (Blaze Plan) للتطبيقات والمشاريع الأكبر وفيها يتم الدفع حسب الموارد المستهلكة.
library system.rar
3.5 MB
📚مكتبة الحاسوب والبرمجة📚
تحتوي على اي كتب او برامج او فيديوهات تتعلق بالحاسوب او البرمجة وصيانة الهواتف
لطلب الكتب
من هنا @atlubkitabak
انشروا الرابط
قنواتنا
مكتبة المليار كتاب @bookshop_pdf
مكتبة المليون كتاب اسلامي @book_islamih
https://t.me/programming_computer
تحتوي على اي كتب او برامج او فيديوهات تتعلق بالحاسوب او البرمجة وصيانة الهواتف
لطلب الكتب
من هنا @atlubkitabak
انشروا الرابط
قنواتنا
مكتبة المليار كتاب @bookshop_pdf
مكتبة المليون كتاب اسلامي @book_islamih
https://t.me/programming_computer
Telegram
📚موسوعة الحاسوب و البرمجة📚
تحتوي على اي كتب او برامج او فيديوهات او دورات تتعلق بالحاسوب او البرمجة وصيانة الهواتف
قنواتنا
للتواصل @mosoaa_bot
قناتنا في اليوتيوب
https://youtube.com/@musuaamsg
قنواتنا
للتواصل @mosoaa_bot
قناتنا في اليوتيوب
https://youtube.com/@musuaamsg
This media is not supported in your browser
VIEW IN TELEGRAM
(1) مقدمة عن JAVA البرمجة والبرامج
This media is not supported in your browser
VIEW IN TELEGRAM
(2) ماذا تعني لغة برمجة؟
This media is not supported in your browser
VIEW IN TELEGRAM
(3) كيف تترجم لغة البرمجة إلى لغة الآلة
Media is too big
VIEW IN TELEGRAM
ماذا تعني البرمجة؟
كيف تبرمج تطبيق آيفون؟
ما هي أعمال شركات برمجة الكمبيوترات؟
كيف تبرمج تطبيق آيفون؟
ما هي أعمال شركات برمجة الكمبيوترات؟
This media is not supported in your browser
VIEW IN TELEGRAM
(5) فوائد JAVA وما يميزها عن غيرها من اللغات
Media is too big
VIEW IN TELEGRAM
(6) ما الذي سأستفيده من عمل برنامج