نتائج البحث

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

نظرة عامة على Action Cable في ريلز

ستتعرف في هذا الدليل على كيفية عمل Action Cable وكيفية استخدام WebSockets لدمج ميزات الوقت الفعلي في تطبيق ريلز. بعد قراءة هذا الدليل، ستتلعم: ماهية Action Cable وكيفية دمج الواجهة الخلفية والأمامية الخاصة به. كيفية إعداد Action Cable. كيفية إعداد القنوات. النشر وإعداد المعمارية لتشغيل Action Cable. المقدمة يدمج Action Cable مقابس الويب WebSockets مع باقي تطبيق ريلز بسلاسة. يسمح ذلك بكتابة الميزات في الوقت الحقيقي في روبي بنفس الأسلوب والشكل كبقية تطبيقات ريلز، مع الاستمرار في الأداء وقابلية التطوير. ...

الأصناف المُغلَقة (Sealed Classes) في لغة Kotlin

تُستخدَم الأصناف المُغلَقة لتمثيل الهرميّة (hierarchy) المحدودة للأصناف؛ وذلك عندما يكون نوع القيمة هو أحد الأنواع الموجودة في مجموعةٍ مُحدَّدةٍ (limited set) وليس أيّ نوع آخر، وبالتالي تُعدُّ هذه الأصناف إضافةً (extension) لأصناف الثوابت المُتعدَّدة (enum classes)، إذ إنّ مجموعة القيم لنوع enum محدودة أيضًا ولكل ثابت فيها نسخةٌ (instance) واحدةٌ فقط، بينما يمكن أن يكون للصنف الفرعيّ (subclass) من الصنف المغلق أكثر من نسخةٍ تحتوي على الحالة (case). ويُستخدَم المُحدِّد (modifier)‏ sealed قبل اسم الصنف للتصريح عن أنّه من ...

الحزم (Packages) في Kotlin

التصريح عن الحزم يبدأ الملف المصدريّ (source file) عادةً بالتصريح (declaration) عن الحزم مثل: package foo.bar fun baz() {} class Goo {} // ... ويتوضع حينها كلُّ ما يحتويه هذا الملف (كالأصناف [classes] والدوال [functions] مثلًا) في الحزمة المُصرَّح عنها ببدايته، ففي الشيفرة السابقة إن الاسم الفعليّ الكامل للدالة baz()‎ هو foo.bar.baz والاسم الكامل للصنف Goo هو foo.bar.Goo. وإذا لم تُحدَّد الحزمة في بداية الملف فإن محتوياته تتبع للحزمة الافتراضيّة "default" التي لا اسم لها. استيراد الحزم الافتراضيّة (Default Imports) يُستورَد عددٌ من الحزم ...

التابع bytes.index()‎ في بايثون

يؤدي هذا التابع نفس وظيفة التابع bytes.find()‎ ولكنّه يطلق الخطأ ValueError إن لم يعثر على التسلسل الفرعي. البنية العامة bytes.index(sub[, start[, end]]) المعاملات sub التسلسل الفرعي المراد معرفة موقعه، ويمكن أن يكون أيّ كائن شبيه بالبايتات (bytes-like objects) أو عددًا صحيحًا من 0 إلى 255. start الموقع الذي يبدأ منه التابع عملية البحث ضمن البيانات الثنائية. end الموقع الذي ينهي فيه التابع عملية البحث ضمن البيانات الثنائية. يسلك هذان المعاملان نفس السلوك المتّبع في عملية اقتطاع السلاسل النصية slicing. القيمة ...

التابع bytes.index()‎ في بايثون

يؤدي هذا التابع نفس وظيفة التابع bytes.find()‎ ولكنّه يطلق الخطأ ValueError إن لم يعثر على التسلسل الفرعي. البنية العامة bytes.index(sub[, start[, end]]) المعاملات sub التسلسل الفرعي المراد معرفة موقعه، ويمكن أن يكون أيّ كائن شبيه بالبايتات (bytes-like objects) أو عددًا صحيحًا من 0 إلى 255. start الموقع الذي يبدأ منه التابع عملية البحث ضمن البيانات الثنائية. end الموقع الذي ينهي فيه التابع عملية البحث ضمن البيانات الثنائية. يسلك هذان المعاملان نفس السلوك المتّبع في عملية اقتطاع السلاسل النصية slicing. القيمة ...

RegExp.prototype.[@@search]()‎

الدالة RegExp.prototype.[@@search]()‎ تبحث عن تعبيرٍ نمطيٍ (regular expression) في سلسلةٍ نصية. البنية العامة regexp[Symbol.search](str) str السلسلة النصية التي سنبحث عن مُطابَقة للتعبير النمطي فيها. القيمة المعادة فهرس أوّل مطابقة للتعبير النمطي في السلسلة النصية، أو القيمة -1 إن لم تكن هنالك مطابقة. الوصف تُستدعى هذه الدالة داخليًا في الدالة String.prototype.search()‎. فمثلًا، كلا المثالين الآتيين يُعيد النتيجة نفسها: 'abc'.search(/a/); /a/[Symbol.search]('abc'); الغرض من وجود هذه الدالة هو السماح بإمكانية تخصيصها في الأصناف الفرعية المشتقة من RegExp. أمثلة استدعاء مباشر ستُستخدَم هذه الدالة بنفس طريقة ...

عمليات المقارنة في بايثون

تقدّم بايثون ثمان عمليات للمقارنة، وتمتلك جميعها نفس الأولوية (وهي أعلى من العمليات المنطقية). يلخّص الجدول التالي عمليات المقارنة المتوفّرة في بايثون: العملية الوظيفة ‎<‎‎ أقل من ‎<=‎ أقل من أو يساوي ‎>‎ أكبر من ‎>=‎ أكبر من أو يساوي == المساواة ‎!=‎ عدم المساواة is هوية الكائن is not نفي هوية الكائن ملاحظات يمكن ربط عمليات المقارنة بعضها ببعض حسب الحاجة، فعلى سبيل المثال العبارة x < y <= z مكافئة للعبارة x < y and y <= z، ...

ردود نداء Active Record في ريلز

ستتعلم في هذا الدليل كل ما يتعلَّق بدورة حياة كائنات Active Record. بعد قراءة هذا الدليل، ستتعرَّف على: دورة حياة كائنات Active Record. كيفية إنشاء توابع ردود النداء التي تستجيب إلى الأحداث في دورة حياة الكائن. كيفية إنشاء أصناف خاصة تُغلِّف سلوكًا مشتركًا من أجل ردود النداء الخاصة بك. دورة حياة الكائن خلال عملية عادية في تطبيق ريلز، يمكن للكائنات أن تُنشأ، تُحدّث، أو تُدمّر. يزوّدك Active Record بنقاط الوصول اللازمة في دورة حياة الكائن حتى تتمكن من التحكم بتطبيقك ...

تنسيق المخرجات في بايثون

تقدّم بايثون عددًا من الطرائق التي تساعد في تنسيق مخرجات البرامج، فيمكن طباعة البيانات بصيغة سهلة القراءة، أو يمكن كتابة البيانات في ملف لاستخدامه في المستقبل.  استخدمنا في هذا التوثيق طريقتين لكتابة القيم: الأول هي العبارات expression statements والدالة print()‎. (هناك طريقة ثالثة وهي استخدام التابع write()‎ الخاص بالكائنات file، ويعرف ملف المخرجات القياسي بـ sys.stdout).  تظهر الحاجة في كثير من الأحيان إلى التحكم في تنسيق المخرجات وإظهارها بأشكال مختلفة وليس كقيم مفصولة بفراغات وحسب. وهناك طريقتان لتنسيق المخرجات، الأولى ...

تنسيق المخرجات في بايثون

تقدّم بايثون عددًا من الطرائق التي تساعد في تنسيق مخرجات البرامج، فيمكن طباعة البيانات بصيغة سهلة القراءة، أو يمكن كتابة البيانات في ملف لاستخدامه في المستقبل.  استخدمنا في هذا التوثيق طريقتين لكتابة القيم: الأول هي العبارات expression statements والدالة print()‎. (هناك طريقة ثالثة وهي استخدام التابع write()‎ الخاص بالكائنات file، ويعرف ملف المخرجات القياسي بـ sys.stdout).  تظهر الحاجة في كثير من الأحيان إلى التحكم في تنسيق المخرجات وإظهارها بأشكال مختلفة وليس كقيم مفصولة بفراغات وحسب. وهناك طريقتان لتنسيق المخرجات، الأولى ...

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