إعـــــــلان

تقليص
لا يوجد إعلان حتى الآن.

بيثون: ما الفرق بين module و class

تقليص
X
 
  • تصفية - فلترة
  • الوقت
  • عرض
إلغاء تحديد الكل
مشاركات جديدة

  • [سؤال] بيثون: ما الفرق بين module و class

    في بيثون:
    مجموعة functions في module,
    و class في ملف منفصل عن البرنامج,
    ما الذي يميز هذا عن ذاك في البرمجة؟
    فأنا استعمل import في كلا الحالتين, و استعمل النقطة, و كلاهما يحتوي على functions (مع اختلاف تسميتها) و variables (ايا كان اسمها)
    فما الفرق اذا؟
    (ملحوظة:اذا كان فهمي للموضوع خاطئا, فارجو التصحيح)
    PythonasabilysKwriteoperard

  • #2
    السلام عليكم
    import تستخدم ﻻستيراد وحدة برمجية اما النقطة تستخدم للوصول لعضو داخل الوحدة ممكن يكون module اخر او class,function ,variable
    بس يا ريت تراجع كتب بايثون وكتب اعضاء المنتدى

    تعليق


    • #3
      بس يا ريت تراجع كتب بايثون وكتب اعضاء المنتدى
      اعرفهم جيدا,
      لكنهم يقول ان الclass يسمح لك باستخدام الكود اكثر من مرة...........
      كما يقولون أن الmodule التي تحتوي على دوال فقط يمكنني ايضا ان استخدمها اكثر من مرة في عدة برامج, و انشرها للناس........., نفس الكلام!!
      فما الفارق اذا؟ ففي كلا الحالتين الميزة انني استطيع ان استعمل الكود اكثر من مرة, إلخ....

      ارجو ان تتفهموا سؤالي جيدا لأني محتار حقا
      PythonasabilysKwriteoperard

      تعليق


      • #4
        بالنسبه لـ class المعروفه بالبرمجه الكائنيه الموجهه

        هي تطوير متميز للبرمجه وهي أفضل من البرمجه الإجارئه خصوصا في المشاريع الكبيره

        سؤالك المفروض يكون مالفرق بين البرمجه الكائنيه الموجهه والبرمجه الإجرائية؟


        أهم ما يميز البرمجه الكائنية الموجهه إذا حصل خطأ في إحدى الوظائف لن ينهار التطبيق كاملا على عكس البرمجه الموجهه إذا حصل خطأ في أحدى الدوال سينهار كامل التطبيق !

        أيضا البرمجه الكائنيه الموجهه تمتاز بصفات الوراثه حيث يمكن أن تأخذ صفات ووظائف ملف class بدون ان يكون نسخه منه

        على عكس البرمجه الموجهه حيث تكون الدوال والمتغيرات نسخه من الملف المجلوبه منه

        الأمر معقد قليلا أعتقد لن تفهمه بسهوله قبل ان تبرمج بالطريقتين

        البرمجه الكائنيه ستكون صعبه عليك بتنسق الكود في البدايه لأنني أرى خوارزميتها أصعب قليلا من الموجهه التي تكون بخطوات متتالية

        ولكن عندما تتقنها ستجعل كودك أقوى واسهل للقرائه والصيانه وتجنب انهيار التطبيق وتصحيح الاخطاء بسهوله تامه
        هل لديك الوقت لتلعب مع لغة البرمجة بايثون؟
        الأساسيات وتطوير البرامج - تطوير وبرمجة الويب
        --------
        جرب التدوين بقوة بايثون LightBlog

        تعليق


        • #5
          هذا module والاخرى class
          الmodule
          مجموعة دوال و متغيرات فى ملف تقوم باستيرادهم واستخدامهم
          اما الclass فهى هيئة من البيانات لتقوم بانشاء كائنات منها
          فلكل كائن بيانات خاصة بة (اذا كان هناك بيانات private ) و لة خواص البرمجة الكائنية وقد تقوم بوراثة الclass وتعديلة override .
          2v || 2v

          www.3dvui.org

          تعليق


          • #6
            sasa1 & mohamedyosry:
            شكرا جزيلا لكما, هذا ما اريد معرفته (إذا حصل خطأ في إحدى الوظائف لن ينهار التطبيق كاملا, تمتاز بصفات الوراثه, لكل كائن بيانات خاصة بة (اذا كان هناك بيانات private ) و لة خواص البرمجة الكائنية وقد تقوم بوراثة الclass وتعديلة override .)
            PythonasabilysKwriteoperard

            تعليق


            • #7
              اعتذر , كتبت الرد مساء على عجلة
              اقصد ال non-static data (بدل كلمة private التى قد تكون لكل كائن نسخة ايضاء وقد تكون متشاركة*) لانها غير متشاركة بين الكائنات ويملك كل كائن نسختة وليس كالstatic التى ملك للكلاس وجميع الكائنات (وبعضها يمكن جلبة مباشرة بدون الاعتماد على كائن )

              الجافا توضح الفكرة بشكل اوضح .

              * وللعلم قد يكون هناك private static التى تكون متشاركة بين كائنات الصنف التى يمكن استخدامها داخليا فى الكلاس بين الكائنات ولكن لا يمكن استدعائها من الخارج (لانها private )
              2v || 2v

              www.3dvui.org

              تعليق

              يعمل...
              X