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

السؤال

نشر (معدل)

أعرف أن فلاسك هوا فقط minifremwork لكن هل هذا لا يؤهله ل برمجة مواقع وتطبيقات ويب ضخمة وقوية ؟ 

وهل يمكن استعماله في الباك اند لبناء تطبيق موبايل عن طريق التحكم في ال API ؟ 

وهو مناسب بالنسبة لبرمجة مواقع تجارية متوسطة او كبيرة ؟ 

تم التعديل في بواسطة سامح أشرف
توضيع عنوان السؤال

Recommended Posts

  • 1
نشر

إطار عمل flask يُطلق عليه لفظ microframework ليس بسبب ضعفه, وإنما في الحقيقة بسبب أنه يأتي بالقليل من المميزات والتي يمكنك لاحقًا الحصول عليها عبر الإضافات, حيث يأتي إطار عمل flask بخصائص بسيطة مثل الrouting ومعالجة الطلبات(request handling) بينما مميزات أخرى مثل الtemplate engine و ORM و caching جميعها يجب إضافتها من قِبل مكتبات خارجية بنفسك, على عكس إطار عمل مثل django الذي يحتوي على كل تلك المميزات, لهذا السبب يتم إطلاق لفظ microframework على flask , ولكنها في النهاية يُمكنك إنشاء مشاريع كبيرة بها حيث المشكلة عادةً لا تكون في إطار العمل وإنما تكون في كتابتك لإستعلامات فعالة لقاعدة البيانات وتطبيق تقنيات مثل caching 

  • 1
نشر

بالتأكيد يمكنك إستعمال فلاسك Flask لكي تبني به مواقع ضخمة ولكنك سوف تبذل الكثير من المجهود لإضافة بعض المميزات التي قد يحتاجها تطبيقك، بينما إن إستعملت إطار عمل مختلف مثل جانغو Django فسوف توفر على نفسك الكثير من الجهد والوقت لأنه يأتي بالفعل بالكثير من المميزات التي تحتاجها المواقع الكبيرة -والبسيطة كذلك-، فعلى سبيل المثال قد تحتاج إلى إضافة ORM للتعامل مع قاعدة البيانات، لذلك سوف تبحث عن إضافات ومكتبات خارجية مثل Flask-SQLAlchemy لإضافة هذه الميزة إلى تطبيقك، ولكن يمكن بعد فترة من الزمن أن تجد أنه تقوف الدعم عن هذه المكتبة أو وجدت بها مشكلة ما، فسوف تضطر إلى البحث عن مكتبة أخرى أو حتى أن تبني واحدة خاصة بك، لا يحدث هذا الأمر في إطار عمل كبير مثل جانغو Django والسبب في ذلك أنه يأتي بالفعل بنظام ORM خاص به وقابل للتطوير بشكل كبير ويمكن إستخدامه في المواقع الكبير بدون مشكلة.

على الجانب الآخر قد تريد عمل بعض التطبيقات البسيطة، وعند محاولة إنشائها بإستخدام جانغو Django سوف تجد أن الأمر يستغرق وقت طويل بالرغم من بساطة التطبيقات وذلك لأن جانغو Django يضيف طبقة من التعقيد إلى التطبيق لضمان أنه سيعمل في كل الحالات ويكون قابل للتوسيع والتطوير بدون مشكلة، لذلك عليك أن تستخدم فلاسك Flask في التطبيقات والمشاريع البسيطة حيث يمكنك أن تبدأ في عمل المشروع بالكامل من ملف واحد فقط:

from flask import Flask

app = Flask(__name__)

@app.route('/')
def index(:
    return "Hello, World!"

if __name__ == "__main__":
    app.run(debug=True)

 

بتاريخ 14 ساعات قال يوسف شعبي:

وهل يمكن استعماله في الباك اند لبناء تطبيق موبايل عن طريق التحكم في ال API ؟ 

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

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

  • 0
نشر
بتاريخ 13 دقائق مضت قال يوسف شعبي:

ماهي في نضرك احسن دورة في يوتيوب لتعلم فلاسك؟ 

صراحةً ليس لدي فكرة عن ما هي أفضل دورة تشرح فلاسك، فقد يختلف الأمر من شخص لآخر ولكن بغض النظر عن الدورة التي ستختارها فعليك الإطلاع دائمًا على توثيق فلاسك Flask Documentation للحصول على مزيد من المعلومات، فأي دورة مهما كانت لن تشرح 100% من فلاسك ولكن ستحتوي على شرح للأساسيات أو بعض الأمور المتقدمة ولكن بالتأكيد لن تحتوي على شرح كل شيء بالكامل، لذلك يجب الإطلاع على توثيق فلاسك للحصول على قدر أكبر من المعلومات.

بتاريخ 16 دقائق مضت قال يوسف شعبي:

وهل ابدأ تعلم فلاسك لبناء مشاريع ومواقع تجارية متوسطة ،ام ابدأ التعلم ب دجانغو ؟

يفضل أن تبدأ بتعلم فلاسك Flask لأنه أسهل في التعامل والتثبيت وخصوصًا للمبتدئين، بينما جانغو Django قد يكون معقدًا بعض الشيء في البداية وسيكون لديك حينها الكثير من الأسئلة التي تخطر على بالك مثل "لماذا قمنا بإستعمال هذه الدالة هنا؟" أو "لماذا يجب أن أستعمل نموذج model؟" .. إلخ، بينما عند تعلم فلاسك فسيكون من السهل فهم الكود خصوصًا إن كانت أول تقنية Backend تتعلمها.

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

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

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

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   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.

  • إعلانات

  • تابعنا على



×
×
  • أضف...