النتائج 1 إلى 15 من 15

الموضوع: سؤال هل بياتم تحميل الكلاس بالكامل الي الذاكرة؟؟

  1. #1
    عضو فعال
    تاريخ التسجيل
    Jul 2008
    المشاركات
    1,109

    سؤال هل بياتم تحميل الكلاس بالكامل الي الذاكرة؟؟



    بسم الله الرحمن الرحيم


    سؤال هل بياتم تحميل الكلاس بالكامل الي الذاكرة؟؟

    يعني عندى كلاس بيه 50 داله وفيهم داله واحده فقط public الباقي private فهل بيتم تحميل هذا الدوال للذاكرة ؟؟

    وما هي الطريقة التي امنع بيها هذا واخي فقط ما اريده من الدوال او المتغيرا ؟؟؟؟





    __________________
    ســـــــبحان الله وبـــــــــحمده *سبـــــــــــحان الله العظيم
    لطلب البرمجة فقط
    helal-egypt@hotmail.com


  2. #2


    أخي وما المانع من تحميلها فهي لا تسبب ثقل ولو بسيط على الذاكرة

    ثم يتم تحمل هذه الدوال عند انشاء متغير من هذه الدالة فقط إلى حين موته

    ايضا اذا كنت قد جعلت الدالة Shared or Static فانه سيتم تحميل ال 50 في الذاكرة منذ بداية المشروع لنهايته





    __________________
    بريدي :khalilme (at) hotmail.com
    مطور: ASP.NET, Windows Phone , Desktop Applications

  3. #3


    يتم تحميل كل الملفات التي تستعرضها بما فيها ما يوجد فيه include داخل الذاكرة
    ثم تبدأ بتحميل الأوبجيت للكسلات بالنظر داخلها هل فيها الكلام المطلوب ام لا

    ولهذا فانت حينما تنادي كلاس قبل إنشاءها فلا يكون هناك مشكلة فالتحميل يتم أولاً

    فما هي مشكلتك بالضبط في ذلك ؟
    الكلاس بالكامل مع الدوال هذه سيكون حجبه صغير وغير مؤثر
    فماذا ستقول علي برمجيات تكون فيها كل صفحة تقوم ال 3500 سطر برمجي





    __________________
    السيف أصدق أنباء من الكتب

  4. #4
    عضو فعال
    تاريخ التسجيل
    Jul 2008
    المشاركات
    1,109


    أخي وما المانع من تحميلها فهي لا تسبب ثقل ولو بسيط على الذاكرة

    ثم يتم تحمل هذه الدوال عند انشاء متغير من هذه الدالة فقط إلى حين موته

    ايضا اذا كنت قد جعلت الدالة Shared or Static فانه سيتم تحميل ال 50 في الذاكرة منذ بداية المشروع لنهايته
    جزاك الله خيرا اخي الكريم


    يتم تحميل كل الملفات التي تستعرضها بما فيها ما يوجد فيه include داخل الذاكرة
    ثم تبدأ بتحميل الأوبجيت للكسلات بالنظر داخلها هل فيها الكلام المطلوب ام لا

    ولهذا فانت حينما تنادي كلاس قبل إنشاءها فلا يكون هناك مشكلة فالتحميل يتم أولاً

    فما هي مشكلتك بالضبط في ذلك ؟
    الكلاس بالكامل مع الدوال هذه سيكون حجبه صغير وغير مؤثر
    فماذا ستقول علي برمجيات تكون فيها كل صفحة تقوم ال 3500 سطر برمجي
    جزاك الله خيرا اخي الكريم

    ههههههههه 3500 كده انت مش ناوي تخليني اتكلم في الكلاسات تاني خالص ههههههههههه

    انا بسال من باب العلم بشئ

    جزاك الله خيرا اخي الكريم





    __________________
    ســـــــبحان الله وبـــــــــحمده *سبـــــــــــحان الله العظيم
    لطلب البرمجة فقط
    helal-egypt@hotmail.com

  5. #5
    عضو نشيط جدا
    تاريخ التسجيل
    Jan 2008
    المشاركات
    512


    كامل الكود المكتوب يترجم ويحول الى الذاكرة

    اثناء عملية الترجمة من الطبيعي ان تكون ترجمة الكلاس اسرع من الكود العادي

    >
    ثم يقوم المسرع optimizer بتخزين نسخة من الكود المترجم لعدم ترجمته مرة أخرى
    >

    لكن عند التنفيذ:

    - يكون استدعاء فنكشن عادية اسرع ب 11 : 12% من object method
    - يكون تنفيذ الكود العادي -اسمه procedural - اسرع من تنفيذ اي فنكشن.


    * استنتاج: طول الكود ليس مقياسا للسرعة من عدمها.

    ---------------------------------

    طيب ما الفرق بين ال public & private & static في استهلاك الذاكرة والسرعة

    هنا مقارنة مثيرة للاهتمام PHP Speed: Private vs Public Member And Static Methods | PHP Zone





    __________________
    محمد حمود.

  6. #6
    عضو فعال
    تاريخ التسجيل
    Jul 2008
    المشاركات
    1,109


    جزاك الله الف خيرا اخي الكريم

    انا جربة وعملة داله static وشغاله عادى كانةpublic او private في مش فاهم اية الفرق طلما استطيع عمل ده بال static يبقي اية الفرق لن كده حيرتني ليه ؟؟

    وده مثال

    كود PHP:
    class M
    {
        static function 
    DD()
        {
            echo 
    "DDSTATIC";
        }
        
        static function 
    CH()
        {
            
    M::DD();
        }
    }

    //الكلاس

    M::CH(); 

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





    التعديل الأخير تم بواسطة محمدهلال ; 20-04-2009 الساعة 04:58 PM
    __________________
    ســـــــبحان الله وبـــــــــحمده *سبـــــــــــحان الله العظيم
    لطلب البرمجة فقط
    helal-egypt@hotmail.com

  7. #7
    عضو نشيط جدا
    تاريخ التسجيل
    Jan 2008
    المشاركات
    512


    = ما حدث في هذه الحالة هو انك اذا لم تعرف نوع الدالة هل هي public أو private مثلا، سوف يتم معاملتها على انها public

    كود PHP:
    class M
    {
        private static function 
    DD()
        {
            echo 
    "DDSTATIC";
        }
        
        public static function 
    CH()
        {
            
    self::DD();
        }
    }

    //الكلاس

    M::CH(); 






    __________________
    محمد حمود.

  8. #8
    عضو فعال
    تاريخ التسجيل
    Jul 2008
    المشاركات
    1,109


    = ما حدث في هذه الحالة هو انك اذا لم تعرف نوع الدالة هل هي public أو private مثلا، سوف يتم معاملتها على انها public

    كود PHP:
    class M
    {
        private static function 
    DD()
        {
            echo 
    "DDSTATIC";
        }
        
        public static function 
    CH()
        {
            
    self::DD();
        }
    }

    //الكلاس

    M::CH(); 

    جزاك الله الف خيرا اخي الكريم

    يعني استخدم s هذا الطريقة في تعريف الدوال احسن من privateوprotected ؟؟





    __________________
    ســـــــبحان الله وبـــــــــحمده *سبـــــــــــحان الله العظيم
    لطلب البرمجة فقط
    helal-egypt@hotmail.com

  9. #9


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

    هناك لغات بالكامل لا يمكنك كتابة أي شئ بها سوي بكلاس مثل الجافا والروبي





    __________________
    السيف أصدق أنباء من الكتب

  10. #10
    عضو فعال
    تاريخ التسجيل
    Jul 2008
    المشاركات
    1,109


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

    هناك لغات بالكامل لا يمكنك كتابة أي شئ بها سوي بكلاس مثل الجافا والروبي
    جزاك الله خيرا اخي الكريم





    __________________
    ســـــــبحان الله وبـــــــــحمده *سبـــــــــــحان الله العظيم
    لطلب البرمجة فقط
    helal-egypt@hotmail.com

  11. #11
    عضو نشيط جدا
    تاريخ التسجيل
    Jan 2008
    المشاركات
    512


    محمد هلال،

    *اخي صراحة اذا سئلت هذا السؤال في موضع آخر كنت قد اجيب عليه باجابة اخرى.

    لكن، قياسا على ما هو واقع حاليا فانت لك الحرية في استعمال اي شيء تراه سيسهل مهمتك في انجاز الكود، وفي اقل وقت..





    __________________
    محمد حمود.

  12. #12
    عضو فعال
    تاريخ التسجيل
    Jul 2008
    المشاركات
    1,109


    محمد هلال،

    *اخي صراحة اذا سئلت هذا السؤال في موضع آخر كنت قد اجيب عليه باجابة اخرى.

    لكن، قياسا على ما هو واقع حاليا فانت لك الحرية في استعمال اي شيء تراه سيسهل مهمتك في انجاز الكود، وفي اقل وقت..
    جزاك الله خيرا اخي الكريم

    يعني استخدم اي حاجة هتقلل من كتابة الكود صح





    __________________
    ســـــــبحان الله وبـــــــــحمده *سبـــــــــــحان الله العظيم
    لطلب البرمجة فقط
    helal-egypt@hotmail.com

  13. #13
    عضو نشيط جدا
    تاريخ التسجيل
    Jan 2008
    المشاركات
    512


    يعني استعمل اي حاجة تكون مألوفة لك ولا تقيد نفسك .. واللي تركز عليه هو سرعة اتمامك للبرنامج ليس سرعة تنفيذه





    __________________
    محمد حمود.

  14. #14


    جزاك الله خيرا اخي الكريم

    يعني استخدم اي حاجة هتقلل من كتابة الكود صح
    الغرض من الـ visibility بأنواعها public protected private
    ليس تقليل أو زيادة عدد الأكواد
    كل واحدة لها استخدامتها الخاصة بها
    فمثلاً : public
    تمكنك من استدعاء الدالة من داخل أو خارج الكلاس و توريثها في أي كلاس تريده. إذاً هي تتمتع بحرية مطلقة. و هي الأكثر استخداماً لأنها عند تجع متغيرتك متاحة لك لإرسالها لكلاسات أخرة. و لكن لا يعني ذلك أننا نعتمد عليها في كل public لأننا في بعض الأحيان لا نريد لبعض الدوال أو المتغيرات أن تكون متيسرة في كلاس آخر بعينه، خوفاً من التعارض في الأكواد. و هذا الشيء لا يلاحظة المبرمج المبتدئ أو المبرمج المتطور. و لكن سيلاحظه المبرمج المحترف. لذلك سيقوم باستخدام ميزة أكثر أمناً له في مشروعه البرمجي.
    protected : بما أن public ستشكل لنا بعض التعارض عند تشعب الأكواد البرمجية فإننا سوف نلجأ إلى خيار يوفر لنا خاصية (الحصر الكودي) أي يقوم بحصر بعض الدوال و المتغيرات ليكون داخل كلاس بعينه مع وجود خصية توريثه في حالة الحوجة له. protected تفعل ذلك بالإضافة لأهم خاصية لها و هي أنه لا يمكن استدعائها خارج الكلاس أي معاكسة لـ public و لكنها تشترك مع public في التوريث. و يختلفان في الاستدعاء الخارجي. بكدا نكون آمنين من بعض الدوال و الخصائص التي ربما تشكل لنا العوائق في حالة كانت حرة.

    private : الأكثر أمناً و الأقل استخداماً. يتم صياغتها برمجياً داخل الكلاس. و نستخدمها داخل الكلاس. و محرم عليها الاستخدام خارج الكلاس و محرم عليها أيضاً التوريث. إذا نستخدمها لأغراض معينه. و ينتهي مفعولها بنهاية الكلاس.

    static : نفس استخدام public يتم استخدامها داخل و خارج الكلاس مع وجود خاصية التوريث. و لكن تختلف صياغتها و غالباً تستخدم (self) و (: داخل الكلاس و (اسم الكلاس) مع (: خارجه. الفرق الوحيد بينها و بين public أنها تشكل حدث ثابت. يعني نتيجة الدالة تكون ثابته و غير غابلة للتغير. لذلك يتم تكويد الآيدي بالنسبة للأعضاء عن طريق static لضمان الحس الأمني بعدم التكرار. بعض الدوال تأخذ قيمة و لكنها عرضة للتغير في قيمها. نحافظ عليها بـ static






  15. #15
    عضو فعال
    تاريخ التسجيل
    Jul 2008
    المشاركات
    1,109


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


    الغرض من الـ visibility بأنواعها public protected private
    ليس تقليل أو زيادة عدد الأكواد
    كل واحدة لها استخدامتها الخاصة بها
    فمثلاً : public
    تمكنك من استدعاء الدالة من داخل أو خارج الكلاس و توريثها في أي كلاس تريده. إذاً هي تتمتع بحرية مطلقة. و هي الأكثر استخداماً لأنها عند تجع متغيرتك متاحة لك لإرسالها لكلاسات أخرة. و لكن لا يعني ذلك أننا نعتمد عليها في كل public لأننا في بعض الأحيان لا نريد لبعض الدوال أو المتغيرات أن تكون متيسرة في كلاس آخر بعينه، خوفاً من التعارض في الأكواد. و هذا الشيء لا يلاحظة المبرمج المبتدئ أو المبرمج المتطور. و لكن سيلاحظه المبرمج المحترف. لذلك سيقوم باستخدام ميزة أكثر أمناً له في مشروعه البرمجي.
    protected : بما أن public ستشكل لنا بعض التعارض عند تشعب الأكواد البرمجية فإننا سوف نلجأ إلى خيار يوفر لنا خاصية (الحصر الكودي) أي يقوم بحصر بعض الدوال و المتغيرات ليكون داخل كلاس بعينه مع وجود خصية توريثه في حالة الحوجة له. protected تفعل ذلك بالإضافة لأهم خاصية لها و هي أنه لا يمكن استدعائها خارج الكلاس أي معاكسة لـ public و لكنها تشترك مع public في التوريث. و يختلفان في الاستدعاء الخارجي. بكدا نكون آمنين من بعض الدوال و الخصائص التي ربما تشكل لنا العوائق في حالة كانت حرة.

    private : الأكثر أمناً و الأقل استخداماً. يتم صياغتها برمجياً داخل الكلاس. و نستخدمها داخل الكلاس. و محرم عليها الاستخدام خارج الكلاس و محرم عليها أيضاً التوريث. إذا نستخدمها لأغراض معينه. و ينتهي مفعولها بنهاية الكلاس.

    static : نفس استخدام public يتم استخدامها داخل و خارج الكلاس مع وجود خاصية التوريث. و لكن تختلف صياغتها و غالباً تستخدم (self) و (: داخل الكلاس و (اسم الكلاس) مع (: خارجه. الفرق الوحيد بينها و بين public أنها تشكل حدث ثابت. يعني نتيجة الدالة تكون ثابته و غير غابلة للتغير. لذلك يتم تكويد الآيدي بالنسبة للأعضاء عن طريق static لضمان الحس الأمني بعدم التكرار. بعض الدوال تأخذ قيمة و لكنها عرضة للتغير في قيمها. نحافظ عليها بـ static

    جزاك الله الف خيرا اخي الكريم

    انا بستخدم private في الدوال الي هستخدمة في الكلاس فقط و pretected
    لدوال الي هستخدمها في الكلاسات الاخرة

    جزاك الله الف خيرا اخي الكريم





    __________________
    ســـــــبحان الله وبـــــــــحمده *سبـــــــــــحان الله العظيم
    لطلب البرمجة فقط
    helal-egypt@hotmail.com





ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •  

أضف موقعك هنا| اخبار السيارات | حراج | شقق للايجار في الكويت | بيوت للبيع في الكويت | دليل الكويت العقاري | مقروء | شركة كشف تسربات المياه | شركة عزل اسطح بالرياض | عزل فوم بالرياض| عزل اسطح بالرياض | كشف تسربات المياة بالرياض | شركة عزل اسطح بالرياض