بداية الباك اند

linenx

السلام عليكم ورحمة الله

اولا انا تعلمت لغة دارت وفلاتر وعملت تطبيق يحتوي على واجهات المستخدم وتم انهائها برمجيا ، من ضمن افكار التطبيق يجب على المستخدم ادخال بيانات وتمريرها لصفحة اخرى بالاضافة الى عملية المصادقة.

احتاج قاعدة بيانات عشان تستقبل من المستخدم المدخلات وتعرضهم بالتطبيق ولكن انا مبتدئة بهذا المجال صار لي 3 شهور تقريبا من بدأت ولما وصلت مرحلة الباك اند احترت من وين ابدأ ، هل ابدأ بالفاير بيس او ال php او الsql & my sql وبصراحة ابدا مو فاهمة ايش ذولي وكيف استخدمهم وعلى اي اساس اختارهم ولا اعرف شغلات مثل api وغيرها ف حابه احد يعطيني توجه صغير وخريطة تلبي احتياجي اللي هو استقبال بيانات وعرضها بالتطبيق وطبعا مع الفنكشن المعروفة في اي تطبيق مثل تعديل واضافة وحذف.

وشكرا للكل مقدما

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

التعليقات

أولاً وقبل كل شيء، يجب فهم بعض المفاهيم الأساسية:

MySQL

هو نظام إدارة قواعد البيانات الشائع جدًا ومفتوح المصدر، وبإمكانك استخدامه مع PHP لإنشاء وإدارة قاعدة بياناتك.

PHP

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

بناءًا على طبيعة تطبيقك ومستوى خبرتك، فمن الأفضل الإعتماد على PHP و MySQL والقيام بما يلي:

  1. يجب عليك تثبيت خادم ويب مثل Apache أو Nginx على جهاز الخادم لديك، وستقوم تلك الأدوات بتشغيل تطبيقك والتفاعل معه عبر الإنترنت.
  2. تثبيت نظام إدارة قواعد البيانات MySQL على جهاز الخادم، لإنشاء قاعدة بيانات وتخزن بيانات المستخدم والبيانات الأخرى التي تريد عرضها في تطبيقك.
  3. وباستخدام PHP، تستطيع كتابة الأكواد التي تتفاعل مع قاعدة البيانات، لإنشاء وظائف لاستقبال بيانات المستخدم وتخزينها في قاعدة البيانات، والاستعلام عن البيانات واسترجاعها لعرضها في التطبيق، وإجراء عمليات تعديل أو حذف البيانات حسب الحاجة.

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

وبالطبع استخدام منصات الواجهة الخلفية السحابية مثل Firebase أو supabase يعتبر أسهل في البداية لكن بالنسبة للمشاريع التي تتطلب تخصيص أو بها كمية بيانات كبيرة فهى غير مناسبة، وقد رشحت لك تعلم PHP وMySQL لكونك تريدين التخصص في مجال الواجهة الخلفية فيجب تعلم لغة برمجة قوية لذلك وتعلم لغة SQL وأيضًا نظام إدارة قوي مثل MySQL وقد تم توضيح الأمر هنا:

اشكرك على ردك وان سمحت احتاج لبعض التفاصيل التي فهمتها هل هي صحيحة ام لا.

1- في النقطة الأولى هل تقصد برنامج XAMPP لتفعيل Apache ؟

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

XAMPP و Laragon هما اثنين من البيئات التطوير المحلية المستخدمة في تطوير تطبيقات الويب، وتوفر كل منهما سهولة في إعداد وتكوين خوادم الويب المحلية على أجهزة الكمبيوتر الشخصية لتشغيل واختبار تطبيقات الويب قبل نشرها على خوادم حقيقية.

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

وببساطة تعمل PHP كوسيط بين التطبيق وقاعدة البيانات، فيقوم التطبيق بإرسال طلبات إلى PHP للقيام بالعمليات اللازمة على قاعدة البيانات، وتقوم PHP بتنفيذ هذه العمليات وإرجاع النتائج المناسبة إلى التطبيق.

يجب عليك تعلم لغة PHP وكيفية استخدامها في التفاعل مع قاعدة البيانات MySQL لكتابة الأكواد اللازمة لعمل التطبيق، وبالطبع تعلم لغة SQL الخاصة بقواعد البيانات.

وعليكم السلام ورحمة الله وبركاته!

طبيعة البداية هي في كونها محيرة ومخيفة، لكن لا داعي للقلق المبالغ فيه، فالأمر بسيط وعادي.

إذا كنت قد تعلمت لغة دارت وفلاتر، فإن تطوير الواجهة الخلفية يمكن أن يتم باستخدام لغة دارت أيضًا. يُمكنك استخدام إطار عمل دارت (مثل Aqueduct) أو حتى استخدام Firebase Cloud Functions التي تدعم دارت.

فيما يلي بعض الخيارات الشائعة التي تحتاج أن تختار فيما بينها

  • Firebase: إذا كنت تبحث عن حلاً سريعًا وسهلًا بدون الحاجة إلى إعداد خادم خلفي بنفسك، يمكنك البدء ب Firebase. إذا انها منصة تطوير تتيح لك إنشاء تطبيقات باك اند مبنية على السحابة cloud. يمكنك استخدام Firebase لإدارة قاعدة البيانات والتحقق من المستخدمين وإضافة وتحديث البيانات بسهولة.
  • MySQL وPHP: إذا كنت ترغب في التعمق أكثر والحصول على معرفة أوسع بالبرمجة الخلفية، يمكنك استخدام لغة PHP مع قاعدة بيانات MySQL. يمكنك إعداد خادم للويب يعمل على PHP والاتصال بقاعدة بيانات MySQL لإدارة البيانات وتنفيذ العمليات الأساسية مثل الإضافة والتعديل والحذف.
  1. Node.js + Express.js: Node.js هو بيئة تشغيل مبنية على JavaScript تسمح بتشغيل الكود في الخادم. يمكن استخدام إطار العمل Express.js مع Node.js لبناء واجهة خلفية قوية وفعالة لتطبيقك.
  2. Python + Django أو Flask: لغة برمجة Python تستخدم على نطاق واسع في تطوير الواجهة الخلفية. يمكنك استخدام إطار عمل Django أو Flask لبناء تطبيقات خلفية مستقرة وقوية بسهولة.
  3. Ruby + Ruby on Rails: لغة برمجة Ruby مع إطار عمل Ruby on Rails توفر قدرة تطوير الواجهة الخلفية بسرعة وكفاءة. إطار عمل Ruby on Rails يسهل إنشاء تطبيقات متكاملة بطريقة أنيقة وسهلة الاستخدام.
  4. Java + Spring Framework: لغة برمجة Java تُستخدم على نطاق واسع في تطوير الواجهة الخلفية. إطار عمل Spring يعتبر واحدًا من أشهر إطارات العمل لتطوير تطبيقات الويب ويسمح ببناء تطبيقات قوية وموثوقة.

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

لتوضيح ما تحتاجين إليه لإنشاء قاعدة بيانات والبدء في بناء الباك-إند، يمكنني أن أعطيك نظرة عامة على الأدوات التي تحتاجين إليها.

  • يجب عليك اختيار نوع قاعدة البيانات التي تستخدمها. يمكنك استخدام قاعدة بيانات مثل MySQL أو PostgreSQL أو SQLite. يجب عليك تثبيت قاعدة بيانات على جهاز الكمبيوتر الخاص بك أو استخدام خدمة استضافة للحصول على قاعدة بيانات على الإنترنت.
  • ستحتاج إلى استخدام لغة برمجة لبناء الباك-إند. يمكنك استخدام لغة مثل PHP أو Node.js أو Python أو Ruby على سبيل المثال. يتوجب عليك تثبيت بيئة تشغيل اللغة المناسبة على جهاز الكمبيوتر الخاص بك. يمكنك أيضًا استخدام خدمة استضافة عبر الإنترنت.
  • يجب عليك تعلم كيفية الاتصال بقاعدة البيانات باستخدام لغة البرمجة التي اخترتها. يمكنك استخدام مكتبات مثل MySQLi و PDO في PHP أو Sequelize في Node.js أو Django ORM في Python لتسهيل هذه العملية.
  • يجب عليك تعلم كيفية بناء واجهة برمجة تطبيقات (API) لتمكين التواصل بين التطبيق وقاعدة البيانات. يمكنك استخدام إطار عمل مثل Express في Node.js أو Laravel في PHP أو Django REST Framework في Python لهذا الغرض.
  • بعد بناء الAPI ، يمكنك استخدام تقنيات مثل AJAX و Fetch API في JavaScript للاتصال بالAPI واسترداد البيانات من قاعدة البيانات.

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

بالنسبة لاختيار أي من هذه الخيارات، يعتمد ذلك على احتياجات تطبيقك ومدى تناسب كل خيار مع متطلبات تطبيقك.

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

اشكرك على ردك وان سمحت احتاج لبعض التفاصيل التي فهمتها هل هي صحيحة ام لا.

في النقطة الأولى ذكرت (استخدام خدمة استضافة للحصول على قاعدة بيانات على الإنترنت) ما المقصود بالاستضافة هنا؟ هل تقصد Apache ؟

في النقطة الثانية ذكرت ايضا عن موضوع الاستضافة ما الذي تقصد به؟

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