السلام عليكم ورحمة الله وبركاته
عند تصميم برنامج للحاسب, هل هناك ألية معينة تمكننا من الحكم بأولوية الأداء أو الإمكانيات في المواقف المختلفة؟
أم أن المسألة متروكة لتقدير المبرمج؟
السلام عليكم ورحمة الله وبركاته
عند تصميم برنامج للحاسب, هل هناك ألية معينة تمكننا من الحكم بأولوية الأداء أو الإمكانيات في المواقف المختلفة؟
أم أن المسألة متروكة لتقدير المبرمج؟
هل تقصد في الـmulti-threaded progamming؟
إذا كان هذا هو المقصود فالأمر متروك تحت تصرف المبرمج. على العموم التفكير في تحسين سرعة البرنامج optimization لا يجب أن يتم خلال فترة التطوير (خطأ شائع). بل بعد الإنتهاء من التطوير و حل جميع المشاكل الرئيسية.
الأخ الكريم System down
أقصد مرحلة التصميم مش التطوير ..
عند تصميم لغة برمجة (وليس تطوير كومبايلر لها) .. يجب تحديد إذا ما كانت هذه اللغة ستدعم الBoundary checking عند التعامل مع المصفوفات أم لا.. وفي دعم ذلك تأثير على الأداء بلا شك.
ونفس الشئ مع اختيار الCalling convention عند التعامل مع الدوال .. فمن الممكن أن يحتوي على معلومات أكثر عن المعطيات (= زيادة في الإمكانيات المتاحة), بينما يؤثر ذلك سلباً على سرعة طلب الدوال.
كل دي أمور تدخل في التصميم نفسه , مش في الoptimization
فهل أيضاً ليس لها أسس أو قواعد؟ هذا هو سؤالي
وجزاك الله خير
تم تعديل هذه المشاركة بواسطة ماشي في 2 أبريل 2007 في 11:21
هذا أيضاً يعتمد على أهداف المشروع. مثل الحرب بين اللغات الـStatically Typed مثل الـ++C و الـ#C و اللغات الـDynamically Typed مثل الجافاسكريبت و البايثون. ما تخسره في الأداء تعوضه في المرونة. أيها أفضل؟ هذا يعتمد.
اممم.. يبقى هو في النهاية راجع لتقدير المصمم بشكل أو بأخر لحاجات المشروع
جزاك الله خير
هذا الموضوع مغلق.