نتائج البحث

اذهب إلى التنقل اذهب إلى البحث

تبديل المرجع إلى قيمة (Change Reference to Value)

المشكلة وجود كائن مرجع صغير جدًا نادرًا ما يتغيَّر لتبرير إدارة دورة حياته. الحل تحويله إلى كائن قيمة (value object). مثال قبل إعادة التصميم مخطط يوضح كيفية ارتباط الصنفين Currency و Customer: مخطط يوضح كيفية ارتباط الصنفين Currency و Customer. بعد إعادة التصميم إعادة تصميم المخطط السابق للتتحول العلاقة الرابطة للصنفين Currency و Customer إلى علاقة has a (أي بمجرد وجود كائن Customer فلا بد من وجود كائن Currency له). مخطط يوضح كيفية ارتباط الصنفين Currency و Customer بعلاقة has ...

المعامل ~= في الصنف Object‎ في روبي

يتحقّق المعامل ~= من تطابق نمطي كائنين (Pattern Match). استُبدِل في الأصناف السليلة (descendants، خاصةً الصنفين Regexp و String) لتوفير دلالاتِ مطابقةِ نمطٍ واضحةٍ وذات معنى. البنية العامة obj =~ other → nil المعاملات obj الكائن المراد التحقق من تطابق نمطه مع الكائن other. other الكائن الآخر الذي سيُتحقَق من تطابق نمطه مع الكائن obj. القيم المعادة تُعاد القيمة العدمية nil إذا كان لكل كائن من الكائنين obj و ohter نمطًا مختلفًا. انظر أيضًا المعامل ~!: يتحقق من عدم تساوي ...

المعامل == الخاص بالصنف Hash في روبي

يتحقق المعامل == من تساوي كائنين من النوع Hash؛ أي يتحقق إذا كان كل منهما يحتوي على نفس العدد من المفاتيح وإذا كان كل زوج قيمة/مفتاح من أحد الكائنين يساوي الزوج المقابل له في الكائن الآخر (وفقًا للمعامل ==)‎. البنية العامة hsh == other_hash → true or false القيمة المعادة تعاد القيمة true إن كان الكائن hsh والكائن other_hash متساويين بغض النظر عن ترتيب الأزواج في كل منهما. أمثلة مثال على استعمال المعامل : h1 = { "a" => 1, "c" => ...

المعامل ‎~!‎ في الصنف Object‎ في روبي

يتحقق المعامل !~ من عدم تساوي كائنين (باستخدام التابع =~). البنية العامة obj !~ other → true or false المعاملات obj الكائن المراد التحقق من عدم تساويه مع الكائن other. other الكائن الآخر الذي سيُتحقَق من عدم تساويه مع الكائن obj. القيم المعادة تُعاد القيمة true إذا لم يتساوى الكائنين obj و other، أو تعاد القيمة false خلاف ذلك. انظر أيضًا المعامل <=>: يتحقق من تساوي كائنين بين بعضهما بعضًا. المعامل ===: يتحقق من تساوي كائنين بشكل صارم. المعامل ~=: ...

التابع ?Object.nil في روبي

يتحقَّق التابع ?nil فيما إذا كان الكائن المعطى هو nil أم لا. البنية العامة nil? → true or false القيم المعادة تُعاد القيمة true إذا كان الكائن المعطى هو nil؛ خلاف ذلك، تعاد القيمة false. أمثلة مثالٌ عن استخدام التابع ?nil: Object.new.nil? #=> false nil.nil? #=> true انظر أيضًا التابع ?eql: يتحقَّق من استخدام كلا الكائنين نفس مفتاح التجزئة. التابع ?instance_of: يتحقَّق إذا كان الكائن الذي استدعي معه نسخةً من ...

Object.preventExtensions()‎

الدالة Object.preventExtensions()‎ تمنع إضافة خاصيات جديدة إلى الكائن. البنية العامة Object.preventExtensions(obj) obj الكائن الذي نريد منع إضافة خاصيات جديدة إليه. القيمة المعادة الكائن المعني لكن مع جعله لا يقبل خاصيات جديدة. الوصف يكون الكائن قابلًا للتوسعة إذا أمكن إضافة خاصيات جديدة إليه، والدالة Object.preventExtensions()‎ تجعل الكائن غير قابلٍ للتوسعة، أي أنَّه لن يقبل خاصيات جديدة لم تكن موجودةً فيه في وقت جعله غير قابلٍ للتوسعة. لاحظ أنَّه عمومًا تكون خاصيات الكائنات غير القابلة للتوسعة قابلةً للحذف (عبر المعامل delete)، لكن ...

التابع Marshal.load‎ في روبي

يعيد التابع load نتيجة تحويل البيانات المُسلسلة (serialized) في المصدر إلى كائن روبي (ربما مع كائنات ثانوية [subordinate objects] مرتبطة به). قد يكون المصدر إمَّا كائنًا من الصنف IO، أو كائنًا يستجيب إلى التابع to_str. في حال تمرير المعامل الثاني، فسيتم تمرير كل كائن من الكائنات إليه أثناء فك تسلسلها (deserialisation). تنبيه: لا تمرّر أبدًا إلى التابع load بيانات غير موثوقة (بما في ذلك المدخلات التي يرسلها المستخدم). البنية العامة load( source [, proc] ) → obj‎ المعاملات source‎ إمَّا كائنٌ من ...

التابع ?Object.instance_of في روبي

يتحقَّق التابع ?instance_of إذا كان الكائن الذي استدعي معه نسخةً من الصِّنف المُمرَّر إليه. البنية العامة instance_of?(class) → true or false المعاملات class الصنف المراد التحقُّق أنَّ الكائن المعطى نسخةٌ منه. القيم المعادة تُعاد القيمة true إذا كان الكائن المعطى نسخةً من الصنف class؛ خلاف ذلك، تُعاد القيمة false. أمثلة مثالٌ عن استخدام التابع ?instance_of: class A; end class B < A; end class C < B; end b = B.new b.instance_of? A #=> false b.instance_of? B ...

التابع ?Object.eql في روبي

يتحقَّق التابع ?eql من استخدام كلا الكائنين نفس مفتاح التجزئة (hash key). يُستَخدم هذا المعامل من قِبَل الصنف Hash للتحقق من تساوي العناصر. بالنسبة لكائنات الصنف Object، فإنَّ التابع ?eql هو مرادفٌ للمعامل ==. تتجاوز الأصناف الفرعية عادةً هذا الاصطلاح عبر تعيين التابع ?eql اسمًا بديلًا لمُعاملها == المستبدل، لكن هناك استثناءاتٌ دومًا. الأنواع الرقمية مثلًاتجري تحويلًا للنوع عبر المعامل == وليس عبر التابع ?eql. اطلع على المثال التالي الذي يوضح ما سبق: 1 == 1.0 ...

Object.isFrozen()‎

الدالة Object.isFrozen()‎ تُحدِّد إن كان أحد الكائنات مُجمَّدًا. البنية العامة Object.isFrozen(obj) obj الكائن الذي نريد التحقق منه. القيمة المعادة قيمة منطقية (Boolean) تبيّن إذا كان الكائن مجمَّدًا أم لا. الوصف يكون الكائن مجمدًا إذا لم يكن قابلًا للتوسعة، وكانت جميع خاصياته غير قابلة للضبط (non-configurable)، وكانت جميع خاصيات البيانات (data properties، أي الخاصيات التي ليست دوال getter و setter) غير قابلة للكتابة (non-writable). لاحظ أنَّه في معيار ECMAScript 5 كان استعمال هذه الدالة على وسيطٍ ليس كائنًا (أي قيمةً أوليةً) ...

عرض (20 السابقة | 20 التالية) (20 | 50 | 100 | 250 | 500).