نتائج البحث

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

التابع PrettyPrinter.format()‎ في بايثون

يحدّد التابع ما إذا كان الكائن المعطى يتطلب تمثيلًا تعاوديًا recursive. البنية العامة PrettyPrinter.format(object, context, maxlevels, level) المعاملات object الكائن المراد تمثيله. context قاموس يحتوي على معرّف id()‎ الكائنات التي تمثّل جزءًا من سياق التمثيل الحالي (حاويات مباشرة أو غير مباشرة للكائن المعطى والتي تؤثّر على عملية التمثيل) كمفاتيح في القاموس. إن احتاج كائن معيّن إلى التنسيق وهو ممثّل ضمن السياق، فإنّ القيمة االثالثة المعادة من هذا التابع تكون True. يجب أن تضيف الاستدعاءات التعاودية للتابع format()‎ عناصر الحاويات الإضافية ...

الدالة pprint.saferepr()‎ في بايثون

تعيد الدالة تمثيلًا على هيئة سلسلة نصية للكائن المعطى، ومحميًا تجاه بنى البيانات التعاودية. البنية العامة pprint.saferepr(object) القيمة المعادة تعيد الدالة تمثيلًا على هيئة سلسلة نصية للكائن المعطى، ومحميًا تجاه بنى البيانات التعاودية. إن تضمّن تمثيل الكائن المعطى عنصرًا تعاوديًا، فإنّ الإشارة التعاودية ستمثّل بالصيغة ‎<Recursion on typename with id=number>‎، ولا يُنسّق التمثيل بطريقة أخرى. أمثلة يبين المثال التالي آلية عمل الدالة: >>> import pprint >>> stuff = ['spam', 'eggs', 'lumberjack', 'knights', 'ni'] >>> stuff.insert(0, stuff) >>> pprint.pprint(stuff) [<Recursion on list with id=...>, 'spam', ...

وحدة reprlib‎ في بايثون

تقدّم وحدة reprlib وسيلة لإنتاج تمثيلات للكائنات مع إمكانية تحديد حجم السلسلة النصية الناتجة. تستخدم هذه الوحدة في منقّح بايثون وقد تكون مفيدة في سياقات أخرى أيضًا. الواجهة البرمجية لوحدة reprlib تقدّم هذه الوحدة صنفًا ونسخة صنف ودالة: الصنف reprlib.Repr يقدّم هذا الصنف خدمات تنسيق يمكن الاستفادة منها في إنشاء دوال مشابهة للدالة الداخلية repr()‎. ولتجنّب إنشاء تمثيلات ذات أحجام كبيرة جدًّا، فإنّ أحجام أنواع البيانات المستخدمة في هذا الصنف تكون محدّدة. نسخة الصنف reprlib.aRepr نسخة من الصنف Repr تستخدم ...

التابع TarFile.add()‎‎ في بايثون

يضيف التابع الملف المعطى إلى ملف الأرشيف. البنية العامة TarFile.add(name, arcname=None, recursive=True, *, filter=None) ‎المعاملات ‎name يمكن لهذا المعامل أن يكون أي نوع من الملفات (مجلد، fifo، وصلة رمزية، الخ). arcname يحدّد هذا المعامل اسمًا بديلًا للملف المضاف إلى الأرشيف. recursive تضاف المجلّدات بصورة تعاودية recursively افتراضيًا، ويمكن تجنّب ذلك بتعيين القيمة False للمعامل recursive. يؤدي التعاود Recursion إلى إضافة المدخلات بالترتيب. ملاحظة: يؤدي التعاود Recursion إلى إضافة المدخلات بالترتيب في الإصدار 3.7 من بايثون. filter في حال تحديد قيمة ...

التابع Array.flatten!‎ في روبي

يشبه التابع flatten!‎ التابع flatten في جميع النواحي باستثناء أنه لا يضع الناتج في مصفوفة جديدة وإنما يعدِّل على المصفوفة الأصلية نفسها. يقبل هذا التابع تمرير المعامل level الاختياري الذي يحدد مستوى التعاودية (recursion level). البنية العامة flatten! → ary or nil flatten!(level) → ary or nil المعاملات level عدد صحيح يحدد مستوى التشعُّب التي يراد استخلاص العناصر الواقعة فيه وجعلها أحادية. القيم المعادة تعاد المصفوفة نفسه المعطاة بعد تحويلها إلى مصفوفة أحادية البعد أي بعد استخراج العناصر المتشعبة منها ...

نطاق المتغيرات في PHP

النطاق (scope) هو السياق الذي تعرّف ضمنه المتغيرات، وفي معظم الحالات تمتلك جميع متغيرات PHP نطاقًا واحدًا فقط، ويمتد هذا النطاق ليشمل الملفات المضمّنة (included) والمطلوبة (required) كذلك. فمثلاً: <?php $a = 1; include 'b.inc'; ?> هنا سيكون المتغير ‎$a متوفّراً ضمن شيفرة b.inc المضمّنة، ولكن يصبح النطاق ضمن الدوال المعرّفة من طرف المستخدم نطاقًا محلّيًا (local scope)، وتكون جميع المتغيرات المستخدمة داخل الدالة محدّدة بصورة تلقائية ضمن النطاق المحلي. مثلًا: <?php // نطاق عام $a = 1; function test() { // ...

نطاق المتغيرات في PHP

النطاق (scope) هو السياق الذي تعرّف ضمنه المتغيرات، وفي معظم الحالات تمتلك جميع متغيرات PHP نطاقًا واحدًا فقط، ويمتد هذا النطاق ليشمل الملفات المضمّنة (included) والمطلوبة (required) كذلك. فمثلاً: <?php $a = 1; include 'b.inc'; ?> هنا سيكون المتغير ‎$a متوفّراً ضمن شيفرة b.inc المضمّنة، ولكن يصبح النطاق ضمن الدوال المعرّفة من طرف المستخدم نطاقًا محلّيًا (local scope)، وتكون جميع المتغيرات المستخدمة داخل الدالة محدّدة بصورة تلقائية ضمن النطاق المحلي. مثلًا: <?php // نطاق عام $a = 1; function test() { // ...

التابع Array.flatten في روبي

يجعل التابع flatten المصفوفة التي تحوي عناصر متشعبة ضمنها مصفوفةً أحادية البعد بشكل تعاودي (recursively)؛ أي أنَّ كل عنصر من عناصر المصفوفة المعطاة والذي قد يكون نفسه مصفوفةً متشعبةً من مستوًى واحدٍ أو أكثر ستُستخلَص عناصره وتضاف إلى مصفوفة جديدة. يقبل هذا التابع تمرير المعامل level الاختياري الذي يحدد مستوى التعاودية (recursion level). البنية العامة flatten → new_ary flatten(level) → new_ary المعاملات level عدد صحيح يحدد مستوى التشعُّب التي يراد استخلاص العناصر الواقعة فيه وجعلها أحادية. القيم المعادة تعاد مصفوفة ...

arguments.callee

الخاصية arguments.callee تشير إلى الدالة التي تُنفَّذ حاليًا. الوصف الخاصية callee التابعة للكائن arguments تُشير إلى الدالة التي تُنفَّذ حاليًا داخل جسم تلك الدالة، وهذا مفيدٌ في حال كان اسم الدالة ليس معروفًا، مثل تعابير تعريف الدوال دون اسم (يُطلَق عليها أيضًا اسم «الدوال المجهولة» [anonymous functions]). تحذير: الإصدار الخامس من ECMAScript (أي ES5) يمنع استخدام الخاصية arguments.callee في نمط strict، تفادى استخدام هذه الخاصية بإعطاء اسم لتعابير تعريف الدوال أو التصريح عن دالة باستخدام تعابير التصريح عن الدوال. أمثلة ...

الدالة pprint.isrecursive()‎ في بايثون

تحدّد الدالة ما إذا كان الكائن المعطى يتطلب تمثيلًا تعاوديًا recursive. البنية العامة pprint.isrecursive(object) القيمة المعادة تعيد هذه الدالة القيمة True مع الكائنات التعاودية Recursive objects. أمثلة يبين المثال التالي آلية عمل الدالة: >>> import pprint >>> stuff = ['spam', 'eggs', 'lumberjack', 'knights', 'ni'] >>> stuff.insert(0, stuff) >>> pprint.pprint(stuff) [<Recursion on list with id=...>, 'spam', 'eggs', 'lumberjack', 'knights', 'ni'] >>> pprint.isrecursive(stuff) True انظر أيضًا التابع PrettyPrinter.isrecursive()‎: يحدّد التابع ما إذا كان الكائن المعطى يتطلب تمثيلًا تعاوديًا. مصادر صفحة Data pretty printer في توثيق بايثون الرسمي.

الدوال المعرّفة من طرف المستخدم في PHP

يمكن تعريف الدالة باستخدام الصيغة التالية: المثال 1: صيغة التعريف عن الدوال <?php function foo($arg_1, $arg_2, /* ..., */ $arg_n) { echo "Example function.\n"; return $retval; } ?> يمكن إضافة أي نوع من الشيفرة داخل الدالة، بل ويمكن إضافة دوالّ أخرى أو تعريف أصناف داخل الدالة. تتبع أسماء الدوالّ نفس القواعد المتبّعة في اللغة للتسمية. يبدأ الاسم الصحيح للدالة بحرف أو شرطة سفلية، متبوعًا بأيّ عددٍ من الحروف أو الأرقام أو الشرطات السفلية. ويمكن التعبير عن هذه الصيغة باستخدام التعابير النمطية بالصورة التالية: ‎[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*‎. نصيحة: راجع ...

الدوال المعرّفة من طرف المستخدم في PHP

يمكن تعريف الدالة باستخدام الصيغة التالية: المثال 1: صيغة التعريف عن الدوال <?php function foo($arg_1, $arg_2, /* ..., */ $arg_n) { echo "Example function.\n"; return $retval; } ?> يمكن إضافة أي نوع من الشيفرة داخل الدالة، بل ويمكن إضافة دوالّ أخرى أو تعريف أصناف داخل الدالة. تتبع أسماء الدوالّ نفس القواعد المتبّعة في اللغة للتسمية. يبدأ الاسم الصحيح للدالة بحرف أو شرطة سفلية، متبوعًا بأيّ عددٍ من الحروف أو الأرقام أو الشرطات السفلية. ويمكن التعبير عن هذه الصيغة باستخدام التعابير النمطية بالصورة التالية: ‎[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*‎. نصيحة: راجع ...

الصنف pprint.PrettyPrinter‎ في بايثون

الصنف الوحيد الذي تقدمه الوحدة pprint وتقدّم نسخ هذا الصنف عددًا من التوابع التي يمكن الاستفادة منها في طباعة المخرجات بصورة منسّقة وجميلة. البنية العامة ‎pprint.PrettyPrinter(indent=1, width=80, depth=None, stream=None, *, compact=False) المعاملات indent يُحدّد مقدار الإزاحة المضافة لكل مستوى تعاودي عن طريق المعامل indent الذي يأخذ القيمة 1 كقيمة افتراضية. قد تظهر المخرجات بمظهر غريب أحيانًا عند استخدام قيم أخرى لهذا المعامل، ولكن يمكن بسهولة تمييز النتائج المتشعّبة. width تحدّد قيمة هذا المعامل مقدار العرض المسموح به للمخرجات، والقيمة الافتراضية ...

الصنف pprint.PrettyPrinter‎ في بايثون

الصنف الوحيد الذي تقدمه الوحدة pprint وتقدّم نسخ هذا الصنف عددًا من التوابع التي يمكن الاستفادة منها في طباعة المخرجات بصورة منسّقة وجميلة. البنية العامة ‎pprint.PrettyPrinter(indent=1, width=80, depth=None, stream=None, *, compact=False) المعاملات indent يُحدّد مقدار الإزاحة المضافة لكل مستوى تعاودي عن طريق المعامل indent الذي يأخذ القيمة 1 كقيمة افتراضية. قد تظهر المخرجات بمظهر غريب أحيانًا عند استخدام قيم أخرى لهذا المعامل، ولكن يمكن بسهولة تمييز النتائج المتشعّبة. width تحدّد قيمة هذا المعامل مقدار العرض المسموح به للمخرجات، والقيمة الافتراضية ...

الدالة pprint.isreadable()‎ في بايثون

تحدّد الدالة ما إذا كان التمثيل المنسّق للكائن المعطى "قابلًا للقراءة" أو يمكن استخدامه لإعادة بناء القيمة باستخدام الدالة eval()‎. البنية العامة pprint.isreadable(object) القيمة المعادة تعيد هذه الدالة القيمة False دائمًا مع الكائنات التعاودية Recursive objects. أمثلة يبين المثال التالي آلية عمل الدالة: >>> import pprint >>> stuff = ['spam', 'eggs', 'lumberjack', 'knights', 'ni'] >>> stuff.insert(0, stuff) >>> pprint.pprint(stuff) [<Recursion on list with id=...>, 'spam', 'eggs', 'lumberjack', 'knights', 'ni'] >>> pprint.isreadable(stuff) False انظر أيضًا التابع PrettyPrinter.isreadable()‎: يحدّد التابع ما إذا كان التمثيل المنسّق للكائن المعطى "قابلًا ...

الوحدة copy في بايثون

لا تنشئ عبارات الإسناد في بايثون نسخة من الكائنات، بل تربط بين الهدف والكائن. ولكن تظهر الحاجة إلى إنشاء نسخ من الكائنات في المجموعات التي تكون قابلة للتعديل أو التي تتضمّن عناصر قابلة للتعديل، بحيث يكون بالإمكان تغيير نسخة دون انتقال تلك التغييرات إلى الكائن الآخر. دوال الوحدة copy تقدّم هذه الوحدة مجموعة من عمليات النسخ السطحية والعميقة. copy.copy(x)‎ تعيد الدالة نسخة سطحية من الكائن المعطى. copy.deepcopy(x)‎ تعيد الدالة نسخة عميقة من الكائن المعطى. exception copy.error يُطلق هذا الاستثناء عند ...

الدوال (Functions) في لغة Kotlin

التصريح عن الدوال (Function Declarations) يُصرَّح عن الدوال في لغة Kotlin باستخدام الكلمة المفتاحيّة fun كما يلي: fun double(x: Int): Int { return 2 * x } استخدام الدوال (Function Usage) يكون استدعاء الدوال كما في أيّ لغة برمجةٍ أخرى بالشكل: val result = double(2) أمّا استدعاء الدوال من الأصناف فيعتمد على المعامل . كما في الشيفرة: Sample().foo() // إنشاء كائنٍ من الصنف واستدعاء الدالة عبره المعاملات (Parameters) تُعرَّف المعاملات بالصيغة المُعتمدَة في لغة Pascal وهي name: type ، ...

التابع PrettyPrinter.isreadable()‎ في بايثون

يحدّد التابع ما إذا كان التمثيل المنسّق للكائن المعطى "قابلًا للقراءة" أو يمكن استخدامه لإعادة بناء القيمة باستخدام الدالة eval()‎. البنية العامة PrettyPrinter.isreadable(object) المعاملات object الكائن المراد معرفة ما إذا كان قابلًا للقراءة أو يمكن استخدامه لإعادة بناء القيمة باستخدام الدالة eval()‎. القيمة المعادة يعيد التابع القيمة False دائمًا مع الكائنات التعاودية. إن عُيّنت قيمة للمعامل depth في كائن PrettyPrinter وكان الكائن أعمق ممّا هو مسموح به، فسيعيد التابع القيمة False. أمثلة يبين المثال التالي آلية عمل الدالة: >>> import ...

Function.arguments

الخاصية Function.arguments تُشير إلى كائنٍ شبيهٍ بالمصفوفات الذي يحتوي على الوسائط المُمرَّرة إلى الدالة. أصبحت هذه الخاصية مهملة في ES3، ويجدر بنا استخدام الكائن arguments بدلًا منها، ومن الممنوع استخدام هذه الخاصية في نمط strict. الوصف في حالة الاستدعاء التعاودي (recursion)، ستُمثِّل قيمة f.arguments وسائط آخر استدعاء للدالة. أمثلة function f(n) { g(n - 1); } function g(n) { console.log('before: ' + g.arguments[0]); if (n > 0) { f(n); } console.log('after: ' + g.arguments[0]); } f(2); console.log('returned: ' + g.arguments); // الناتج // ...

الصنف wsgiref.util.FileWrapper()‎‎ في بايثون

صنف تغليف wrapper تحوّل كائنًا شبيهًا بالملف file-like object إلى مكرّر. تدعم الكائنات الناتجة التكرار استخدام التابعين ‎__getitem__()‎ و ‎__iter__()‎ وذلك للتوافق مع الإصدار 2.1 من بايثون ومع Jython. البنية العامة wsgiref.util.FileWrapper(filelike, blksize=8192) المعاملات ‎blksize المعامل الاختياري يُمُرّر بصورة متكررة في كلّ مرة يجري فيها المرور على الكائن، إلى التابع read()‎ في الكائن الشبيه بالملف المعطى وذلك للحصول على سلاسل بايتات نصية. إذا أعاد التابع read()‎ سلسلة بايتات نصية فارغة، تتوقّف عملية التعاود تمامًا. إن كان الكائن الشبيه بالملفات المعطى ...

الصنف wsgiref.util.FileWrapper()‎‎ في بايثون

صنف تغليف wrapper تحوّل كائنًا شبيهًا بالملف file-like object إلى مكرّر. تدعم الكائنات الناتجة التكرار استخدام التابعين ‎__getitem__()‎ و ‎__iter__()‎ وذلك للتوافق مع الإصدار 2.1 من بايثون ومع Jython. البنية العامة wsgiref.util.FileWrapper(filelike, blksize=8192) المعاملات ‎blksize المعامل الاختياري يُمُرّر بصورة متكررة في كلّ مرة يجري فيها المرور على الكائن، إلى التابع read()‎ في الكائن الشبيه بالملف المعطى وذلك للحصول على سلاسل بايتات نصية. إذا أعاد التابع read()‎ سلسلة بايتات نصية فارغة، تتوقّف عملية التعاود تمامًا. إن كان الكائن الشبيه بالملفات المعطى ...

الوحدة marshal‎ في بايثون

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

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) ...

التابع Array.dig في روبي

يستخرج التابع dig العنصر المتشعِّب (nested value) المحدَّد بسلسلة المعاملات الممرَّرة إليه من مصفوفة متعددة الأبعاد وذلك عبر استدعاء dig عند كل مستوى تشعب. البنية العامة dig(idx, ...) → object المعاملات idx عدد صحيح يمثل فهرسًا يشير إلى عنصر محدد (مصفوفة فرعية) من المصفوفة الخارجية. … أعداد صحيحة يشير أول عدد منها إلى عنصر محدد (قد يكون مصفوفة فرعية) من المصفوفة الفرعية التي حدِّدت عبر المعامل idx، وثاني عدد منها إلى عنصر محدد من المصفوفة الفرعية التي حدِّدت عبر ...

الوحدة pprint‎ في بايثون

تتيح وحدة pprint إمكانية طباعة بنى البيانات في بايثون بصورة جميلة pretty-print بطريقة تسمح باستخدام هذه البيانات كمدخلات في مفسّر بايثون. وإن تضمنت البنى المنسّقة كائنات ليست من أنواع بايثون الأساسية، فمن الممكن أن يكون تمثيل ذلك الكائن غير قابل للتحميل. تظهر هذه الحالة عند تضمين كائنات مثل الملفات أو المنافذ sockets أو الأصناف، إلى جانب العديد من الكائنات الأخرى والتي تكون غير قابلة للتمثيل على هيئة حروف في بايثون. يُبقي التمثيل المنسّق الكائنات في سطر واحد إن كان ذلك ...

الوحدة pprint‎ في بايثون

تتيح وحدة pprint إمكانية طباعة بنى البيانات في بايثون بصورة جميلة pretty-print بطريقة تسمح باستخدام هذه البيانات كمدخلات في مفسّر بايثون. وإن تضمنت البنى المنسّقة كائنات ليست من أنواع بايثون الأساسية، فمن الممكن أن يكون تمثيل ذلك الكائن غير قابل للتحميل. تظهر هذه الحالة عند تضمين كائنات مثل الملفات أو المنافذ sockets أو الأصناف، إلى جانب العديد من الكائنات الأخرى والتي تكون غير قابلة للتمثيل على هيئة حروف في بايثون. يُبقي التمثيل المنسّق الكائنات في سطر واحد إن كان ذلك ...

الصنف urllib.request.FancyURLopener()‎‎ في بايثون

ملاحظة: هذا الصنف مهمل في الإصدار 3.3 وما بعده من بايثون. يتفرّع الصنف FancyURLopener من الصنف URLopener ويقدّم معالجة افتراضية لشيفرات استجابة HTTP التالية: 301، 302، 303، 307، 401. تستخدم الترويسة Location لشيفرات الاستجابة 30x وذلك لجلب عنوان URL الحقيقي، في حين تُجرى عملية استيثاق HTTP بسيطة لشيفرة الاستجابة 401 (والتي تعني أن عملية الاستيثاق مطلوبة Authentication required). تكون عملية التعاود محدّدة في شيفرات الاستجابة 30x بقيمة الخاصية maxtries والتي تأخذ القيمة الافتراضية 10. يُستدعى التابع http_error_default()‎ لباقي شيفرات الاستجابة ...

السلسلة في رابط الكائنات بالعلاقات Eloquent

مقدمة عند بناء واجهات JSON APIs، تحتاج معظم الأوقات إلى تحويل نماذجك وعلاقاتها إلى مصفوفات أو كائنات JSON. يزود Eloquent بمجموعة من التوابع المساعدة لهذه التحويلات، إضافةً إلى التحكم بالحقول التي يجب تضمينها في التحويلات. سلسلة النماذج والمجموعات السلسلة لمصفوفات لتحويل نموذج وعلاقاته المحمّلة لمصفوفة، يمكنك استخدام التابع toArray. إن هذا التابع تعاودي، لذلك ستُحوّل كل الحقول وكل العلاقات (وعلاقات العلاقات) إلى مصفوفات: $user = App\User::with('roles')->first(); return $user->toArray(); يمكنك أيضًا تحويل مجموعة كاملة من النماذج إلى مصفوفة: $users = App\User::all(); return $users->toArray(); السلسلة ...

الوحدة pickle في بايثون

تطبّق وحدة pickle بروتوكولات ثنائية لغرض سَلسلَة وإلغاء سَلسَلَة بنية كائنات بايثون. تطلق تسمية Pickling على العملية التي يتحوّل فيها تسلسل هرمي لكائن بايثون إلى تدفق بايتات byte stream، وتطلق تسمية Unpickling على العملية العكسية والتي يتحوّل فيها تدفّق بايتات (من ملف ثنائي أو كائن شبيه بالبايتات) إلى تسلسل هرمي لكائن بايثون. تحمل هاتان العمليتان (Pickling و Unpickling) أسماءً أخرى مثل السَلسَلَة "serialization"، والترتيب "marshalling" (ليس المقصود هنا وحدة marshal) والتسطيح "falttening". سنستخدم مصطلحي السلسلة وإلغاء السلسلة في هذا التوثيق ...

الكلمات المفتاحية (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 ...

الوحدة shelve‎ في بايثون

الرف shelf هو كائن مستمر persistent شبيه بالقاموس، ويختلف عن قواعد بيانات "dbm" في أنّ القيم (وليست المفاتيح) في الرفّ يمكن أن تكون من أيّ نوع من أنواع بيانات بايثون، وبمعنى أدق أيّ نوع يمكن لوحدة pickle أن تتعامل معه، وهذا يتضمّن معظم نسخ الأصناف، وأنواع البيانات التعاودية، والكائنات التي تتضمن الكثير من الكائنات الفرعية المشتركة. تكون المفاتيح في الرفوف سلاسل نصية عادية. تحذير: نظرًا لاستناد الرفوف على وحدة pickle، فإنّ من الخطر أن تحمّل رفًّا من مصادر غير موثوقة. ...

التابع File.fnmatch في روبي

يتحقق التابع fnmatch من تطابق مسار مع نمط محدَّد. هذا النمط ليس تعبيرًا نظاميًّا بل يتبع قواعد مشابهة لتعميم أسماء الملفات في الصدفة. البنية العامة fnmatch( pattern, path, [flags] ) → (true or false) fnmatch?( pattern, path, [flags] ) → (true or false) المعاملات pattern النمط المراد منه مطابقة المسار path المعطى. يمكن أن يحتوي على المحارف الخاصَّة (metacharacters، أو تدعى محارف الصدفة أيضًا) التالية: المحرف الخاص الوصف * يطابق أي ملف. يمكن أن يُقيَّد بقيم أخرى في النطاق العام (glob). هذا ...

التابع File.fnmatch?‎ في روبي

يتحقق التابع fnmatch?‎ من تطابق مسار مع نمط محدَّد. هذا النمط ليس تعبيرًا نظاميًّا بل يتبع قواعد مشابهة لتعميم أسماء الملفات في الصدفة. البنية العامة fnmatch?( pattern, path, [flags] ) → (true or false) المعاملات pattern النمط المراد منه مطابقة المسار path المعطى. يمكن أن يحتوي على المحارف الخاصَّة (metacharacters، أو تدعى محارف الصدفة أيضًا) التالية: المحرف الخاص الوصف * يطابق أي ملف. يمكن أن يُقيَّد بقيم أخرى في النطاق العام (glob). هذا المحرف يقابل ‎/ * /x‎. في التعابير النظامية. ...

الأوامر البديلة في Bash

فائدة الأوامر البديلة يسمح الأمر البديل (Alias) بوضع كلمة واحدة مكان مقطع نصي (string)، وذلك إن استُخدم كأول كلمة من أمر بسيط، وتحتفظ الصدفة بقائمة من الأوامر البديلة التي يمكن ضبطها وإلغاء ضبطها بأمريْ alias و unalias. اكتب alias في سطر الأوامر لترى قائمة من الأوامر البديلة المعرَّفة للصدفة الحالية: hsoub: ~> alias alias ..='cd ..' alias ...='cd ../..' alias ....='cd ../../..' alias PAGER='less -r' alias Txterm='export TERM=xterm' alias XARGS='xargs -r' alias cdrecord='cdrecord -dev 0,0,0 -speed=8' alias e='vi' alias egrep='grep -E' alias ewformat='fdformat -n /dev/fd0u1743; ewfsck' alias fgrep='grep -F' alias ftp='ncftp -d15' alias ...

مجالات الأسماء والنطاقات في بايثون

مجال الأسماء هو رابط بين الأسماء والكائنات، وتستخدم معظم مجالات الأسماء في الوقت الحاضر كقواميس. ومن الأمثلة على مجالات الأسماء: مجموعة الأسماء الداخلية (وتتضمن الدوال مثل abs()‎، وأسماء الاستثناءات الداخلية)، والأسماء العامة (global) في وحدة معينة، والأسماء المحلية (local) في بنية دالّة ما. إضافة إلى ما سبق، يمكننا أن نعدّ مجموعة خاصيات (attributes) كائن معيّن مجالًا للأسماء أيضًا. والمقصود بالخاصيات هنا كل ما يأتي بعد النقطة، فعلى سبيل المثال في التعبير z.real تعدّ real خاصية للكائن z. كذلك تعدّ الإشارات ...

المخاليط (Mixins) في Sass

تتيحُ المخاليط تعريف الأنماط التي يمكن إعادة استخدامها في ملف الأنماط دون اللجوء إلى الأصناف غير الدلاليَّة مثلِ ‎.float-left. يمكن أن تحوي المخاليط أيضًا جميع قواعد CSS وأيَّ شيء آخر يُسمح باستعماله في ملفات Sass. يمكن أيضًا أن يُمرَّر لها وسائط (arguments) وبذلك يمكن إنتاج مجموعة واسعة من الأنماط بعدد قليل من المخاليط. تعريف المخلوط (Defining a Mixin):‏ ‎@mixin تعرَّف المخاليط (Mixins) بوساطة التعليمة ‎@mixin متبوعةً باسم المخلوط، ويمكن اختياريًا إضافة وسائط له، ثمّ كتلة من الأنماط تتضمّن محتويات المخلوط. ...

الخطافات غير المتزامنة في Node.js

الاستقرار: 1-تجريبي توفِّر الوحدة async_hooks واجهة برمجية (API) لتسجيل دوال ردود النداء التي تتعقَّب دورة حياة (lifetime) الموارد غير المتزامنة (asynchronous resources) المُنشأَة داخل تطبيقات Node.js. يمكن الوصول إلى هذه الوحدة باستعمال الأمر التالي: const async_hooks = require('async_hooks'); اصطلاحات يمثِّل المورد غير المتزامن كائنًا مرفقًا به رد نداء. قد يُستدعَى رد النداء هذا عدَّة مرات، مثل الحدث 'conection' في net.createServer()‎، أو مرةً واحدة فقط، مثل fs.open()‎. يمكن أن يُغلق المورد أيضًا قبل أن يُستدعَى رد النداء. لا تفرِّق الوحدة AsyncHook ...

الاستثناءات المضمنة داخليًا في بايثون

يجب أن تكون جميع الاستثناءات في لغة بايثون مُنشأة من صنف مُشتق من الصنف BaseException. عند ذكر صنف مُحدد في جملة except خلال تعبير try، فإن جملة except تُعالج أي استثناء مُشتق من ذلك الصنف المُحدَّد (وليس الاستثناءات المُشتقة من الصنف الذي اُشتقت منه). إذا كان لدينا صنفا استثناءات غير مرتبطين بعلاقة وراثة فهما غير متماثلان حتى لو كانا بنفس الاسم. من الممكن توليد الاستثناءات الداخلية المذكورة بالأسفل بواسطة مُفسر بايثون أو الدوال الداخلية.  تملك الاستثناءات "قيمة مرتبطة" تُشير بالتفصيل ...

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

المصفوفات هي مجموعات مُرتَّبة ومُفهرسة بالأعداد الصحيحة (integer-indexed) ومُكونة من أي نوع من الكائنات. تبدأ فهارس المصفوفات بالعدد 0، كما هو الحال في لغتي C و Java. ويفترض أن يُحسب الفهرس السالب بدءًا من نهاية المصفوفة، أي أنَّ الفهرس ذا القيمة ‎-1 يشير إلى العنصر الأخير في المصفوفة، والفهرس ‎-2 يمثل موضع العنصر ما قبل الأخير، وهلم جرًا. إنشاء المصفوفات يمكن إنشاء مصفوفة جديدة باستخدام المعامل [] الباني. يمكن أن تحتوي المصفوفة نفسها على أنواع مختلفة من الكائنات. على سبيل ...

خط أنابيب الأصول في ريلز

يغطّي هذا الدليل أنبوب الأصول. ستتعلم بعد قراءة هذا الدليل: ماهيّة أنبوب الأصول وماذا يفعل. كيفيّة تنظيم أصول تطبيقك بشكل صحيح. فوائد أنبوب الأصول. كيفيّة إضافة معالج مسبق (pre-processor) إلى الأنبوب. كيفيّة وضع الأصول مع جوهرة في حزمة. ما هو أنبوب الأصول؟ يوفّر أنبوب الأصول إطارًا لسَلسَلة وتصغير أو ضغط أصول JavaScript و CSS. كما أنه يضيف القدرة على كتابة هذه الأصول بلغات أخرى ومعالجات مسبقة مثل CoffeeScript و Sass و ERB. يسمح للأصول في تطبيقك أن تُدمج تلقائيًّا مع ...

الكائن Process

يكون الكائن process عامًا (global) والذي يزود معلومات عن عملية Node.js الحالية ورقابةً عليها، كونه كائنًا عامًا فهو متوافر دومًا لتطبيقات Node.js دون استخدام ()require. أحداث Process الكائن process هو نسخة من EventEmitter. الحدث 'beforeExit' أُضيف في الإصدار: 0.11.12. يُطلَق الحدث 'beforeExit' عندما تفرغ Node.js من حلقة الأحداث (event loop) ولا يوجد عمل إضافي لجدولته. بشكل طبيعي، عملية Node.js سوف تنتهي عندما لا يكون هناك عمل مجدولٌ، لكن المُنصِت المسجِّل لحدث 'beforeExit' يمكن أن يعمل استدعاءات غير متزامنة، وبذلك يسبب ...