نتائج البحث

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

استبدال الخوارزمية (Substitute Algorithm)

المشكلة الحاجة إلى استبدال خوارزميّة ما بخوارزميّة أخرى. الحل تعديل محتوى التابع (method body) الذي يُنفِّذ الخوارزمية السابقة ليُنفِّذ الخوارزمية الجديدة. مثال قبل إعادة التصميم تتلخَّص مهمة التابع foundPerson بالبحث عن الأشخاص ذوي الأسماء "Don" أو "John" أو "Kent" وذلك بالمرور بعناصر المصفوفة النصّيّة people باستخدام حلقة for كما في الشيفرة: في لغة Java: String foundPerson(String[] people){ for (int i = 0; i < people.length; i++) { if (people[i].equals("Don")){ return "Don"; ...

Document.createDocumentFragment()‎

يُنشئُ التّابع Document.createDocumentFragment()‎ كائنا فارغًا من النّوع DocumentFragment. البنية العامة var fragment = document.createDocumentFragment(); fragment مرجِع يُشير إلى كائن فارغ من النّوع DocumentFragment. وصف كائنات DocumentFragment هي عقدُ DOM. ولا تكون أبدًا جزءًا من شجرة DOM الأساسيّة. الغرض منها يكون عادةً إنشاء قطعة مُستندٍ (document fragment) ثمّ إضافة عناصرَ إليها، ثمّ إضافة قطعة المُستند إلى شجرة DOM. وتُبدَلُ قطعة المستند في شجرة DOM بجميع أولادها. ولأنّ قطعة المُستند تُخزَّن في الذّاكرة ولا تكون جزءًا من شجرة DOM الرّئيسيّة، فإضافة أولاد ...

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

(PHP 4, PHP 5, PHP 7) تحدِّد الدالة mt_srand()‎ البذرة (seed) المستعملة في خوارزميَّة Mersenne Twister لتوليد أعداد عشوائيَّة. الوصف void mt_srand ([ int $seed [, int $mode = MT_RAND_MT19937 ]] ) تحدِّد هذه الدالة قيمة البذرة المستعملة في خوارزميَّة Mersenne Twister عند توليد أعداد عشوائيَّة. تكون قيمة البذرة هي المعامل seed المُمرَّر  إلى الدالة، وإن لم يُعطَ هذا المعامل فستكون قيمة البذرة هي قيمة عشوائيَّة. ملاحظة: لا حاجة لتحديد قيمة البذرة باستدعاء هذه الدالة أو الدالة srand()‎ في كل مرة ...

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

(PHP 4, PHP 5, PHP 7) تحدِّد الدالة mt_srand()‎ البذرة (seed) المستعملة في خوارزميَّة Mersenne Twister لتوليد أعداد عشوائيَّة. الوصف void mt_srand ([ int $seed [, int $mode = MT_RAND_MT19937 ]] ) تحدِّد هذه الدالة قيمة البذرة المستعملة في خوارزميَّة Mersenne Twister عند توليد أعداد عشوائيَّة. تكون قيمة البذرة هي المعامل seed المُمرَّر  إلى الدالة، وإن لم يُعطَ هذا المعامل فستكون قيمة البذرة هي قيمة عشوائيَّة. ملاحظة: لا حاجة لتحديد قيمة البذرة باستدعاء هذه الدالة أو الدالة srand()‎ في كل مرة ...

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

(PHP 4, PHP 5, PHP 7) تُشفِّر الدالة ‎crypt()‎ سلسلةً نصيةً بطريقة غير قابلة للعكس. الوصف string crypt ( string $str [, string $salt ] ) تُعيد الدالة crypt()‎ هاش (hash) السلسلة النصية بإستعمال خوارزمية Unix DES أو أي خوارزمية أخرى متوفرة بالنظام. على الرغم من أنَّ ضبط المعامل salt في الدالة crypt()‎ هو أمرٌ اختياري، إلا أن عدم ضبط قيمته سيؤدي إلى إنشاء هاش ضعيف للسلسة النصية. تُطلِق نسخ 5.6 للغة PHP وما بعدها الخطأ ‎E_NOTICE عند عدم ضبط المعامل ...

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

(PHP 4, PHP 5, PHP 7) توازن الدالة strnatcmp()‎ بين سلسلتين نصيَّتين (strings) مع تحسُّس حالة الأحرف (كبيرة أو صغيرة) وذلك باستعمال خوارزميَّة الترتيب الطبيعي (natural order algorithm). الوصف int strnatcmp ( string $str1 , string $str2 ) توازن هذه الدالة بين السلسلة النصيَّة str1 والسلسلة النصيَّة str2 باستعمال خوارزميَّة الترتيب الطبيعي مع تحسُّس حال الأحرف. تُرتِّب هذه الخوارزميَّة السلاسل النصيَّة التي تحوي أحرفًا وأرقامًا بالطريقة ذاتها التي يُرتِّب بها البشر (لهذا السبب سميت "الترتيب الطبيعي") ثمَّ تبدأ عمليَّة الموازنة. المعاملات ...

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

(PHP 4, PHP 5, PHP 7) توازن الدالة strnatcmp()‎ بين سلسلتين نصيَّتين (strings) مع تحسُّس حالة الأحرف (كبيرة أو صغيرة) وذلك باستعمال خوارزميَّة الترتيب الطبيعي (natural order algorithm). الوصف int strnatcmp ( string $str1 , string $str2 ) توازن هذه الدالة بين السلسلة النصيَّة str1 والسلسلة النصيَّة str2 باستعمال خوارزميَّة الترتيب الطبيعي مع تحسُّس حال الأحرف. تُرتِّب هذه الخوارزميَّة السلاسل النصيَّة التي تحوي أحرفًا وأرقامًا بالطريقة ذاتها التي يُرتِّب بها البشر (لهذا السبب سميت "الترتيب الطبيعي") ثمَّ تبدأ عمليَّة الموازنة. المعاملات ...

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

(PHP 4, PHP 5, PHP 7) تُرتّب الدالة natsort()‎‎‎‎‎‎‎ عناصر المصفوفة باستخدام خوارزمية "الترتيب الطبيعي". الوصف bool natsort ( array &$array ) تُنفذ هذه الدالة خوارزمية تُرتّب سلاسل نصية فيها أحرف وأرقام بنفس الطريقة التي يُرتّب بها الإنسان مع الحفاظ على علاقة المفاتيح بالقيم المرتبطة بها. وتسمى هذه الطريقة باسم "الترتيب الطبيعي". ويمكن ملاحظة مثال على الفرق بين هذه الخوارزمية وخوارزميات الترتيب المعتادة لترتيب السلاسل النصية الرقمية (المستخدمة في الدالة sort()‎‎‎) في المثال التالي. ملاحظة: إذا تساوت مقارنة عنصرين، فإن ترتيبهما ...

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

(PHP 4, PHP 5, PHP 7) تُرتّب الدالة natcasesort()‎‎‎‎‎ مصفوفة باستخدام خوارزمية "الترتيب الطبيعي" غير الحساسة لحالة الحرف. الوصف bool natcasesort ( array &$array ) الدالة natcasesort()‎‎‎‎‎ هي نسخة من الدالة ()‎natsort لكنها غير حساسة لحالة الحرف. تُنفذ هذه الدالة خوارزمية تُرتّب سلاسل نصية تحتوي على أحرف وأرقام بنفس الطريقة التي يُرتّب بها الإنسان مع الحفاظ على علاقة المفاتيح بالقيم المرتبطة بها. وتسمى هذه الطريقة باسم "الترتيب الطبيعي". ملاحظة: إذا تساوت مقارنة عنصرين، فإن ترتيبهما النسبي في المصفوفة المُرتّبة سيكون غير ...

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

(PHP 4, PHP 5, PHP 7) تعيد الدالة lcg_value()‎ عددًا شبه عشوائي (pseudo random number) يترواح مجاله بين 0 - 1؛ تستعمل الدالة خوارزمية مولد المتطابقة الخطية المختلطة (combined linear congruential generator). الوصف float lcg_value ( void ) تعيد هذه الدالة عددًا شبه عشوائي تنحصر قيمته بين 0 - 1. تَدمج هذه الدالة بين نوعين من خوارزميات مولدات المتطابقة الخطية طول دورة (period) إحداها 2‎31 - 85 والأخرى ‎231 - 249. تكون طول دورة هذه الدالة هي حاصل جداء العددين الأوليين ...

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

(PHP 4, PHP 5, PHP 7) تعيد الدالة lcg_value()‎ عددًا شبه عشوائي (pseudo random number) يترواح مجاله بين 0 - 1؛ تستعمل الدالة خوارزمية مولد المتطابقة الخطية المختلطة (combined linear congruential generator). الوصف float lcg_value ( void ) تعيد هذه الدالة عددًا شبه عشوائي تنحصر قيمته بين 0 - 1. تَدمج هذه الدالة بين نوعين من خوارزميات مولدات المتطابقة الخطية طول دورة (period) إحداها 2‎31 - 85 والأخرى ‎231 - 249. تكون طول دورة هذه الدالة هي حاصل جداء العددين الأوليين ...

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

(PHP 4, PHP 5, PHP 7) تولِّد الدالة mt_rand()‎ عددًا صحيحًا شبه عشوائي (pseudo-random integer) وتعيده وذلك باستعمال خوارزميَّة Mersenne Twister. الوصف int mt_rand ( void ) int mt_rand ( int $min , int $max )) تنبيه: لا تولِّد هذه الدالة أي قيم آمنة، لذا لا يجب استعمالها لغرض التشفير مطلقًا. إن أردت توليد قيم آمنة مشفَّرة، فاستعمل الدالة random_int()‎ أو الدالة random_bytes()‎ أو الدالة openssl_random_pseudo_bytes()‎. تعيد معظم الخوارزميات التي تستعملها الدوال التابعة لمكتبة libcs لتوليد أعداد عشوائيَّة قيمًا مريبة أو ذات ...

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

(PHP 4, PHP 5, PHP 7) تولِّد الدالة mt_rand()‎ عددًا صحيحًا شبه عشوائي (pseudo-random integer) وتعيده وذلك باستعمال خوارزميَّة Mersenne Twister. الوصف int mt_rand ( void ) int mt_rand ( int $min , int $max )) تنبيه: لا تولِّد هذه الدالة أي قيم آمنة، لذا لا يجب استعمالها لغرض التشفير مطلقًا. إن أردت توليد قيم آمنة مشفَّرة، فاستعمل الدالة random_int()‎ أو الدالة random_bytes()‎ أو الدالة openssl_random_pseudo_bytes()‎. تعيد معظم الخوارزميات التي تستعملها الدوال التابعة لمكتبة libcs لتوليد أعداد عشوائيَّة قيمًا مريبة أو ذات ...

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

(PHP 4, PHP 5, PHP 7) تحدِّد الدالة srand()‎ البذرة (seed) المستعملة في خوارزميَّة توليد أعداد عشوائيَّة. الوصف void srand ([ int $seed ] ) تحدِّد هذه الدالة البذرة المستعملة في خوارزميَّة توليد الأعداد العشوائيَّة. تكون قيمة البذرة هي المعامل seed المُمرَّر  إلى الدالة، وإن لم يُعطَ هذا المعامل فستكون قيمة البذرة هي قيمة عشوائيَّة. ملاحظة: لا حاجة لتحديد قيمة البذرة باستدعاء هذه الدالة أو الدالة mt_srand()‎ في كل مرة تريد فيها توليد أعداد عشوائيَّة، سواءً باستعمال الدالة rand()‎ أو الدالة ...

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

(PHP 4, PHP 5, PHP 7) تحدِّد الدالة srand()‎ البذرة (seed) المستعملة في خوارزميَّة توليد أعداد عشوائيَّة. الوصف void srand ([ int $seed ] ) تحدِّد هذه الدالة البذرة المستعملة في خوارزميَّة توليد الأعداد العشوائيَّة. تكون قيمة البذرة هي المعامل seed المُمرَّر  إلى الدالة، وإن لم يُعطَ هذا المعامل فستكون قيمة البذرة هي قيمة عشوائيَّة. ملاحظة: لا حاجة لتحديد قيمة البذرة باستدعاء هذه الدالة أو الدالة mt_srand()‎ في كل مرة تريد فيها توليد أعداد عشوائيَّة، سواءً باستعمال الدالة rand()‎ أو الدالة ...

الخاصية grid-auto-flow

الخاصية grid-auto-flow في CSS تضبط كيف ستعمل خوارزمية تحديد مواضع عناصر grid التلقائية. بطاقة الخاصية القيمة الابتدائية row تُطبَّق على حاويات grid. قابلة للوراثة لا قابلة للتحريك لا القيمة المحسوبة كما حُدِّدَت، لكن مع تحويل الأطوال النسبية إلى مطلقة. /* كلمات محجوزة */ grid-auto-flow: row; grid-auto-flow: column; grid-auto-flow: dense; grid-auto-flow: row dense; grid-auto-flow: column dense; /* القيم العامة */ grid-auto-flow: inherit; grid-auto-flow: initial; grid-auto-flow: unset; أمثلة هذا مثال عن استخدام الكلمة المحجوزة column مع الخاصية grid-auto-flow، حاول تجربة القيم الأخرى لتعرف الفرق بينها: <div id="grid"> <div id="item1"></div> ...

التجزئة (Hashing) في Laravel

مقدمة تقدم واجهة التجزئة الخاصة بإطار Laravel تجزئة Bcrypt و Argon2 آمنة لتخزين كلمات مرور المستخدم. إذا كنت تستخدم الصنفين الداخليين ‎(Built-in classes)‎ LoginController و RegisterController المتضمنين مع تطبيق Laravel الخاص بك، فإنهما يستخدمان Bcrypt للتسجيل والاستيثاق تلقائيًا. ملاحظة: يعدّ Bcrypt خيارًا رائعًا لتجزئة كلمات المرور لأن "عامل العمل" الخاص به قابل للتعديل، مما يعني أنه يمكن زيادة الوقت المستغرق لإنشاء تجزئة كلما زادت طاقة المعدات. الضبط يُضبط محرك تشغيل التجزئة التلقائي الخاص بتطبيقك في ملف الإعدادات config/hashing.php. يوجد حاليا ...

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

(PHP 4, PHP 5, PHP 7) تُرِّمز الدالة ‎convert_uuencode()‎ السلسلة النصية. الوصف string convert_uuencode ( string $data ) تُرِّمز الدالة convert_uuencode()‎ السلسلة النصية بإستعمال الخوارزمية uuencode. تُتَرجم خوارزمية Uuencode كل السلاسل النصية (بما في ذلك البيانات بالنظام الثنائي) إلى أحرف قابلة للطباعة، ما يجعله نقلها داخل الشبكة آمنًا. يزيد حجم البيانات المُرَمَزة بخوارزمية Uuencode عن حجمها الطبيعي بنسبة 35%. المعاملات data البيانات التي نريد ترميزها. القيم المعادة تُعيد الدالة convert_uuencode()‎ البيانات مُرَمَزةً، أو القيمة FALSE عند فشل ترميزها. أمثلة المثال 1: ...

المطابقة (Reconciliation) في React

تُزوّدنا React بواجهة برمجة تطبيقات (API) صريحة بحيث لا نقلق بشأن التغييرات التي تطرأ في كل تحديث. يجعل هذا من كتابة التطبيقات أمرًا أسهل بكثير، ولكن قد لا يكون من الواضح كثيرًا كيفيّة تطبيق هذا في React. تشرح هذه الصفحة الخيارات التي وضعناها في خوارزمية المقارنة (diffing) بحيث تكون تحديثات المُكوّنات متوقعة وفي نفس الوقت سريعة كفاية لأجل التطبيقات عالية الأداء. البداية عندما تستخدم React في نقطة زمنية محدّدة بإمكانك التفكير في التابع render()‎ كأنّه يُنشِئ شجرة من عناصر React، ...

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

(PHP 4, PHP 5, PHP 7) توازن الدالة strnatcasecmp()‎ بين سلسلتين نصيَّتين (strings) دون تحسُّس حالة الأحرف (كبيرة أو صغيرة) وذلك باستعمال خوارزميَّة الترتيب الطبيعي (natural order algorithm). الوصف int strnatcasecmp ( string $str1 , string $str2 ) توازن هذه الدالة بين السلسلة النصيَّة str1 والسلسلة النصيَّة str2 باستعمال خوارزميَّة الترتيب الطبيعي ودون تحسُّس حالة الأحرف. تُرتِّب هذه الخوارزميَّة السلاسل النصيَّة التي تحوي أحرفًا وأرقامًا بالطريقة ذاتها التي يُرتِّب بها البشر (لهذا السبب سميت "الترتيب الطبيعي") ثمَّ تبدأ عمليَّة الموازنة. تشبه ...

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

(PHP 4, PHP 5, PHP 7) توازن الدالة strnatcasecmp()‎ بين سلسلتين نصيَّتين (strings) دون تحسُّس حالة الأحرف (كبيرة أو صغيرة) وذلك باستعمال خوارزميَّة الترتيب الطبيعي (natural order algorithm). الوصف int strnatcasecmp ( string $str1 , string $str2 ) توازن هذه الدالة بين السلسلة النصيَّة str1 والسلسلة النصيَّة str2 باستعمال خوارزميَّة الترتيب الطبيعي ودون تحسُّس حالة الأحرف. تُرتِّب هذه الخوارزميَّة السلاسل النصيَّة التي تحوي أحرفًا وأرقامًا بالطريقة ذاتها التي يُرتِّب بها البشر (لهذا السبب سميت "الترتيب الطبيعي") ثمَّ تبدأ عمليَّة الموازنة. تشبه ...

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

(PHP 4, PHP 5, PHP 7) تولِّد الدالة rand()‎ عددًا صحيحًا شبه عشوائي (pseudo-random integer) وتعيده. الوصف int rand ( void ) int rand ( int $min , int $max ) تعيد هذه الدالة عددًا شبه عشوائي تنحصر قيمته بين 0 وقيمة الدالة getrandmax()‎ إن استدعيت دون تمرير المعاملين الاختياريين min و max. أمَّا إن أردت توليد عدد عشوائي تنحصر قيمته في مجال محدَّد، فاستعمل المعاملين السابقين لتحديد ذلك المجال. تنبيه: لا تولِّد هذه الدالة أي قيم آمنة، لذا لا يجب استعمالها ...

إنشاء التوابع (Composing Methods)

تستهدف إعادة التصميم بشكل رئيسيٍّ إنشاء التوابع الصحيحة المناسبة، إذ تكون التوابع الطويلة سببًا للمشاكل في كثيرٍ من الحالات، وتجعل شيفرات بعض التوابع منطق التنفيذ (execution logic) غامضًا ويصبح التابع بهذا عصيَّ الفهم من جهةٍ وصعب التغييرٍ من جهة ثانية. يشمل هذا القسم من الحلول كلَّ ما يتعلق بالتوابع وإزالة التكرار (duplicates) في الشيفرة ليسمح بإجراء التطويرات المستقبليّة، وهذه التقنيات هي: استخراج التوابع (Extract Methods) المشكلة: وجود أجزاء من الشيفرة يُمكن عزلها وتجميعها سويةً. الحل: نقل الشيفرة إلى تابعٍ (method) ...

إنشاء التوابع (Composing Methods)

تستهدف إعادة التصميم بشكل رئيسيٍّ إنشاء التوابع الصحيحة المناسبة، إذ تكون التوابع الطويلة سببًا للمشاكل في كثيرٍ من الحالات، وتجعل شيفرات بعض التوابع منطق التنفيذ (execution logic) غامضًا ويصبح التابع بهذا عصيَّ الفهم من جهةٍ وصعب التغييرٍ من جهة ثانية. يشمل هذا القسم من الحلول كلَّ ما يتعلق بالتوابع وإزالة التكرار (duplicates) في الشيفرة ليسمح بإجراء التطويرات المستقبليّة، وهذه التقنيات هي: استخراج التوابع (Extract Methods) المشكلة: وجود أجزاء من الشيفرة يُمكن عزلها وتجميعها سويةً. الحل: نقل الشيفرة إلى تابعٍ (method) ...

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

(PHP 4, PHP 5, PHP 7) تولِّد الدالة rand()‎ عددًا صحيحًا شبه عشوائي (pseudo-random integer) وتعيده. الوصف int rand ( void ) int rand ( int $min , int $max ) تعيد هذه الدالة عددًا شبه عشوائي تنحصر قيمته بين 0 وقيمة الدالة getrandmax()‎ إن استدعيت دون تمرير المعاملين الاختياريين min و max. أمَّا إن أردت توليد عدد عشوائي تنحصر قيمته في مجال محدَّد، فاستعمل المعاملين السابقين لتحديد ذلك المجال. تنبيه: لا تولِّد هذه الدالة أي قيم آمنة، لذا لا يجب استعمالها ...

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

(PHP 4, PHP 5, PHP 7) تعيد الدالة mt_getrandmax()‎ أكبر قيمة عشوائيَّة محتملة. الوصف int mt_getrandmax ( void ) تعيد هذه الدالة أكبر قيمة يمكن أن تعيدها الدالة mt_rand()‎ عند استدعائها. القيم المعادة تُعاد أكبر قيمة عشوائيَّة محتملة يمكن أن تعيدها الدالة mt_rand()‎ دون تمرير أي معامل لها‎. بمعنى آخر، تُعاد القيمة الأكبر التي يمكن استعمالها للمعامل max في الدالة mt_rand()‎ دون إمكانية زيادة النتيجة التي تعيدها هذه الدالة، وبالتالي الحصول على قيم أقل عشوائيَّة. أمثلة المثال 1: إيجاد عدد عشري ...

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

(PHP 4, PHP 5, PHP 7) تعيد الدالة mt_getrandmax()‎ أكبر قيمة عشوائيَّة محتملة. الوصف int mt_getrandmax ( void ) تعيد هذه الدالة أكبر قيمة يمكن أن تعيدها الدالة mt_rand()‎ عند استدعائها. القيم المعادة تُعاد أكبر قيمة عشوائيَّة محتملة يمكن أن تعيدها الدالة mt_rand()‎ دون تمرير أي معامل لها‎. بمعنى آخر، تُعاد القيمة الأكبر التي يمكن استعمالها للمعامل max في الدالة mt_rand()‎ دون إمكانية زيادة النتيجة التي تعيدها هذه الدالة، وبالتالي الحصول على قيم أقل عشوائيَّة. أمثلة المثال 1: إيجاد عدد عشري ...

الدالة zlib.crc32()‎ في بايثون

تحسب الدالة مجموع تحقق من نوع CRC (التحقّق من الزيادة الدورية Cyclic Redundancy Check) للبيانات المعطاة. تكون النتيجة عددًا صحيحًا طوله 32-بت خالٍ من الإشارة. البنية العامة zlib.crc32(data[, value]) ‎المعاملات value معامل اختياري تستخدمه قيمته -إن توفّرت- كقيمة بادئة لمجموع التحقق، وفي حال غيابه تكون القيمة الافتراضية هي 0. يؤدي تمرير قيمة إلى المعامل value إلى السماح بإجراء عمليات جمع تحقق مستمرّة على مجموعة من المدخلات المترابطة بعضها ببعض. هذه الخوارزمية ليست قوية من ناحية التشفير؛ لذا يُنصح بعدم استخدامها ...

الحقول المؤقتة (Temporary Fields)

توصيف المشكلة تحتوي الحقول المؤقَّتة على قيمٍ (وتُستخدَم وفقًا لها في الكائنات [objects]) ضمن شروطٍ مُحدَّدة، وتبقى فارغةً عند عدم تحقٌّق تلك الشروط. أسبابها تُخصَّصُ الحقول المؤقتة لاستخدامها في الخوارزميات التي تتطلَّب عددًا كبيرًا من المُدخلات (inputs)، فبدلًا من إنشاء الكثير من المعاملات في التابع (method parameters) يلجأ المُبرمِج لإنشاء حقولٍ مؤقَّتة لاحتواء البيانات المطلوبة في الصنف (class)، وبهذا فإنّ استخدام تلك الحقول لا يتعدّى تنفيذَ الخوارزميّة المُحدَّدة (ولا وظيفة أخرى لها خارج ذلك النطاق)، ويجعل وجودُ تلك الحقول من ...

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

(PHP 4, PHP 5, PHP 7) تحسب الدالة md5()‎ قيمة md5 لسلسلة نصية. تحذير: تجنب استعمال الدالة md5()‎ في تأمين كلمات المرور نظرًا لسرعة تنفيذ هذه الخوارزمية. راجع أسئلة كلمات المرور الشائعة لتفاصيل أكثر. الوصف string md5 ( string $str [, bool $raw_output = FALSE ] ) تحسب الدالة md5()‎ قيمة md5 للسلسلة النصية str باستخدام الخوارزمية RSA Data Security, Inc. MD5 Message-Digest Algorithm، وتُعيد القيمة الناتجة. المعاملات str السلسلة النصية. raw_output عند تحديده بالقيمة TRUE، فستُعيد الدالة بصمة رقمية بالتمثيل ...

الدالة zlib.adler32()‎ في بايثون

تحسب الدالة مجموع التحقق checksum من نوع Adler-32 للبيانات المعطاة. البنية العامة zlib.adler32(data[, value]) ‎ المعاملات data البيانات المراد حساب مجموع التحقق لها. value إن كان المعامل value موجودًا، فإنّه يستخدم كقيمة بادئة لمجموع التحقق، وفي حال غيابه تكون القيمة الافتراضية هي 1. يؤدي تمرير قيمة إلى المعامل value إلى السماح بإجراء عمليات جمع تحقق مستمرّة على مجموعة من المدخلات المترابطة بعضها ببعض. القيمة المعادة تحسب الدالة مجموع التحقق checksum من نوع Adler-32 للبيانات المعطاة. (مجموع التحقق من نوع Alder-32 ...

الوحدة ‎‎‎crypto‎ في Node.js

الاستقرار: 2-مستقر توفِّر الوحدة crypto وظيفة التشفير (cryptographic functionality) التي تتضمن مجموعةً من المغلفات (wrappers) التي تُستعمَل من أجل دوال شيفرة Hash في OpenSSL، والتشفير HMAC، والتشفير (cipher)، وفك التشفير (decipher)، والتوقيع (sign)، والتحقق (verify). استعمل الأمر require('crypto')‎ للوصول إلى هذه الوحدة. const crypto = require('crypto'); const secret = 'abcdefg'; const hash = crypto.createHmac('sha256', secret) .update('I love cupcakes') ...

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

تستدعي الدالة random_number_generator()‎ مولد الأعداد العشوائيَّة الداخلي في Sass لتوليد عدد عشوائي. البنية العامة .random_number_generator() القيم المعادة يُعاد عدد عشوائي. انظر أيضًا الدالة random_seed()‎: تُعيّن البذرة المستعملة في خوارزميَّة توليد الأعداد العشوائيَّة. مصادر قسم الدالة random_number_generator في صفحة الدوال في توثيق Sass الرسمي.

تكرار الشيفرات (Duplicate Code)

توصيف المشكلة التشابه (أو التطابق المطلق) بين مقطعين من الشيفرة في البرنامج. أسبابها تحدث هذه المشكلة عندما يعمل أكثرُ من مبرمجٍ على كتابة أجزاءَ مختلفةٍ من نفس البرنامج وبنفس الوقت، فلا يدري أحدهم أنّ الشيفرة التي يكتبها قد سبقه بها مبرمجٌ آخر ومن الممكن استخدامها نفسها دون الحاجة لتكرارها. أو قد تنتُج عن وجود جزئين من الشيفرة مختلفين شكليًّا متماثلين ضمنيًا (يؤديان نفس المهمة)، ومن الصعب كشف هذا النوع من التكرار وعلاجه. قد يكون التكرار هادفًا ببعض الأحيان، كأن يكون ...

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

تقدّم هذه الوحدة واجهة متكاملة لضغط البيانات وفك الضغط عنها باستخدام خوارزمية الضغط bzip2. تتضمّن وحدة bz2 ما يلي: دالة open()‎ وصنف BZ2File لقراءة الملفات المضغوطة والكتابة فيها. صنفا BZ2Compressor و BZ2Decompressor لإجراء عمليات الضغط وفك الضغط التزايدي incremental. دالتا compress()‎ و decompress()‎ لإجراء عمليات الضغط وفك الضغط بخطوة واحدة. يجدر التنبيه إلى إمكانية الوصول إلى جميع الأصناف في هذه الوحدة بأمان من خيوط متعددة. ضغط البيانات وفكّ الضغط عنها الدالة bz2.open()‎ تفتح الدالة ملفًّا مضغوطًا بخوارزمية bzip2 في النمط ...

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

(PHP 4 >= 4.0.1, PHP 5, PHP 7) تقيس الدالة levenshtein()‎ مسافة Levenshtein بين سلسلتين نصيتين. الوصف int levenshtein ( string $str1 , string $str2 ) int levenshtein ( string $str1 , string $str2 , int $cost_ins , int $cost_rep , int $cost_del ) تُقاس مسافة Levenshtein بعدد المحارف الواجب استبدالها أو إضافتها أو حذفها لتحويل السلسلة النصية str1 إلى السلسلة النصية str2. يُعَد تعقيد خوارزمية الدالة levenshtein()‎ من الدرجة (O(m*n، حيث تمثل m و n طول السلسلتين النصيتين str1 و str2 ...

القائمة الطويلة للمعاملات (Long Parameter List)

توصيف المشكلة وجود ما يزيد عن ثلاثة أو أربعة معاملات (parameters) مُمرَّرة للتابع (method). أسبابها قد تحدث هذه المشكلة عند دمج عدّة خوارزمياتٍ بنفس التابع (method)، إذ تُستخدَم المعاملات (parameters) الكثيرة لتحديد الخوارزمية التي ستُنفَّذ وآليّتها. أو قد تنتج المشكلة عن محاولة المبرمج أو المطوِّر لجعل الأصناف (classes) أكثر استقلاليةً عن بعضها البعض. فمثلًا: عند نقل الشيفرة التي تنشِئ الكائنات (objects) -اللازمة لأحد التوابع- من داخل التابع إلى الشيفرة التي تستدعي ذلك التابع سيتطلَّبُ تمرير تلك الكائنات إلى التابع كمعاملاتٍ ...

استنتاج الأنواع في TypeScript

مقدمة سنُغطّي في هذا القسم آلية استنتاج الأنواع في TypeScript، خاصّةً أين وكيف تُستنتَج الأنواع. الأساسيات هناك العديد من الأماكن في TypeScript التي يُستعمَل فيها استنتاج الأنواع لتوفير معلومات النوع عندما لا تكون هناك حاشية نوع (type annotation) صريحة. على سبيل المثال، في الشيفرة التالية let x = 3; سيُستَنتَجُ نوع المتغيّر ‎x‎ على أنّه النوعُ ‎number‎. استنتاج الأنواع هذا يكون عند تهيئة (initializing) المتغيرات والعناصر، أو عند ضبط قيم افتراضيّة للمعاملات، أو عند تحديد النوع المُعادِ لدالةٍ ما. يكون ...

الدالة binarySearch()‎ في Kotlin

تبحث الدالة binarySearch()‎ عن عنصر معين في المجموعة أو مجال من المجموعة (Collection) باستخدام خوارزميَّة البحث الثنائي (binary search algorithm) وتعيد فهرس موقعه. ويجب أن تكون المجموعة مرتبَّةً وفق المُقارِن comparator وإلا فستكون النتيجة المعادة غير مُحدّدة. إن احتوت المصفوفة على عناصر متساوية، فلا يمكن التوقع أيها سيُعاد. تُعيد الدالة فهرس العنصر المبحوث عنه إن كان موجودًا في المجال المحدَّد؛ خلاف ذلك، فستعيد القيمة السالبة لنقطة الإدراج (‎-insertion point - 1‎)، وهي الفهرس حيث يجب أن يُدرج العنصر حتى تبقى ...

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

(PHP 4, PHP 5, PHP 7) تعيد الدالة getrandmax()‎ أكبر قيمة عشوائيَّة محتملة. الوصف int getrandmax ( void ) تعيد هذه الدالة أكبر قيمة يمكن أن تعيدها الدالة rand()‎ عند استدعائها. القيم المعادة تُعاد أكبر قيمة عشوائيَّة محتملة يمكن أن تعيدها الدالة rand()‎. انظر أيضًا الدالة rand()‎: تعيد عددًا صحيحًا عشوائيًّا. الدالة srand()‎: تحديد البذرة (seed) المستخدمة في خوارزمية توليد الأعداد العشوائيَّة. الدالة mt_getrandmax()‎: تعيد أكبر قيمة عشوائيَّة ممكنة. مصادر صفحة الدالة getrandmax في توثيق PHP الرسمي.

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

(PHP 4, PHP 5, PHP 7) تعيد الدالة getrandmax()‎ أكبر قيمة عشوائيَّة محتملة. الوصف int getrandmax ( void ) تعيد هذه الدالة أكبر قيمة يمكن أن تعيدها الدالة rand()‎ عند استدعائها. القيم المعادة تُعاد أكبر قيمة عشوائيَّة محتملة يمكن أن تعيدها الدالة rand()‎. انظر أيضًا الدالة rand()‎: تعيد عددًا صحيحًا عشوائيًّا. الدالة srand()‎: تحديد البذرة (seed) المستخدمة في خوارزمية توليد الأعداد العشوائيَّة. الدالة mt_getrandmax()‎: تعيد أكبر قيمة عشوائيَّة ممكنة. مصادر صفحة الدالة getrandmax في توثيق PHP الرسمي.

الدالة wsgiref.util.request_uri()‎‎ في بايثون

تعيد الدالة معرّف URI الكامل في الطلب، -يمكن أن تتضمّن النتيجة المعادة سلسلة الطلب النصية- باستخدام الخوارزمية الموجودة في قسم "URL Reconstruction" في PEP 3333. البنية العامة wsgiref.util.request_uri(environ, include_query=True) المعاملات environ ‎environ قاموس متوافق مع WSGI. يمكن مراجعة PEP 3333 للاطلاع على المزيد من التفاصيل. include_query لن تُضمّن سلسلة الطلب النصية في معرّف URI الناتج إن أخذ هذا المعامل قيمة خاطئة. القيمة المعادة تعيد الدالة معرّف URI الكامل في الطلب مصادر قسم WSGI environment utilities في صفحة WSGI Utilities and Reference ...

الدوال الرياضية في PHP

تسمح لك هذه الدوال بالتعامل مع العمليات الرياضية على الأعداد الصحيحة (integer) والعشرية (float). اطلع أيضًا على صفحة المعاملات الرياضية. abs()‎ تعيد‎ القيمة المطلقة للعدد المُمرَّر إليها. acos()‎ تعيد معكوس تجيب القيمة المُمرَّرة إليها. acosh()‎ تعيد معكوس التجيب القطعي (Inverse hyperbolic cosine) للقيمة المُمرَّرة إليها. asin()‎ تعيد معكوس جيب القيمة المُمرَّرة إليها. asinh()‎ تعيد معكوس الجيب القطعي (Inverse hyperbolic sine) للقيمة المُمرَّرة إليها. atan2()‎ تعيد معكوس الظل لناتج قسمة المعاملين الممرَّران إليها. atan()‎ تعيد معكوس الظل للقيمة المُمرَّرة إليها. atanh()‎ ...

الدوال الرياضية في PHP

تسمح لك هذه الدوال بالتعامل مع العمليات الرياضية على الأعداد الصحيحة (integer) والعشرية (float). اطلع أيضًا على صفحة المعاملات الرياضية. abs()‎ تعيد‎ القيمة المطلقة للعدد المُمرَّر إليها. acos()‎ تعيد معكوس تجيب القيمة المُمرَّرة إليها. acosh()‎ تعيد معكوس التجيب القطعي (Inverse hyperbolic cosine) للقيمة المُمرَّرة إليها. asin()‎ تعيد معكوس جيب القيمة المُمرَّرة إليها. asinh()‎ تعيد معكوس الجيب القطعي (Inverse hyperbolic sine) للقيمة المُمرَّرة إليها. atan2()‎ تعيد معكوس الظل لناتج قسمة المعاملين الممرَّران إليها. atan()‎ تعيد معكوس الظل للقيمة المُمرَّرة إليها. atanh()‎ ...

CSS/Topics/Table

الخاصية الوصف border-collapse تُحدِّد إذا كان إطار الجدول منفصلًا عن إطار الخلايا (أي لكلٍ واحدٍ منها إطارٌ خاصٌ به) أو كان مدمجًا مع إطار الخلايا (أي تتشارك الخلايا المتجاورة الإطار مع بعضها بعضًا). border-spacing تُحدِّد المسافة بين إطارات خلايا الجداول المتجاورة. لن يكون لهذه الخاصية أثرٌ إلا إذا كانت قيمة الخاصية border-collapse هي separate. caption-side تُحدِّد موضع لافتة الجدول المُعرَّفة عبر العنصر<caption>. empty-cells تُحدِّد كيف يجب أن يعرض المتصفح خلفية وإطر خلايا الجداول <table> التي ليس فيها محتوى ظاهر. لن يكون لهذه الخاصية أثرٌ إلا ...

التحميل التلقائي وإعادة تحميل الثوابت في ريلز

يوثق هذا الدليل طريقة عمل التحميل التلقائي وإعادة تحميل الثوابت. بعد قراءة هذا الدليل، ستتعلم: الجوانب الرئيسية لثوابت لغة روبي. ماهية autoload_paths وكيفية عمل التحميل الحثيث (eager loading) في الإنتاج. كيفية عمل التحميل التلقائي للثابت. ماهية need_dependency. كيفية عمل إعادة التحميل للثابت. حلول للتحميل التلقائي المشترك. المقدمة تسمح لغة ريلز بكتابة تطبيقات كما لو حملت الشيفرة الخاص بها مسبقًا. في أصناف برنامج روبي عادي، تحتاج إلى تحميل جميع اعتماديته (dependencies): require 'application_controller' require 'post' class PostsController < ApplicationController def index ...

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

(PHP 4 >= 4.3.0, PHP 5, PHP 7) تخلط الدالة str_shuffle()‎ المحارف في السلسلة النصية عشوائيًا. الوصف string str_shuffle ( string $str ) تُغَيِّرُ الدالة str_shuffle()‎ السلسلة النصية. يُنشَأ الخليط من كل ما هو ممكن. تحذير: هذه الدالة لا تولد قيم آمنة مشفرة، يجب ألا تستخدم لأغراض التشفير. إذا كنت بحاجة إلى قيمة آمنة مشفرة، ففكر في استخدام الدالة random_int()‎ أو الدالة random_bytes()‎ أو الدالة openssl_random_pseudo_bytes()‎ بدلاً من ذلك. المعاملات str السلسلة المدخلة. القيم المعادة تعيد الدالة str_shuffle()‎ سلسلة نصية معدلَّة. ...

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

(PHP 4, PHP 5, PHP 7) تعيد الدالة chr()‎ حرفًا معينًا. الوصف string chr ( int $ascii ) تُعيد الحرف الموافق لترميز ASCII. تُكَمِّل هذه الدالة نظيرتها ‎ord()‎. المعاملات ascii الكود في ترميز ASCII. تُحَوَّل القيم خارج المجال 0..255 إلى القيم توافقها داخل هذا المجال، وذلك عبر تطبيق الخوارزمية التالية: while ($ascii < 0) { $ascii += 256; } $ascii %= 256; القيم المعادة تُعيد الدالة chr()‎ الحرف الموافق لترميز ASCII. أمثلة المثال 1: مثال بسيط عن الدالة chr()‎ <?php $str="The string ends in escape: "; $str ...

التعامل مع التعميم (Dealing with Generalization)

يملك التجريد (Abstraction) تقنيات إعادة التصميم الخاصة به والمرتبطة بشكل أساسي بوظيفة النقل على طول التسلسل الهرمي لوراثة الصنف (class inheritance hierarchy)، وبإنشاء أصناف وواجهات جديدة، وبتبديل التفويض مكان الوراثة أو العكس. تقنيات هذا القسم هي: استخراج الأصناف الفرعية (Extract Subclass) المشكلة: يكون للصنف ميزات تستعمل فقط في حالات معينة. الحل: إنشاء صنف فرعي واستخدامه في هذه الحالات. استخراج الأصناف الفائقة (Extract Superclass) المشكلة: وجود صنفين لهما حقول وتوابع مشتركة. الحل: إنشاء صنف أب مشترك لهما ونقل جميع الحقول والتوابع ...

الدالة zlib.compressobj()‎ في بايثون

تعيد الدالة كائن ضغط يمكن استخدامه لضغط البيانات التي لا يمكن وضعها في الذاكرة دفعة واحدة. البنية العامة zlib.compressobj(level=-1, method=DEFLATED, wbits=MAX_WBITS, memLevel=DEF_MEM_LEVEL, strategy=Z_DEFAULT_STRATEGY[, zdict]) ‎المعاملات level المعامل level هو عدد صحيح ضمن النطاق 0 إلى 9 أو ‎-1 ووظيفته هي التحكم في مستوى عملية الضغط، فالقيمة 1 تقابل المستوى(Z_BEST_SPEED) وهو الأسرع ويعطي أقل مقدار من الضغط، والقيمة 9تقابل المستوى(Z_BEST_COMPRESSION) وهو الأبطأ وينتج أكبر مقدار من الضغط. أما القيمة 0 فتقابل المستوى (Z_NO_COMPRESSION) فتعني عدم ضغط البيانات. القيمة الافتراضية لهذا المعامل ...

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

تقدّم هذه الوحدة وسيلة لاستخدام خوارزمية طابور الكومة heap queue والتي تعرف كذلك بخوارزمية طابور الأولوية priority queue. الكومات Heaps هي مشجّرات ثنائية binary trees تمتلك كل عقدة أبوية parent node فيها قيمة تكون أصغر من أو مساوية لأي قيمة أخرى في العقد البنوية children. تستخدم الوحدة مصفوفات تكون فيها heap[k] <= heap[2*k+1]‎ و heap[k] <= heap[2*k+2]‎ لجميع قيم k، ويبدأ عدّ العناصر من الصفر. ولغرض المقارنة، تُعدّ العناصر غير الموجودة ما لا نهائية. أما أهمّ خصائص الكومة هي أنّ ...

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

(PHP 4, PHP 5, PHP 7) تخلط الدالة shuffle()‎ عناصر المصفوفة. الوصف bool shuffle ( array &$array ) تخلط هذه الدالة عناصر المصفوفة بإعادة ترتيبها عشوائيًا. وتستخدم مولد أرقام عشوائية زائفة غير مناسب لأغراض التشفير. ملاحظة: إذا تساوت مقارنة عنصرين، فإن ترتيبهما النسبي في المصفوفة المُرتّبة يكون غير محدد. المعاملات array المصفوفة المُدخلة. القيم المعادة تُعيد الدالة القيمة TRUE عند نجاح عملها، أو FALSE عند فشل تنفيذها. سجل التغييرات الإصدار الوصف 7.1.0 تغيير الخوارزمية العشوائية الداخلية لاستخدام "مولد أرقام Mersenne Twister ...

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

(PHP 4 >= 4.2.0, PHP 5, PHP 7) تحسب الدالة md5_file()‎ قيمة md5 لملف معين. الوصف string md5_file (string $filename [, bool $raw_output = FALSE ] ) تحسب الدالة md5_file()‎ قيمة md5 للملف المُحدد بالمعامل filename باستخدام الخوارزمية RSA Data Security, Inc. MD5 Message-Digest Algorithm، القيمة الناتجة هي رقم بالترميز الست عشري مكون من 32 محرفًا. المعاملات filename اسم الملف. raw_output عند تحديده بالقيمة TRUE فستُعيد الدالة بصمة رقمية بالتمثيل الثنائي بطول 16 محرفًا. القيم المعادة تُعيد سلسلة نصية، أو القيمة FALSE ...

array_rand()‎

(PHP 4, PHP 5, PHP 7) تختار الدالة array_rand()‎ واحدًا أو أكثر من عناصر المصفوفة عشوائيًا. الوصف mixed array_rand ( array $array [, int $num = 1 ] ) تختار الدالة array_rand()‎ واحدًا أو أكثر من عناصر المصفوفة عشوائيًا، وتعيد مفتاح (أو مفاتيح) العناصر عشوائيًا. وتستخدم مولد أرقام عشوائية زائفة غير مناسب لأغراض التشفير. المعاملات array المصفوفة المُدخلة. num يحدد عدد العناصر التي يجب اختيارها عشوائيًا. القيم المعادة عند اختيار إدخال واحد فقط، تُعيد الدالة array_rand()‎ مفتاحًا لعنصرٍ واحد عشوائيًا. خلاف ...

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

(PHP 4 >= 4.3.0, PHP 5, PHP 7) تحسب الدالة sha1_file()‎ تجزئة sha1 لملف. الوصف string sha1_file ( string $filename [, bool $raw_output = FALSE ] ) تحسب الدالة sha1_file()‎ تجزئة sha1 لملف المحدد بواسطة اسم الملف باستخدام خوارزمية US Secure Hash Algorithm 1 وإعادة هذا التجزئة. التجزئة عبارة عن رقم سداسي عشري مكون من 40 حرفًا. المعاملات filename اسم الملف المراد تجزئته. raw_output عندما تكون قيمة هذا المعامل TRUE، فستعيد الدالة sha1_file()‎ الملخص كصيغة ثنائية صغيرة طولها 20. القيم المعادة ...

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

تُنشئ الدالة hsl()‎ لونًا جديدًا انطلاقًا من قيم الصبغة (hue) والتشبُّع (saturation) والسطوع (lightness). تستخدم هذه الدالة خوارزمية من مواصفات CSS. البنية العامة hsl($hue, $saturation, $lightness) المعاملات ‎$hue قيمة صبغة اللون. يجب أن تكون بين 0 و 360 درجة. ‎$saturation قيمة تشبُّع اللون. يجب أن تترواح بين ‎0% و ‎100%. ‎$lightness  قيمة سطوع اللون. يجب أن تكون بين ‎0%‎ و ‎100%. القيم المعادة تُعاد قيمة اللون الناتج. الأخطاء والاستثناءات سيُرمى الخطأ ArgumentError إن كانت المعاملات من النوع الخطأ أو كانت ...

array_rand()‎

(PHP 4, PHP 5, PHP 7) تختار الدالة array_rand()‎ واحدًا أو أكثر من عناصر المصفوفة عشوائيًا. الوصف mixed array_rand ( array $array [, int $num = 1 ] ) تختار الدالة array_rand()‎ واحدًا أو أكثر من عناصر المصفوفة عشوائيًا، وتعيد مفتاح (أو مفاتيح) العناصر عشوائيًا. وتستخدم مولد أرقام عشوائية زائفة غير مناسب لأغراض التشفير. المعاملات array المصفوفة المُدخلة. num يحدد عدد العناصر التي يجب اختيارها عشوائيًا. القيم المعادة عند اختيار إدخال واحد فقط، تُعيد الدالة array_rand()‎ مفتاحًا لعنصرٍ واحد عشوائيًا. خلاف ...

الوحدة wsgiref.util()‎‎ في بايثون

تقدّم هذه الوحدة مجموعة متنوعة من الدوال التي تساعد في التعامل مع بيئات WSGI. بيئة WSGI هي قاموس يتضمّن متغيرات طلب HTTP وبحسب ما هو موصوف في PEP 3333.  تأخذ جميع الدوال المعامل environ وهو عبارة عن قاموس متوافق مع WSGI. يمكن مراجعة PEP 3333 للاطلاع على المزيد من التفاصيل. دوال الوحدة wsgiref.util الدالة wsgiref.util.guess_scheme()‎ تخمّن الدالة ما يجب أن تكون عليه قيمة wsgi.url_scheme وذلك بالتحقق من قيمة متغير البيئة HTTPS في القاموس المعطى. الدالة wsgiref.util.request_uri()‎ تعيد الدالة معرّف URI الكامل في الطلب باستخدام ...

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

يضبط التابع srand بذرة مولد الأعداد شبه العشوائية (system pseudo-random number generator)، إذ يعين Random::DEFAULT ويعطيها قيمة العدد المُعطى ثم يعيد قيمة البذرة السابقة. في حال عدم تمرير أي عدد إلى التابع، يحدد التابع srand بذرةً للمولد باستخدام مصدر العشوائية (entropy) الذي يوفره نظام التشغيل، إن كان متاحًا (وهو ‎/dev/urandom على أنظمة يونكس أو مُوفِّر خوارزمية التشفير RSA على نظام ويندوز)، والذي يُدمَج مع الوقت، ومعرف العملية (pid)، ورقم التسلسل. يمكن استخدام التابع srand لضمان تكرار تسلسلات الأعداد شبه العشوائية ...

العنصر

يتجاوز العنصر <bdo> (اختصار للعبارة bidirectional override) اتجاه النص الحالي واستخدام اتجاه مُحدَّد مسبقًا. المثال الآتي يستخدم العنصر <bdo> لعرض جملة عربية ضمن نص إنكليزي: <p>This text will go left to right.</p> <p><bdo dir="rtl">أما هذا النص فهو rtl أي من اليمين لليسار</bdo></p> لاحظ أنَّ العنصر <bdo> سيؤدي إلى تجاوز خوارزمية تحديد الاتجاه التي تستعملها المتصفحات، وهذا يعني أنَّ جميع الكلام سيعرض من اليمين إلى اليسار (في حال إسناد القيمة rtl إلى الخاصية dir)، لذا ستُعرَض الكلمة rtl في المثال السابق هكذا: ltr. ...

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

(PHP 4 >= 4.3.0, PHP 5, PHP 7) تحسب الدالة sha1()‎ تجزئة sha1 كسلسلة نصية. تحذير: لا يوصى باستخدام هذه الدالة لتأمين كلمات المرور، نظرًا للسرعة الطبيعية لخوارزمية التجزئة هذه. راجع الأسئلة المتداولة حول كلمة المرور للحصول على التفاصيل وأفضل الممارسات. الوصف string sha1 ( string $str [, bool $raw_output = FALSE ] ) تحسب التجزئة sha1 للمعامل str باستخدام خوارزمية US Secure Hash Algorithm 1. المعاملات str السلسلة النصية المدخلة. raw_output إذا عُيِّنَ المعامل raw_output الاختياري إلى TRUE، فسيُعاد ناتجُ ...

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

تقدّم هذه الوحدة واجهة بسيطة لضغط الملفات وفك ضغطها بنفس الأسلوب المتّبع في برنامجي gzip و gunzip في GNU. وتجري عملية ضغط البيانات بواسطة وحدة zlib. تقدّم وحدة gzip الصنف GzipFile إضافة إلى الدوال open()‎ و compress()‎ و decompress()‎. يدعم برنامجا gzip و gunzip صيغ ملفات أخرى مثل تلك التي تنتج من compress و pack، ولكن يجدر التنبيه إلى أنّ هذه الصيغة غير مدعومة من قبل هذه الوحدة. تعرّف الوحدة العناصر التالية: الدالة gzip.open()‎ تفتح الدالة ملفًّا مضغوطًا بواسطة gzip ...

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

تنشئ الدالة hsla()‎ لونًا انطلاقًا من قيم الصبغة (hue) والتشبُّع (saturation) والسطوع (lightness) والشفافيَّة (alpha). تستخدم الدالة خوارزمية من مواصفات CSS. البنية العامة hsla($hue, $saturation, $lightness, $alpha) المعاملات ‎$hue قيمة صبغة اللون. يجب أن تكون بين 0 و 360 درجة. ‎$saturation قيمة تشبُّع اللون. يجب أن تترواح بين ‎0%‎ و ‎100%. ‎$lightness  قيمة سطوع اللون. يجب أن تترواح بين ‎0%‎ و ‎100%. ‎$alpha قيمة شفافيَّة اللون. يجب أن تكون بين 0 و 1. القيم المعادة تُعاد قيمة اللون الناتج. الأخطاء ...

الشيفرة النظيفة (Clean Code)

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

تبديل رموز الأنواع بالحالة/الاستراتيجية (Replace Type Code with State/Strategy)

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

التابع Random.srand في روبي

يحدِّد التابع srand بذرة مولد الأعداد شبه العشوائية (pseudo-random number generator) للنظام، بتعيين Random::DEFAULT، إلى القيمة المُمرَّرة إليه. يعيد التابع بعد استدعائه قيمة البذرة السابقة. في حال عدم أية قيمة إلى التابع srand، فسيبذُر المولد باستخدام مصدر للعشوائية (entropy) يوفره نظام التشغيل إن كان متاحًا (‎/dev/urandom على أنظمة Unix أو مُوفِّر خوارزمية التشفير [RSA] على نظام Windows)؛ تدمج هذه البذرة بين الوقت، ومعرف العملية (pid)، ورقم التسلسل لتوليدها من أجل أن تكون العشوائية كافية. يمكن استخدام srand لضمان تكرار تسلسلات ...

التابع int.bit_length()‎ في بايثون

يعيد التابع bit_length()‎ عدد البتات المطلوبة لتمثيل عدد صحيح بالصيغة الثنائية، مع استثناء الإشارة والأصفار الأولية. البنية العامة x.bit_length() القيمة المعادة يعيد هذا التابع عدد البتات المطلوبة لتمثيل عدد صحيح بالصيغة الثنائية، مع استثناء الإشارة والأصفار الأولية. أمثلة يبيّن المثال التالي النتيجة المعادة من استخدام التابع مع عدد صحيح يمتلك إشارة سالبة: >>> n = -37 >>> bin(n) '-0b100101' >>> n.bit_length() 6 توضيح إذا توخينا الدقة، فإنّ القيمة المعادة من x.bit_length()‎ في حال لم يكن x مساويًا للصفر هي عدد صحيح موجب فريد k ...

التعليقات (Comments)

توصيف المشكلة وجود الكثير من التعليقات في التوابع (methods) بهدف الشرح التفصيليّ للشيفرة. أسبابها غالبًا ما يكون السبب منطقيًّا لإضافة التعليقات وخاصّة عندما تكون الشيفرة مبهمةً غير واضحة، لكن بهذه الحالة لن نعدَّ تلك التعليقات إلا محاولاتٍ بائسةً لتغطية الشيفرة الرديئة بجانبها! ولتكن القاعدة: إنّ أفضل تعليقٍ يمكن أن تضيفه هو تسمية التوابع (methods) والأصناف (classes) تسميةً جيّدةً معبِّرة. وإذا ما وجدتَ أن الشيفرة لن تكون واضحةً بحذف التعليقات المُضافة، فمن المُؤسف القول بضرورة تغيير بُنيتها (structure) إلى الشكل الذي ...

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

تقدّم هذه الوحدة مجموعة من الأصناف والدوال المساعدة لإجراء عمليات ضغط البيانات وفك الضغط عنها باستخدام خوارزمية الضغط LZMA. وتتضمّن هذه الوحدة كذلك واجهة للتعامل مع الملفات ذات الامتداد ‎.xz و ‎.lzma المستخدمة بواسطة الأداة xz، إضافة إلى التعامل مع البيانات المضغوطة الخام. تقدّم هذه الوحدة واجهة مشابهة إلى حد كبير للواجهة المقدّمة في الوحدة bz2، ولكن يجب الانتباه إلى أنّ الصنف LZMAFile -وعلى عكس الصنف bz2.BZ2File- لا تتمتع بسلامة الخيوط not thread-safe؛ لذا إن احتجت إلى استخدام نسخة واحدة ...

Array.prototype.sort()‎

الدالة Array.prototype.sort()‎ ترتِّب عناصر المصفوفة وتغيّر المصفوفة الأصلية وتُعيد المصفوفة المُعدَّلة، وليس من الضروري أن يكون الترتيب «ثابتًا»، وخوارزمية الترتيب الافتراضية المستخدمة ستُرتِّب العناصر اعتمادًا على رموز يونيكود. الوقت والذاكرة التي تستهلكها عملية الترتيب لا يمكن تحديدها بدقة لأنها تعتمد على المتصفح ونظام التشغيل... var fruit = ['cherries', 'apples', 'bananas']; fruit.sort(); // ['apples', 'bananas', 'cherries'] var scores = [1, 10, 21, 2]; scores.sort(); // [1, 10, 2, 21] // لاحظ أنَّ العدد 10 يأتي قبل 2 // ذلك لأنَّ "10" هو ناتج دمج المحرفين ...

الخاصية grid-auto-columns

الخاصية grid-auto-columns في CSS تضبط أبعاد مسارات الأعمدة المُنشأة ضمنيًا. بطاقة الخاصية القيمة الابتدائية auto تُطبَّق على حاويات grid. قابلة للوراثة لا قابلة للتحريك لا القيمة المحسوبة كما حُدِّدَت، لكن مع تحويل الأطوال النسبية إلى مطلقة. /* كلمات محجوزة */ grid-auto-columns: min-content; grid-auto-columns: max-content; grid-auto-columns: auto; /* <length> */ grid-auto-columns: 100px; grid-auto-columns: 20cm; grid-auto-columns: 50vmax; /* <percentage> */ grid-auto-columns: 10%; grid-auto-columns: 33.3%; /* <flex> */ grid-auto-columns: 0.5fr; grid-auto-columns: 3fr; /* minmax() */ grid-auto-columns: minmax(100px, auto); grid-auto-columns: minmax(max-content, 2fr); grid-auto-columns: minmax(20%, 80vmax); /* fit-content() */ grid-auto-columns: fit-content(400px); grid-auto-columns: fit-content(5cm); grid-auto-columns: fit-content(20%); /* track-size */ grid-auto-columns: min-content max-content auto; grid-auto-columns: 100px 150px 390px; grid-auto-columns: 10% 33.3%; grid-auto-columns: 0.5fr ...

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

(PHP 4, PHP 5, PHP 7) تحسب الدالة similar_text()‎ عدد الأحرف المتشابهة في سلسلتين نصيتين. الوصف int similar_text ( string $first , string $second [, float &$percent ] ) تحسب الدالة similar_text()‎ نسبة التشابه بين سلسلتين كما هو مذكور في كتاب Programming Classics: Implementing the World's Best Algorithms by Oliver‏ (ISBN 0-131-00413-1). لاحظ أن هذا التنفيذ لا يَستخدِم مكدسًا (stack) كما في الشفرة التي ذكرها المؤلف في كتابه، ولكن تجري استدعاءات تكرارية (recursive calls) مما قد يساهم أو قد لا يساهم ...

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

(PHP 4, PHP 5, PHP 7) تُنشئُ الدالة uniqid()‎ معرفًا فريدًا. الوصف string uniqid ([ string $prefix = "" [, bool $more_entropy = FALSE ]] ) تحصل الدالة uniqid()‎ على معرف فريد مع إمكانية إضافة سابقة له استنادًا إلى الوقت الحالي بالميكروثانية. تحذير: لا تولد الدالة uniqid()‎ قيمًا آمنة مشفرة، ويجب ألا تستخدم لأغراض التشفير. إذا كنت بحاجة إلى قيمة آمنة مشفرة، ففكر في استخدام الدالة random_int()‎ أو الدالة random_bytes()‎ أو الدالة openssl_random_pseudo_bytes()‎ بدلاً منها. تنبيه: لا تضمن الدالة uniqid()‎ تَفَرُّدَ ...

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

يزوِّد الصنف Random واجهةً لمولِّد أعدادٍ شبه عشوائيَّةٍ (pseudo-random number generator، أو يُدعى PRNG) في روبي. يُنتج مولِّد الأرقام شبه العشوائيَّة (PRNG) سلاسل محدَّدةً من البِتات تقارب العشوائيَّة الحقيقية. يمكن أن تمثِّل هذه السلاسل أعدادًا صحيحيةً (integers)، أو أعدادًا عشريةً (floats)، أو سلاسل نصيَّة ثنائيَّة (binary strings). يُهيَّأ هذا المولِّد ببذرة تعطى (seed) إمَّا من قبل النظام (system-generated) أو من قبل المستخدم (user-supplied) عبر استخدام التابع srand. يوفر تابع الصنف rand الوظيفة القاعديَّة للتابع Kernel.rand بالترافق مع معالجةٍ أفضل للقيم ...

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

يحوّل التابع‎ أوائل الكلمات في التسلسل الثنائي إلى أحرف كبيرة Title Case بترميز ASCII. البنية العامة bytes.title() القيمة المعادة يعيد التابع نسخة من التسلسل الثنائي تكون فيها أوائل الكلمات ذات أحرف كبيرة بترميز ASCII. الحروف الصغيرة في ترميز ASCII هي قيم البايتات التي تقع ضمن التسلسل: ‎b'abcdefghijklmnopqrstuvwxyz'‎. أما الحروف الكبيرة في ترميز ASCII هي قيم البايتات التي تقع ضمن التسلسل: ‎b'ABCDEFGHIJKLMNOPQRSTUVWXYZ'‎. أمثلة يوضح المثال التالي النتيجة المعادة من تطبيق التابع على سلسلة نصية: >>> 'Hello world'.title() 'Hello World' توضيح يستخدم التابع ...

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

يحوّل التابع‎ أوائل الكلمات في التسلسل الثنائي إلى أحرف كبيرة Title Case بترميز ASCII. البنية العامة bytes.title() القيمة المعادة يعيد التابع نسخة من التسلسل الثنائي تكون فيها أوائل الكلمات ذات أحرف كبيرة بترميز ASCII. الحروف الصغيرة في ترميز ASCII هي قيم البايتات التي تقع ضمن التسلسل: ‎b'abcdefghijklmnopqrstuvwxyz'‎. أما الحروف الكبيرة في ترميز ASCII هي قيم البايتات التي تقع ضمن التسلسل: ‎b'ABCDEFGHIJKLMNOPQRSTUVWXYZ'‎. أمثلة يوضح المثال التالي النتيجة المعادة من تطبيق التابع على سلسلة نصية: >>> 'Hello world'.title() 'Hello World' توضيح يستخدم التابع ...

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

مؤشر الاستقرار: 2 - مستقر توفر الوحدة zlib وظيفة الضغط باستخدام Gzip و Deflate/Inflate. ويمكن الوصول إليها باستخدام: const zlib = require('zlib'); يمكن ضغط أو فك ضغط دفقٍ ما (مثل ملف) بتوجيه بيانات دفق المصدر من خلال دفق zlib إلى دفق الوجهة: const gzip = zlib.createGzip(); const fs = require('fs'); const inp = fs.createReadStream('input.txt'); const out = fs.createWriteStream('input.txt.gz'); inp.pipe(gzip).pipe(out); من الممكن أيضا ضغط البيانات أو فك ضغطها في خطوة واحدة: const input = '.................................'; zlib.deflate(input, (err, buffer) => { if (!err) { console.log(buffer.toString('base64')); ...

التشفير (Encryption) في Laravel

مقدمة يستخدم مُشفّر Laravel مكتبة التشفير OpenSSL لتوفير تشفير AES-256 و AES-128. ننصحك بشدة باستخدام تسهيلات التشفير المضمنة في Laravel وعدم محاولة إنشاء خوارزميات التشفير المنشأة محليًا والخاصة بك. يتم توقيع جميع قيم Laravel المشفرة باستخدام رسالة رمز الاستيثاق (message authentication code - MAC) بحيث لا عدل قيمها الأساسية بمجرد تشفيرها. الضبط قبل استخدام مُشفّر Laravel، اضبط خيار المفتاح (‎(key في ملف الإعدادات config/app.php. استخدم الأمر php artisan key:generate لإنشاء هذا المفتاح لأن أمر Artisan سيستخدم مولد بايت عشوائي آمن ...

معاملات المقارنة في JavaScript

تملك JavaScript نوعين من المقارنة: نوع المقارنة الصارم (strict comparison) مثل المعامل === الذي تكون نتيجة المقارنة معه هي true إذا كانت كلا القيمتان من النوع نفسه ومحتوياتهما متطابقة؛ ونوع المقارنة الذي يحوِّل أنواع البيانات لتتوافق مع بعضها (type–converting comparison) مثل المعامل == الذي يحوِّل القيمتين إلى النوع نفسه قبل إجراء عملية المقارنة؛ أما لعمليات المقارنة النسبية (مثل ‎>=‎) فستحوَّل القيم المُقارَنة إلى قيم أوليّة ثم إلى نوع البيانات نفسه وذلك قبل إجراء عملية المقارنة. تُقارَن السلاسل النصية بناءً على ...

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

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

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

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

Math.random()‎

الدالة Math.random()‎ تعيد عددًا عشوائيًا زائفًا (pseudo-random number) عشريًا بين 0 (دون تضمين 0) و 1 (مع تضمين 1)، يمكنك بعد ذلك تحويل العدد الناتج إلى المجال الذي تريده. لاحظ أنَّ البذرة (seed) المُستخدمة في خوارزمية توليد الأرقام العشوائية سيختارها مُحرِّك JavaScript، ولا يمكن ضبطها من المستخدم. تحذير: الدالة Math.random()‎ لا توفِّر أعدادًا عشوائيةً يمكن استخدامها في التشفير. لذا لا تستخدمها لأيّ غرض يتعلق بالحماية. البنية العامة Math.random() القيمة المعادة عددٌ عشوائيٌ زائفٌ (pseudo-random number) عشريٌ بين 0 (دون تضمين ...

Date.prototype.toLocaleDateString()‎

الدالة Date.prototype.toLocaleDateString()‎ تعيد سلسلةً نصيةً صيغتها تتبع لمحليّة النظام (system locale) التي تُمثِّل قسم التاريخ من كائن Date. تسمح الوسائط locales و options الجديدة للتطبيقات بتحديد اللغة التي يجب استخدام قواعد التنسيق الخاصة بها، وتسمح بتخصيص سلوك هذه الدالة؛ لكن في الإصدارات القديمة من هذه الدالة، التي كانت تتجاهل قيمة الوسيطين locales و options، كانت ستُستخدَم المحليّة (locale) في النظام ويكون شكل السلسلة النصية المُعادة تابعًا للمتصفح ونظام التشغيل. البنية العامة dateObj.toLocaleDateString([locales [, options]]) انظر إلى قسم دعم المتصفحات لتعرف ما ...

Date.prototype.toLocaleTimeString()‎

الدالة Date.prototype.toLocaleTimeString()‎ تعيد سلسلةً نصيةً صيغتها تتبع لمحليّة النظام (system locale) التي تُمثِّل قسم الوقت من الكائن Date. تسمح الوسائط locales و options الجديدة للتطبيقات بتحديد اللغة التي يجب استخدام قواعد التنسيق الخاصة بها، وتسمح بتخصيص سلوك هذه الدالة؛ لكن في الإصدارات القديمة من هذه الدالة، التي كانت تتجاهل قيمة الوسيطين locales و options، كانت ستُستخدَم المحليّة (locale) في النظام ويكون شكل السلسلة النصية المُعادة تابعًا للمتصفح ونظام التشغيل. البنية العامة dateObj.toLocaleTimeString([locales[, options]]) انظر إلى قسم دع المتصفحات لتعرف ما هي ...

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

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

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

يخزِّن التابع ‎.data()‎ بيانات عشوائية مرتبطة بالعناصر المتطابقة أو تُعيد القيمة في مخزن البيانات المحدد للعنصر الأول في مجموعة العناصر المتطابقة. ‎.data( key, value )‎ القيمة المعادة يعيد التابع ‎.data()‎ كائنًا من النوع jQuery. الوصف يُخزن بيانات عشوائية مرتبطة بالعناصر المتطابقة. ‎.data( key, value )‎ أُضيفت مع الإصدار: 1.2.3. key سلسلة نصية مُنشَأة من الكائن String تشير إلى جزء من البيانات المراد تعيينه. value قيمة البيانات الجديدة، ويمكن أن تكون من أي نوع من أنواع JavaScript ما عدا القيمة undefined. ...

CSS/Topics/Grid

الخاصية الوصف grid الخاصية grid المختصرة في CSS تضبط جميع الخاصيات التي تُحدَّد خصائص الشبكة بوضوح (أي grid-template-rows و grid-template-columns وgrid-template-areas)، وجميع الخاصيات التي تُحدِّد خصائص الشبكة ضمنيًا (أي grid-auto-rows و grid-auto-columns و grid-auto-flow)، والخاصيات التي تُضبِط الفراغ بين الأعمدة والأسطر (أي grid-column-gap وgrid-row-gap)، وكل ذلك في قاعدة واحدة. grid-area الخاصية grid-area في CSS هي خاصية مختصرة تضبط قيمة الخاصيات grid-row-start و grid-column-start و grid-row-end و grid-column-end، مُحدَّدةً أبعاد عنصر grid وموضعه. grid-auto-columns تضبط أبعاد مسارات الأعمدة المُنشأة ضمنيًا. grid-auto-flow تضبط كيف ستعمل خوارزمية تحديد مواضع عناصر grid التلقائية. grid-auto-rows تضبط أبعاد مسارات الأسطر المُنشأة ضمنيًا. grid-column الخاصية grid-column في CSS هي خاصية مختصرة ...

التابع Range.bsearch‎ في روبي

يبحث التابع bsearch باستخدام خوارزمية البحث الثنائي (binary search) عن قيمة من المجال تحقق الشرط المعطى في مدةO (log n) ‎، إذ n يمثل حجم المجال. البنية العامة bsearch {|obj| block } → value‎ يمكنك استخدام هذا التابع بطريقتين: وضع البحث الأدنى (find-minimum mode)، أو وضع البحث العادي (find-any mode). وفي كلتا الحالتين، يجب أن تكون عناصر المجال مُرتبة (sorted) لأجل الكتلة. في وضع البحث الأدنى (يعد هذا خيارًا جيدًا في الحالات العادية)، يجب أن تُعيد الكتلة إما true أو false، ...

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

تعيد الدالة ()blue‎ المكوِّن الأزرق للون الممرَّر إليها. قد تُحسب قيمته من الصيغة HSL عند الضرورة عبر هذه الخوارزمية. البنية العامة blue($color) المعاملات ‎$color اللون المراد الحصول على قيمة مكوِّنه الأزرق. القيم المعادة تُعاد قيمة المكوِّن الأزرق للون ‎$color، وتترواح بين 0 و 255. الأخطاء والاستثناءات سيُرمى الخطأ ArgumentError إن لم يكن المعامل ‎$color لونًا. أمثلة إحدى طرائق التحقق أنَّ اللون فاتح أو غامق هو التحقق من قيمة السطوع (الدالة lightness()‎)، وعلى الرغم من أنَّ هذه الطريقة صحيحة تقنيًا، لكنها ...

تقنيات إعادة التصميم (Refactoring Techniques)

إنشاء التوابع تستهدف إعادة التصميم بشكل رئيسيٍّ إنشاء التوابع الصحيحة المناسبة، إذ تكون التوابع الطويلة سببًا للمشاكل في كثيرٍ من الحالات، وتجعل شيفرات بعض التوابع منطق التنفيذ (execution logic) غامضًا ويصبح التابع بهذا عصيَّ الفهم من جهةٍ وصعب التغييرٍ من جهة ثانية. يشمل هذا القسم من الحلول كلَّ ما يتعلق بالتوابع وإزالة التكرار (duplicates) في الشيفرة ليسمح بإجراء التطويرات المستقبليّة، وهذه التقنيات هي: استخراج التوابع (Extract Methods): والتي تتمثل بوجود أجزاء من الشيفرة يُمكن عزلها وتجميعها سويةً. دمج التوابع (Inline ...

السلاسل النصية في PHP

توفِّر PHP عددًا من الدوال التي تستخدم لمعالجة السلاسل النصية. addcslashes()‎ تضيف الدالة addcslashes()‎‎ الخطوط المائلة العكسية (backslashes) كما في لغة C. addslashes()‎ تضيف الدالة addslashes()‎ الخطوط المائلة العكسية (backslashes). bin2hex()‎ تُحوِّل الدالة bin2hex()‎ البيانات ثنائية التمثيل إلى التمثيل الست عشري. chop()‎ اسم بديل (alias) للدالة rtrim()‎. chr()‎ تعيد الدالة chr()‎ حرفًا معينًا. chunk_split()‎ تُقَسِم الدالة chunk_split()‎ سلسلةً نصيةً لكتلٍ أصغر. convert_uudecode()‎ تفك الدالة convert_uudecode()‎ ترميز سلسلة نصية مرمَّزة بالدالة convert_uuencode()‎. convert_uuencode()‎ تُرِّمز الدالة ‎convert_uuencode()‎ السلسلة النصية. count_chars()‎ تعيد الدالة ‎count_chars()‎ معلومات عن الأحرف الموجودة بالسلسلة النصية. crypt()‎ تُشفِّر الدالة ‎crypt()‎ سلسلةً نصيةً بطريقة غير قابلة ...

Date.prototype.toLocaleString()‎

الدالة Date.prototype.toLocaleString()‎ تعيد سلسلةً نصيةً صيغتها تتبع لمحليّة النظام (system locale) التي تُمثِّل الكائن Date. تسمح الوسائط locales و options الجديدة للتطبيقات بتحديد اللغة التي يجب استخدام قواعد التنسيق الخاصة بها، وتسمح بتخصيص سلوك هذه الدالة؛ لكن في الإصدارات القديمة من هذه الدالة، التي كانت تتجاهل قيمة الوسيطين locales و options، كانت ستُستخدَم المحليّة (locale) في النظام ويكون شكل السلسلة النصية المُعادة تابعًا للمتصفح ونظام التشغيل. البنية العامة dateObj.toLocaleString([locales[, options]]) انظر إلى قسم دعم المتصفحات لتعرف ما هي المتصفحات التي تدعم ...

الخاصية table-layout

الخاصية table-layout في CSS تُحدِّد الخوارزمية التي تُستخدم لضبط تخطيط خلايا وأسطر وأعمدة الجداول <table>. بطاقة الخاصية القيمة الابتدائية auto تُطبَّق على عناصر table و inline-table. قابلة للوراثة نعم قابلة للحركة لا القيمة المحسوبة كما حُدِّدَت. /* كلمات محجوزة */ table-layout: auto; table-layout: fixed; /* القيم المحجوزة */ table-layout: inherit; table-layout: initial; table-layout: unset; أمثلة القيمة fixed التخطيط الأفقي للجدول لن يعتمد على محتوى الخلايا، وإنما على عرض الجدول، وعرض الأعمدة، والإطار border والتباعد بين الخلايا border-spacing. يمكن تحديد عرض الجدول باستخدام الخاصية width، وإذا ...

السلاسل النصية في PHP

توفِّر PHP عددًا من الدوال التي تستخدم لمعالجة السلاسل النصية. addcslashes()‎ تضيف الدالة addcslashes()‎‎ الخطوط المائلة العكسية (backslashes) كما في لغة C. addslashes()‎ تضيف الدالة addslashes()‎ الخطوط المائلة العكسية (backslashes). bin2hex()‎ تُحوِّل الدالة bin2hex()‎ البيانات ثنائية التمثيل إلى التمثيل الست عشري. chop()‎ اسم بديل (alias) للدالة rtrim()‎. chr()‎ تعيد الدالة chr()‎ حرفًا معينًا. chunk_split()‎ تُقَسِم الدالة chunk_split()‎ سلسلةً نصيةً لكتلٍ أصغر. convert_uudecode()‎ تفك الدالة convert_uudecode()‎ ترميز سلسلة نصية مرمَّزة بالدالة convert_uuencode()‎. convert_uuencode()‎ تُرِّمز الدالة ‎convert_uuencode()‎ السلسلة النصية. count_chars()‎ تعيد الدالة ‎count_chars()‎ معلومات عن الأحرف الموجودة بالسلسلة النصية. crypt()‎ تُشفِّر الدالة ‎crypt()‎ سلسلةً نصيةً بطريقة غير قابلة ...

القيمة

نوع البيانات <image> في CSS يستعمل لتمثيل صورة ثنائية الأبعاد؛ وهنالك نوعان من الصور: الصور التقليدية التي يُشار إليها عادةً باستخدام رابط URL، والصور المولّدة ديناميكيًا، مثل التدرجات اللونية <gradient>. يمكن استخدام القيمة <image> مع عدد كبير من خاصيات CSS مثل background-image و border-image و content و list-style-image و cursor. دعم المتصفحات الميزة Chrome Firefox Internet Explorer Safari Opera <url> مدعومة مدعومة مدعومة مدعومة مدعومة <gradient> 26.0 16.0 10.0 6.1 12.1 أنواع الصور يمكن أن تتعامل CSS مع أنواع الصور ...

الخاصية grid-template-areas

الخاصية grid-template-areas في CSS تضبط أسماء مناطق gird (أي grid areas). بطاقة الخاصية القيمة الابتدائية none تُطبَّق على حاويات grid. قابلة للوراثة لا قابلة للتحريك لا القيمة المحسوبة كما حُدِّدَت. /* كلمة محجوزة */ grid-template-areas: none; /* <string> سلاسل نصية */ grid-template-areas: "a b"; grid-template-areas: "a b b" "a c d"; /* القيم العامة */ grid-template-areas: inherit; grid-template-areas: initial; grid-template-areas: unset; هذه المناطق ليست مرتبطةً بأيّ عنصر grid، لكن ...

الصنف lzma.LZMACompressor في بايثون

تنشئ هذه الدالة البانية كائن compressor جديد، ويمكن استخدام هذا الكائن لضغط البيانات تزايدياً. راجع توثيق الدالة compress()‎ لضغط البيانات دفعة واحدة. البنية العامة lzma.LZMACompressor(format=FORMAT_XZ, check=-1, preset=None, filters=None) المعاملات يحدّد المعامل format نوع تنسيق الحاوية الذي يجب استخدامه، ويأخذ القيم التالية: FORMAT_XZ: تنسيق الحاوية ‎.xz هذا هو التنسيق الافتراضي. FORMAT_ALONE: تنسيق الحاوية ‎.lzma القديم. هذا التنسيق أكثر محدودية من التنسيق ‎.xz، ولا يدعم اختبارات السلامة integrity checks أو المرشحات المتعددة multiple filters. Format_RAW: تدفق بيانات خام، ولا يستخدم تنسيق حاوية. ...

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

تعيد الدالة ()red قيمة المكوِّن الأحمر للون الممرَّر إليها. تُحسب القيمة من الصيغة HSL عند الضرورة عبر هذه الخوارزمية. البنية العامة red($color) المعاملات ‎$color اللون المراد الحصول على قيمة مكوِّنه الأحمر. القيم المعادة تُعاد قيمة المكوِّن الأحمر للون ‎$color، وتتراوح بين 0 و 255. الأخطاء والاستثناءات سيُرمى الخطأ ArgumentError إن لم يكن المعامل ‎$color لونًا. أمثلة إحدى طرائق التحقق أنَّ اللون فاتح أو غامق هو التحقق من قيمة السطوع (الدالة lightness()‎)، وعلى الرغم من أنَّ هذه الطريقة صحيحة تقنيًا، لكنها قد ...

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

تعيد الدالة ()green‎ قيمة المكوِّن الأخضر للون الممرَّر إليها. تُحسب القيمة من الصيغة HSL عند الضرورة عبر هذه الخوارزمية. البنية العامة green($color) المعاملات ‎$color اللون المراد الحصول على قيمة مكوِّنه الأخضر. القيم المعادة تُعاد قيمة المكوِّن الأخضر للون ‎$color، وتتراوح بين 0 و 255. الأخطاء والاستثناءات سيُرمى الخطأ ArgumentError إن لم يكن المعامل ‎$color لونًا. أمثلة إحدى طرائق التحقق أنَّ اللون فاتح أو غامق هو التحقق من قيمة السطوع (الدالة lightness()‎)، وعلى الرغم من أنَّ هذه الطريقة صحيحة تقنيًا، لكنها ...

وحدة الخيوط العاملة (Worker Threads) في Node.js

مؤشر الاستقرار: 1 - تجريبي توفر وحدة worker طريقة لإنشاء بيئات متعددة تعمل علي خيوط مستقلة، ولإنشاء قنوات رسائل بينها. ويمكن الوصول إليها باستخدام الراية ‎--experimental-worker flag بالإضافة إلى: const worker = require('worker_threads'); وتفيد الخيوط العاملة (Workers) في أداء عمليات JavaScript كثيفة الاستخدام لوحدة المعالجة المركزية؛ ويجب ألَّا تستخدم في عمليات الإدخال والإخراج I/O، إذ تتعامل آلياتُ Node.js المدمجة لتنفيذ العمليات بشكل غير متزامن معها بشكل أكثر كفاءة من خيوط Worker. علي عكس العمليات التابعة أو عند استخدام وحدة cluster، يمكن ...

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