نتائج البحث

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

التوابع السحرية في PHP

التوابع السحرية في أصناف PHP هي ‎__construct()‎ و ‎__destruct()‎ و ‎__call()‎ و ‎__callStatic()‎ و ‎__get()‎ و ‎__set()‎ و ‎__isset()‎ و ‎__unset()‎‎ و ‎__sleep()‎ و ‎__wakeup()‎ و ‎__toString()‎ و ‎__invoke()‎ و ‎_‎_set_state()‎ و ‎__clone()‎ و ‎__debugInfo()‎. ولا يمكنك استخدام دوالّ تحمل هذه الأسماء في أي صنف ما لم تكن ترغب في الاستفادة من الوظيفة السحرية التي تتمتّع بها. تحذير: تحجز PHP جميع الدوال التي تبدأ بالرمز __ كدوال سحرية؛ لذا ينصح بعدم تسمية دوالك الخاصة بأسماء تبدأ بهذا الرمز ما لم ...

الدالة ()‎get_function في Sass

تعيد الدالة ()get_function مرجعًا إلى دالة من أجل استدعائها لاحقًا باستخدام الدالة ()call. البنية العامة get_function($name, $css: false) المعاملات ‎$name اسم الدالة المراد الحصول على مرجع لها. ‎$css يحدِّد هذا المعامل ما إذا كانت ستُعاد دالة خاصة بلغة CSS. إن كانت قيمة هذا المعامل هي FALSE، فقد يُشير مرجع الدالة إلى دالةٍ معرّفة في ملف الأنماط أو مضمَّنة في بيئة المضيف؛ وإن كانت قيمته TRUE، فسيشير إلى دالة خاصة بلغة CSS. القيم المعادة يُعاد مرجعٌ للدالة ذات الاسم ‎$name. أمثلة ...

Ruby/Topics

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

الصنف BasicObject في روبي

الصنف BasicObject هو الصنف الأب لجميع الأصناف في روبي، وهو صنف فارغ. يمكن استخدام الصنف BasicObject لإنشاء هرميات كائنية (object hierarchies) مستقلة عن الهرمية الكائنية للغة روبي، أو لإنشاء مغلفات الكائنات (proxy objects) مثل الصنف Delegator، أو حيث يجب تجنب إفساد مجال الأسماء (namespace pollution) من قبل توابع وأصناف روبي. لتجنب إفساد الصنف BasicObject للمستخدمين الآخرين، يجب إنشاء صنف فرعي من الصنف BasicObject تحت اسم مناسب بدلاً من تعديل BasicObject مباشرةً: class MyObjectSystem < BasicObject end لا يتضمَّن الصنف BasicObject الوحدة Kernel ...

Array.prototype.every()‎

الدالة Array.prototype.every()‎ تختبر إذا كانت جميع عناصر المصفوفة تحقق الاختبار المُحدَّد من قِبل الدالة المعنية. function isBelowThreshold(currentValue) { return currentValue < 40; } var array1 = [1, 30, 39, 29, 10, 13]; console.log(array1.every(isBelowThreshold)); // true البنية العامة arr.every(callback[, thisArg]) callback الدالة التي ستختبر كل عنصر من عناصر المصفوفة، وتقبل ثلاثة وسائط. currentValue العنصر الحالي الذي يُعالِج في المصفوفة، وهذه القيمة مطلوبة. index فهرس العنصر الحالي في المصفوفة، وهذه القيمة اختيارية. array المصفوفة التي استدعيت الدالة every عليها، وهذه القيمة اختيارية. thisArg القيمة ...

الدالة Promise.prototype.catch()‎ في JavaScript

الدالة catch()‎ تعيد وعدًا Promise وتتعامل مع حالات رفض الوعود فقط. وهي تسلك نفس سلوك استدعاء الدالة Promise.prototype.then(undefined, onRejected)‎. وفي الواقع، استدعاء الدالة obj.catch(onRejected)‎ سيستدعي الدالة obj.then(undefined, onRejected)‎ داخليًا. var promise1 = new Promise(function(resolve, reject) { throw 'Uh-oh!'; }); promise1.catch(function(error) { console.log(error); }); // Uh-oh! البنية العامة p.catch(onRejected); p.catch(function(reason) { // التعامل مع الرفض }); المعاملات onRejected دالة تستدعى عند رفض الوعد Promise. هذه الدالة تملك معاملًا وحيدًا: reason سبب الرفض. الوعد المُعاد من الدالة catch()‎ سيُرفَض إذا رمت الدالة onRejected أو ...

Array.prototype.map()‎

الدالة Array.prototype.map()‎ تُنشِئ مصفوفةً جديدةً باستخدام القيم المُعادة من استدعاء دالة مُحدَّدة على جميع عناصر المصفوفة الأصلية. var array1 = [1, 4, 9, 16]; // دالة سهمية const map1 = array1.map(x => x * 2); console.log(map1); // [2, 8, 18, 32] البنية العامة var new_array = arr.map(callback[, thisArg]) callback الدالة التي ستختبر كل عنصر من عناصر المصفوفة، وتقبل ثلاثة وسائط. currentValue العنصر الحالي الذي يُعالِج في المصفوفة، وهذه القيمة مطلوبة. index فهرس العنصر الحالي في المصفوفة، وهذه القيمة اختيارية. array المصفوفة التي استدعيت ...

إنشاء قوائم باستخدام الأمر المُضمَّن select في Bash

عام استخدام أمر select البُنية اللغوية لأمر select تشبه بُنية حلقة for: select WORD [in LIST]; do RESPECTIVE-COMMANDS; done ويُستخدم أمر select من أجل إنشاء قوائم بسهولة عبر اتباع ما يلي: تُوسّع القائمة LIST مولِّدة قائمة من العناصر ويطبع التوسع في خطأ قياسي (standard error)، كما يُسبق كل عنصر من القائمة برقم. وإن لم تكن in LIST موجودة فتُطبع المعامِلات الموضعية كما لو تم تحديد @$ in. أيضًا، تُطبع قائمة LIST مرة واحدة فقط. يُطبع محث PS3 عند طباعة كل العناصر، ...

عملية تهيئة ريلز

يشرح هذا الدليل العمل الداخلي لعملية التهيئة في ريلز. وهو دليل متعمق للغاية وموصى به لمطوري ريلز المتقدمّين. ستتعلم بعد قراءة هذا الدليل: كيفيّة استخدام خادم ريلز (rails server). التسلسل الزمني لتهيئة ريلز. أين تُطلَب الملفّات المختلفة أثناء تسلسل التمهيد. كيفيّة تعريف واجهة Rails::Server واستخدامها. يتضمّن هذا الدليل كل استدعاء لتابع مطلوب لتشغيل مكّدس Ruby on Rails (أي stack) لتطبيق ريلز افتراضي، مع شرح كل جزء بالتفصيل. بالنسبة لهذا الدليل، سنركّز على ما يحدث عند تنفيذ rails server لبدء إقلاع ...

الجدول ASCII في أردوينو

يرجع الترميز ASCII (اختصارٌ إلى American Standard Code for Information Interchange) إلى ستينيات القرن الماضي، وكان يُعدُّ الطريقة القياسية المتبعة آنذاك (والتي لا تزال مستعملة إلى يومنا هذا) في ترميز النصوص عدديًّا. انتبه إلى أنَّ المحارف 32 الأولى من هذا الجدول هي محارف غير مطبوعة (non-printing characters)، وتدعى غالبًا محارف التحكم (control characters). القيمة العشرية القيمة الست عشرية المحرف   القيمة العشرية القيمة الست عشرية المحرف القيمة العشرية القيمة الست عشرية المحرف 0 00 NUL (null) 42 2A * 85 ...

تعريف التوابع الدخيلة (Introduce Foreign Methods)

المشكلة الحاجة إلى تابعٍ غير موجودٍ في الصنف المساعد (utility class) ومن غير الممكن إضافته إلى ذلك الصنف. الحل إضافة التابع المطلوب إلى صنف العميل (client class) وتمرير كائنٍ (object) من الصنف المساعد إليه كوسيط (argument). مثال قبل إعادة التصميم يحتوي الصنف Report تابعًا باسم sendReport والذي يستخدم الصنف المساعد Date لإنشاء تاريخ اليوم التالي عبر إضافة القيمة 1 إلى اليوم الحالي، كما يلي: في لغة Java: class Report { //... void sendReport() { Date ...

array_map()‎

(PHP 4 >= 4.0.6, PHP 5, PHP 7) تنفذ الدالة array_map()‎ دالةً أخرى يحددها المستخدم على كل عنصر موجود في المصفوفات المُمرََرَة. الوصف array array_map ( callable $callback , array $array1 [, array $... ] ) تعيد الدالة كل عناصر المصفوفة array1 بعد تنفيذ الدالة callback على كل عنصر من عناصرها. يجب أن يساوي عدد المعاملات التي تقبلها الدالة callback عدد المصفوفات المُمَرََرَة إلى الدالة array_map()‎. المعاملات callback mixed callback (mixed $parameter1 [, mixed $...]) دالة يحددها المستخدم لتنفيذها على كل ...

array_map()‎

(PHP 4 >= 4.0.6, PHP 5, PHP 7) تنفذ الدالة array_map()‎ دالةً أخرى يحددها المستخدم على كل عنصر موجود في المصفوفات المُمرََرَة. الوصف array array_map ( callable $callback , array $array1 [, array $... ] ) تعيد الدالة كل عناصر المصفوفة array1 بعد تنفيذ الدالة callback على كل عنصر من عناصرها. يجب أن يساوي عدد المعاملات التي تقبلها الدالة callback عدد المصفوفات المُمَرََرَة إلى الدالة array_map()‎. المعاملات callback mixed callback (mixed $parameter1 [, mixed $...]) دالة يحددها المستخدم لتنفيذها على كل ...

Python/stat/S ISDIR

أمثلة يوضح المثال التالي الطريقة المُثلى للاستفادة من توابع الكشف في الصنف stat: import os, sys from stat import * def walktree(top, callback): '''recursively descend the directory tree rooted at top, calling the callback function for each regular file''' for f in os.listdir(top): pathname = os.path.join(top, f) mode = os.stat(pathname).st_mode ...

الدالة weakref.WeakMethod()‎ في بايثون

صنف فرعي خاصّ من الصنف ref يحاكي إشارة ضعيفة إلى تابع مرتبط bound method (أي تابع معرف في صنف وجرى البحث عنه في نسخة من ذلك الصنف). ملاحظة: هذا الصنف جديد في الإصدار 3.4. البنية العامة class weakref.WeakMethod(method) المعاملات dict التابع المراد إنشاء محاكاة لإشارة ضعيفة إليه. التوابع المرتبطة سريعة الزوال ما يمنع من تمسّك الإشارات الضعيفة العادية بها. يمتلك الصنف WeakMethod طريقة خاصة لإعادة إنشاء التابع المرتبط والإبقاء عليه إلى أن يموت الكائن أو الدالة الأصلية: >>> class C: ... ...

Array.prototype.forEach()‎

الدالة Array.prototype.forEach()‎ تستدعي دالةً لكل عنصر موجود في المصفوفة. const arr = ['a', 'b', 'c']; arr.forEach(function(element) { console.log(element); }); // a // b // c البنية العامة arr.forEach(callback[, thisArg]) callback الدالة التي ستُنفَّذ كل عنصر من عناصر المصفوفة، وتقبل ثلاثة وسائط. currentValue العنصر الحالي الذي يُعالِج في المصفوفة، وهذه القيمة مطلوبة. index فهرس العنصر الحالي في المصفوفة، وهذه القيمة اختيارية. array المصفوفة التي استدعيت الدالة forEach عليها، وهذه القيمة اختيارية. thisArg القيمة التي ستُستخدَم في this عند استدعاء الدالة callback، وهي قيمة ...

الدالة delattr()‎ في بايثون

تحذف الدّالة delattr()‎ الخاصيّة المُعطاة من الكائن (إن سمَح الكائن بحذف الخاصيّة). البنية العامة delattr(object, name) المعاملات object الكائن المرغوب حذف خاصيّةٍ من خاصيّاته. name سلسلة نصيّة تُمثّل اسم الخاصيّة المرغوب حذفها. القيمة المعادة القيمة None كبقيّة الدّوال التي لا تُعيد أي قيمة صراحةً في بايثون. أمثلة المثال التّالي يوضّح كيفيّة عمل هذه الدّالة، لاحظ أنّها مُشابهة للكلمة المفتاحيّة del التي تحذف الكائنات: >>> class A: ... def __init__(self, a=1, b=2): ... ...

Python/pathlib/PurePath/with name

 التابع PurePath.with_name في بايثون يعيد مسارًا جديدًا مع تغيير اسم العنصر الأخير، ويرمي استثناءً ValueError إن لم يكن في المسار الأصلي اسم ملف. البنية العامة >>> p = PureWindowsPath('c:/Downloads/pathlib.tar.gz') >>> p.with_name('setup.py') PureWindowsPath('c:/Downloads/setup.py') >>> p = PureWindowsPath('c:/') >>> p.with_name('setup.py') Traceback (most recent call last):  File "<stdin>", line 1, in <module>  File "/home/antoine/cpython/default/Lib/pathlib.py", line 751, in with_name    raise ValueError("%r has an empty name" % (self,)) ValueError: PureWindowsPath('c:/') has an empty name المعاملات الوسيط name الاسم الجديد للملف. القيمة المعادة يعيد مسارًا جديدًا مع تغيير اسم العنصر الأخير، ويرمي استثناءً ValueError إن ...

واجهات الكائنات في PHP

تتيح واجهات الكائنات إنشاء شيفرة تحدّد التوابع التي يجب أن يتضمّنها الصنف دون الحاجة إلى تعريف آلية التحكّم في هذه التوابع. تعرّف الواجهات بنفس طريقة تعريف الأصناف، ولكن باستخدام الكلمة المفتاحية interface بدل الكلمة المفتاحية class ودون تعريف محتوى أيّ تابعٍ في الواجهة. يجب أن تكون جميع التوابع المصرّح عنها في الواجهة من النوع public وهذه هي طبيعة الواجهة. يمكن التصريح عن تابع بانٍ في الواجهة، وهو أمر مفيد في بعض الحالات، كاستخدام التابع من قبل المعامل factories. العامل implements ...

واجهات الكائنات في PHP

تتيح واجهات الكائنات إنشاء شيفرة تحدّد التوابع التي يجب أن يتضمّنها الصنف دون الحاجة إلى تعريف آلية التحكّم في هذه التوابع. تعرّف الواجهات بنفس طريقة تعريف الأصناف، ولكن باستخدام الكلمة المفتاحية interface بدل الكلمة المفتاحية class ودون تعريف محتوى أيّ تابعٍ في الواجهة. يجب أن تكون جميع التوابع المصرّح عنها في الواجهة من النوع public وهذه هي طبيعة الواجهة. يمكن التصريح عن تابع بانٍ في الواجهة، وهو أمر مفيد في بعض الحالات، كاستخدام التابع من قبل المعامل factories. العامل implements ...

Array.prototype.indexOf()‎

الدالة Array.prototype.indexOf()‎ تعيد أوّل فهرس للعنصر الموجود في الدالة والذي يساوي القيمة المُحدَّدة، أو القيمة -1 إن لم يُعثَر على مُطابَقة. var a = [2, 9, 9]; a.indexOf(2); // 0 a.indexOf(7); // -1 if (a.indexOf(7) === -1) { // العنصر غير موجود في المصفوفة } البنية العامة arr.indexOf(searchElement[, fromIndex]) searchElement العنصر الذي نريد البحث عنه. fromIndex الفهرس الذي نريد البدء منه في البحث عن searchElement، والقيم السالبة ستؤدي إلى بدء البحث من الفهرس array.length + fromIndex تصاعديًا. القيمة الافتراضية هي 0. ...

Function.caller

الخاصية Function.caller تُعيد الدالة التي استدعت الدالة التي تُنفَّذ حاليًا. لا يجوز استخدام هذه الخاصية في نمط strict. الوصف إذا لم تُستدعَ الدالة f ضمن دالة أخرى (أي أنها استدعيت في أعلى مستوى top level)، فقيمة الخاصية f.caller هي null. هذه الخاصيةُ هي بديلٌ عن الخاصية المحذوفة arguments.caller التابعة للكائن arguments. لاحظ أنَّه في حالة الاستدعاء التعاودي (recursion)، فلا يمكننا إعادة بناء مكدس الاستدعاءات (call stack) باستخدام هذه الخاصية. فلتكن لدينا الشيفرة: function f(n) { g(n - 1); } function g(n) ...

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

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

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

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

الدالة Promise.prototype.then()‎ في JavaScript

الدالة then()‎ تعيد وعدًا Promise، وتأخذ وسيطين على الأكثر، وهما دالتا رد النداء (callback) لنجاح أو فشل الوعد. var promise1 = new Promise(function(resolve, reject) { resolve('Success!'); }); promise1.then(function(value) { console.log(value); // "Success!" }); ملاحظة: إذا كان أحد أو كلا المعاملين غير موجود، أو كان موجودًا لكنه ليس دالةً، فلن تضع الدالة then()‎ معالجًا له، لكنها لن تولِّد أي أخطاء. إذا أصبحت هنالك حالة للوعد Promise الذي استدعيت الدالة ()then عليه، ولم يكن للدالة ()then وسائط مناسبة، فسيُنشَأ وعدٌ Promise جديد دون ...

الدالة iter()‎ في بايثون

تعيد الدّالة iter()‎ مُكرّرًا حسب المُعاملات المُعطاة. البنية العامة iter(object[, sentinel]) المعاملات object إن لم يكن المُعامل الثّاني sentinel حاضرًا، فلا بدّ لهذا المُعامل أن يكون كائنًا يدعم بروتوكول التّكرار (أي أنّ صنفه يُعرّف التّابع الخاصّ ‎_‎_‎iter‎_‎_‎(‎)‎)، أو يجب أن يدعم بروتوكول التّسلسلات (sequence protocol) الذي يُعرّف صنفه التّابع الخاصّ ‎_‎_‎getitem‎_‎_‎(‎)‎ مع مُعاملات تكون أعدادًا صحيحةً وتبدأ من الصّفر. وإن لم يدعم الكائن أيًّا من هذين البروتوكولين، فسيُطلق الاستثناء TypeError. sentinel مُعامل اختيّاريّ. إن مُرّرت قيمة لهذا المُعامل، فلا بدّ ...

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

الدالة RegExp.prototype.[@@match]()‎ تُعيد ما يُطابِقه تعبيرٌ نمطيٌ (regular expression) في سلسلة نصية. البنية العامة regexp[Symbol.match](str) str السلسلة النصية التي سنبحث عن مُطابَقة للتعبير النمطي فيها. القيمة المعادة إذا كانت هنالك مُطابَقة بين التعبير النمطي والسلسلة النصية، فستُعاد مصفوفة Array تحتوي على كامل السلسلة النصية المُطابَقة كأوّل عنصر فيها، ويليها أيّة نتائج تمت مُطابَقتها في التعابير النمطية الفرعية الموجودة بين قوسين. وإذا لم تُطابَق أيّة نتائج فستُعاد القيمة null. الوصف تُستدعى هذه الدالة داخليًا في الدالة String.prototype.match()‎. فمثلًا، كلا المثالين الآتيين له يُعيد النتيجة ...

معاملات الدوال في PHP

يمكن تمرير المعلومات إلى الدوالّ بواسطة قائمة المعاملات argument list، وهي قائمة من التعابير المفصولة بالعلامة (,)، وتُعالج هذه المعاملات من اليسار إلى اليمين. تدعم اللغة تمرير المعاملات بالقيمة (by value، والطريقة الافتراضية) وبالمرجعية وتدعم كذلك تعيين القيمة الافتراضية للمعاملات، إضافة إلى دعم قوائم المعاملات متغيّرة الأطوال. المثال 1: تمرير المصفوفات إلى الدوال <?php function takes_array($input) { echo "$input[0] + $input[1] = ", $input[0]+$input[1]; } ?> تمرير المعاملات بالمرجعية تمرّر معاملات الدوال بصورة افتراضية عن طريق القيمة (بمعنى أنّه لو تغيّرت ...

معاملات الدوال في PHP

يمكن تمرير المعلومات إلى الدوالّ بواسطة قائمة المعاملات argument list، وهي قائمة من التعابير المفصولة بالعلامة (,)، وتُعالج هذه المعاملات من اليسار إلى اليمين. تدعم اللغة تمرير المعاملات بالقيمة (by value، والطريقة الافتراضية) وبالمرجعية وتدعم كذلك تعيين القيمة الافتراضية للمعاملات، إضافة إلى دعم قوائم المعاملات متغيّرة الأطوال. المثال 1: تمرير المصفوفات إلى الدوال <?php function takes_array($input) { echo "$input[0] + $input[1] = ", $input[0]+$input[1]; } ?> تمرير المعاملات بالمرجعية تمرّر معاملات الدوال بصورة افتراضية عن طريق القيمة (بمعنى أنّه لو تغيّرت ...

معاملات الدوال في PHP

يمكن تمرير المعلومات إلى الدوالّ بواسطة قائمة المعاملات argument list، وهي قائمة من التعابير المفصولة بالعلامة (,)، وتُعالج هذه المعاملات من اليسار إلى اليمين. تدعم اللغة تمرير المعاملات بالقيمة (by value، والطريقة الافتراضية) وبالمرجعية وتدعم كذلك تعيين القيمة الافتراضية للمعاملات، إضافة إلى دعم قوائم المعاملات متغيّرة الأطوال. المثال 1: تمرير المصفوفات إلى الدوال <?php function takes_array($input) { echo "$input[0] + $input[1] = ", $input[0]+$input[1]; } ?> تمرير المعاملات بالمرجعية تمرّر معاملات الدوال بصورة افتراضية عن طريق القيمة (بمعنى أنّه لو تغيّرت ...

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

الدالة RegExp.prototype.[@@split]()‎ تقسم كائن String إلى مصفوفة من السلاسل النصية بفصلها إلى سلاسل نصية فرعية. البنية العامة regexp[Symbol.split](str[, limit]) str السلسلة النصية التي نريد قسمها. limit عدد صحيح يضبط الحد الأقصى لعدد الأجزاء التي ستُقسَّم السلسلة النصية إليها. وعند تحديد قيمة لهذا الوسيط، فستُقسِّم هذه الدالة السلسلة النصية عند كل مُطابَقة للتعبير النمطي، لكنها ستتوقف عند بلوغ عدد عناصر المصفوفة القيمة المُحدَّدة بالوسيط limit. لاحظ أنَّ من الممكن أن تكون هنالك عناصر في المصفوفة عددها أقل من قيمة limit. القيمة المعادة مصفوفة من ...

بذر قواعد البيانات بالبيانات الاختبارية Seeding في Laravel

مقدمة يتضمّن Laravel تابع بسيط لملء قاعدة البيانات الخاصة بك مع بيانات للتجربة باستخدام أصناف البذر. ستجد جميع أصناف البذر في مجلّد database/seeds، وقد تحتوي أصناف البذر على أي اسم تريده، لكن ربما يجب عليك اتباع بعض المعايير المعقولة مثل UsersTableSeeder ...إلخ. وبشكل افتراضي، سيكون صنف DatabaseSeeder معرّف لك، ومن خلال هذا الصنف يمكنك استخدام أسلوب call لتشغيل بقيّة أصناف البذر، مما يسمح لك بالتحكم بترتيب البذر. كتابة منشئات البذور لتوليد منشئ البذرة (seeder)، نفّذ أمر make:seeder Artisan وستجد جميع ...

التابع Template.safe_substitute()‎ في بايثون

هذا التابع مشابه للتابع Template.substitute()‎ ، باستثناء أنّه لا يطلق خطأً أو استثناءً عند حدوث مشكلة أثناء عملية الاستبدال. البنية العامة safe_substitute(mapping, **kwds) المعاملات mapping أي كائن شبيه بالقاموس يتضمّن مفاتيح مطابقة للمعرّفات المستخدمة في القالب. ‎‎**kwds‎ يمكن بدلًا مما سبق تقديم معاملات مفتاحية، تكون فيها الكلمات المفتاحية مطابقة للمعرّفات المستخدمة في القالب. عند استخدام المعامل mapping مع المعاملات المفتاحية، تأخذ المعاملات المفتاحية الأولوية في حال وجود معرّفات متكرّرة بينهما. القيمة المعادة يعيد التابع سلسلة نصية جديدة ناتجة عن إجراء ...

التابع Template.safe_substitute()‎ في بايثون

هذا التابع مشابه للتابع Template.substitute()‎ ، باستثناء أنّه لا يطلق خطأً أو استثناءً عند حدوث مشكلة أثناء عملية الاستبدال. البنية العامة safe_substitute(mapping, **kwds) المعاملات mapping أي كائن شبيه بالقاموس يتضمّن مفاتيح مطابقة للمعرّفات المستخدمة في القالب. ‎‎**kwds‎ يمكن بدلًا مما سبق تقديم معاملات مفتاحية، تكون فيها الكلمات المفتاحية مطابقة للمعرّفات المستخدمة في القالب. عند استخدام المعامل mapping مع المعاملات المفتاحية، تأخذ المعاملات المفتاحية الأولوية في حال وجود معرّفات متكرّرة بينهما. القيمة المعادة يعيد التابع سلسلة نصية جديدة ناتجة عن إجراء ...

الكلمة المحجوزة this في JavaScript

الكلمة المحجوزة this لها سلوكٌ في JavaScript يختلف عن بقية لغات البرمجة، وهنالك اختلافاتٌ في سلوكها بين النمط strict و non-strict. في أغلبية الحالات، تُحدَّد قيمة الكلمة المحجوزة this وفق طريقة استدعاء الدالة، إذ لا يمكن ضبط قيمتها باستخدام عملية الإسناد العادية أثناء التنفيذ؛ وقد تختلف قيمة this في كل مرة تُستدعى فيها الدالة. أضافت ES5 الدالة bind التي تضبط قيمة this داخل الدالة بغض النظر عن طريقة استدعائها، وأضافت ES2015 الدوال السهمية (arrow functions) التي تُوفِّر ربطًا خاصًا بها ...

Function.prototype.bind()‎

الدالة Function.prototype.bind()‎ تُنشِئ دالةً جديدةً التي عند استدعائها ستُضبَط قيمة المعامل this إلى القيمة المعطية، وستُوفَّر إليها قائمة المعاملات التي تلي قيمة المعامل this. البنية العامة fun.bind(thisArg[, arg1[, arg2[, ...]]]) thisArg وسيطٌ يُمثِّل قيمة المعامل this التي ستُستعمل في الدالة func عند استدعائها، لاحظ أنَّ JavaScript ستتجاهل هذه القيمة إذا استدعيت الدالة كدالة بانية باستخدام المعامل new. arg1, arg2, ...‎ الوسائط التي ستُرفَق مع الوسائط المُمرَّرة إلى الدالة عند استدعائها. القيمة المعادة نسخة من الدالة المعطية مع قيمة this المُخصَّصة ...

الدالة ()‎counter في Sass

الدالة ()counter موجودة فقط كحل بديل للمشكلة content: counter الموجودة في متصفح IE7. تعمل بشكل مماثل مع أي دالة من دوال CSS باستثناء أنَّها تتجنب إضافة مسافات بين فواصل الوسائط. البنية العامة counter($args...) القيم المعادة تُعاد سلسلة نصيَّة. أمثلة المثال 1: استخدام الدالة counter()‎. counter(item, ".") // counter(item,".") انظر أيضًا الدالة counters()‎: موجودة فقط كحل بديل للمشكلة content: counter الموجودة في متصفح IE7. الدالة call()‎: تستدعي دالة بشكل ديناميكي. مصادر قسم الدالة counter في صفحة الدوال في توثيق Sass الرسمي.

الدالة ()‎counters في Sass

الدالة ()counters موجودة فقط كحل بديل للمشكلة content: counter الموجودة في متصفح IE7. تعمل بشكل مماثل مع أي دالة من دوال CSS باستثناء أنَّها تتجنب إضافة مسافات بين فواصل الوسائط. البنية العامة counters($args...) القيم المعادة تُعاد سلسلة نصية. أمثلة مثال عن استخدام الدالة counters()‎: counters(item, ".") // counters(item,".") انظر أيضًا الدالة counter()‎: موجودة فقط كحل بديل للمشكلة content: counter الموجودة في متصفح IE7. الدالة call()‎: تستدعي دالة بشكل ديناميكي. مصادر قسم الدالة counters في صفحة الدوال في توثيق Sass الرسمي.

الكلمات المفتاحية (Keywords) والمعاملات (Operators) في لغة Kotlin

 الكلمات المفتاحيّة الثابتة (Hard Keywords) تُعدُّ الكلمات الآتية كلماتٍ مفتاحيّةً في لغة Kotlin وليس ممكنًا استخدامها كمُعرِّفات (identifiers): as تُستخدَم في التحويلات ما بين الأنواع (typecasts) تُحدِّد تسميةً بديلةً (alias) عند عملية الاستيراد (import) as?‎ للتحويلات الحافظة للنوع (safe type casts) break لإنهاء تنفيذ الحلقات (loops) class للتصريح عن الأصناف continue  للاستمرار بالخطوة التالية لأقرب حلقة محيطة (enclosing) do للبدء بحلقة do/while (والتي يُختبَر الشرط فيها لاحقًا) else لتعريف فرعٍ (branch) من تعبير الشرط if والذي سيُنفَّذ عندما يكون الشرط بالقيمة false false ...

الأصناف في TypeScript

مقدمة تعتمد لغة JavaScript التقليدية على الدوال والوراثة المعتمدة على سلسلة Prototype لبناء مكونات قابلة لإعادة الاستعمال، وقد يجد بعض المبرمجين هذه الطريقة غريبة ومرهقة، خاصّة الذين ألِفوا البرمجة كائنيّة التوجه التي تعتمد على الأصناف التي ترث وظيفة (functionality) الأصناف الأساس (base classes) وتُبنَى فيها الكائنات من هذه الأصناف. بدايةً من الإصدار ECMAScript 2015 المعروف كذلك بالإصدار ECMAScript 6، يُمكن لمبرمجي JavaScript بناء التطبيقات باستخدام البرمجة كائنيّة التوجّه المعتمِدة على الأصناف. وتسمح TypeScript للمطورين باستعمال هذه التقنيات الآن، وتُترجِمها إلى ...

new.target

الخاصية new.target تسمح لك بمعرفة إن استدعيت دالةٌ عاديةٌ أم دالةٌ بانيةٌ باستخدام المعامل new، ففي الدوال البانية التي تُهيَّئ باستخدام المعامل new ستعيد الخاصية new.target مرجعيةً إلى الدالة البانية، أما الدوال العادية فستكون قيمة الخاصية new.target هي undefined. البنية العامة new.target الوصف التعبير new.target يحتوي على الكلمة المحجوزة new ثم نقطة ثم اسم الخاصية target، لاحظ أنَّ هذا الشكل قد يبدو من الوهلة الأولى على أنها وصولٌ إلى خاصيات أحد الكائنات، لن الكلمة المحجوزة new ليست كائنًا. الخاصية new.target ...

التابع ‎.error()‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ في jQuery

‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎.error( handler )‎ القيمة المعادة يُعيد كائنًا من النوع jQuery. أُهمل مع الإصدار: 1.8، وأُزيل مع الإصدار: 3.0. الوصف ربط معالج الحدث بحدث الخطأ "error" في JavaScript. error( handler )‎ أُضيف مع الإصدار: 1.0. handler دالة تنفذ عند تشغيل الحدث وهي على الشكل Function( Event eventObject )‎. ‎.error( [eventData ], handler )‎ أُضيف مع الإصدار: 1.4.3. eventData كائن يحتوي على البيانات التي ستُمرر إلى معالج الحدث، ويمكن أن يكون من أي نوع من أنواع JavaScript. handler دالة تنفذ عند تشغيل ...

استخراج الصنف (Extract Class)

المشكلة وجود صنفٍ (class) واحدٍ يقوم بمهامٍ عديدةٍ يمكن توزيعها على صنفين. الحل إنشاء صنفٍ جديدٍ ونقل بعض الحقول (fields) والتوابع (methods) إليه، والتي تتعلَّق بالمهام الوظيفيّة (functionality) لهذا الصنف الجديد. مثال قبل إعادة التصميم يحتوي الصنف Person على عددٍ من الحقول كاسم الشخص (name) ورمز منطقة المكتب (officeAreaCode) ورقمه (officeNumber)، وتابعًا للحصول على هذا الرقم باسم getTelephoneNumber، كما في مخطط الأصناف الآتي: الصنف Person يحتوي على عددٍ من الحقول كاسم الشخص (name) ورمز منطقة المكتب (officeAreaCode) ورقمه (officeNumber)، وتابعًا ...

الصنف Object في روبي

يعدُّ الصنف Object الجذر الافتراضي لكل كائنات روبي. يَرِث الصنف Object من الصنف BasicObject ما يسمح بإنشاء تسلسلات هرمية بديلة للكائن. تُتاح توابع الكائن لكل الأصناف ما لم يتم تجاهلها (overridden) صراحةً. تندمج الوحدة Kernel ضمن الصنف Object ما يعطي الوصول العام (global) للدّوال المبنية ضمنيًّا في الوحدة. رغم أنَّ توابع النسخة المنشأة من الصنف Object معرَّفةٌ عن طريق الوحدة Kernel، رأينا أن نوثّقهم هنا لمزيد من الوضوح. عند الإشارة (referencing) إلى الثوابت في الأصناف الوارثة من الصنف Object، لا ...

الأمر Artisan console) Artisan) في Laravel

مقدمة Artisan هي واجهة الأوامر المُرفقة ب Laravel. وهي تُوفّر عددًا من الأوامر المفيدة والتي ستساعدك في بناء التطبيق. لإظهار جميع الأوامر التي يوفّرها Artisan، يمكنك استعمال الأمر list php artisan list يحتوي كل أمر على صفحة مساعدة "help" تعرّف وتوضّح الأمر كما تُقدّم قائمة المعاملات والخيارات لكل أمر. يُستعمل الأمر مسبوقًا بالكلمة help لإظهار صفحة المساعدة: php artisan help migrate Laravel REPL تأتي كل تطبيقات Laravel مُرفَقَةً ب Tinker، وهي REPL مشغّلة بواسطة حُزمة PsySH. يسمح Tinker بالتفاعل مع ...

الاستثناءات في بايثون

قد تكون التعابير البرمجية في الشيفرة صحيحة من ناحية الصيغة، لكن قد يؤدي تنفيذ تلك الشيفرة إلى التسبب في حدوث الأخطاء. تسمّى الأخطاء المُكتشفة أثناء تنفيذ الشيفرة بالاستثناءات (exceptions) وقد تتسبب في إيقاف عمل البرنامج (fatal) في بعض الأحيان. صيغة الاستثناءات تُنشئ الاستثناءات رسائل خطإٍ مماثلة لما يلي: >>> 10 * (1/0) Traceback (most recent call last):   File "<stdin>", line 1, in <module> ZeroDivisionError: division by zero >>> 4 + spam*3 Traceback (most recent call last):   File "<stdin>", line 1, in <module> NameError: name 'spam' ...

declare في PHP

(PHP 4, PHP 5, PHP 7) تستخدم بنية declare لتعيين موجّهات التنفيذ (execution directives) لكتلة من الشيفرة، وصيغة declare مشابهة لبنى التحكم في تدفق الشيفرة. الوصف declare (directive) statement يتيح الموجه تعيين سلوك كتلة (block). يمكن للغة في الوقت الحاضر أن تتعرف على ثلاثة أنواع من الموجهات فقط: موجه ticks (للمزيد من المعلومات حول موجه ticks انظر أدناه)، وموجه encoding (للمزيد من المعلومات حول موجه encoding انظر أدناه)، وموجه strict_types (للمزيد من المعلومات راجع قسم strict في ...

declare في PHP

(PHP 4, PHP 5, PHP 7) تستخدم بنية declare لتعيين موجّهات التنفيذ (execution directives) لكتلة من الشيفرة، وصيغة declare مشابهة لبنى التحكم في تدفق الشيفرة. الوصف declare (directive) statement يتيح الموجه تعيين سلوك كتلة (block). يمكن للغة في الوقت الحاضر أن تتعرف على ثلاثة أنواع من الموجهات فقط: موجه ticks (للمزيد من المعلومات حول موجه ticks انظر أدناه)، وموجه encoding (للمزيد من المعلومات حول موجه encoding انظر أدناه)، وموجه strict_types (للمزيد من المعلومات راجع قسم strict في ...

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

الدالة RegExp.prototype.[@@replace]()‎ تُعيد سلسلةً نصيةً جديدةً فيها بعض أو جميع الأجزاء المُطابَقة عبر النمط this قد استبدلتها السلسلة النصية replacement. لاحظ أنَّ النمط pattern يمكن أن يكون سلسلةً نصيةً أو كائن RegExp، ويمكن أن يكون الوسيط replacement سلسلةً نصيةً أو دالةً التي ستُستدعى لكل مُطابَقة. البنية العامة regexp[Symbol.replace](str, newSubStr|function) str السلسلة النصية التي سنبحث عن مُطابَقة للتعبير النمطي فيها لاستبداله. newSubStr السلسلة النصية String التي ستستبدل السلسلة الفرعية، وهنالك عددٌ من الأنماط الفرعية المدعومة فيها، انظر قسم «تحديد سلسلة نصية كوسيط» في صفحة الدالة String.prototype.replace()‎ للتفاصيل. function الدالة ...

التابع dict.popitem()‎ في بايثون

يحذف التابع زوج (مفتاح، قيمة) عشوائيًا من القاموس ويعيد قيمته. البنية العامة dict.popitem() القيمة المعادة يعيد التابع زوج (مفتاح، قيمة) المحذوف من القاموس، ويطلق الخطأ KeyError إن كانت المجموعة فارغة. أمثلة يبين المثال التالي النتائج المعادة من تطبيق التابع: >>> employee = {'first-name': 'Ahmed', 'last-name': 'Jamil', 'age': 28} >>> employee.popitem() ('age', 28) >>> employee.popitem() ('last-name', 'Jamil') >>> employee.popitem() ('first-name', 'Ahmed') >> employee.popitem() Traceback (most recent call last): File "<stdin>", line 1, in <module> KeyError: 'popitem(): dictionary is empty' انظر أيضًا القواميس في بايثون. التابع dict.pop()‎: حذف المفتاح المحدد ...

التابع set.remove()‎ في بايثون

يحذف التابع عنصرًا واحدًا من المجموعة. البنية العامة remove(elem) المعاملات elem العنصر المراد حذفه من المجموعة. إن لم يكن هذا العنصر ضمن المجموعة يطلق التابع الخطأ KeyError. أمثلة أمثلة نموذجية عن استخدام هذا التابع: >>> s = {1, 2, 3, 4, 5} >>> s.remove(3) >>> s {1, 2, 4, 5} >>> s.remove(6) Traceback (most recent call last): File "<stdin>", line 1, in <module> KeyError: 6 انظر أيضًا المجموعات في بايثون. التابع set.add()‎: إضافة عنصر واحد إلى المجموعة. التابع set.discard()‎: حذف عنصر واحد من المجموعة إن ...

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

يعيد التابع موقع أول ظهور للقيمة المعطاة في المصفوفة. البنية العامة ‎array.index(x) المعاملات x القيمة المراد معرفة موقعها في المصفوفة. القيمة المعادة يعيد التابع موقع أول ظهور للقيمة المعطاة في المصفوفة. يطلق التابع الخطأ ValueError في حال عدم عثوره على القيمة المطلوبة. أمثلة يبين المثال التالي آلية عمل التابع: >>> import array >>> a1 = array.array('l', [1, 2, 8, 12, 88]) >>> a1.index(8) 2 >>> a1.index(12) 3 >>> a1.index(99) Traceback (most recent call last): File "<stdin>", line 1, in <module> ValueError: array.index(x): x not in list انظر ...

تعريف أحداث التنظيف clean-up actions

تمتلك عبارة try جزءًا اختياريًا آخر، والهدف منه هو تعريف أحداث تنظيف (clean-up actions) يجب تنفيذها في جميع الظروف، فعلى سبيل المثال: >>> try: ...     raise KeyboardInterrupt ... finally: ...     print('Goodbye, world!') ... Goodbye, world! KeyboardInterrupt Traceback (most recent call last):   File "<stdin>", line 2, in <module> تُنفّذ عبارة finally دائمًا قبل الخروج من عبارة try، سواء أحدث الاستثناء أم لم يحدث. وعند حدوث استثناء في عبارة try ولم تجر معالجته بواسطة عبارة except (أو أنّه حدث في عبارة except أو else) فإنّه يعاد إطلاق ذلك ...

التابع ‎‎.keydown()‎‎ في jQuery

‎.keydown( handler )‎ القيم المعادة يعيد كائنًا من النوع jQuery. الوصف يربط هذا التابع معالج حدث معين مع الحدث keydown (الضغط على مفتاح في لوحة المفاتيح) في JavaScript، أو يستدعي ذلك الحدث لتطبيقه على عنصر. ‎.keydown( handler )‎ أُضيف مع الإصدار: 1.0. handler دالة من الشكل Function( Event eventObject )‎، وتُمثِّل الدالة التي ستُنفَّذ في كل مرة يُستدعى فيها الحدث. ‎.keydown( [eventData ], handler )‎ أُضيف مع الإصدار: 1.4.3. eventData أي شيء (وهو نوع افتراضي مُستخدَم في jQuery للإشارة إلى ...

التابع ‎.dblclick()‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ في jQuery

‎.dblclick( handler )‎ ‎‎القيمة المعادة يُعيد التابع ‎.dblclick( handler )‎ كائنًا من النوع jQuery. الوصف يربط هذا التابع دالة معالجة أحداث بحدث dblclick من JavaScript، أو يُطلق هذا الحدث على عنصرٍ ما. ‎.dblclick( handler )‎ أُضيفت مع الإصدار: 1.0. handler هي دالة تُنفَّذ في كل مرة يُطلَق فيها الحدث، وهي على الشكل Function (Event eventObject)‎. ‎.dblclick( [eventData ], handler )‎ أُضيفت مع الإصدار: 1.4.3. eventData كائن يحتوي على البيانات التي ستُمرر إلى معالج الحدث، ويمكن أن يكون من أي نوع ...

تعريف أحداث التنظيف clean-up actions

تمتلك عبارة try جزءًا اختياريًا آخر، والهدف منه هو تعريف أحداث تنظيف (clean-up actions) يجب تنفيذها في جميع الظروف، فعلى سبيل المثال: >>> try: ...     raise KeyboardInterrupt ... finally: ...     print('Goodbye, world!') ... Goodbye, world! KeyboardInterrupt Traceback (most recent call last):   File "<stdin>", line 2, in <module> تُنفّذ عبارة finally دائمًا قبل الخروج من عبارة try، سواء أحدث الاستثناء أم لم يحدث. وعند حدوث استثناء في عبارة try ولم تجر معالجته بواسطة عبارة except (أو أنّه حدث في عبارة except أو else) فإنّه يعاد إطلاق ذلك ...

الدالة csv.get_dialect()‎‎ في بايثون

تعيد الدالة اللهجة المرتبطة بالاسم المعطى. البنية العامة csv.get_dialect(name) ‎المعاملات name اسم اللهجة المطلوبة. القيمة المعادة تعيد الدالة اللهجة المرتبطة بالاسم المعطى. تُطلق الدالة استثناء إن كان الاسم المعطى غير موجود في سجلّ اللهجات. تعيد الدالة كائن Dialect غير قابل للتعديل. أمثلة يعرض المثال التالي طريقة الاستفادة من هذه الدالة: >>> import csv >>> csv.register_dialect('unixpwd', delimiter=':', quoting=csv.QUOTE_NONE) >>> csv.get_dialect('unixpwd') <_csv.Dialect object at 0x7f29af0a6ae8> >>> csv.get_dialect('xpwd') Traceback (most recent call last): File "<stdin>", line 1, in <module> _csv.Error: unknown dialect انظر أيضًا الدالة csv.register_dialect()‎: تربط الدالة ...

التابع Cursor.close()‎ في بايثون

يغلق التابع المؤشر فورًا (عوضًا عن إغلاقه عند استدعاء التابع ‎__del__‎)، وبعدها لن يكون بالإمكان استخدام المؤشر، وستطلق اللغة الاستثناء ProgrammingError عند تنفيذ أي عملية باستخدام المؤشر. البنية العامة close() أمثلة يبين المثال التالي طريقة استخدام التابع: >>> import sqlite3 >>> conn = sqlite3.connect('example.db') >>> c = conn.cursor() >>> c.execute('''CREATE TABLE stocks ... (date text, trans text, symbol text, qty real, price real)''') <sqlite3.Cursor object at 0x7f0ea62989d0> >>> c.execute("INSERT INTO stocks VALUES ('2006-01-05','BUY','RHAT',100,35.14)") <sqlite3.Cursor ...

المقارنة بين لغتيّ البرمجة Java و Kotlin

بعض المواضيع في Java ومعالجتها في Kotlin عالجت لغة Kotlin العديد من المشاكل الموجودة في Java وهي: التحكُّم بالمرجعيّات الفارغة (null references) عبر نظام الأنواع لا وجود للأنواع الخامّ (raw types) تُعدُّ المصفوفات في Kotlin ثابتة (invariant) للدوال (functions) في Kotlin أنواع مناسبة وهذا ما يتعارض مع التحويلات SAM في Java التنوّع في موقع الاستخدام (use-site variance) دون الحاجة إلى المحارف البديلة (wildcards) لا وجود للاستثناءات المُتحقَّق منها (checked exceptions) في Kotlin ما تمتاز به Java ولا تدعمه Kotlin الاستثناءات ...

الدالة ()os.fspath في بايثون

تُعيد الدالة تمثيل نظام الملفات من المسار المُمرَّر. البنية العامة fspath(path) سجل التغييرات الإصدار التغييرات 3.6 أُضيفت الدالة في هذا الإصدار. المعاملات path المسار المُراد الحصول على تمثيله بنظام الملفات. القيمة المعادة ستُعيد الدالة قيمة غير مُغيَّرة من الأصل إن مُرِّرَ لها سلسلة نصيّة أو سلسلة بايتات تُمثِّل تمثيل المسار المُمرَّر بنظام الملفات. سيُستدعى التابِع ()__fspath__ إن مُرِّرَ للدالة مُعطىً من نوع آخر، وسيُعيد التابِع قيمته فقط إن كان كائِنه سلسلةً نصيّة أو سلسلة بايتات. ستُصدِر الدالة الاستثناء TypeError إن ...

المزخرفات في TypeScript

مقدمة مع إضافة الأصناف إلى TypeScript ونسخة ES6، فقد ظهرت كذلك حاجةٌ إلى ميزات إضافية لدعم تعديل الأصناف وعناصر الأصناف أو توصيفها (annotating). توفّر المزخرفات (Decorators) طريقة لإضافة توصيفات وبنية برمجة وصفيّة (meta-programming) لتصريحات الأصناف وعناصرها. المزخرفات حاليًّا اقتراح في المرحلة 2 (stage 2 proposal) في JavaScript وهي متوفّرة كميّزة تجريبيّة في TypeScript. ملاحظة: المزخرفات ميّزة تجريبيّة قد تتغيّر في النسخ الجديدة مستقبلًا. لتفعيل الدعم التجريبي للمزخرفات، عليك تفعيل خيار المترجم ‎experimentalDecorators‎ إما على سطر الأوامر أو في ملفّ ‎tsconfig.json‎ ...

الخاصّيّات (Properties) وحقول البيانات (Fields) في لغة Kotlin

التصريح عن الخاصّيّات (Declaring Properties) قد تحتوي الأصناف في لغة Kotlin على الخاصّيّات المعرَّفة إما كقيمٍ متغيّرةٍ عبر الكلمة المفتاحيّة var أو كقيمٍ ثابتةٍ للقراءة فقط (read-only) عبر الكلمة المفتاحيّة val، مثل: class Address { var name: String = ... var street: String = ... var city: String = ... var state: String? = ... var zip: String = ... } إذ يُمكن الوصول للخصائص عبر اسمها ...

التابع ‎‎.keyup()‎‎ في jQuery

‎.keyup( handler )‎ القيم المعادة يعيد كائنًا من النوع jQuery. الوصف يربط هذا التابع معالج حدث معين مع الحدث keyup (الضغط على مفتاح في لوحة المفاتيح) في JavaScript، أو يستدعي ذلك الحدث لتطبيقه على عنصر. ‎.keyup( handler )‎ أُضيف مع الإصدار: 1.0. handler دالة من الشكل Function( Event eventObject )‎، وتُمثِّل الدالة التي ستُنفَّذ في كل مرة يُستدعى فيها الحدث. ‎.keyup( [eventData ], handler )‎ أُضيف مع الإصدار: 1.4.3. eventData أي شيء (وهو نوع افتراضي مُستخدَم في jQuery للإشارة إلى ...

التابع ‎.focus()‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ في jQuery

‎.focus( handler )‎ القيمة المعادة يُعيد كائنًا من النوع jQuery. الوصف ربط دالة معالج أحداث بحدث "focus" من JavaScript، أو إطلاق هذا الحدث على عنصر. ‎.focus( handler )‎ أُضيف مع الإصدار: 1.0. handler دالة على الشكل Function( Event eventObject )‎، تُنفَّذ في كل مرة يُطلَق فيها الحدث. ‎.focus( [eventData ], handler )‎ أُضيف مع الإصدار: 1.4.3. eventData كائن يحتوي على البيانات التي ستُمرر إلى معالج الحدث، ويمكن أن يكون من أي نوع من أنواع JavaScript. handler دالة على الشكل Function( ...

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

يعيد التابع موقع العنصر المعطى في كائن deque. البنية العامة d.‎index(x[, start[, stop]]) المعاملات x العنصر المراد إيجاد موقعه في كائن deque. === start و stop يمكن البحث عن موقع العنصر x بدءًا من الموقع start وانتهاءً بالموقع stop. القيمة المعادة يعيد التابع موقع العنصر المعطى في كائن deque. ويطلق التابع الخطأ ValueError في حال عدم العثور على العنصر المطلوب. أمثلة يبين المثال التالي آلية عمل التابع. >>> from collections import deque >>> d = deque('abcdefgh') >>> d deque(['a', 'b', 'c', 'd', 'e', ...

التابع array.pop()‎ في بايثون

يحذف التابع العنصر في الموقع المحدد من المصفوفة ويعيده. البنية العامة ‎array.pop([i]) المعاملات i موقع العنصر المراد حذفه. القيمة المعادة يعيد التابع العنصر المحذوف من الموقع المحدد في المصفوفة. أمثلة يبين المثال التالي آلية عمل التابع: >>> import array >>> a1 = array.array('l', [1, 2, 3, 4, 5]) >>> a1.pop(3) 4 >>> a1.pop(0) 1 >>> a1.pop(8) Traceback (most recent call last): File "<stdin>", line 1, in <module> IndexError: pop index out of range انظر أيضًا التابع array.append()‎: يضيف التابع عنصرًا جديدًا يحمل القيمة المعطاة إلى نهاية المصفوفة. ...

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

يعيد التابع موقع العنصر المعطى في كائن deque. البنية العامة d.‎index(x[, start[, stop]]) المعاملات x العنصر المراد إيجاد موقعه في كائن deque. === start و stop يمكن البحث عن موقع العنصر x بدءًا من الموقع start وانتهاءً بالموقع stop. القيمة المعادة يعيد التابع موقع العنصر المعطى في كائن deque. ويطلق التابع الخطأ ValueError في حال عدم العثور على العنصر المطلوب. أمثلة يبين المثال التالي آلية عمل التابع. >>> from collections import deque >>> d = deque('abcdefgh') >>> d deque(['a', 'b', 'c', 'd', 'e', ...

المتغيرات الخاصة في بايثون

لا تدعم بايثون متغيرات الأصناف الخاصة (Private) والتي لا يمكن الوصول إليها من خارج الكائن، ولكن يتفق معظم المبرمجين على أنّ الاسم المسبوق بشرطة سفلية (مثل: ‎_spam) يجب أن يُعامل كجزء غير عام من الواجهة البرمجية (سواء كان ذلك الجزء دالة أم تابعًا أم خاصية).  هناك حالة واحدة تستدعي استخدام عناصر الأصناف الخاصة وهي تجنب حدوث تضارب بين الأسماء الموجودة في الصنف والأسماء المعرّفة في الأصناف الفرعية، ونظرًا لذلك تقدم اللغة دعمًا محدودًا لمثل هذه الحالة، وتدعى بتشويه الأسماء name ...

ردود النداء في PHP

يمكن الإشارة إلى رد النداء (Callbacks) باستخدام نوع البيانات (callable) منذ إصدار PHP 5.4، هذا التوثيق يستخدم معلومات نوع callback لنفس الغرض. بعض الدوال مثل call_user_func()‎ أو usort()‎ تقبل فقط دوال رد النداء المعرّفة من قبل المستخدم (user-defined callback functions) كمعامل. دوال رد النداء ليست دوالًا بسيطةً فحسب، بل يمكن استخدام الدوال التي تكون أعضاءً في أصناف (object methods)، بما في ذلك الدوال الساكنة (static class methods). تمرير دوال رد النداء يتم تمرير أي دالة PHP باستخدام اسمها كسلسلة نصية، ...

المتغيرات الخاصة في بايثون

لا تدعم بايثون متغيرات الأصناف الخاصة (Private) والتي لا يمكن الوصول إليها من خارج الكائن، ولكن يتفق معظم المبرمجين على أنّ الاسم المسبوق بشرطة سفلية (مثل: ‎_spam) يجب أن يُعامل كجزء غير عام من الواجهة البرمجية (سواء كان ذلك الجزء دالة أم تابعًا أم خاصية).  هناك حالة واحدة تستدعي استخدام عناصر الأصناف الخاصة وهي تجنب حدوث تضارب بين الأسماء الموجودة في الصنف والأسماء المعرّفة في الأصناف الفرعية، ونظرًا لذلك تقدم اللغة دعمًا محدودًا لمثل هذه الحالة، وتدعى بتشويه الأسماء name ...

ردود النداء في PHP

يمكن الإشارة إلى رد النداء (Callbacks) باستخدام نوع البيانات (callable) منذ إصدار PHP 5.4، هذا التوثيق يستخدم معلومات نوع callback لنفس الغرض. بعض الدوال مثل call_user_func()‎ أو usort()‎ تقبل فقط دوال رد النداء المعرّفة من قبل المستخدم (user-defined callback functions) كمعامل. دوال رد النداء ليست دوالًا بسيطةً فحسب، بل يمكن استخدام الدوال التي تكون أعضاءً في أصناف (object methods)، بما في ذلك الدوال الساكنة (static class methods). تمرير دوال رد النداء يتم تمرير أي دالة PHP باستخدام اسمها كسلسلة نصية، ...

Function.prototype.apply()‎

الدالة Function.prototype.apply()‎ تستدعي دالةً وتضبط قيمة this فيها إلى القيمة المعطية، وستُوفَّر الوسائط التي ستُمرَّر إليها كمصفوفة (أو كائن شبيه بالمصفوفات). ملاحظة: صحيحٌ أنَّ البنية العامة لهذه الدالة تكاد تماثل بينة الدالة call()‎، لكن الفرق الرئيسي بينهما هو أنَّ الدالة call()‎ تقبل قائمةً بالوسائط التي تُمرَّر إلى الدالة، بينما apply()‎ تقبل مصفوفةً واحدةً تحتوي على الوسائط. البنية العامة func.apply([thisArg, argsArray]) thisArg وسيطٌ اختياري، وهو يُمثِّل قيمة المعامل this التي ستُستعمل في الدالة func، لاحظ أنَّ قيمة this المُمرَّرة لا تعني ...

التابع dict.pop()‎ في بايثون

يحذف التابع المفتاح المحدد في المعاملات ويعيد قيمته. البنية العامة dict.pop(key[, default]) المعاملات key المفتاح المراد حذفه. default القيمة التي يعيدها التابع في حال عدم العثور على المفتاح المطلوب. القيمة المعادة إن كان المفتاح المراد حذفه موجودًا في القاموس فإنّ التابع يحذفه ويعيد قيمته، وإن لم يكن المفتاح موجودًا فإنّ التابع يعيد قيمة المعامل default. في حال لم يكن المفتاح المراد حذفه موجودًا في القاموس ولم يمتلك المعامل default أيّ قيمة فإنّ التابع يطلق الخطأ KeyError. أمثلة يوضح المثال التالي ...

الدالة setattr()‎ في بايثون

تُنشئ الدّالة setattr()‎ قيمة لخاصيّة كائن مُعيّن. البنية العامة setattr(object, name, value) المعاملات object الكائن المُراد تعديل خاصيّة من خاصيّاته أو إضافة خاصّية جديدة إليه إن لم تكن موجودة مُسبقًا. name سلسلة نصيّة تُمثّل اسم الخاصيّة، يُمكن أن تكون الخاصيّة موجودة مُسبقًا (ستُغيّر قيمتها) أو غير موجودة (ما يعني أنّها ستُنشأ). value القيمة المرغوب إسنادها للخاصيّة. القيمة المعادة القيمة None. ملاحظات يجب على الكائن أن يسمح بتعديل خاصيّاته. الاستدعاء ‎setattr‎(‎x,‎ ‎'foobar'‎, 123‎)‎ مُكافئ للجملة ‎x.‎‎foobar‎ ‎=‎‎ 123‎. أمثلة المثال التّالي ...

الدالة ()‎if في Sass

تعيد الدالة ()if إحدى القيمتين الممرَّرتين إليها اعتمادًا على تحقُّق شرط معين. تشبه تمامًا التعليمة ‎@if، إذ تُعدّ جميع القيم صحيحةً باستثناء القيمة false والقيمة null. البنية العامة if($condition, $if-true, $if-false) المعاملات ‎$condition الشرط المراد التحقق من صحته. ‎$if-true القيمة التي ستُعاد إن كان الشرط ‎$condition محقَّقًا. ‎$if-false القيمة التي ستُعاد إن لم يكن الشرط ‎$condition محقَّقًا. القيم المعادة تُعاد القيمة ‎$if-true أو القيمة ‎$if-false بناءً على تحقق الشرط ‎$condition. أمثلة مثال عن استخدام الدالة if()‎ لإضافة إطار border للعنصر ...

الدالة ()type_of في Sass

تعيد الدالة type_of()‎ نوع القيمة الممرَّرة إليها. البنية العامة type_of($value) المعاملات ‎$value القيمة المراد معرفة نوعها. القيم المعادة تُعاد سلسلة نصيَّة غير مقتبسة تمثِّل نوع المعامل ‎$value. أمثلة أمثلة نموذجية عن استخدام الدالة type_of()‎: type_of(100px); // number type_of(asdf); // string type_of("asdf"); ...

التابع regex.sub()‎ في بايثون‎

يبدل التابع حالات التطابق غير المتداخلة في أقصى اليسار -والناتجة عن تطبيق التعبير النمطي المصرّف على السلسلة النصية المعطاة- بسلسلة نصية أو بالقيمة المعادة من دالة. البنية العامة regex.sub(repl, string, count=0) المعاملات repl يمكن للبديل repl أن يكون سلسلة نصية أو دالة، وإن كان سلسلة نصية، فإنّ التابع يعالج جميع المحارف المهرّبة فيها. بمعنى أنّ ‎\n تحوّل إلى محرف سطر جديد مفرد، و ‎\r تحوّل إلى حرف إرجاع، وهكذا. أما المحارف المجهولة مثل ‎\&‎ فتترك على حالها. وفي حال وجود ...

التصريح عن الكائنات (Object Declarations) وتعابيرها (Expressions) في لغة Kotlin

قد تحتاج في بعض الأحيان لإنشاء كائنٍ بإجراء تعديلاتٍ طفيفةٍ على أحد الأصناف (classes) بدون التصريح عن صنفٍ فرعيٍّ (subclass) له؛ تعالج لغة Java مثل هذه الحالات بالاعتماد على الأصناف الداخليّة المجهولة (anonymous inner classes)، وتُعمِّمها لغة Kotlin من خلال طرح مفهوم التصريح عن الكائنات وتعابيرها. تعابير الكائنات (Object Expressions) لإنشاء كائنٍ من صنفٍ مجهولٍ (anonymous) يرِث من نوعٍ أو أكثر تكون الشيفرة بالشكل: window.addMouseListener(object : MouseAdapter() { override fun mouseClicked(e: MouseEvent) { ...

البدء مع ريلز

يغطي هذا الدليل بدء وتشغيل ريلز. بعد قراءة هذا الدليل، ستتعلم: كيف تثبّت ريلز وتُنشئ تطبيق ريلز جديد وتربط تطبيق ريلز بقاعدة بيانات. التخطيط العام لتطبيق ريلز. المبادئ الأساسية للنمط MVC (النموذج [Model]، والواجهة [View]، ووحدة التحكم [Controller]) والتصميم RESTful. كيف تولد سريعًا أجزاء البداية لتطبيق ريلز. افتراضات الدليل صُمِّم هذا الدليل للمبتدئين الراغبين ببدء استعمال إطار العمل ريلز من الصفر. ولا يفترض أن لك سابق خبرة بريلز. إنَّ ريلز هو إطار عمل لتطبيقات الويب يعمل على لغة البرمجة روبي. ...

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

يعيد التابع join()‎ كائن البياتات أو كائن مصفوفة البايتات الناتج عن ربط البيانات الثنائية التابعة لكائن قابل للتكرار (iterable). البنية العامة str.join(iterable) المعاملات iterable كائن قابل للتكرار مثل الصفوف، والقواميس، والقوائم، والمجموعات. القيمة المعادة يعيد التابع join()‎ كائن البياتات أو كائن مصفوفة البايتات الناتج عن ربط البيانات الثنائية التابعة لكائن قابل للتكرار (iterable). يطلق التابع الخطأ TypeError إن تضمن المعامل iterable أي قيمة ليست شبيهة بالبايتات (bytes-like object)، إضافة إلى السلاسل النصية. أمثلة يبين المثال التالي القيم المعادة من تطبيق ...

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

يعيد التابع join()‎ كائن البياتات أو كائن مصفوفة البايتات الناتج عن ربط البيانات الثنائية التابعة لكائن قابل للتكرار (iterable). البنية العامة str.join(iterable) المعاملات iterable كائن قابل للتكرار مثل الصفوف، والقواميس، والقوائم، والمجموعات. القيمة المعادة يعيد التابع join()‎ كائن البياتات أو كائن مصفوفة البايتات الناتج عن ربط البيانات الثنائية التابعة لكائن قابل للتكرار (iterable). يطلق التابع الخطأ TypeError إن تضمن المعامل iterable أي قيمة ليست شبيهة بالبايتات (bytes-like object)، إضافة إلى السلاسل النصية. أمثلة يبين المثال التالي القيم المعادة من تطبيق ...

الدالة frozenset()‎ في بايثون

تعيد الدّالة frozenset()‎ كائنًا جديدًا من النّوع frozenset‎ مع عناصر مأخوذة من الكائن القابل للتكرار الذي يُمرّر إليها اختياريًّا. انظر الصّنف frozenset‎ للمزيد من المعلومات حول كيفيّة استعماله. القيمة المُعادة تكون مجموعة جامدةً غير قابلة للتّغيير، أي عكس المجموعات في بايثون، فالمجموعات الجامدة لا تقبل تعديل مُحتوياتها إمّا إضافةً أو حذفًا أو غير ذلك. البنية العامة frozenset([iterable]) المعاملات iterable مُعامل اختياريّ. وهو كائن قابل للتّكرار لإنشاء مجموعة جامدة من عناصره. القيمة المعادة مجموعة جامدة تحتوي على العناصر الفريدة الموجودة في ...

خطوات إعادة التصميم (Refactoring)

تجري عملية إعادة التصميم (refactoring) عبر عدّة خطواتٍ تُحدِث تغييرًا بسيطًا تدريجيًّا يجعل الشيفرة (مع كلِّ تغييرٍ) أفضل بقليلٍ، ولكنها لا توثر على أداء وفعاليّة البرنامج وتحافظ على استمرار عمله بشكلٍ سليمٍ، وتتلخص إعادة التصميم بالخطوات الآتية: الحصول على شيفرةٍ نظيفة (clean code) إن لم تصبح الشيفرة أنظف من بعد إعادة التصميم فهذا هدرٌ للوقت، ولكن ما السبب؟ يحدث كثيرًا أن تحيد عن سياق إعادة التصميم بتغييراتٍ تدريجيّة صغيرةٍ لتتجه نحو إجراء تغييرٍ كبيرٍ واحدٍ! وهذا خطأ ومن السهل الوقوع ...

الدالة print_r()‎ في PHP

(PHP 4, PHP 5, PHP 7) تطبع الدالة print_r()‎‎‎‎‎‎‎‎‎‎‎‎‎‎ معلومات مقروءة من قبل الإنسان حول متغيّر ما. الوصف mixed print_r ( mixed $expression [, bool $return = FALSE ] ) تعرض الدالة print_r()‎ معلومات حول المتغيّر بطريقة مقروءة من قبل الإنسان. تُظهِر الدوال print_r()‎، و var_dump()‎، و var_export()‎ أيضًا الخصائص المحميّة (protected) والخاصّة (private) للكائنات، ولكنّها لا تُظهِر الأعضاء الثابتة للصنف. المعاملات expression التّعبير المُرَاد طباعته. return نستخدم المُعامِل return إذا كنّا نرغب بالتقاط خرج الدالة print_r()‎. عندما تكون قيمة المُعامِل ...

الدالة get_class_vars()‎‎ في PHP

(PHP 4, PHP 5, PHP 7) تُعيد الدالّة get_class_vars()‎‎‎‎ الخصائص الافتراضية للصنف. الوصف array get_class_vars ( string $class_name ) تُعيد الدالّة get_class_vars()‎‎‎‎ الخصائص الافتراضية للصنف المُمرّر إليها. المعاملات class_name اسم الصف المراد الحصول على الخصائص الافتراضية له. القيم المعادة تُعيد الدالّة get_class_vars()‎‎ مصفوفة ترابطية من الخصائص المصرّح عنها المرئية في النطاق الحالي، مع قيمها الافتراضية. تكون عناصر المصفوفة الناتجة على الشكل التالي: اسم الخاصية => القيمة (varname => value). وتُعيد FALSE في حال وجود خطأ. سجل التغييرات الإصدار الوصف 5.0.3 ستُعيد ...

الدالة next()‎ في بايثون

تعيد الدّالة next()‎ القيمة التّالية من المُكرّر المٌعطى عبر استدعاء تابعه الخاصّ ‎_‎_‎next‎_‎_‎()‎. البنية العامة next(iterator[, default]) المعاملات iterator المُكرّر المرُاد الحصول على قيمته التّالية. default مُعامل اختياريّ. تُعاد قيمته عندما تنتهي قيم المُكرّر، وإن لم يُمرّر، فسيُطلَق استثناء StopIteration. القيمة المعادة القيمة التّاليّة للمُكرّر أو القيمة الافتراضيّة المُعطاة للمُعامل default عندما تنتهي قيم المُكرّر. أمثلة المثال التّالي يوضّح كيفيّة عمل هذه الدّالة: >>> name = 'Yousuf' >>> iterator = iter(name) >>> iterator <str_iterator object at 0x7f314d904fd0> >>> next(iterator) 'Y' >>> next(iterator) 'o' >>> next(iterator) 'u' >>> next(iterator) 's' >>> next(iterator) 'u' >>> next(iterator) 'f' >>> ...

الوحدات القياسية في بايثون

تقدّم بايثون مكتبة تضمّ مجموعة من الوحدات القياسية (standard modules) وبعضها مدمج مع مفسّر بايثون وتتيح الوصول إلى عمليات هي ليست في الأصل جزءًا من اللغة، ولكن الهدف منها هو إما زيادة كفاءة عمل المفسّر أو لإتاحة الوصول إلى العمليات الأساسية في نظام التشغير مثل استدعاءات النظام (system calls). مجموعة الوحدات هذه هي جزء من خيارات إعدادات اللغة ولكنّها تعتمد أيضًا على نظام التشغيل الذي تعمل عليه اللغة. فعلى سبيل المثال وحدة winreg متوفّرة على أنظمة تشغيل ويندوز فقط. من ...

الوحدات القياسية في بايثون

تقدّم بايثون مكتبة تضمّ مجموعة من الوحدات القياسية (standard modules) وبعضها مدمج مع مفسّر بايثون وتتيح الوصول إلى عمليات هي ليست في الأصل جزءًا من اللغة، ولكن الهدف منها هو إما زيادة كفاءة عمل المفسّر أو لإتاحة الوصول إلى العمليات الأساسية في نظام التشغير مثل استدعاءات النظام (system calls). مجموعة الوحدات هذه هي جزء من خيارات إعدادات اللغة ولكنّها تعتمد أيضًا على نظام التشغيل الذي تعمل عليه اللغة. فعلى سبيل المثال وحدة winreg متوفّرة على أنظمة تشغيل ويندوز فقط. من ...

Python/pathlib/PurePath/relative to

 التابع PurePath.relative_to في بايثون يحسب هذا التابع كيف يبدو المسار عند اعتباره منسوبًا إلى المسار المُعطى، ويرمي الاستثناء ValueError عندما لا يُمكن نسب المسار الأصلي للمسار المُعطى البنية العامة >>> p = PurePosixPath('/etc/passwd') >>> p.relative_to('/') PurePosixPath('etc/passwd') >>> p.relative_to('/etc') PurePosixPath('passwd') >>> p.relative_to('/usr') Traceback (most recent call last):  File "<stdin>", line 1, in <module>  File "pathlib.py", line 694, in relative_to    .format(str(self), str(formatted))) ValueError: '/etc/passwd' does not start with '/usr' المعاملات الوسيط other* مجموعة غير محدودة من القيم، يتم دمجها لإعطاء المسار الذي سيُنسب إليه المسار الحالي، مُعطيًا المسار المنسوب في القيمة المعادة. ...

التحقق من الأنواع (Type Check) والتحويل بينها (Casting) في لغة Kotlin

المعاملين is و ‎!is تدعم لغة Kotlin ميّزة التحقُّق من توافق الكائن مع أحد الأنواع أثناء التنفيذ، وذلك بالاعتماد على المُعامِل is أو صيغته المنفيّة ‎!is كما في الشيفرة: if (obj is String) { print(obj.length) } if (obj !is String) { // !(obj is String) مكافئ للصيغة print("Not a String") } else { print(obj.length) } التحويلات الذكية (Smart Casts) لا حاجة في كثيرٍ من الأحيان لجعل التحويل صريحًا (explicit) في لغة Kotlin لأنّ المترجم (compiler) يتتبَّع ...

الأعداد العشرية decimal في بايثون

تتيح وحدة decimal إجراء حسابات سريعة على الأعداد العشرية مع ضمان التقريب الصحيح. >>> import decimal >>> Decimal(10) Decimal('10') >>> Decimal('3.14') Decimal('3.14') >>> Decimal(3.14) Decimal('3.140000000000000124344978758017532527446746826171875') ميزات الوحدة decimal تتفوق هذه الوحدة على نوع الأعداد العشرية float بعدة ميزات: العدد العشري decimal "يستند إلى نموذج أعداد عشرية ذات فاصلة عائمة يراعي الاستخدام البشري ويلتزم بمبدأ أساسي هو أنّه يجب أن توفّر الحواسيب عمليات حسابية تعمل بنفس الطريقة التي يتعلّمها الناس في المدارس" - اقتباسٌ من مواصفات العمليات الحسابية التي تجرى على الأعداد العشرية decimal. يمكن تمثيل الأعداد ...

الأعداد العشرية decimal في بايثون

تتيح وحدة decimal إجراء حسابات سريعة على الأعداد العشرية مع ضمان التقريب الصحيح. >>> import decimal >>> Decimal(10) Decimal('10') >>> Decimal('3.14') Decimal('3.14') >>> Decimal(3.14) Decimal('3.140000000000000124344978758017532527446746826171875') ميزات الوحدة decimal تتفوق هذه الوحدة على نوع الأعداد العشرية float بعدة ميزات: العدد العشري decimal "يستند إلى نموذج أعداد عشرية ذات فاصلة عائمة يراعي الاستخدام البشري ويلتزم بمبدأ أساسي هو أنّه يجب أن توفّر الحواسيب عمليات حسابية تعمل بنفس الطريقة التي يتعلّمها الناس في المدارس" - اقتباسٌ من مواصفات العمليات الحسابية التي تجرى على الأعداد العشرية decimal. يمكن تمثيل الأعداد ...

التابع ‎‎.mousemove()‎‎ في jQuery

‎.mousemove( handler )‎ القيم المعادة يعيد كائنًا من النوع jQuery. الوصف يربط هذا التابع معالج حدث معين مع الحدث mousemove (التحرك داخل العنصر) في JavaScript، أو يستدعي ذلك الحدث لتطبيقه على عنصر. ‎.mousemove( handler )‎ أُضيف مع الإصدار: 1.0. handler دالة من الشكل Function( Event eventObject )‎، وتُمثِّل الدالة التي ستُنفَّذ في كل مرة يُستدعى فيها الحدث. ‎.mousemove( [eventData ], handler )‎ أُضيف مع الإصدار: 1.4.3. eventData أي شيء (وهو نوع افتراضي مُستخدَم في jQuery للإشارة إلى إمكانيَّة استخدام أي ...

التابع list.remove()‎ في بايثون

يحذف هذا التابع أول عنصر في القائمة تساوي قيمته القيمة التي يحدّدها المستخدم. البنية العامة l.remove() المعاملات x العنصر المراد حذفه من القائمة. القيمة المعادة يعيد هذا التابع القيمة None، ويُطلِق الخطأ ValueError إن كان العنصر المراد حذفه غير موجودٍ في القائمة. أمثلة يبين المثال التالي كيفية استخدام هذا التابع لحذف العناصر من القائمة: >>> fruits = ['orange', 'apple', 'pear', 'banana', 'kiwi', 'apple', 'banana'] >>> fruits.remove('banana') >>> fruits ['orange', 'apple', 'pear', 'kiwi', 'apple', 'banana'] >>> fruits.remove('watermelon') Traceback (most recent call last): File "<input>", line ...

التابع ConfigParser.add_section()‎‎ في بايثون

يضيف التابع قسمًا يحمل الاسم المعطى إلى نسخة الصنف ConfigParser. البنية العامة add_section(section) ‎المعاملات section سلسلة نصية تتضمن اسم القسم المراد إضافته إلى نسخة الصنف ConfigParser. القيمة المعادة إن كان هناك قسم يحمل الاسم ذاته فإنّ التابع يطلق الاستثناء DuplicateSectionError. وإن كان الاسم المعطى مطابقًا لاسم قسم الإعدادات الافتراضية فإنّ التابع يطلق الاستثناء ValueError. يجب أن يكون الاسم المعطى سلسلة نصية وإلّا فإنّ التابع يطلق الاستثناء TypeError. ملاحظة: يطلق التابع الاستثناء TypeError عند استخدام الأسماء غير النصية في الإصدار 3.2 ...

ثوابت الأصناف في PHP

يمكن تعريف قيم ثابتة لا يمكن تعديلها ولكل صنفٍ على حدة. تختلف الثوابت عن المتغيرات الاعتيادية في عدم استخدام العلامة $ للتصريح عنها أو استخدامها. تمتلك ثوابت الأصناف قابلية رؤية من نوع public. يجب أن تكون القيمة تعبيرًا ثابتًا وليس (على سبيل المثال) متغيرًا أو خاصّية أو استدعاء دالة. يمكن للواجهات interfaces أن تمتلك ثوابت أيضًا. راجع التوثيق الخاص بالواجهات لمشاهدة الأمثلة. منذ الإصدار 5.3.0، أصبح بالإمكان استخدام المتغيرات للإشارة إلى الصنف، ولا يمكن أن يحمل المتغير قيمة تمثّل إحدى ...

الأصناف في بايثون

تعدّ الأصناف وسيلة لجمع البيانات والعمليات في بوتقة واحدة، ويؤدي إنشاء صنف جديد إلى تكوين نوع جديد من الكائنات، ما يتيح إنشاء نسخ (instances) من ذلك النوع. يمكن أن ترتبط بكلّ صنف مجموعة من الخاصيات (attributes) التي تساعد في متابعة حالة الصنف، إضافة إلى مجموعة من التوابع (methods) التي تساعد في تعديل حالة ذلك الصنف. لو أجرينا مقارنة بين بايثون ولغات البرمجة الأخرى، سنجد بأنّ بايثون تضيف قدرًا ضئيلًا من الصياغات الجديدة إلى الأصناف؛ إذ تعتمد بايثون الأساليب المتّبعة في ...

ثوابت الأصناف في PHP

يمكن تعريف قيم ثابتة لا يمكن تعديلها ولكل صنفٍ على حدة. تختلف الثوابت عن المتغيرات الاعتيادية في عدم استخدام العلامة $ للتصريح عنها أو استخدامها. تمتلك ثوابت الأصناف قابلية رؤية من نوع public. يجب أن تكون القيمة تعبيرًا ثابتًا وليس (على سبيل المثال) متغيرًا أو خاصّية أو استدعاء دالة. يمكن للواجهات interfaces أن تمتلك ثوابت أيضًا. راجع التوثيق الخاص بالواجهات لمشاهدة الأمثلة. منذ الإصدار 5.3.0، أصبح بالإمكان استخدام المتغيرات للإشارة إلى الصنف، ولا يمكن أن يحمل المتغير قيمة تمثّل إحدى ...

الصنف Thread في روبي

المهام الفرعية (Threads، وتدعى "الخيوط" أيضًا) هي الطريقة التي تنفذ بها روبي البرمجة المتزامنة (concurrent programming). البرامج التي تتطلب تنفيذ عدة مهام فرعية يمكنها استخدام الصنف Thread. على سبيل المثال، يمكننا إنشاء مهمة فرعية جديدة منفصلة عن المهمة الرئيسية باستخدام التابع new. thr = Thread.new { puts "Whats the big deal" }‎ ثم يمكننا إيقاف تنفيذ المهمة الفرعية الرئيسية مؤقتًا إلى حين إنتهاء المهمة الفرعية خاصتنا باستخدام التابع join: thr.join #=> "Whats the big deal"‎ في حال عدم استدعاء التابع join قبل ...

التابع ‎‎.keypress()‎‎ في jQuery

‎.keypress( handler )‎ القيم المعادة يعيد كائنًا من النوع jQuery. الوصف يربط هذا التابع معالج حدث معين مع الحدث keypress (الضغط على مفتاح في لوحة المفاتيح) في JavaScript، أو يستدعي ذلك الحدث لتطبيقه على عنصر. ‎.keypress( handler )‎ أُضيف مع الإصدار: 1.0. handler دالة من الشكل Function( Event eventObject )‎، وتُمثِّل الدالة التي ستُنفَّذ في كل مرة يُستدعى فيها الحدث. ‎.keypress( [eventData ], handler )‎ أُضيف مع الإصدار: 1.4.3. eventData أي شيء (وهو نوع افتراضي مُستخدَم في jQuery للإشارة إلى ...

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