نتائج البحث

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

الدالة 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" هو ناتج دمج المحرفين ...

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