نتائج البحث

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

التابع casefold()‎ في بايثون

يعيد هذا التابع السلسلة النصية بحالة casefolded، ويمكن استخدام هذا النوع من السلاسل لإجراء المقارنة دون الاعتماد على حالة الأحرف. البنية العامة x.casefold() القيمة المعادة تعيد هذه الدالة السلسلة النصية بحالة casefolded (جميع الحروف تكون حروفًا صغيرة). توضيح تشبه عملية Casefolding عملية التحويل إلى الحروف الصغيرة lowercasing ولكن بشدّة أكبر؛ وذلك لأنّها تزيل جميع الفوارق ضمن السلسلة النصية. فعلى سبيل المثال الحرف الألماني الصغير 'ß' مكافئ للحرفين "ss"، ولما كان هذا الحرف صغيرًا في الأصل، فإنّ استخدام الدالة lower()‎ لن ...

التابع str.format_map()‎ في بايثون

يجري هذا التابع عمليات التنسيق على السلسلة النصية بواسطة قاموس. البنية العامة x.format_map() المعاملات mapping قاموس تستخدمه الدالة لتنسيق السلسلة النصية. القيمة المعادة يعيد هذا التابع السلسلة النصية بعد إجراء عمليات التنسيق عليها بواسطة القاموس الممرّر في الوسائط. يشبه هذا التابع في عمله التابعَ str.format(**mapping)‎، باستثناء أنّ التابع str.format_map()‎ يستخدم المعامل mapping مباشرة ولا ينسخه إلى قاموس جديد. ملاحظة: هذا التابع جديدٌ في الإصدار 3.2 من اللغة. أمثلة يستخدم المثال التالي قاموسًا لتنسيق السلسلة النصية: >>> name = {'first': 'Samir', ...

التابع str.partition()‎ في بايثون

يقسم هذا التابع السلسلة النصية عند أول ظهور للقيمة التي يحدّدها المستخدم. البنية العامة x.partition() المعاملات sep يحدّد هذا المعامل الفاصل الذي سيعتمده التابع في تقسيم السلسلة النصية. القيمة المعادة يعيد هذا التابع صفًّا مكوّنًا من ثلاثة عناصر، الأول هو جزء السلسلة الذي يسبق الفاصل، والثاني هو الفاصل نفسه، والثالث هو الجزء الذي يلي الفاصل. في حال عدم العثور على الفاصل تعيد الدالة صفًّا مكوّنًا من ثلاثة عناصر، الأوّل هو السلسلة النصية نفسها، يليها سلسلتان فارغتان. أمثلة يبين المثال التالي ...

التابع str.strip()‎ في بايثون

يحذف هذا التابع الحروف المحدّدة من قبل المستخدم من نهاية وبداية السلسلة النصية. المعاملات chars سلسلة نصية تحدّد مجموعة الحروف التي سيحذفها التابع من السلسلة النصية. في حال عدم تمرير هذا المعامل أو أخذه للقيمة None يحذف التابع المسافات البيضاء فقط. يحذف هذا التابع أي مزيج من الحروف الموجودة في المعامل chars. ويحذف الحروف من بداية ونهاية السلسلة النصية الأبعد فالأبعد، وتستمر عملية الحذف من الجهتين إلى حين الوصول إلى أوّل حرف غير موجود في السلسلة النصية الممرّرة في المعامل ...

التابع str.translate()‎ في بايثون

يعيد التابع‎ الحروف في السلسلة النصية بالاعتماد على جدول التحويل (translation table). البنية العامة x.translate() المعاملات table يجب أن يكون الجدول كائنًا يؤدي عملية الفهرسة (indexing) باستخدام التابع __getitem()‎__ وعادة ما يكون تسلسلًا أو قاموسًا. (راجع التابع str.maketrans()‎ للمزيد من المعلومات حول كيفية إنشاء هذا الجدول). القيمة المعادة يعيد التابع نسخة من السلسلة النصية بعد استبدال الحروف بالاعتماد على جدول الترجمة. عند فهرسة كائن الجدول حسب رتب الترميز الموحد (أعداد صحيحة) يمكن للكائن أن يؤدي ما يلي: إعادة رتبة ترميز ...

التابع str.find()‎ في بايثون

يعيد التابع find()‎ أدنى قيمة للفهرس في السلسلة النصية والذي تكون السلسلة الفرعية موجودة فيه ضمن الجزء المقتطع من السلسلة. البنية العامة x.find() المعاملات sub السلسلة الفرعية المراد معرفة موقعها. start الموقع الذي يبدأ منه التابع عملية البحث ضمن السلسلة الأصلية. end الموقع الذي ينهي فيه التابع عملية البحث ضمن السلسلة الأصلية. يسلك هذان المعاملان نفس السلوك المتّبع في عملية اقتطاع السلاسل النصية slicing. القيمة المعادة يعيد التابع أدنى قيمة للفهرس في السلسلة النصية حيث تكون السلسلة الفرعية sub موجودة ...

التابع str.center()‎ في بايثون

يعيد التابع center()‎ أحرف السلسلة النصية مزاحة نحو الوسط ضمن سلسلة نصّية ذات طول محدّد. البنية العامة x.center() المعاملات width يحدّد هذا المعامل طول السلسلة المعادة. fillchar يحدّد هذا المعامل الحرف الذي ستستخدمه الدالة لإجراء عملية الإزاحة، ويأخذ هذا المعامل قيمة افتراضية هي المسافة البيضاء في ترميز ASCII.  القيمة المعادة تعيد الدالة أحرف السلسلة النصية مزاحة نحو الوسط ضمن سلسلة نصّية ذات عرض محدّد، وتزاح الحروف باستخدام حرف يحدّده المستخدم. إذا كانت القيمة المحدّدة للمعامل width أقل من أو تساوي القيمة ...

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

يعيد التابع أعلى قيمة للفهرس في السلسلة النصية حيث تجد فيه السلسلة النصية الفرعية. البنية العامة x.rindex() المعاملات sub السلسلة الفرعية المراد معرفة موقعها. start الموقع الذي يبدأ منه التابع عملية البحث ضمن السلسلة الأصلية. end الموقع الذي ينهي فيه التابع عملية البحث ضمن السلسلة الأصلية. يسلك هذان المعاملان نفس السلوك المتّبع في عملية اقتطاع السلاسل النصية slicing. القيمة المعادة يعيد هذا التابع أعلى قيمة للفهرس في السلسلة النصية حيث تجد فيه السلسلة النصية الفرعية، بحيث تكون السلسلة النصية الفرعية ...

التابع str.isnumeric()‎ في بايثون

يتحقّق التابع ممّا إذا كانت جميع الحروف في السلسلة النصية حروفًا عددية، وأنّ هناك حرفًا واحدًا على الأقل في تلك السلسلة. البنية العامة x.isnumeric() القيمة المعادة يعيد هذا التابع القيمة True إذا كانت جميع الحروف في السلسلة النصية حروفًا عددية، وكان هناك على الأقل حرف واحد في السلسلة، ويعيد القيمة False فيما عدا ذلك. يقصد بالحروف العددية الأعداد وجميع الحروف التي تمتلك خاصية قيمة عددية في الترميز الموحّد، مثل U+2155 والذي يرمز إلى الكسر VULGAR FRACTION ONE FIFTH.  وبصورة عامة، ...

التابع str.rpartition()‎ في بايثون

يقسم هذا التابع السلسلة النصية عند آخر ظهور للقيمة التي يحدّدها المستخدم. البنية العامة x.rpartition() المعاملات sep يحدّد هذا المعامل الفاصل الذي سيعتمده التابع في تقسيم السلسلة النصية. القيمة المعادة يعيد هذا التابع صفًّا مكوّنًا من ثلاثة عناصر، الأول هو جزء السلسلة الذي يسبق الفاصل، والثاني هو الفاصل نفسه، والثالث هو الجزء الذي يلي الفاصل. في حال عدم العثور على الفاصل تعيد الدالة صفًّا مكوّنًا من ثلاثة عناصر، الأوّل هو السلسلة النصية نفسها، يليها سلسلتان فارغتان. أمثلة يبين المثال التالي ...

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

يعيد التابع join()‎ السلسلة النصية الناتجة عن ربط السلاسل النصية التابعة لكائن قابل للتكرار (iterable). البنية العامة x.join() المعاملات iterable كائن قابل للتكرار مثل الصفوف، والقواميس، والقوائم، والسلاسل النصية، والمجموعات. القيمة المعادة يعيد التابع join()‎ السلسلة النصية الناتجة عن ربط السلاسل النصية التابعة لكائن قابل للتكرار (iterable). إذا لم يكن أحد عناصر الكائن القابل للتكرار سلسلة نصية تطلق الدالة الخطأ TypeError. أمثلة يبين المثال التالي القيم المعادة من تطبيق التابع على سلاسل مختلفة: >>> s = ["100", "200", "300", "400", ...

التابع str.isdigit()‎ في بايثون

يتحقق التابع isdigit()‎ ممّا إذا كانت السلسلة النصية مكوّنة من حروف الأعداد (digits) فقط، وأنّ فيها حرفًا واحدًا على الأقل. البنية العامة x.isdigit() القيمة المعادة يعيد التابع القيمة True إذا كانت السلسلة النصية مكوّنة من حروف الأعداد (digits) فقط وكان فيها حرف واحد على الأقل، ويعيد القيمة False فيما عدا ذلك. يقصد بالأعداد هنا الأعداد العشرية والأعداد التي تحتاج إلى طريقة خاصة للتعامل معها، مثل الأعداد الفوقية (superscript digits). وتشمل إضافة إلى ما سبق الأعداد التي لا يمكن استخدامها لتكوين ...

التابع str.isidentifier()‎ في بايثون

يتحقّق التابع ممّا إذا كانت السلسلة النصية تتضمّن معرّفًا صحيحًا (identifier) في لغة بايثون. البنية العامة x.isidentifier() القيمة المعادة يعيد التابع القيمة True إن كانت السلسلة النصية معرّفًا صحيحًا في بايثون، ويعيد القيمة False فيما عدا ذلك. ضمن الترميز ASCII تسمح الإصدارات ‎2.x‎ من بايثون باستخدام الحروف A إلى Z و a إلى z و 0 إلى 9 والشرطة السفلية _ شرط أن لا تكون الشرطة الحرف الأول في المعرّف. قدّم الإصدار 3.0 من بايثون إمكانية استخدام الترميز Unicode لتسمية ...

التابع str.ljust()‎ في بايثون

يعيد التابع أحرف السلسلة النصية مزاحة نحو اليسار ضمن سلسلة نصّية ذات طول محدّد. البنية العامة x.ljust() المعاملات width يحدّد هذا المعامل طول السلسلة المعادة. fillchar يحدّد هذا المعامل الحرف الذي ستستخدمه الدالة لإجراء عملية الإزاحة، ويأخذ هذا المعامل قيمة افتراضية هي المسافة البيضاء في ترميز ASCII. القيمة المعادة يعيد التابع أحرف السلسلة النصية مزاحة نحو اليسار ضمن سلسلة نصية ذات عرض محدّد، وتزاح الحروف باستخدام حرف يحدّده المستخدم. إذا كانت القيمة المحدّدة للمعامل width أقل من أو تساوي القيمة ...

التابع str.isprintable()‎ في بايثون

يتحقّق التابع ممّا إذا كانت جميع الحروف في السلسلة النصية قابلة للطباعة أو أن السلسلة النصية فارغة. البنية العامة str.isprintable() القيمة المعادة يعيد التابع القيمة True إذا كانت جميع الحروف ضمن السلسلة النصية قابلة للطباعة أو كانت السلسلة النصية فارغة، ويعيد القيمة False فيما عدا ذلك. الحروف غير القابلة للطباعة هي تلك التي تعرّف في قاعدة بيانات حروف الترميز الموحد بالمسمّى "Other" أو "Separator" باستثناء المسافة البيضاء (0x20) في ترميز ASCII والتي تعدّ حرفًا قابلًا للطباعة. لاحظ أنّ الحروف القابلة ...

التابع str.maketrans()‎ في بايثون

يعيد هذا التابع الساكن جدول تحويل يمكن استخدامه بواسطة التابع str.translate()‎. البنية العامة x.maketrans() المعاملات في حال تمرير معامل واحد فإنّه يجب أن يكون قاموسًا يربط أرقام الحروف في الترميز الموحد (Unicode ordinals) وهي أعداد صحيحة أو الحروف (سلاسل نصية ذات حرف واحد) بأرقام الحروف في الترميز الموحد أو سلاسل نصية (ذات عدد غير محدد من الحروف) أو None. بعد ذلك يجري تحويل مفاتيح الحروف إلى أرقام الحروف في الترميز الموحد Unicode. في حال استخدام معاملين فيجب حينئذ أن يكونا ...

التابع str.encode()‎ في بايثون

يعيد التابع encode()‎ نسخة مرمّزة من السلسلة النصية على هيئة بايتات. البنية العامة x.encode() المعاملات encoding يحدّد هذا المعامل الترميز الذي سيستخدمه التابع في عمله، ويأخذ القيمة الافتراضية 'utf-8'. وللاطلاع على قائمة بالترميزات المتاحة راجع قسم الترميزات القياسية. errors يحدّد المعامل error الطريقة المطلوبة للتعامل مع الأخطاء. يأخذ هذا المعامل القيمة الافتراضية 'strict' والتي تعني أنّه في حال حدوث أخطاء أثناء عملية الترميز فستطلق الدالة الخطأ UnicodeError. يمكن أن يأخذ هذا المعامل قيمًا أخرى هي ‎'ignore'، 'replace'، 'xmlcharrefreplace'، 'backslashreplace'‎ وأي ...

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

يؤدي هذا التابع نفس وظيفة التابع find()‎ ولكنّه يطلق الخطأ ValueError إن لم يعثر على السلسلة الفرعية. البنية العامة x.find() المعاملات sub السلسلة الفرعية المراد معرفة موقعها. start الموقع الذي تبدأ منه الدالة عملية البحث ضمن السلسلة الأصلية. end الموقع الذي تنهي فيه الدالة عملية البحث ضمن السلسلة الأصلية. يسلك هذان المعاملان نفس السلوك المتّبع في عملية اقتطاع السلاسل النصية slicing. القيمة المعادة يعيد التابع أدنى قيمة للفهرس في السلسلة النصية حيث تكون السلسلة الفرعية sub موجودة في الجزء المقتطع ...

التابع str.title()‎ في بايثون

يحوّل هذا التابع أوائل الكلمات في السلسلة النصية إلى أحرف كبيرة (Title Case). البنية العامة s.title() القيمة المعادة يعيد التابع نسخة من السلسلة النصية تكون فيها أوائل الكلمات ذات أحرف كبيرة. أمثلة يوضح المثال التالي النتيجة المعادة من تطبيق هذا التابع على سلسلة نصية: >>> 'Hello world'.title() 'Hello World' توضيح تستخدم الدالة خوارزمية بسيطة لا تعتمد على أي لغة (language-independent)، حيث تعرّف الكلمة على أنّها مجموعة من الحروف المتتابعة. هذا التعريف صالح في معظم السياقات، ولكن في هذا التعريف تشكّل الفاصلة ...

التابع str.isalpha()‎ في بايثون

يتحقّق هذا التابع ممّا إذا كانت السلسلة النصية مكوّنة من الحروف فقط، وأنّ فيها حرفًا واحدًا على الأقل. البنية العامة x.isalpha() القيمة المعادة يعيد التابع isalpha()‎ القيمة True إذا كانت السلسلة النصية مكوّنة من الحروف فقط وكان فيها حرف واحد على الأقل، ويعيد القيمة False فيما عدا ذلك. الحروف الهجائية هي تلك الحروف المعرّفة في قاعدة بيانات حروف الترميز الموحد Unicode بالمسمّى "Letters"، أي أنّها الحروف التي تمتلك إحدى خواص التصنيف العامة "Lm"، أو "Lt"، أو "Lu"، أو "Ll"، أو ...

التابع str.rjust()‎ في بايثون

يعيد التابع أحرف السلسلة النصية مزاحة نحو اليمين ضمن سلسلة نصّية ذات طول محدّد. البنية العامة x.rjust() المعاملات width يحدّد هذا المعامل طول السلسلة المعادة. fillchar يحدّد هذا المعامل الحرف الذي ستستخدمه الدالة لإجراء عملية الإزاحة، ويأخذ هذا المعامل قيمة افتراضية هي المسافة البيضاء في ترميز ASCII. القيمة المعادة يعيد التابع أحرف السلسلة النصية مزاحة نحو اليمين ضمن سلسلة نصية ذات عرض محدّد، وتزاح الحروف باستخدام حرف يحدّده المستخدم. إذا كانت القيمة المحدّدة للمعامل width أقل من أو تساوي القيمة ...

التابع str.rfind()‎ في بايثون

يعيد التابع أعلى قيمة للفهرس في السلسلة النصية حيث تجد فيه السلسلة النصية الفرعية. البنية العامة x.rfind() المعاملات sub السلسلة الفرعية المراد معرفة موقعها. start الموقع الذي يبدأ منه التابع عملية البحث ضمن السلسلة الأصلية. end الموقع الذي ينهي فيه التابع عملية البحث ضمن السلسلة الأصلية. يسلك هذان المعاملان نفس السلوك المتّبع في عملية اقتطاع السلاسل النصية slicing. القيمة المعادة يعيد التابع أعلى قيمة للفهرس في السلسلة النصية حيث تجد فيه السلسلة النصية الفرعية، بحيث تكون السلسلة النصية الفرعية ضمن ...

debugger في JavaScript

التعبير البرمجي debugger يؤدي إلى تفعيل وظيفة التنقيح (debugging functionality) المتاحة، مثل بداية نقطة المقاطعة (breakpoint)؛ لكن إن لم يكن هنالك منقِّح أو وظيفة تنقيح متاحة فلن يكون لهذا التعبير أي أثر. البنية العامة debugger; أمثلة الشيفرة الآتية فيها التعبير البرمجي debugger الذي يؤدي إلى استدعاء المنقِّح (إن كان موجودًا) عند تنفيذ الدالة function potentiallyBuggyCode() { debugger; // شيفرة غير مستقرة فيها علل يجب تنقيحها } دعم المتصفحات الميزة Chrome Firefox Internet Explorer Opera Safari ...

class في JavaScript

التصريح عن الصنف (class declaration) يؤدي إلى إنشاء صنف جديد له اسمٌ معيّن يستخدم الوراثة عبر سلسلة prototype. يمكنك أيضًا تعريف الأصناف عبر تعابير تعريف الأصناف (class expression)، لكن التصريح عن الصنف بهذه الطريقة يختلف عن استخدام تعابير تعريف الأصناف في أنَّه لا يسمح بإعادة التصريح عن الصنف مرةً أخرى، وسيرمي (throw) خطأً إن حاولنا ذلك. البنية العامة class name [extends] { // محتويات الصنف } الوصف كما في تعابير تعريف الأصناف، ستُنفَّذ التعابر البرمجية الموجودة ضمن الصنف في نمط ...

throw في JavaScript

التعبير البرمجي throw يؤدي إلى رمي استثناء (exception) يُعرِّفه المستخدم، وسيؤدي ذلك إلى توقف تنفيذ الدالة الحالية (أي أنَّ التعابير البرمجية بعد throw لن تُنفَّذ) وسينتقل التنفيذ إلى أوّل catch، وإذا لم تكن موجودةً فسينتهي تنفيذ البرنامج. البنية العامة throw expression; expression التعبير الذي سيُرمى. الوصف يُستخدَم التعبير throw لرمي استثناء، وعندما ترمي استثناءً فإنَّ قيمة expression تُحدِّد ما هي قيمة الاستثناء. أمثلة: throw 'Error2'; // توليد استثناء له قيمة نصية throw 42; // توليد استثناء ...

const في JavaScript

الثوابت (constants) تكون تابعةً للمجال الكتلي (block scope) بما يُشبه المتغيرات المُعرَّفة عبر التعبير let، لكن قيمة الثوابت لا يمكن أن تتغير عبر إعادة إسناد القيمة، ولا يمكن إعادة تصريحها. البنية العامة const name1 = value1 [, name2 = value2 [, ... [, nameN = valueN]]]; nameN اسم الثابت، ويمكن أن يكون أيّ معرِّف صالح في JavaScript. valueN قيمة الثابت، ويمكن استخدام أيّ تعبير (expression) صالح في JavaScript بما في ذلك الدوال. الوصف تكون الثوابت إما عامةً أو محليةً وتابعةً ...

try...catch في JavaScript

التعبير البرمجي try...catch يُستخدَم لتجربة قسم من التعابير البرمجية، ويُحدِّد طريقةً لمعالجة الاستثناءات إن رُمِيَت. البنية العامة try { try_statements } [catch (exception_var_1) { catch_statements_1 }] ... [catch (exception_var_2) { catch_statements_2 }] [finally { finally_statements }] try_statements التعابير البرمجية التي ستُنفَّذ والتي قد ترمي استثناءً. catch_statements_1 و catch_statements_2 التعابير البرمجية التي ستُنفَّذ إذا رُمي استثناءٌ في قسم try. exception_var_1 و exception_var_2 مُعرِّف يُستخدَم لتخزين قيمة كائن الاستثناء (exception object) المرتبط مع قسم catch. finally_statements التعابير البرمجية التي ستُنفَّذ بعد إكمال ...

for...in في JavaScript

التعبير البرمجي for...in يُنشِئ حلقة تكرار تمر على الخاصيات القابلة للإحصاء (enumerable properties) التابعة لأحد الكائنات، ويمكن تنفيذ تعابير برمجية لكل خاصية من خاصيات الكائن. البنية العامة for (variable in object) { //... } variable ستُنسَد قيمة الخاصية مختلفة لهذا المتغير في كل دورة. object الكائن الذي سنمر على الخاصيات القابلة للإحصاء (enumerable properties) التابعة له. الوصف حلقة التكرار for...in تمر على الخاصيات القابلة للإحصاء (enumerable properties) فقط، فالكائنات المُنشَأة من الدوال البانية المُضمَّنة في اللغة مثل Array و Object ...

break في JavaScript

التعبير البرمجي break يؤدي إلى إنهاء حلقة التكرار الحالية أو التعبير switch أو label، وستنقل تنفيذ البرنامج إلى التعبير البرمجي الذي يلي التعبير الذي انتهى. البنية العامة break [label]; label مُعرِّفٌ اختياريٌ مرتبطٌ بلافتة التعبير البرمجي، وإذا كان التعبير ليس حلقةً تكراريةً أو switch فسيصبح هذا المُعرِّف مطلوبًا وليس اختياريًا. الوصف يتضمن التعبير break إمكانية توفير لافتة اختيارية تسمح للبرنامج بالخروج من التعبير المُسمى؛ ويجب أن يكون التعبير break موجودًا ضمن ذاك التعبير المسمى. أمثلة استخدام break مع حلقة while ...

import

التعبير البرمجي import يُستخدَم لاستيراد ما صُدِّر من وحدة (module) أخرى. لاحظ أنَّ دعم هذه الميزة ما يزال محدودًا، لذا انظر إلى قسم «دعم المتصفحات» قبل استخدامها. البنية العامة import defaultExport from "module-name"; import * as name from "module-name"; import { export } from "module-name"; import { export as alias } from "module-name"; import { export1 , export2 } from "module-name"; import { export1 , export2 as alias2 , [...] } from "module-name"; import defaultExport, { export [ , [...] ] } from "module-name"; import defaultExport, * ...

var في JavaScript

تعبير variable يُصرِّح عن متغير، ويمكن تهيئة قيمته الابتدائية اختياريًا. البنية العامة var varname1 [= value1] [, varname2 [= value2] ... [, varnameN [= valueN]]]; varnameN اسم المتغير، ويمكن أن يكون أيّ معرِّف صالح في JavaScript. valueN القيمة الابتدائية للمتغير، ويمكن استخدام أيّ تعبير (expression) صالح في JavaScript، والقيمة الافتراضية هي undefined. الوصف التصريح عن المتغيرات سيُعالَج قبل تنفيذ أيّة شيفرات أينما وقعت، ومجال (scope) المتغيرات المُصرَّح عنا عبر var هو سياق التنفيذ الحالي (execution context)، كمجال الدوال، أو المجال ...

continue في JavaScript

التعبير البرمجي continue يؤدي إلى تجاوز تنفيذ التعابير البرمجية في التكرار الحالي (iteration) في حلقة التكرار الحالية أو حلقة التكرار المسماة (عبر لافتة)، وسيستمر تنفيذ الحلقة بدءًا من التكرار التالي. البنية العامة continue [label]; label مُعرِّفٌ اختياريٌ مرتبطٌ بلافتة التعبير البرمجي. الوصف على النقيض من التعبير break، لن يؤدي التعبير continue إلى إنهاء تنفيذ الحلقة كليًّا، وإنما: في حلقات while سيؤدي إلى الانتقال إلى الشرط. في حلقات for سيؤدي إلى الانتقال إلى تعبير تحديث معاملات حلقة التكرار. يمكن أن يضمّ ...

export

التعبير البرمجي export يمكن أن يُستخدَم عند إنشاء وحدات JavaScript (أي JavaScript modules) لتصدير الدوال أو الكائنات أو القيم الأوليّة (primitive values) من وحدة (module) لكي يمكن استخدامها من برنامج آخر باستخدام التعبير البرمجي import. لاحظ أنَّ دعم هذه الميزة ما يزال محدودًا، لذا انظر إلى قسم «دعم المتصفحات» قبل استخدامها. البنية العامة export { name1, name2, …, nameN }; export { variable1 as name1, variable2 as name2, …, nameN }; export let name1, name2, …, nameN; // also var, function export let ...

السلاسل النصية في بايثون

يمكن التعامل مع البيانات النصية في بايثون باستخدام كائنات str أو السلاسل النصية (strings)، وهي تسلسلات (sequences) غير قابلة للتغيير (immutable) من رموز يونيكود (Unicode). هناك طرائق مختلفة للتعبير عن السلاسل النصية، إذ يمكن أن تحاط بعلامات اقتباس مفردة ('...') أو مزدوجة ("...")، ويستخدم الرمز \ لتهريب علامات الاقتباس: >>> 'spam eggs'  # علامات اقتباس مفردة 'spam eggs' >>> 'doesn\'t'  # استخدم \' لتهريب علامات الاقتباس المفردة...‏ "doesn't" >>> "doesn't"  # ...أو استخدم علامات الاقتباس المزدوجة "doesn't" >>> '"Yes," he said.' '"Yes," he said.' >>> "\"Yes,\" he said." '"Yes," ...

السلاسل النصية في بايثون

يمكن التعامل مع البيانات النصية في بايثون باستخدام كائنات str أو السلاسل النصية (strings)، وهي تسلسلات (sequences) غير قابلة للتغيير (immutable) من رموز يونيكود (Unicode). هناك طرائق مختلفة للتعبير عن السلاسل النصية، إذ يمكن أن تحاط بعلامات اقتباس مفردة ('...') أو مزدوجة ("...")، ويستخدم الرمز \ لتهريب علامات الاقتباس: >>> 'spam eggs'  # علامات اقتباس مفردة 'spam eggs' >>> 'doesn\'t'  # استخدم \' لتهريب علامات الاقتباس المفردة...‏ "doesn't" >>> "doesn't"  # ...أو استخدم علامات الاقتباس المزدوجة "doesn't" >>> '"Yes," he said.' '"Yes," he said.' >>> "\"Yes,\" he said." '"Yes," ...

String.prototype.localeCompare()‎

الدالة String.prototype.localeCompare()‎ تُعيد رقمًا يُشير إذا ما كانت السلسلة النصية المُشار إليها تأتي قبل أو بعد أو بنفس ترتيب السلسلة النصية المُعطاة في ترتيبٍ معيّن. الوسيطان الجديدان locales و options يسمحان للتطبيقات بتحديد اللغة التي سيُستخدَم الترتيب الخاص بها وتخصيص سلوك هذه الدالة؛ أما الإصدارات القيمة من هذه الدالة فستتجاهل الوسيطين locales و options وسيكون المحليّة (locale) والترتيب (sort) معتمدين تمامًا على المتصفح ونظام التشغيل. البنية العامة referenceStr.localeCompare(compareString[, locales[, options]]) انظر إلى قسم دعم المتصفحات لتعرف ما هي المتصفحات التي تدعم ...

التابع str.split()‎ في بايثون

يقسّم هذا التابع السلسلة النصية إلى قائمة من السلاسل النصية بالاعتماد على فاصل محدّد. البنية العامة x.split() المعاملات maxsplit يحدد هذا المعامل الحد الأقصى لعمليات التي التقسيم التي سيجريها التابع، وبهذا تمتلك القائمة المعادة maxsplit+1 من العناصر على الأكثر. في حال عدم تحديد قيمة المعامل maxsplit أو كانت قيمته -1، فلن يكون هناك حدّ لعمليات التقسيم (سيجري التابع جميع عمليات التقسيم الممكنة). sep يحدّد هذا المعامل الفاصل الذي سيعتمده التابع في تقسيم السلسلة النصية. في حال تحديد قيمة هذا المعامل ...

المعاملات Operators في SQL

المعاملات الرياضية Arithmetic Operators تستخدم لإجراء العمليات الحسابية على البيانات العددية في الجداول، وهي: المعامل المهمة + الجمع - الطرح * الضرب / القسمة % باقي القسمة ويضاف إليها المعامل ^ في محرك PostgreSQL للقيام بعملية الرفع إلى قوة. مثال إن كان الجدول الآتي items موجودًا في قاعدة البيانات: DiscountPercent No Price ItemID 20 2 25 157 10 2 5 203 30 3 10 109 فيمكن حساب قيمة الشراء النهائية من خلال إجراء العملية الحسابية وجمع النتائج باستخدام الدالة التجميعية ...

التابع str.expandtabs()‎ في بايثون

يعيد التابع expandtabs()‎ نسخة من السلسلة النصية بعد تحويل جميع علامات الجدولة إلى مسافة بيضاء واحدة أو أكثر. البنية العامة x.expandtabs() المعاملات tabsize يحدّد مواقع علامات الجدولة في السلسلة النصية (القيمة الافتراضية هي 8، فتكون مواقع علامات الجدولة في الأعمدة 0، 8، 16 وهكذا). القيمة المعادة يعيد التابع expandtabs()‎ نسخة من السلسلة النصية بعد تحويل جميع علامات الجدولة إلى مسافة بيضاء واحدة أو أكثر وذلك بالاعتماد على العمود الحالي وحجم علامة الجدولة المحدد بواسطة المعامل tabsize. توضيح يعمل التابع بجعل ...

التابع select‎ الخاص بالصنف Kernel في روبي

يستدعي التابع select دالة النظام select(2)‎، إذ يعمل على مراقبة المصفوفات الكائنات IO المعطاة، وينتظر حتى يصبح أحد تلك الكائنات أو أكثر جاهزًا للقراءة، وجاهزًا للكتابة، ومالكًا لاستثناءات معلقة (pending exceptions) على التوالي، ثم يعيد مصفوفة تحتوي على مصفوفات مكونة من الكائنات IO السابقة. سيعيد التابع القيمة nil إذا تم إعطاء قيمة للمهلة الزمنية timeout، ولم يكن هناك أي كائن جاهز خلال هذه الفترة. يراقب التابع IO.select المخزن المؤقت (buffer) للكائنات IO لاختبار قابليتها للقراءة. إذا لم يكن المخزن المؤقت ...

التابع IO.select‎ في روبي

يستدعي التابع select استدعاء النظام select(2)‎. ويراقب المصفوفة المعطاة المكونة من مجاري د/خ (كائنات IO)، وينتظر حتى يكون واحد أو أكثر من تلك المجاري جاهزًا للقراءة، وجاهزًا للكتابة، ويكون له استثناءات معلقة (pending exceptions) على التوالي، ثم يعيد مصفوفة مؤلفة من مصفوفات مكونة من تلك المجاري. ستعاد القيمة nil إذا تم إعطاء قيمة للمعامل timeout الاختياري (انظر فقرة البنية العامة)، ولم يكن أيٌّ من مجاري د/خ جاهزًا خلال تلك المهلة الزمنية. يراقب التابع select المخزن المؤقت (buffer) لمجرى د/خ لاختبار قابليته ...

Arduino/Topics

بنية لغة أردوينو تخضع الشيفرة في لغة أردوينو إلى بعض التعديلات البسيطة ثم تمرَّر إلى مفسِّر ++C/C. يمكن استعمال جميع البنى والتعابير القياسية في لغة C أو ++C التي يدعمها المفسِّر في أردوينو. لن تجد في شيفرة أردوينو الدالة main()‎ المعتادة ولكن ستجد عوضًا عنها دالتين رئيسين هما: الدالة setup()‎ والدالة loop()‎ اللتان تفسران وتوصلان بالدالة الرئيسيةmain() ‎ لإنشاء البرنامج التنفيذي التكراري (cyclic executive program) عبر استعمال سلسلة أدوات GNU. يُستعمَل البرنامج avrdude المضمن ضمن أردوينو IDE لتحويل الشيفرة التنفيذية ...

التابع str.splitlines()‎ في بايثون

يُقسِّم هذا التابع السلسلة النصية إلى قائمة من الأسطر. البنية العامة x.splitlines() المعاملات keepends قيمة منطقية (Boolean). تُدرج فواصل الأسطر في القائمة المعادة عندما يأخذ هذا المعامل القيمة True. القيمة المعادة يعيد التابع قائمة من الأسطر التي تكوّن السلسلة النصية، وتجري عملية التقسيم عند حدود الأسطر، ولا تُدرج فواصل الأسطر في القائمة المعادة إلا إذا أخذ المعامل keepends القيمة True. يقسم التابع السلاسل النصية عند حدود الأسطر التالية: الفاصل الوصف ‎\n محرف السطر الجديد (Line Feed). ‎\r محرف العودة إلى ...

البايتات byte في بايثون

البايتات هي تسلسلات لبايتات مفردة غير قابلة للتغيير (immutable)، وهي مشابهة إلى حدّ كبير للسلاسل النصية. توفّر هذه الكائنات توابع تكون صالحة للاستخدام مع البيانات ذات الترميز ASCII نظرًا لأنّ الكثير من البروتوكولات الثنائية الرئيسية مستندة إلى هذا الترميز. تعريف البايتات صيغة تعريف البايتات مماثلة لصيغة تعريف السلاسل النصية، باستثناء إضافة السابقة b إلى عبارة التعريف وكما يلي: b'still allows embedded "double" quotes' # علامات اقتباس مفردة b"still allows embedded 'single' quotes". ...

مصفوفات البايتات في بايثون

مصفوفات البايتات bytearray هي الكائنات القابلة للتغيير والتي تقابل كائنات البايتات bytes. يُعيد الصّنف bytearray()‎ (والذي يُعامَل مُعاملة الدّالة) مصفوفة بايتات جديدة، ويكون الصّنف تسلسُلًا قابلًا للتّغيير يحتوي على الأعداد الصّحيحة ضمن المدى ‎0 <= x < 256. ويملك مُعظم التّوابع التي تملكها التّسلسلات الأخرى (كالقوائم والصّفوف مثلًا)، والمشروحة في صفحة أنواع التسلسلات القابلة للتّغيير، إضافةً إلى امتلاك مُعظم التّوابع التي يملكها النّوع bytes. البنية العامة bytearray([source[, encoding[, errors]]]) المعاملات source مُعامل اختياريّ يُستعمل لتهيئة المصفوفة عبر عدّة طُرق مختلفة: ...

SQL/Topics

أنواع البيانات أنواع البيانات التي يمكن استخدامها مع محركات قواعد البيانات المختلفة (البيانات العددية، والبيانات النصية، والوقت والتاريخ، والبيانات الثنائية ...إلخ.). أساسيات لغة SQL القيمة NULL يستخدم التعبير IS NULL للتأكد من خلو القيمة (أي لا توجد قيمة في الحقل المحدد). التعليقات Comments تضاف التعليقات إلى الشيفرة بهدف تسهيل قراءتها أو كتابة ملاحظات جانبية مساعدة. SELECT count(*); -- This comment continues to the end of line SELECT count(*); /* This is an inline ...

أنماط الشيفرات المُتعارَف عليها ما بين مبرمجي Kotlin

تعرِض هذه الصفحة أنماط كتابة الشيفرات المُتعارَف عليها (conventions) من قِبل مبرمجي لغة Kotlin. تطبيق دليل التنسيق (Applying the Style Guide) لضبط المُنسِّق IntelliJ formatter بما يتوافق مع هذا الدليل يُنصَح بتثبيت إضافة Kotlin بالإصدار 1.2.20 (أو أي إصدارٍ أحدث) وضبط المّحرِّر بالانتقال إلى الإعدادات (Settings) ثمّ المُحرِّر (Editor) ثم نمط الشيفرة (Code Style) ثم Kotlin واختر "ضبط من..." Set from…"‎" في الزاوية اليمنى العُلويَّة ومن القائمة اختر الخيار Predefined style/Kotlin style guide. وللتأكد من تنسيق الشيفرة وفقًا لدليل Kotlin ...

أنماط الشيفرات المُتعارَف عليها ما بين مبرمجي Kotlin

تعرِض هذه الصفحة أنماط كتابة الشيفرات المُتعارَف عليها (conventions) من قِبل مبرمجي لغة Kotlin. تطبيق دليل التنسيق (Applying the Style Guide) لضبط المُنسِّق IntelliJ formatter بما يتوافق مع هذا الدليل يُنصَح بتثبيت إضافة Kotlin بالإصدار 1.2.20 (أو أي إصدارٍ أحدث) وضبط المّحرِّر بالانتقال إلى الإعدادات (Settings) ثمّ المُحرِّر (Editor) ثم نمط الشيفرة (Code Style) ثم Kotlin واختر "ضبط من..." Set from…"‎" في الزاوية اليمنى العُلويَّة ومن القائمة اختر الخيار Predefined style/Kotlin style guide. وللتأكد من تنسيق الشيفرة وفقًا لدليل Kotlin ...

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

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

الكائن Process

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

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

يوضح الجدول التالي جميع الخيارات التي يمكن استعمالها مع مترجم TypeScript للتحكم بسير عمله والتعديل على سلوكه أثناء ترجمة الشيفرات. الخيار النوع القيمة الافتراضية الوصف ‎--allowJs‎ ‎boolean‎ ‎false‎ السماح بترجمة ملفّات JavaScript. ‎--allowSyntheticDefaultImports‎ ‎boolean‎ ‎module === "system" ‎ أو أنّ الخيار ‎--esModuleInterop‎ مضبوط وقيمة ‎module‎ ليست ‎es2015‎ أو ‎esnext‎ السماح للاستيرادات الافتراضية من الوحدات التي لا تحتوي على تصديرات افتراضيّة. هذا لا يؤثر على الشيفرة المولَّدة، ويؤثر فقط على آلية التحقق من الأنواع. ‎--allowUnreachableCode‎ ‎boolean‎ ‎false‎ لا تُخبِر عن الأخطاء ...

الإسناد في روبي

لكي نسند شيئًا في لغة روبي، نستخدم رمز المساواة =؛ ففي المثال التّالي، يُسنَد العدد 5 إلى المتغيّر v المحلّي: v = 5 فالإسناد يُنشئ متغيّرًا محلّيًا جديدًا إذا لم يكن قد عُرِّفَ من قبل. أسماء المتغيرات المحلية اسم المتغيّر المحلّي يجب أن يبدأ بحرف صغير من مجموعة المحارف US-ASCII أو من مجموعة المحارف التي تُمثَّل باستخدام ثمان بتات ثنائيّة. وبشكلٍ عام، فإنّ أسماء المتغيّرات المحلّية متوافقة مع US-ASCII كون الأزرار التي تستخدم لكتابتها موجودة في جميع لوحات المفاتيح. عمومًا، جميع ...

أنواع البيانات (Data Types) في Kotlin

إن كلَّ عنصرٍ في Kotlin يعد كائنًا إذ يمكن استدعاء الدوال (member functions) والخاصّيّات (properties) عبر أي متغيِّر (variable)، ولبعض الأنواع تمثيلها الداخلي الخاص بها؛ فعلى سبيل المثال تُمثَّل الأعداد والمحارف والقيم المنطقية (boolean) كقيمٍ أساسيّةٍ أثناء التشغيل (runtime) ولكنها بالنسبة للمستخدم مجرّد أصنافٍ عادية، وتناقش هذه الصفحة الأنواع الرئيسيّة للبيانات في Kotlin وهي: الأعداد، والمحارف، والقيم المنطقية (boolean)، والمصفوفات، والسلاسل النصيّة. الأعداد (Numbers) تتعامل لغة Kotlin مع البيانات العدديّة بطريقةٍ مماثلةٍ للغة Java ولكن بفوارق بسيطة، فلا تدعم مثلًا ...

الوحدة Readline في Node.js

الاستقرار 2: مستقر توفّر الوحدة readline واجهةً برمجيةً لقراءة سطر واحد من البيانات من المجرى القابل للقراءة (Readable) (مثل process.stdin) كل مرَّة على حدة. يمكن الوصول إليها باستخدام الأمر التالي: const readline = require('readline'); يوضح المثال البسيط التالي الاستخدام الأساسي للوحدة readline: const readline = require('readline'); const rl = readline.createInterface({ input: process.stdin, output: process.stdout }); rl.question('What do you think of Node.js? ', (answer) => { ‎‎‎ // في قاعدة بيانات (answer) للتنفيذ: سجل الجواب console.log(`Thank you for your valuable feedback: ${answer}`); ...

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

تمثل كائنات الصنف Regexp التعابير النمطية التي تُستخدم لمطابقة نمط (pattern) معيّن في سلسلة نصية. تُنشَأ التعابير النمطية باستخدام الصياغتين /.../ و ‎%r{...}‎، أو باستعمال الباني new. التعابير النمطية هي أنماط تصف محتويات السلسلة النصية. يمكن استخدامها للتحقق من أنّ سلسلة نصية تحتوي على نمط معين، أو لاستخراج الأجزاء المُطابقة منها. عادةً ما يتم تحديد التعبير النمطي بخط مائل (/) كما يوضح المثال التالي: /hay/ =~ 'haystack' #=> 0 /y/.match('haystack') #=> #<MatchData "y"> ‎ إذا احتوت سلسلة نصية على النمط، فسيقال ...

منشئ الاستعلامات في Laravel

مقدمة يوفّر منشئ استعلامات قاعدة بيانات Laravel واجهة ملائمة وسلسة لإنشاء وإدارة استعلامات قاعدة البيانات. يمكن استخدامه لتنفيذ معظم عمليات قاعدة البيانات بتطبيقك كما أنه يعمل على جميع أنظمة قواعد البيانات المدعومة. يستخدم منشئ استعلامات Laravel ارتباط المعاملة PDO لحماية تطبيقك من هجمات حقن SQL. لا حاجة لتنظيف السلاسل النصيّة التي تُمرّر كارتباطات. استرداد النتائج استرداد جميع الصفوف من الجدول تستطيع استخدام التابع table على الواجهة الساكنة DB لبدء استعلام. يرد التابع table نسخة منشئ استعلامات فصيحة (fluent) للجدول المحدد، ...

الوحدة URL في Node.js

توفر الوحدة url مجموعة من الأدوات لمعالجة وتحليل عناوين الويب (URL). يمكن استيراد الوحدة والبدء باستخدامها عبر تنفيذ: ‎‎const url = require('url'); سلاسل العناوين والكائِن URL سلسلة العنوان (URL String) هي سلسلة نصيّة مُنظمة مؤلَّفة من عدِّة مكوِّنات. يُعاد الكائِن URL، عند تحليل سلسلة العنوان، مقرونًا بخاصيّات تُمثِّل مكوِّنات سلسلة العنوان المُختلفة. توفر الوحدة url واجهتين برمجيّتين للتعامل مع عناوين الويب: واجهة قديمة خاصّة ببيئة Node.js، وأخرى جديدة تُطبِّق معيار WHATWG المُستخدَم في مُتصفحات الويب (سنستخدم عبارة "الواجهة الحديثة" للإشارة ...

PHP/Topics

الضبط كيفية ضبط لغة PHP عبر مختلف أنواع ملفات الضبط، وطرائق تعديلها. بنية اللغة تبيان أنواع وسوم لغة PHP، وطريقة دمجها مع HTML، وشرح بعض خصائصها البنيوية (ومن بينها التعليقات). أنواع البيانات لا يعيّن المبرمج نوع المتغير عادةً، بل تُعيِّنُه لغة PHP أثناء التنفيذ بالاعتماد على محتوى المتغير المستخدم. القيم المنطقية (boolean) القيم المنطقية (boolean) من أبسط الأنواع، فالتعبير المنطقي يُعبِّر عن صحّة تعبيرٍ ما، فإما أن تكون قيمة التعبير صحيحةً TRUE أو خطأً FALSE. الأعداد الصحيحة (integer) العدد الصحيح هو عدد من ...

التعامل مع النصوص والتعابير النمطية في Kotlin

تستخدم الدوال التالية في التعامل مع النصوص والتعابير النمطية. الأنواع Appendable CharCategory CharDirectionality Charsets MatchGroup يمثل الصنف MatchGroup النتائج التي نحصل عليها من مجموعة واحدة ضمن MatchResult الخاصة بالصنف Regex. MatchGroupCollection تمثل الواجهة MatchGroupCollection مجموعةً (collection) من الفئات المرصودة (captured groups) عند إجراء مطابقة واحدة لتعبير نمطي ما. MatchNamedGroupCollection توسع هذه الواجهة الصنف MatchGroupCollection عبر تعريف طريقةٍ لجلب المجموعات المتطابقة (matched groups) عن طريق أسمائها عندما يدعم regex ذلك. MatchResult تمثل الواجهة MatchResult نتائج مطابقة واحدة لتعبير نمطي. Regex يمثل الصنف Regex تعبيرًا نمطيا قابلًا للتعديل (immutable regular expression). إن أردت الاطلاع على المزيد من المعلومات المتعلقة بصياغة النمط (pattern)، ...

Ruby/Topics

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

مقدمة إلى رابط الكائنات بالعلاقات Eloquent

مقدمة يزود رابط الكائنات بالعلاقات Eloquent ORM المضمّن في Laravel تنفيذًا بسيطًا من أجل قواعد البيانات التي تتعامل مع الـ ActiveRecord. كل جدول في قاعدة البيانات يقابله نموذج (Model) يُستخدم للتفاعل مع هذا الجدول. تمكّنك النماذج من تنفيذ الاستعلامات على البيانات الموجودة في الجداول، إضافةً إلى إضافة البيانات الجديدة. قبل البدء، تأكد من تهيئة اتصال قاعدة البيانات في الملف config/database.php. للمزيد من المعلومات حول تهيئة قاعدة البيانات، تفقّد التوثيق المناسب. تعريف النماذج للبدء، لننشئ نموذج Eloquent. تتواجد النماذج افتراضيًّا في ...

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

مقدمة في معظم الأحيان، تكون جداول قواعد البيانات مرتبطة ببعضها البعض. على سبيل المثال، قد يكون لمقالة ما الكثير من التعليقات، أو قد تكون الطلبيّة مرتبطة بالمستخدم الذي قام بها. يجعل Eloquent العمل مع هذه العلاقات أمرًا سهلًا، ويدعم عدة أنواع من العلاقات المختلفة: واحد إلى واحد (One To One) واحد إلى كثير (One To Many) كثير إلى كثير (Many To Many) الكثير ضمن (Has Many Through) العلاقات متعددة الأشكال (Polymorphic Relationships) علاقات الكثير إلى كثير متعددة الأشكال (Many To ...

عمليات التحقق من Active Record في ريلز

يعلِّمك هذا الدليل كيفية التحقق من حالة الكائنات قبل إرسالها إلى قاعدة البيانات باستعمال ميزة التحققات من الصحة (validations) التي يوفرها Active Record. بعد قراءة هذا الدليل، ستتعرَّف على: كيفية استعمال مساعدي التحقق من الصحة (validation helpers) لـ Active Record المدمجين. كيفية إنشاء توابع مخصصة للتحقق من الصحة. كيفية العمل مع رسالة الخطأ المولدة عبر عملية التحقق. نظرة عامة على عمليات التحقق الشيفرة التالية تظهر مثالًا عن تحقق بسيط جدًا: class Person < ApplicationRecord validates :name, presence: true end Person.create(name: ...

ضبط تطبيقات ريلز

يغطي هذا الدليل ميزات الضبط والتهيئة المتاحة لتطبيقات ريلز. بعد قراءة هذا الدليل، ستتعلم: كيفية ضبط سلوك تطبيقات ريلز. كيفية إضافة شيفرة مصدريّة إضافية لتنفيذها وقت بدء تشغيل التطبيق. مواقع شيفرة التهيئة والضبط يوفر ريلز أربعة مواضع رئيسيّة لوضع الشيفرة المصدريّة للتهيئة: config/application.rb ملفات الضبط (configuration) الخاصة بالبيئة المهيآت (Initializers) ما بعد المهيآت (After-initializers) تشغيل شيفرة برمجية قبل ريلز في أحيان نادرة، يحتاج تطبيقك لتشغيل بعض الشيفرات البرمجية قبل تحميل ريلز نفسه، ذا ضعها آنذاك قبل استدعاء require 'rails/all'‎ في ...

البدء مع ريلز

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

صياغة التعبيرات النمطية في PHP

فيما يلي وصف لصياغة ودلالات التعبيرات النمطية التي يدعمها PCRE. وتوصف أيضًا التعبيرات النمطية في توثيق Perl وفي عدد من الكتب الأخرى، وبعضها يحتوي على أمثلة كثيرة. ويغطيها كتاب "Mastering Regular Expressions"، لجيفري فريدل Jeffrey Friedl الذي نشرته دار نشر O'Reilly ‏(ISBN 1-56592-257-3)، بتفصيل كبير. الوصف هنا غرضه التوثيق المرجعي. التعبير النمطي هو نمط يطابق سلسلة موضوع البحث من اليسار إلى اليمين. وتصطف معظم الأحرف لأنفسها بنمطٍ ما، وتطابق الأحرف المقابلة في موضوع البحث. كمثال صغير، يتطابق النمط The quick ...

اختبار تطبيقات ريلز

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

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