نتائج البحث

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

استخرج الواجهات (Extract Interface)

المشكلة يستخدم العديد من العملاء نفس الجزء من واجهة الصنف. حالة أخرى: عندما يوجد نفس الجزء من الواجهة في صنفين. الحل نقل هذا الجزء المتطابق إلى الواجهة الخاصة به. مثال قبل إعادة التصميم استخدام التابعين ()getRate و ()hasSpecialSkill في الصنف Employee بكثرة: يستخدم العديد من العملاء نفس الجزء من واجهة الصنف. بعد إعادة التصميم استخراج هذين التابعين إلى واجهة خاصة بهما تدعى Billable: تقل هذا الجزء المتطابق إلى الواجهة الخاصة به. لم إعادة التصميم؟ تكون الواجهات مناسبة جدًا عندما تلعب ...

CSS/Topics/User Interface

الخاصية الوصف caret-color تُحدِّد ما هو لون مؤشر الإدخال النصي (وهي الإشارة التي تظهر للإشارة إلى موضع الحرف النصي الذي سيدخله المستخدم) ضمن عنصر مثل <input> أو أي عنصر آخر له الخاصية contenteditable. الشكل الافتراضي لمؤشر الإدخال هو خطٌ رأسيٌ يومض لتسهيل ملاحظته، ويكون لونه الافتراضي هو الأسود، لكن يمكن تعديله باستخدام هذه الخاصية. cursor تُحدِّد ما هو شكل مؤشر الفأرة الذي سيُعرَض عندما تمر الفأرة فوق العنصر. outline الخاصية outline في CSS هي خاصية مختصرة تُستخدَم لضبط خاصية أو أكثر من الخاصيات outline-style و outline-width و outline-color في آنٍ واحد. ...

الواجهة ‎‎Annotation في Kotlin

هي الواجهة الأساسيّة التي يُعرَّف استخدامها (implemented) ضمنيًا في جميع واجهات التوصيفات (annotation interfaces)، وللمزيد من التفاصيل راجع التوصيفات (annotations) في لغة Kotlin. interface Annotation الدوال المورثة (Inherited Functions) equals تتحقق الدالة equals()‎ إذا ما كان الكائن المُمرّر إليها يساوي الكائن الذي استدعيت معه. hashCode تعيد الدالة hashCode()‎ الشيفرة Hash الخاصّة بالكائن الذي استُدعي معها. toString تحول الدالة toString()‎ الكائن الذي يُستدعى معه إلى سلسلة نصية (String). الخاصيات الإضافية (Extension Properties) annotationClass تُستخدَم هذه الخاصيّة للحصول على نسخةٍ (instance) من الصنف KClass بحسب نوع التوصيف الحاليّ. ...

الأصناف البديلة (alternative) ذات الواجهات (interfaces) المختلفة

توصيف المشكلة التطابق بالمهام (function) ما بين صنفين (classes) ولكن بأسماءٍ مختلفةٍ لتوابعهما (methods). أسبابها عدم دراية المبرمج بوجود صنفٍ آخر يكافِئ بمهامّه مهامّ الصنف الحالي الذي ينشِئه. وما الحل؟ حذف أحد الصنفين بعد تنفيذ إحدى الحلول الآتية: إعادة تسمية التوابع (methods) لتصبح متطابقةً بكافّة الأصناف البديلة (alternative) (أي الأصناف المتكافئة بالمهام). توحيد التوقيع (signature) وتعريف الاستخدام ما بين التوابع، وذلك إمّا بنقل التابع (move method) أو إضافة المعاملات (add parameters) أو دمج التوابع عبر المعاملات (parameterize method). إن كان ...

الواجهة ‎‎Appendable‎ في Kotlin

actual typealias Appendable = Appendable المنصة والإصدار المطلوبان: Kotlin 1.1، JVM. actual interface Appendable المنصة المطلوبة: JS. الدوال append تضيف هذه الدالة المحرف الممرر إليها أو كامل محتوى الكائن المُمرّر إليها أو جزءًا منه إلى الكائن المستدعى معها.  الدوال الموروثة equals تتحقق هذه الدالة إذا ما كان الكائن المُمرّر إليها يساوي الكائن الذي استدعي معها. hashCode تعيد هذه الدالة الشيفرة Hash الخاصّة بالكائن الذي استُدعي معها. toString تحول هذه الدالة الكائن الذي يُستدعى معه إلى سلسلة نصية (String). مصادر صفحة الواجهة Appendable في التوثيق ...

الواجهة ‎‎Appendable‎ في Kotlin

actual typealias Appendable = Appendable المنصة والإصدار المطلوبان: Kotlin 1.1، JVM. actual interface Appendable المنصة المطلوبة: JS. الدوال append تضيف هذه الدالة المحرف الممرر إليها أو كامل محتوى الكائن المُمرّر إليها أو جزءًا منه إلى الكائن المستدعى معها.  الدوال الموروثة equals تتحقق هذه الدالة إذا ما كان الكائن المُمرّر إليها يساوي الكائن الذي استدعي معها. hashCode تعيد هذه الدالة الشيفرة Hash الخاصّة بالكائن الذي استُدعي معها. toString تحول هذه الدالة الكائن الذي يُستدعى معه إلى سلسلة نصية (String). مصادر صفحة الواجهة Appendable في التوثيق ...

الخاصية ‎‎annotationClass في Kotlin

تُستخدَم هذه الخاصيّة للحصول على نسخةٍ (instance) من الصنف KClass بحسب نوع التوصيف الحاليّ. البنية العامة val <T : Annotation> T.annotationClass: KClass<out T> القيم المعادة نسخةٌ من الصنف KClass متوافقةٌ مع نوع التوصيف (annotation) الحاليّ. انظر أيضًا التوصيفات (annotations) في لغة Kotlin. الصنف KClass  : أحد أصناف لغة Kotlin والمُستخدَم لإجراء عمليّات التحقُّق الداخليّة (introspection) مثل: isAbstract ومرئية الوصول (visibility) وغيرها. الواجهة Annotation: الواجهة الأساسيّة التي يُعرَّف استخدامها (implemented) ضمنيًا في جميع واجهات التوصيفات (annotation interfaces). مصادر صفحة الخاصيّة annotationClass في ...

الخاصية ‎‎annotationClass في Kotlin

تُستخدَم هذه الخاصيّة للحصول على نسخةٍ (instance) من الصنف KClass بحسب نوع التوصيف الحاليّ. البنية العامة val <T : Annotation> T.annotationClass: KClass<out T> القيم المعادة نسخةٌ من الصنف KClass متوافقةٌ مع نوع التوصيف (annotation) الحاليّ. انظر أيضًا التوصيفات (annotations) في لغة Kotlin. الصنف KClass  : أحد أصناف لغة Kotlin والمُستخدَم لإجراء عمليّات التحقُّق الداخليّة (introspection) مثل: isAbstract ومرئية الوصول (visibility) وغيرها. الواجهة Annotation: الواجهة الأساسيّة التي يُعرَّف استخدامها (implemented) ضمنيًا في جميع واجهات التوصيفات (annotation interfaces). مصادر صفحة الخاصيّة annotationClass في ...

التوصيفات (Annotations) في لغة Kotlin

التصريح عن التوصيف (Annotation Declaration) تُعدُّ التوصيفات إحدى الوسائل لإضافة بياناتٍ توصيفيّةٍ (metadata) إلى الشيفرة، وللتصريح عن التوصيف يُضاف المُحدِّد annotation قبل اسم الصنف، مثل: annotation class Fancy وقد تُحدَّد بعض خواصّ التوصيفات (annotation attributes) باستخدام التوصيفات الآتية (meta-annotations) لتوصيفات الصنف: ‎@Target لتحديد نوع العناصر التي يمكن توصيفها مثل الأصناف (classes) والدوال (functions) والخاصّيّات (properties) والتعابير (expressions) و... إلخ. ‎@Retention لتحديد فيما إن كان التوصيف مُخزَّنًا في ملفات الأصناف المُترجَمة، أو مرئيًا عبر انعكاسٍ (reflection) أثناء التنفيذ (runtime) (وكلاهما محقُّق بالحالة ...

الصنف ‎‎Function‎ في Kotlin

تمثل الواجهة Function قيمةً لنوع وظيفي (functional type) -مثل تعبير lambda-، أو دالة مجهولة، أو مرجع دالة. interface Function<out R> إذ يعيد المعامل R نوع الدالة. الدوال الموروثة equals تتحقق الدالة equals()‎ إذا ما كان الكائن المُمرّر إليها يساوي الكائن الذي استدعيت معه. وأيُّ تعريف لاستخدام هذه الدالة يجب أن يكون: hashCode تعيد الدالة hashCode()‎ الشيفرة Hash الخاصّة بالكائن الذي استُدعي معها. تُحقِّق هذه الدالة الشرطين الآتيين دائمًا: toString تحول الدالة toString()‎ الكائن الذي يُستدعى معه إلى سلسلة نصية (String). الدوال الإضافية (Extension Functions) reflect ...

الواجهة ‎‎MatchResult‎ في Kotlin

تمثل الواجهة MatchResult نتائج مطابقة واحدة لتعبير نمطي. interface MatchResult الأنواع Destructured يوفر هذا الصنف مركبات الإسناد بالتفكيك (destructuring assignment) لمجموعة من القيم. الخاصيات destructured‎ تمثل هذه الخاصية نسخةً من الصنف Destructured توفّر مكونات عملية الإسناد بالتفكيك (destructuring assignment) التي تطبق على قيم المجموعة المُطابقة. groupValues تمثل هذه الخاصية قائمة بقيم المجموعة المفهرسة المتطابقة. groups تمثل هذه الخاصية مجموعةً (collection) تضم جميع المجموعات (groups) المتطابقة باستعمال تعبير نمطي محدد. range تمثل هذه الخاصية مجال الفهارس الذي يحدد مكان مُطابقة تعبير نمطي محدد في السلسلة النصية الأصلية. value تمثل هذه الخاصية السلسلة النصية المُدخلة، أو ...

الواجهة ‎‎MatchResult‎ في Kotlin

تمثل الواجهة MatchResult نتائج مطابقة واحدة لتعبير نمطي. interface MatchResult الأنواع Destructured يوفر هذا الصنف مركبات الإسناد بالتفكيك (destructuring assignment) لمجموعة من القيم. الخاصيات destructured‎ تمثل هذه الخاصية نسخةً من الصنف Destructured توفّر مكونات عملية الإسناد بالتفكيك (destructuring assignment) التي تطبق على قيم المجموعة المُطابقة. groupValues تمثل هذه الخاصية قائمة بقيم المجموعة المفهرسة المتطابقة. groups تمثل هذه الخاصية مجموعةً (collection) تضم جميع المجموعات (groups) المتطابقة باستعمال تعبير نمطي محدد. range تمثل هذه الخاصية مجال الفهارس الذي يحدد مكان مُطابقة تعبير نمطي محدد في السلسلة النصية الأصلية. value تمثل هذه الخاصية السلسلة النصية المُدخلة، أو ...

الصنف ‎‎Comparable‎ في Kotlin

الأصناف التي ترث من الواجهة Comparable تملك ترتيبًا إجماليًّا مُعرَّفًا بين نُسخِها. interface Comparable<in T> الدوال compareTo توازن الدالة compareTo()‎ بين الكائن الذي استُدعي معها والكائن المُمرّرة إليها ثمَّ تعيد القيمة 0 إن كانا متساويين، أو قيمة سالبة إن كانت القيمة الأولى (قيمة العنصر الذي استُدعيت معه) أصغر من القيمة الثانية، أو قيمة موجبة إن كانت القيمة الأولى أكبر من القيمة الثانية. الدوال الموروثة equals تحدد الدالة equals()‎ إذا ما كان الكائن المُمرّر إليها يساوي الكائن الذي استدعيت معها. hashCode تعيد الدالة hashCode()‎ قيمة ...

الصنف ‎‎Comparable‎ في Kotlin

الأصناف التي ترث من الواجهة Comparable تملك ترتيبًا إجماليًّا مُعرَّفًا بين نُسخِها. interface Comparable<in T> الدوال compareTo توازن الدالة compareTo()‎ بين الكائن الذي استُدعي معها والكائن المُمرّرة إليها ثمَّ تعيد القيمة 0 إن كانا متساويين، أو قيمة سالبة إن كانت القيمة الأولى (قيمة العنصر الذي استُدعيت معه) أصغر من القيمة الثانية، أو قيمة موجبة إن كانت القيمة الأولى أكبر من القيمة الثانية. الدوال الموروثة equals تحدد الدالة equals()‎ إذا ما كان الكائن المُمرّر إليها يساوي الكائن الذي استدعيت معها. hashCode تعيد الدالة hashCode()‎ قيمة ...

الانتقال الفرعيّ Delegation في Kotlin

أثبت نموذج الانتقال الفرعيّ فعّاليته كبديلٍ جيّدٍ عن وراثة تعريف الاستخدام (implementation inheritance) إذ تدعم لغة Kotlin هذه الميّزة بشكلٍ طبيعيّ دون الحاجة إلى أيّ نوع قياسيّ من الشيفرات، وبالتالي فإنّ الصنف المُشتقّ (Derived) يرِث من الواجهة (Base) وينقل فرعيًا (delegate) كلَّ توابعه العامّة (public methods) إلى كائنٍ مُحدَّدٍ، كما في الشيفرة الآتية: interface Base { fun print() } class BaseImpl(val x: Int) : Base { override fun print() { print(x) } } class Derived(b: Base) : Base ...

استخدام لغة Kotlin في نطاق JavaScript

تتيح لغة Kotlin إمكانيّة استهداف لغة JavaScript من خلال تحويل (transpiling) شيفرات Kotlin إلى ما يماثلها في JavaScript ؛ إذ تستهدف بالوقت الحاليّ معيارECMAScript 5.1، ومن المُخطَّط له أيضًا التوافق مع معيار ECMAScript 2015 لاحقًا. عند استخدام لغة Kotlin بهدف كتابة شيفرات JavaScript فستُحوَّل الشيفرات المكتوبة بلغة Kotlin (بعدِّها جزءًا من المشروع والمكتبة القياسيّة في Kotlin) إلى شيفرة JavaScript، ولكنّ هذا لا يشمل أيًّا ممّا يتعلَّق ببيئة JDK أو JVM أو Java أو أيّ من منصّاتها أو مكتباتها المُستخدَمة، ويُستبعَد ...

الأنواع المُعمَّمة (Generics) في لغة Kotlin

معاملات الأنواع (Type Parameters) قد تحتوي الأصناف (classes) -كما هو الحال في لغة Java- على معاملات للأنواع (type parameters) مثل: class Box<T>(t: T) { var value = t } ولإنشاء كائنٍ (instance) من هذا الصنف يجب تحديد النوع كما في الشيفرة الآتية: val box: Box<Int> = Box<Int>(1) أمّا إن كان بالإمكان معرفة (infer) المعاملات إمّا من خلال معاملات الباني (constructor arguments) أو بأيّ وسيلةٍ أخرى فيمكن حينئذٍ حذف نوع المعاملات، مثل: val box = Box(1) // القيمة 1 لها ...

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

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

المشاريع متعددة المنصات (Multiplatform) في لغة Kotlin

ملاحظة: ما تزال ميّزة تعدّد منصّات العمل تجريبيّة في الإصدار Kotlin 1.2 وبالتالي فإن ما تحتويه هذه الصفحة قد يخضع للتغيير في إصدارات Kotlin القادمة. يسمح مشروع Kotlin متعدّد المنصّات بترجمة الشيفرة ذاتها إلى عدّة منصّاتٍ للعمل (platforms)، وتدعم Kotlin حاليًا البيئات: JVM و JavaScript بالإضافة إلى Native والتي لا زلت قيد التطوير وستُضاف رسميًا فيما بعد. بُنية المشروع متعدّد المنصّات (Multiplatform Project Structure) يتألف من ثلاثة أنواع من الوحدات (modules): الوحدة المشتركة (common module): تحتوي على الشيفرة العامّة التي ...

الاستثناءات (Exceptions) في لغة Kotlin

أصناف الاستثناءات (Exception Classes) تنحدر كلّ أصناف الاستثناءات في لغة Kotlin من الصنف Throwable حيث يوجد لكلِّ استثناءٍ رسالةٌ للإعلام به وتتبُّع تكديسي (stack trace) وسببٌ اختياريّ. ويُستخدَم التعبير throw لرمي كائن استثناءٍ بالشكل: throw MyException("Hi There!") أمّا تعبير try فهو مُستخدَمٌ لكشف الاستثناء كما في الشيفرة: try { // شيفرة } catch (e: SomeException) { // معالجات الاستثناء } finally { // قسم اختياريّ } ومن الممكن أن يحتوي الاستثناء أكثر من قسمٍ واحدٍ من catch أو ...

مُحدِّدات الوصول (Visibility Modifiers) في لغة Kotlin

تُعيِّن مُحدِّدات الوصول قابليةَ الوصول إلى كلٍّ من الأصناف (classes) والكائنات (objects) والواجهات (interfaces) والدوال (functions) والخاصّيّات (properties) ودوال الوصول إليها من النوع setters (لأن مُحدِّد الوصول إلى getter مماثلٌ للوصول إلى الخاصّيّة نفسها)، وهناك أربعة أنواعٍ من المُحدِّدات وهي: private و protected و internal و public والنوع الافتراضيّ منها هو public (يُستخدم عند عدم وجود تصريحٍ عن إحداها)، وفيما يلي شرح لكيفيّة تطبيق المُحدِّدات على أنواعٍ مختلفةٍ من التصريحات (declarations). الحزم (Packages) يمكن تعريف كلٍّ من الدوال والخاصّيّات والأصناف ...

الواجهة ‎‎MatchNamedGroupCollection‎ في Kotlin

توسع هذه الواجهة الصنف MatchGroupCollection عبر تعريف طريقةٍ لجلب المجموعات المتطابقة (matched groups) عن طريق أسمائها عندما يدعم Regex ذلك. interface MatchNamedGroupCollection : MatchGroupCollection الإصدار المطلوب: kotlin 1.1. الدوال (Functions) get تعيد هذه الدالة نسخةً من الصنف MatchGroup إن كانت المجموعة التي تحمل الاسم المُمرّر إليها متطابقَة. الدوال الموروثة (Inherited Functions) get تعيد هذه الدالة نسخةً من الصنف MatchGroup إن كانت المجموعة التي تحمل الاسم المُمرّر إليها متطابقَة. الخاصيات الإضافية (Extension Properties) indices تُستخدَم هذه الخاصيّة للحصول على الفهارس الصحيحة (valid indices) للمصفوفة أو المجموعة (collection). الدوال ...

الواجهة ‎‎MatchGroupCollection‎ في Kotlin

تمثل الواجهة MatchGroupCollection مجموعةً (collection) من الفئات المرصودة (captured groups) عند إجراء مطابقة واحدة لتعبير نمطي ما. حجم المجموعة يساوي groupCount + 1، إذ يمثل groupCount عدد الفئات (groups) في التعبير النمطي. الفئات مُفهرسة بدءًا من 1 وحتى groupCount، والفئة ذات الفهرس 0 تقابل كل ما تطابق. يمكن أن يساوي بعض عناصر المجموعة القيمة العدمية (null) في حال كانت الفئة المقابلة في التعبير النمطي اختيارية، ولم يُرصَد أي تطابق من قبل تلك الفئة. interface MatchGroupCollection : Collection<MatchGroup?> الدوال get تعيد هذه ...

الواجهة ‎‎MatchGroupCollection‎ في Kotlin

تمثل الواجهة MatchGroupCollection مجموعةً (collection) من الفئات المرصودة (captured groups) عند إجراء مطابقة واحدة لتعبير نمطي ما. حجم المجموعة يساوي groupCount + 1، إذ يمثل groupCount عدد الفئات (groups) في التعبير النمطي. الفئات مُفهرسة بدءًا من 1 وحتى groupCount، والفئة ذات الفهرس 0 تقابل كل ما تطابق. يمكن أن يساوي بعض عناصر المجموعة القيمة العدمية (null) في حال كانت الفئة المقابلة في التعبير النمطي اختيارية، ولم يُرصَد أي تطابق من قبل تلك الفئة. interface MatchGroupCollection : Collection<MatchGroup?> الدوال get تعيد هذه ...

الواجهة ‎‎MatchNamedGroupCollection‎ في Kotlin

توسع هذه الواجهة الصنف MatchGroupCollection عبر تعريف طريقةٍ لجلب المجموعات المتطابقة (matched groups) عن طريق أسمائها عندما يدعم Regex ذلك. interface MatchNamedGroupCollection : MatchGroupCollection الإصدار المطلوب: kotlin 1.1. الدوال (Functions) get تعيد هذه الدالة نسخةً من الصنف MatchGroup إن كانت المجموعة التي تحمل الاسم المُمرّر إليها متطابقَة. الدوال الموروثة (Inherited Functions) get تعيد هذه الدالة نسخةً من الصنف MatchGroup إن كانت المجموعة التي تحمل الاسم المُمرّر إليها متطابقَة. الخاصيات الإضافية (Extension Properties) indices تُستخدَم هذه الخاصيّة للحصول على الفهارس الصحيحة (valid indices) للمصفوفة أو المجموعة (collection). الدوال ...

الأصناف المتداخلة (Nested) والداخلية (Inner) في لغة Kotlin

الأصناف المتداخلة (Nested) يُمكن للأصناف أن تتداخل فيما بينها، ويتَّضح ذلك عبر المثال الآتي: class Outer {    private val bar: Int = 1    class Nested {        fun foo() = 2    } } val demo = Outer.Nested().foo() // == 2 إذ يتوضَّع الصنف باسم Nested داخل الصنف Outer ، وعند تعريف المتغيِّر demo فهو سيأخذ القيمة من الدالة foo والموجودة في الصنف Nested المُعرَّف بالصنف Outer والتي هي القيمة 2. الأصناف الداخليَّة (Inner Classes) يُمكن تحديد الصنف كصنفٍ داخليٍّ بالكلمة المفتاحيّة inner وذلك بهدف إتاحة الوصول لكافّة عناصر ...

المجموعات (Collections): القائمة (List) والمجموعة (Set) و الخارطة (Map) في لغة Kotlin

تُميِّز لغة Kotlin (على خلاف العديد من لغات البرمجة) بين المجموعة المتغيّرة (mutable) والثابتة (immutable)، وتساهم قدرتُها على التحكُّم الدقيق في الحالات التي يُسمَح فيها بتعديل المجموعات في التقليل من الأخطاء البرمجية (bugs) وتحقيق تصميمٍ أفضل لواجهات API. ومن المهمِّ معرفة الفوارق ما بين العرض (view) الثابت للقراءة فقط (read-only) للمجموعة المتغيّرة والمجموعة الثابتة الفعليّة، إذ من السهل إنشاء كلِّ منهما ولكن نظام الأنواع في Kotlin لا يوضّح الفرق بينهما، ويقع ذلك على عاتق المتعلِّم. يُعدُّ النوع List<out T>‎ في ...

أصناف البيانات (Data Classes) في لغة Kotlin

تُنشَأ بعض الأصناف بهدف تخزين البيانات فيها بشكلٍ أساسيّ، وبالتالي فإنّ كلّ ما تقوم به هذه الأصناف من وظائف يرتبط بالبيانات، وهذا ما يُسمى بأصناف البيانات في لغة Kotlin وتُعرَّف بالمُحدِّد data كما يلي: data class User(val name: String, val age: Int) قواعد عامّة يقوم المُترجِم في الأصناف من هذه النوع باشتقاق العناصر (deriving members) الآتية من كلِّ الخاصّيّات المُعرَّفة في الباني الأساسيّ (primary constructor): كلًا من equals()‎ و hashCode()‎ الدالة toString()‎ بشكلها ‎"User(name=John, age=42‎)‎"‎ الدوال بالصيغة componentN() functions بما ...

الخاصّيّات المُعمَّمة (Delegated Properties) في لغة Kotlin

 استخدام الخاصّيّات المُعمَّمة تستطيع في لغة Kotlin تعريف استخدام (implement) الخاصّيّات يدويًا مرارًا وتكرارًا بكل مرةٍ تحتاجها، ولكن من الأسهل تعريف استخدامها مرةً واحدةً وتخزين هذا التعريف في المكتبة (library) للاستفادة منه كلما دعت الحاجة، وهذا يشمل: الخاصّيّات الكسولة (Lazy property): تُحسب قيمتها مرةً واحدةً فقط وذلك عند الوصول إليها للمرّة الأولى. الخاصّيّات المُراقَبة (observable property): إذ يُستدعَى مسؤول الانتظار (listener) عند حدوث أي تغييرٍ في الخاصّيّة. تخزين الخاصّيّات في map بدلًا من حقلٍ منفصلٍ لكلِّ منها. وتشمل لغة Kotlin ...

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

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

الواجهات في TypeScript

مقدّمة تركيز التحقق من الأنواع (type-checking) على شكل (shape) القيم من مبادئ TypeScript الأساسية. يُصطلَح عليه أحيانًا بالتعبير duck typing أو التحقق من الأنواع الفرعيّة هيكليًّا (structural subtyping). تعمل الواجهات في TypeScript على تسمية هذه الأنواع، وهي طريقة قويّة لتعريف عقود (contracts) داخل شيفرتك أو عقود مع شيفرةٍ خارج مشروعك. واجهة بسيطة لنبدأ بمثال بسيط لنفهم كيفيّة عمل الواجهات: function printLabel(labelledObj: { label: string }) { console.log(labelledObj.label); } let myObj = {size: 10, label: "Size 10 Object"}; printLabel(myObj); سيتحقّق مدقّق ...

دمج التصريحات في TypeScript

مقدمة تصِف بعض المبادئ الفريدة الموجودة في لغة TypeScript شكل كائنات JavaScript على مستوى الأنواع. مبدأ دمج التصريحات (declaration merging) من المزايا التي تنفرد بها TypeScript. سيُساعد فهم هذا المبدأ على العمل مع شيفرة JavaScript الموجودة مسبقًا. إضافة إلى أنّها توفّر قدرة على إعمال مبادئ تجريد (abstraction concepts) أكثر تقدّمًا. نعني بدمج التصريحات في هذه الصفحة بأنّ المترجم يدمج تصريحين مختلفين لهما نفس الاسم في تعريف واحد. يمتلك هذا التعريف المندمج مزايا التصريحين الأصليّين. يُمكن دمج أي عدد من التصريحات، ...

الروتينات المساعدة (Coroutines) في لغة Kotlin

ملاحظة: ما تزال الروتينات المساعدة تجريبيةً في الإصدار Kotlin 1.1. الروتينات المساعدة (Coroutines) تُنشِئ بعض الواجهات API عملياتٍ طويلة التنفيذ (مثل عمليات الدخل والخرج للشبكة أو الدخل والخرج للملفات أو الأعمال المُعقَّدة في الوحدتين CPU أو GPU)، وهذا سيجبر المُستدعي على تجميد تنفيذه (block) إلى حين إتمامها، ولذا توفِّر الروتينات المساعدة طريقةً لمنع تجميد الخيوط (threads) وإجراء عمليةٍ أقلَّ كلفةً (بالنسبة لزمن المعالجة) وأكثر قابليةً للتحكم، ألا وهي الإيقاف المؤقت (suspension) للروتينات المساعدة. تبسّط الروتينات المساعدة البرمجة غير المتزامنة (asynchronous ...

الأصناف (Classes) والوراثة (Inheritance) في لغة Kotlin

تُستخدم الكلمة المفتاحيّة class للتصريح (declaration) عن الصنف بالصيغة الآتية (اسم الصنف Invoice): class Invoice { } ويحتوي التصريح على اسم الصنف (class name) وترويسة الصنف (class header) (والتي تُحدِّد معاملات النوع والباني الأساسيّ ...إلخ.) وبُنية الصنف (class body) محاطةً بالقوسين {}، وإن كلًا من ترويسة الصنف وبُنيته اختياريتان؛ فإذا كان الصنف خاليًا لا حاجة للأقواس، مثل: class Empty الباني (Constructor) يوجد لكلّ صنف في لغة Kotlin بانٍ رئيسيّ (primary) واحدٌ وبانٍ -أو أكثر- ثانويّ (secondary)، إذ يُعدُّ الباني الرئيسيّ جزءًا من ...

المُنشِئ الحافظ للنوع (Type-Safe Builder) في لغة Kotlin

المُنشِئ الحافظ للنوع (Type-Safe Builder) يُتاح بناءُ المُنشِئ الستاتيكيّ الحافظ للنوع في لغة Kotlin باستخدام الدوال ذات التسمية المعبِّرة كمُنشِئ (builder) بالإضافة إلى قيم حرفية (literals) للدوال مع المستقبِل (receiver)، إذ يسمح المُنشِئ الحافظ للنوع ببناء لغات مُخصَّصة المجال (DSL) بالاعتماد على Kotlin بما يتناسب مع إنشاء بُنى البيانات الهرميّة المعقَّدة بطريقةٍ نصف تصريحية (semi-declarative)، وهذه بعض الأمثلة من حالات استخدامه: توليد ترميزٍ (markup) باستخدام شيفرة Kotlin مثل HTML أو XML تصميم أجزاء واجهات المستخدم (UI) برمجيًا مثل Anko ضبط ...

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

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

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

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

الأصناف الواسعة (Large Classes)

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

التعمق في ملفات التصريحات في TypeScript

التعمق في نظرية ملفّات التعريف (Definition File Theory) هيكلة الوحدات لتحمل نفس شكل الواجهة البرمجية (API) الذي تريده بالضبطِ صعبٌ نوعًا ما. على سبيل المثال، قد نرغب من وحدةٍ قد تُستدعى بالكلمة المفتاحية ‎new‎ أو بدونها أن تنتج أنواعًا مختلفة، مع امتلاك عدّة أنواعٍ مسمّاةٍ موجودة في تسلسلٍ ما، وبعض الخاصيات على كائن الوحدة كذلك. عبر قراءة هذا الدليل، ستحصل على الأدوات اللازمة لكتابة ملفّات تعريفات معقّدة ذات واجهة برمجيّة سهلة الاستخدام. يركّز هذا الدليل على مكتبات الوحدات أو مكتبات ...

الصنف ‎‎CharSequence‎ في Kotlin

تمثل الواجهة CharSequence سلسلةً من المحارف قابلةً للقراءة. interface CharSequence الخاصيات length تمثل الخاصية CharSequence.length عدد عناصر سلسلة المحارف (CharSequence) المستدعاة معها. الدوال get تجلب الدالة get()‎‎ المحرف ذا الفهرس الممرَّر إليها من سلسلة المحارف المستدعاة معها. subSequence تجلب الدالة subSequence()‎‎ جزءًا محددًا يقع في سلسلة المحارف التي استٌدعيت معها. الدوال الموروثة (Inherited Functions) equals تتحقق الدالة equals()‎ إذا ما كان الكائن المُمرّر إليها يساوي الكائن الذي استدعيت معه.  hashCode تعيد الدالة hashCode()‎ الشيفرة Hash الخاصّة بالكائن الذي استُدعي معها. toString تحول الدالة toString()‎ الكائن الذي يُستدعى معه إلى سلسلة نصية (String). الخاصيات الإضافية (Extension Properties) ...

الصنف ‎‎CharSequence‎ في Kotlin

تمثل الواجهة CharSequence سلسلةً من المحارف قابلةً للقراءة. interface CharSequence الخاصيات length تمثل الخاصية CharSequence.length عدد عناصر سلسلة المحارف (CharSequence) المستدعاة معها. الدوال get تجلب الدالة get()‎‎ المحرف ذا الفهرس الممرَّر إليها من سلسلة المحارف المستدعاة معها. subSequence تجلب الدالة subSequence()‎‎ جزءًا محددًا يقع في سلسلة المحارف التي استٌدعيت معها. الدوال الموروثة (Inherited Functions) equals تتحقق الدالة equals()‎ إذا ما كان الكائن المُمرّر إليها يساوي الكائن الذي استدعيت معه.  hashCode تعيد الدالة hashCode()‎ الشيفرة Hash الخاصّة بالكائن الذي استُدعي معها. toString تحول الدالة toString()‎ الكائن الذي يُستدعى معه إلى سلسلة نصية (String). الخاصيات الإضافية (Extension Properties) ...

JSX في TypeScript

مقدمة JSX بنيةٌ (syntax) مشابهةٌ للغة XML يُمكن تضمينها وتحويلها إلى شيفرة JavaScript صالحة، لكن آلية عملية التحويل تختلف من تطبيق (implementation) إلى آخر. اشتهرت JSX باستخدامها مع مكتبة React، لكنها تملك تطبيقات أخرى غير React. تدعم لغة TypeScript تضمين JSX، وتدقيق الأنواع فيها، وكذا ترجمة JSX إلى JavaScript مباشرةً. ملاحظة حول المصطلحات: نستخدم في هذه الصّفحة كلمة "صِفَة" للإشارة إلى الكلمة الإنجليزيّة "attribute" وكلمة "خاصيّة" للإشارة إلى كلمة "property"، كلاهما يُترجَم إلى كلمة "خاصيّة" ولهما نفس المعنى في معظم ...

ملفات التصريحات اعتمادًا على الأمثلة في TypeScript

مقدمة الهدف من هذا الدليل هو تعليمك كيفيّة كتابة ملف تعريف عالي الجودة. هذا الدليل يريك أولًا توثيق واجهة برمجية (API) معيّنة مع طريقة استعمالها، ثم يشرح كيفية كتابة التصريح الملائم. هذه الأمثلة مرتبة تصاعديا حسب التعقيد، من الأبسط إلى الأعقد: المتغيرات العامة (Global Variables). الدوال العامة (Global Functions). الكائنات ذات الخاصيات. الدوال ذات الأحمال الزائدة (Overloaded Functions). الأنواع القابلة لإعادة الاستخدام (الواجهات). الأنواع القابلة لإعادة الاستخدام (أسماء الأنواع البديلة [Type Aliases]). تنظيم الأنواع. الأصناف. الأمثلة المتغيرات العامة التوثيق: يحتوي ...

أنماط الشيفرات المُتعارَف عليها ما بين مبرمجي 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 ...

الوحدة dbm‎.ndbm في بايثون

تقدّم وحدة dbm.ndbm واجهة برمجية لمكتبة ‎"(n)dbm"‎ في يونكس. تسلك كائنات dbm سلوك كائنات الربط (القواميس) باستثناء أنّ المفاتيح والقيم تخزّن دائمًا كبايتات. لا تؤدي طباعة كائنات dbm إلى طباعة المفاتيح والقيم، ولا تدعم هذه الكائنات التابعين items()‎ و values()‎. يمكن استخدام هذه الوحدة مع واجهة ndbm الكلاسيكية أو مع واجهة GNU GDBM التوافقية. ستحاول شيفرة configure في يونكس أن تحدد موقع ملف الترويسة header file المناسب لتبسيط عملية بناء هذه الوحدة. الاستثناءات الاستثناء dbm.ndbm.error يطلق هذا الاستثناء عند حدوث ...

التابع Connection.commit()‎ في بايثون

يلغي التابع جميع التعديلات التي أجريت على قاعدة البيانات بعد آخر استدعاء للتابع commit()‎. البنية العامة rollback() مصادر صفحة DB-API 2.0 interface for SQLite databases في توثيق بايثون الرسمي.

افعل ولا تفعل في TypeScript

الأنواع العامة ‎Number‎، و‎String‎، و‎Boolean‎، و‎Object‎ لا تستعمل أبدًا الأنواع ‎Number‎، و‎String‎، و‎Boolean‎، و‎Object‎. هذه الأنواع تشير إلى الكائنات غير الأوليّة المحاطة (non-primitive boxed objects) التي لا تُستعمَل في أغلب الأحيان بطريقة صحيحة في شيفرة JavaScript: /* خطأ */ function reverse(s: String): String; استعمل بدلًا منها الأنواع ‎number‎، و‎string‎، و‎boolean‎: /* صحيح */ function reverse(s: string): string; استعمل النوع غير الأولي ‎object‎ (الذي أُضِيفَ في TypeScript 2.2) عوضًا عن النوع ‎Object‎. الأنواع المعممة (Generics) لا تُعرِّف أبدًا نوعًا معمّمًا لا يستخدم معامل ...

الدالة cgi.test()‎‎ في بايثون

سكربت اختبار CGI، يمكن استخدامه كبرنامج رئيسي. تكتب الدالة ترويسة HTTP مصغّرة وتنسّق جميع المعلومات المقدّمة إلى السكربت في نموذج HTML. البنية العامة cgi.test() مصادر صفحة Common Gateway Interface support في توثيق بايثون الرسمي.

Kotlin/Topics

بُنية لغة Kotlin مشابهةٌ لبنية لغة البرمجة Java بوصفها كائنيّة التوجه (OOP)، وبالتالي فهي تعتمد أساسًا على وجود الأصناف (classes) التي تحتوي بدورها على الخاصّيّات (properties) والدوال (functions)، كما وتدعم Kotlin العلاقات فيما بينها مثل الوراثة (inheritance) من صنفٍ أعلى (superclass) أو التداخل فيما بينها (nesting classes)، وتمتاز بوجود مُحدِّدات الوصول (visibility modifiers) للتحكم بعمليات الوصول للبيانات المُخزَّنة، وكذلك فهي تعتمد في بُنيتها على الحزم (packages) والمكتبات (libraries) التي تحتوي على الدوال المساعدة عند الحاجة إليها، أمّا عن بُنية التعليمات ...

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

تعكس الدالة not()‎ القيمة المنطقيَّة المستدعاة معها. يمكن استعمال المعامل ! عوضًا عن هذه الدالة. البنية العامة operator fun not(): Boolean المعاملات other القيمة المنطقية الأخرى التي ستطبق عليها العملية. القيمة المعادة يعاد عكس القيمة المنطقية المعطاة. أمثلة استخدام الدالة ()not لعكس قيمة منطقية معينة: fun main(args: Array<String>) { val x = true println(x.not()) // false println(!x) // false } انظر أيضًا الدالة and()‎: تجري العملية and المنطقية ...

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

تجري الدالة or()‎ العملية or المنطقية بين قيمتين منطقيتين؛ خلافًا للمعامل ||، تتحقق هذه الدالة من كلا القيمتين المنطقيتين. البنية العامة infix fun or(other: Boolean): Boolean وجود الكلمة المفتاحية infix يدل على أنَّ هذه الدالة يمكن استدعاؤها بنمط التدوين الداخليّ (infix notation)؛ أي من خلال حذف المعامل . والأقواس () المُستخدَمَين في الاستدعاء عادةً. المعاملات other القيمة المنطقية الأخرى التي ستطبق عليها العملية. القيمة المعادة تعاد قيمة منطقية تكون ناتج إجراء العملية or على القيمتين المعطيتين. أمثلة استخدام الدالة ()or لتطبيق العملية or على قيمتين منطقيتين: fun ...

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

تجري الدالة and()‎ العملية and المنطقية بين قيمتين منطقيتين؛ خلافًا للمعامل &&، تتحقق هذه الدالة من كلا القيمتين المنطقيتين. البنية العامة infix fun and(other: Boolean): Boolean وجود الكلمة المفتاحية infix يدل على أنَّ هذه الدالة يمكن استدعاؤها بنمط التدوين الداخليّ (infix notation)؛ أي من خلال حذف المعامل . والأقواس () المُستخدَمَين في الاستدعاء عادةً. المعاملات other القيمة المنطقية الأخرى التي ستطبق عليها العملية. القيمة المعادة تعاد قيمة منطقية تكون ناتج إجراء العملية and على القيمتين المعطيتين. أمثلة استخدام الدالة ()and لتطبيق العملية and على قيمتين منطقيتين: fun ...

Kotlin/Native

ما هي تقنية Kotlin/Native؟ تُستخدَم تقنية Kotlin/Native لترجمة شيفرات Kotlin إلى الصيغة الثنائيّة الأساسيّة (native binaries) والتي لا تتطلَّب آلةً افتراضيّة (virtual machine) لتشغيلها، وتشمل كلًا من المعالجات الخلفيّة (أو السند الخلفي [backend]) المعتمدة على تقنيات مكتبة LLVM للمترجِم (compiler) وكذلك تعريف الاستخدام الأساسيّ (native implementation) من مكتبة التشغيل (runtime) في Kotlin، وقد صُمّمت هذه التقنية للسماح بالترجمة في منصّات العمل التي تكون فيها الآلات الافتراضيّة غير متاحةٍ أو مرغوبةٍ (مثل أنظمة iOS والأهداف المدمجة [embedded targets])، أو عندما يحتاج ...

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

تنشئ الدالة to()‎ عنصرًا من النوع Pair مكونًا من الكائن الذي استُدعي معه والمعامل الذي مُرّر إليه، أي العنصر that. البنية العامة infix fun <A, B> A.to(that: B): Pair<A, B> يُلاحَظ وجود الكلمة المفتاحية infix للدلالة على أن هذه الدالة يمكن استدعاؤها بنمط التدوين الداخليّ (infix notation)؛ أي من خلال حذف المعامل . والأقواس () المُستخدَمَين في الاستدعاء عادةً، وللمزيد من التفاصيل راجع توثيق التدوين الداخلي للدوال (infix functions). المعاملات that الكائن المراد استعماله مع الكائن المعطى في إنشاء كائن من ...

التابع Connection.interrupt()‎ في بايثون

يمكن استدعاء هذا التابع من خيط آخر لتجاهل أي استعلامات قد تكون قيد التنفيذ عبر الاتصال الحالي. سيتم تجاهل الاستعلام وسيتلقى صاحب الاستعلام استثناءً. البنية العامة interrupt() مصادر صفحة DB-API 2.0 interface for SQLite databases في توثيق بايثون الرسمي.

الدالة cgi.print_directory()‎‎ في بايثون

تنسّق الدالة المجلّد الحالي بصيغة HTML. البنية العامة cgi.print_directory() ‎انظر أيضًا الدالة cgi.print_environ()‎: تنسّق الدالة بيئة الصدفة بصيغة HTML. الدالة cgi.print_form()‎: تنسّق الدالة النموذج بصيغة HTML. الدالة cgi.print_environ_usage()‎: تطبع الدالة قائمة من متغيرات البيئة المفيدة (المستخدمة من قبل CGI) بصيغة HTML. مصادر صفحة Common Gateway Interface support في توثيق بايثون الرسمي.

الدالة cgi.print_environ()‎‎ في بايثون

تنسّق الدالة بيئة الصدفة بصيغة HTML. البنية العامة cgi.print_environ() ‎انظر أيضًا الدالة cgi.print_form()‎: تنسّق الدالة النموذج بصيغة HTML. الدالة cgi.print_directory()‎: تنسّق الدالة المجلّد الحالي بصيغة HTML. الدالة cgi.print_environ_usage()‎: تطبع الدالة قائمة من متغيرات البيئة المفيدة (المستخدمة من قبل CGI) بصيغة HTML. مصادر صفحة Common Gateway Interface support في توثيق بايثون الرسمي.

الدالة cgi.print_environ_usage()‎‎ في بايثون

تطبع الدالة قائمة من متغيرات البيئة المفيدة (المستخدمة من قبل CGI) بصيغة HTML. البنية العامة cgi.print_environ_usage() ‎انظر أيضًا الدالة cgi.print_environ()‎: تنسّق الدالة بيئة الصدفة بصيغة HTML. الدالة cgi.print_form()‎: تنسّق الدالة النموذج بصيغة HTML. الدالة cgi.print_directory()‎: تنسّق الدالة المجلّد الحالي بصيغة HTML. مصادر صفحة Common Gateway Interface support في توثيق بايثون الرسمي.

الدالة cgi.print_form()‎‎ في بايثون

تنسّق الدالة النموذج بصيغة HTML. البنية العامة cgi.print_form(form) ‎المعاملات form النموذج المراد تنسيقه بواسطة الدالة. انظر أيضًا الدالة cgi.print_environ()‎: تنسّق الدالة بيئة الصدفة بصيغة HTML. الدالة cgi.print_directory()‎: تنسّق الدالة المجلّد الحالي بصيغة HTML. الدالة cgi.print_environ_usage()‎: تطبع الدالة قائمة من متغيرات البيئة المفيدة (المستخدمة من قبل CGI) بصيغة HTML. مصادر صفحة Common Gateway Interface support في توثيق بايثون الرسمي.

التابع Pickler.dump()‎ في بايثون

يكتب التابع تمثيلًا مُسلسَلًا للكائن المُعطى في كائن الملف المفتوح والمحدّد في الدالة البانية للصنف. البنية العامة dump(obj) ‎المعاملات obj الكائن المراد كتابة تمثيله المسَلسَل في الملف المفتوح. أمثلة يبين المثال التالي طريقة استخدام التابع: >>> import pickle >>> data = [1, 2.0, 4, 4+2j] >>> f = open('file1.dat', 'wb') >>> mypickler = pickle.Pickler(f, pickle.HIGHEST_PROTOCOL) >>> mypickler.dump(data) مصادر صفحة DB-API 2.0 interface for SQLite databases في توثيق بايثون الرسمي.

التابع Connection.cursor()‎ في بايثون

يعيد التابع نسخة من صنف Cursor أو أحد أصنافه الفرعية. البنية العامة cursor(factory=Cursor) ‎المعاملات factory يأخذ هذا التابع معاملًا اختياريًا واحدًا، وعند تعيينه يجب أن يكون كائنًا قابلًا للاستدعاء callable يعيد نسخة من صنف Cursor أو أحد أصنافه الفرعية. القيمة المعادة يعيد التابع نسخة من صنف Cursor أو أحد أصنافه الفرعية. أمثلة يبين المثال التالي آلية عمل التابع: import sqlite3 conn = sqlite3.connect('example.db') c = conn.cursor() مصادر صفحة DB-API 2.0 interface for SQLite databases في توثيق بايثون الرسمي.

التابع Connection.cursor()‎ في بايثون

يعيد التابع نسخة من صنف Cursor أو أحد أصنافه الفرعية. البنية العامة cursor(factory=Cursor) ‎المعاملات factory يأخذ هذا التابع معاملًا اختياريًا واحدًا، وعند تعيينه يجب أن يكون كائنًا قابلًا للاستدعاء callable يعيد نسخة من صنف Cursor أو أحد أصنافه الفرعية. القيمة المعادة يعيد التابع نسخة من صنف Cursor أو أحد أصنافه الفرعية. أمثلة يبين المثال التالي آلية عمل التابع: import sqlite3 conn = sqlite3.connect('example.db') c = conn.cursor() مصادر صفحة DB-API 2.0 interface for SQLite databases في توثيق بايثون الرسمي.

الدالة dbm.whichdb()‎ في بايثون

تحاول هذه الدالة تخمين الوحدة التي يجب استخدامها لفتح الملف المعطى من بين وحدات قواعد البيانات المتعددة (dbm.gnu أو dbm.ndbm أو dbm.dumb). البنية العامة dbm.whichdb(filename) ‎المعاملات filename اسم ملف قاعدة البيانات. القيمة المعادة تعيد الدالة إحدى القيم التالية: None إن لم يكن بمقدور الدالة فتح الملف لكونه غير قابل للقراءة أو لعدم وجوده أصلًا. سلسلة نصية فارغة ("") إن لم تتمكن الدالة من تخمين صيغة الملف. سلسلة نصية تتضمن اسم الوحدة المطلوبة، مثل: 'dbm.dbm' أو 'dbm.gnu'. مصادر صفحة Interfaces to ...

توافقية الأنواع في TypeScript

مقدمة توافقيّة الأنواع في TypeScript مبنيّةٌ على التحقق من الأنواع الفرعيّة هيكليًّا (structural subtyping). والتحقّق من الأنواع هيكليًّا طريقةٌ للربط بين الأنواع حسب عناصرها فقط لا غير. وهذا مُعاكسٌ للتحقق من الأنواع اسميًّا (nominal typing). انظر الشيفرة التالية: interface Named { name: string; } class Person { name: string; } let p: Named; // هذا مسموح به بسبب التحقق من الأنواع هيكليًّا p = new Person(); في اللغات المعتمدة على التحقق من الأنواع اسميًّا مثل لغة C#‎ أو Java، فالشيفرة ...

التابع Request.add_header()‎‎ في بايثون

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

التابع Unpickler.persistent_load()‎ في بايثون

يطلق هذا التابع افتراضيًا الاستثناء UnpicklingError. البنية العامة persistent_load(pid) المعاملات pid في حال تعريف هذا التابع فإنّه يعيد الكائن المحدّد بواسطة المعرّف المستمر pid، وإذا كان المعرّف المستمّر غير صالحٍ فإنّ التابع يُطلق الاستثناء UnpicklingError. راجع قسم "استمرارية الكائنات الخارجية" في وحدة pickle للاطلاع على المزيد من التفاصيل والأمثلة حول هذا الموضوع. انظر أيضًا التابع Unpickler.persistent_id()‎ : لا يؤدي هذا التابع افتراضيًا أي وظيفة، والهدف من وجوده هو إمكانية إعادة تعريفه override بواسطة صنف فرعي. مصادر صفحة DB-API 2.0 interface for ...

التابع Unpickler.persistent_load()‎ في بايثون

يطلق هذا التابع افتراضيًا الاستثناء UnpicklingError. البنية العامة persistent_load(pid) المعاملات pid في حال تعريف هذا التابع فإنّه يعيد الكائن المحدّد بواسطة المعرّف المستمر pid، وإذا كان المعرّف المستمّر غير صالحٍ فإنّ التابع يُطلق الاستثناء UnpicklingError. راجع قسم "استمرارية الكائنات الخارجية" في وحدة pickle للاطلاع على المزيد من التفاصيل والأمثلة حول هذا الموضوع. انظر أيضًا التابع Unpickler.persistent_id()‎ : لا يؤدي هذا التابع افتراضيًا أي وظيفة، والهدف من وجوده هو إمكانية إعادة تعريفه override بواسطة صنف فرعي. مصادر صفحة DB-API 2.0 interface for ...

الدالة sqlite3.complete_statement()‎ في بايثون

تتيح هذه الدالة عرض الأخطاء tracebacks الناتجة عن الدوال والمجاميع aggregates والمحوّلات converters والاستدعاءات الخلفية authorizer callbacks المفوِّضة المعرّفة من قبل المستخدم. البنية العامة sqlite3.enable_callback_tracebacks(flag) ‎المعاملات لا تعرض اللغة -بصورة افتراضية- الأخطاء tracebacks في الدوال والمجاميع aggregates والمحوّلات converters والاستدعاءات الخلفية المفوِّضة authorizer callbacks المعرّفة من قبل المستخدم. ولتنقيح بنى التحكم هذه يمكن استدعاء هذه الدالة مع تعيين القيمة True للمعامل flag. بعد ذلك ستعرض اللغة الأخطاء الناتجة من الاستدعاءات الخلفية في sys.stderr. يمكن استخدام القيمة False لإلغاء هذه الخاصية ...

الدالة cgi.parse_qs()‎‎ في بايثون

هذه الدالة مهملة في هذه الوحدة، وهي موجودة لغرض التوافق مع الإصدارات السابقة من بايثون. استخدم الدالة urllib.parse.parse_qs()‎ عوضًا عنها.  البنية العامة cgi.parse_qs(qs, keep_blank_values=False, strict_parsing=False) انظر أيضًا الدالة cgi.parse()‎: تحلّل الدالة الاستعلام الموجود في بيئة معينة أو في ملف معيّن. الدالة cgi.parse_qsl()‎: هذه الدالة مهملة في هذه الوحدة، وهي موجودة لغرض التوافق مع الإصدارات السابقة من بايثون. استخدم الدالة urllib.parse.parse_qsl()‎‎ عوضًا عنها. الدالة cgi.parse_multipart()‎: تحلّل الدالة المدخلات من نوع multipart/form-data (للملفات المرفوعة). الدالة cgi.parse_header()‎: تحلّل الدالة ترويسة MIME (مثل Content-Type) إلى قيمة ...

كائنات Row‎ في بايثون

نسخة من الصنف Row وتعدّ صورة محسّنة من الخاصية row_factory في كائنات الاتصال. تحاول نسخة الصنف هذه محاكاة الصفوف tuples في معظم خصائصها، وتدعم الوصول إلى العناصر بواسطة اسم العمود وموقعه، وتدعم كذلك المرور على العناصر، وتمثيلها، واختبار المساواة ومعرفة الطول بواسطة الدالة len()‎. إن امتلك كائنا Row نفس عدد الأعمدة وكان عدد العناصر فيهما متساويًا، فإنّ الكائنين متساويان. توابع كائنات Row التابع keys()‎ يعيد التابع قائمة بأسماء الأعمدة. انظر أيضًا كائنات Connection في بايثون. كائنات Cursor في بايثون. مصادر ...

الدالة cgi.parse_header()‎‎ في بايثون

تحلّل الدالة ترويسة MIME (مثل Content-Type) إلى قيمة رئيسة وقاموسٍ من المعاملات. البنية العامة cgi.parse_header(string) المعاملات string ترويسة MIME. انظر أيضًا الدالة cgi.parse()‎: تحلّل الدالة الاستعلام الموجود في بيئة معينة أو في ملف معيّن. الدالة cgi.parse_qs()‎: هذه الدالة مهملة في هذه الوحدة، وهي موجودة لغرض التوافق مع الإصدارات السابقة من بايثون. استخدم الدالة urllib.parse.parse_qs()‎ عوضًا عنها.  الدالة cgi.parse_qsl()‎: هذه الدالة مهملة في هذه الوحدة، وهي موجودة لغرض التوافق مع الإصدارات السابقة من بايثون. استخدم الدالة urllib.parse.parse_qsl()‎‎ عوضًا عنها. الدالة cgi.parse_multipart()‎: ...

الدالة cgi.parse_qsl()‎‎ في بايثون

هذه الدالة مهملة في هذه الوحدة، وهي موجودة لغرض التوافق مع الإصدارات السابقة من بايثون. استخدم الدالة urllib.parse.parse_qsl()‎ عوضًا عنها.  البنية العامة cgi.parse_qsl(qs, keep_blank_values=False, strict_parsing=False) انظر أيضًا الدالة cgi.parse()‎: تحلّل الدالة الاستعلام الموجود في بيئة معينة أو في ملف معيّن. الدالة cgi.parse_qs()‎: هذه الدالة مهملة في هذه الوحدة، وهي موجودة لغرض التوافق مع الإصدارات السابقة من بايثون. استخدم الدالة urllib.parse.parse_qs()‎ عوضًا عنها. الدالة cgi.parse_multipart()‎: تحلّل الدالة المدخلات من نوع multipart/form-data (للملفات المرفوعة). الدالة cgi.parse_header()‎: تحلّل الدالة ترويسة MIME (مثل Content-Type) إلى قيمة ...

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

يغلق التابع الاتصال بقاعدة البيانات. يجدر الانتباه إلى أنّ إغلاق الاتصال لا يستدعي التابع commit()‎ على نحو تلقائي. فإن أغلقت الاتصال بقاعدة البيانات دون استدعاء التابع commit()‎ أولًا، ستفقد جميع التعديلات التي أجريتها على قاعدة البيانات. البنية العامة close() أمثلة يبين المثال التالي طريقة استخدام التابع: import sqlite3 conn = sqlite3.connect('example.db') c.execute('''CREATE TABLE stocks (date text, trans text, symbol text, qty real, price real)''') c.execute("INSERT INTO stocks VALUES ('2006-01-05','BUY','RHAT',100,35.14)") conn.commit() conn.close() مصادر صفحة ...

الدالة sqlite3.register_adapter()‎ في بايثون

تسجّل الدالة كائنًا قابلًا للاستدعاء callable لتحويل سلسلة بايتات نصية من قاعدة البيانات إلى نوع خاص من أنواع بيانات بايثون. البنية العامة sqlite3.register_adapter(type, callable) المعاملات type نوع بيانات بايثون الذي ستحوّله الدالة إلى إحدى الأنواع التي تدعمها قواعد بيانات SQLite. callable كائن قابل للاستدعاء يأخذ معاملًا واحدًا هو نوع بيانات بايثون، ويجب أن يعيد إحدى الأنواع التالية: int أو float أو str أو bytes. انظر أيضًا الدالة register_converter()‎: تسجّل الدالة كائنًا قابلًا للاستدعاء callable لتحويل سلسلة بايتات نصية من قاعدة ...

التابع Pickler.persistent_id()‎ في بايثون

لا يؤدي هذا التابع افتراضيًا أي وظيفة، والهدف من وجوده هو إمكانية إعادة تعريفه override بواسطة صنف فرعي. البنية العامة persistent_id(obj) إن أعاد هذا التابع القيمة None، فإنّ الكائن يُسلسَل كالمعتاد، أما القيم الأخرى فتسبّب في إطلاق المسلسل Pickler القيمة المعادة كمعرّف مستمر للكائن المعطى. يجب تحديد معنى هذه المعرّف المستمر بواسطة التابع Unpickler.persistent_load()‎. لاحظ أنّه لا يمكن للقيمة التي يعيدها التابع persistent_id()‎ أن تمتلك معرّفًا مستمرًا. راجع قسم "استمرارية الكائنات الخارجية" للاطلاع على المزيد من التفاصيل والأمثلة حول هذا ...

التابع FieldStorage.getlist()‎‎ في بايثون

يعيد هذا التابع دائمًا قائمة بالقيم المرتبطة بالحقل المعطى. البنية العامة FieldStorage.getlist(name) ‎المعاملات name اسم الحقل المراد جلب القيمة المرتبطة به. القيمة المعادة يعيد هذا التابع دائمًا قائمة بالقيم المرتبطة بالحقل المعطى، ويعيد قائمة فارغة إن لم يكن هناك حقل أو قيمة النموذج تحمل الاسم المعطى، ويعيد قائمة تحتوي على عنصر واحد فقط إن كانت هناك قيمة واحدة فقط. أمثلة يبين المثال التالي كيفية استخدام التابع: import cgi form = cgi.FieldStorage() for item in form.getlist("item"): do_something(item) انظر أيضًا التابع ...

التابع Unpickler.find_class()‎ في بايثون

يستورد التابع الوحدة المعطاة إذا اقتضت الحاجة ويعيد الكائن الذي يحمل الاسم المحدّد. تجدر الإشارة إلى أنّه وعلى خلاف ما يشير إليه اسم هذا التابع، فبالإمكان استخدام find_class()‎ للعثور على الدوال. يمكن للأصناف الفرعية أن تعيد تعريف override هذا التابع للتحكم بأنواع الكائنات المستوردة وطريقة تحميلها، وقد يساهم هذا في تقليل الأخطار الأمنية. راجع قسم تقييد المتغيرات العامة للمزيد من التفاصيل. البنية العامة find_class(module, name) ‎المعاملات module سلسلة نصية تتضمن اسم الوحدة التي يستوردها التابع. name سلسلة نصية تتضمن اسم ...

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

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

أسئلة شائعة عن لغة Kotlin

ما هي لغة Kotlin؟ تُعدُّ Kotlin إحدى لغات البرمجة مفتوحة المصدر (OSS) والمكتوبة ستاتيكيًّا، وتستهدف كلًا من بيئة JVM و Android و JavaScript و Native، وقد طُوِّرت من قِبل شركة JetBrains بدءًا من العام 2010 حيث كانت مفتوحة المصدر منذ بداياتها الأولى، ونٌشر الإصدار الرسميّ Kotlin 1.0 في الشهر الثاني (شباط) من عام 2016. ما النسخة الحاليّة للغة Kotlin؟ نٌشر الإصدار الأخير للغة Kotlin في الأوّل من الشهر الثالث (آذار) من عام 2018 وهو الإصدار Kotlin 1.2.30. هل Kotlin مجانيّة؟ ...

التابع Connection.iterdump()‎ في بايثون

يعيد التابع مكرِّرًا iterator يمكن استخدامه لعرض (dump) قاعدة البيانات بصيغة SQL النصية. البنية العامة iterdump() ‎القيمة المعادة يعيد التابع مكرِّرًا iterator يمكن استخدامه لعرض (dump) قاعدة البيانات بصيغة SQL النصية. هذا التابع مفيد عند التعامل مع قواعد البيانات المخزّنة في الذاكرة. يقدّم هذا التابع نفس الإمكانات التي يقدّمها الأمر ‎.dumb في صدفة sqlite3. أمثلة يعرض المثال التالي كيفية تحويل الملف existing_db.db إلى ملف عرض SQL يحمل الاسم dump.sql: import sqlite3 con = sqlite3.connect('existing_db.db') with open('dump.sql', 'w') as f: ...

التابع Connection.commit()‎ في بايثون

يحفظ التابع التعديلات التي أجريت على قاعدة البيانات. البنية العامة commit() ‎في حال عدم استدعاء هذا التابع ستكون جميع التعديلات التي أجريت بعد آخر استدعاء للتابع commit()‎ غير مرئية بالنسبة إلى الاتصالات الأخرى المفتوحة مع قاعدة البيانات؛ لذا إن لم تتمكن من رؤية البيانات التي أضفتها إلى قاعدة البيانات، فتأكّد من أنّك لم تنس استدعاء هذا التابع. أمثلة يبين المثال التالي آلية عمل التابع: import sqlite3 conn = sqlite3.connect('example.db') c.execute('''CREATE TABLE stocks ...

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

(PHP 5 >= 5.0.2, PHP 7) تتحقق الدالة interface_exists()‎‎‎‎‎ فيما إذا كانت الواجهة (interface) مُعرّفة. الوصف bool interface_exists (string $interface_name [, bool $autoload = TRUE ]) تتحقق الدالة interface_exists()‎‎‎‎‎ فيما إذا كانت الواجهة المُعطاة مُعرّفة. المعاملات interface_name اسم الواجهة. autoload يُحدِّد هذا المعامل فيما إذا كانت ستُستدعى الدالة ‎__autoload‎‎ أم لا. القيم المعادة تُعيد الدالة interface_exists()‎‎‎‎‎ القيمة TRUE إذا كانت الواجهة المُعطاة بالمعامل interface_nam مُعرّفة، وإلا فإنها ستُعيد القيمة FALSE. أمثلة المثال 1: مثال عن استخدام الدالة interface_exists()‎‎‎ <?php // التحقق ...

التابع Request.get_method()‎‎ في بايثون

يعيد التابع سلسلة نصية تحدّد الطريقة المتّبعة في إرسال طلب HTTP. البنية العامة Request.get_method() ‎القيمة المعادة يعيد التابع سلسلة نصية تحدّد الطريقة المتّبعة في إرسال طلب HTTP. يعيد التابع قيمة الخاصية Request.method إن لم تكن قيمتها None، أما إن كانت قيمة الخاصية هي None فإنّ التابع سيعيد 'GET'، ويعيد القيمة 'POST' إن لم تكن قيمة الخاصية هي None، وهذا السلوك مفيد في طلبات HTTP فقط. ملاحظة: ينظر التابع في قيمة الخاصية Request.method في الإصدار 3.3 وما بعده من بايثون. أمثلة ...

استخدام لغة Kotlin للتطوير في بيئة Android

تُعدُّ لغة Kotlin أداةً مناسبةً لتطوير تطبيقات Android لأنّها تزوِّد بمنصةٍ للعمل في نظام Android بميّزات لغات البرمجة الحديثة بدون فرض أي قيودٍ جديدة. ميزات استخدام لغة Kotlin للتطوير في بيئة Android التوافقيّة (Compitability): تتوافق لغة Kotlin كليًّا مع بيئة JDK6، وبهذا تتيح  تشغيل التطبيقات المكتوبة بلغة Kotlin على الأجهزة ذات الإصدارات الأقدم من أنظمة Android بدون أي مشاكل تُذكر، كما وتدعم برمجيةُ Android Studio أدوات لغة Kotlin بشكلٍ تامّ ومتوافقٍ مع أنظمة بناء Android. الأداء (Performance): تعمل التطبيقات المكتوبة ...

استخدام لغة Kotlin في تطوير تطبيقات الخادم (Server)

تُعدّ لغة Kotlin أداةً قويةً في تطوير تطبيقات الخادم (server)؛ إذ تكون الشيفرات فيها دقيقةً ومعبِّرة، وتمتاز بالتوافقيّة التامّة مع لغة Java ومن السهل تعلُّمها بسرعة. ميزات استخدام لغة Kotlin لتطوير تطبيقات الخادم (Server) القدرة على التعبير (Expressiveness): تساعد مميّزات لغة Kotlin المبتكرَة (مثل دعمها للمنشِئ الحافظ للنوع (type-safe builder) والخاصّيات المُعمّمة (delegated properties)) على إنشاء البنى التجريديّة (abstraction) سهلةِ الاستخدام. قابلية التوسّع (Scalability): تدعم لغة Kotlin ميّزة الروتينات المساعدة (coroutines)، وهي بهذا تتيح -في تطبيقات الخادم- إمكانيّة التوسّع لعددٍ ...

الدالة cgi.escape()‎‎ في بايثون

تحوّل الدالة الحروف '&' و '>' و '<' في السلسلة النصية المعطاة إلى تسلسل حروف آمن في HTML. تُستخدم هذه الدالة لعرض النصوص التي قد تحتوي على مثل هذه المحارف. ملاحظة: هذه الدالة مهملة منذ الإصدار 3.2 من بايثون. هذه الدالة غير آمنة لأنّ المعامل quote يحمل قيمة خاطئة افتراضيًا. استخدم الدالة html.escape()‎ عوضًا عنها. البنية العامة cgi.escape(s, quote=False) المعاملات s السلسلة النصية التي ستحول الدالة حروفها إلى تسلسل حروف آمن في HTML. ‎quote معامل اختياري، إن أخذ قيمة صحيحة ...

الدالة cgi.parse()‎‎ في بايثون

تحلّل الدالة الاستعلام الموجود في بيئة معينة أو في ملف معيّن (القيمة الافتراضية للملف هي sys.stdin). البنية العامة cgi.parse(fp=None, environ=os.environ, keep_blank_values=False, strict_parsing=False) ‎المعاملات ‎يمرّر المعاملان keep_blank_values و strict_parsing إلى الدالة urllib.parse.parse_qs()‎ دون تغيير. انظر أيضًا الدالة cgi.parse_qs()‎: هذه الدالة مهملة في هذه الوحدة، وهي موجودة لغرض التوافق مع الإصدارات السابقة من بايثون. استخدم الدالة urllib.parse.parse_qs()‎ عوضًا عنها.  الدالة cgi.parse_qsl()‎: هذه الدالة مهملة في هذه الوحدة، وهي موجودة لغرض التوافق مع الإصدارات السابقة من بايثون. استخدم الدالة urllib.parse.parse_qsl()‎‎ عوضًا عنها. الدالة ...

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

(PHP 5, PHP 7) تُعيد الدالة get_declared_interfaces()‎‎ مصفوفة  بكل الواجهات (interfaces) المُصرّح عنها. الوصف array get_declared_interfaces ( void ) تحصل الدالة get_declared_interfaces()‎‎ على الواجهات المُصرّح عنها. المعاملات لا تملك الدالة get_declared_interfaces()‎ أيّة معاملات. القيم المعادة تُعيد الدالة get_declared_interfaces()‎‎ مصفوفة بأسماء الواجهات المُصرّح عنها في السكربت الحالي. أمثلة المثال 1: مثال عن استخدام الدالّة get_declared_interfaces()‎ <?php print_r(get_declared_interfaces()); ?> سينتج المثال السابق الناتج الآتي: Array ( [0] => Traversable [1] => IteratorAggregate [2] => Iterator ...

الخاصية text-overflow

الخاصية text-overflow في CSS تُحدِّد ماذا سيحدث عند عدم عرض المحتوى الزائد عن صندوقه، فيمكن أن يتم اقتصاص المحتوى، أو عرض ثلاث نقط (المحرف … رمزه U+2026)، أو عرض سلسلة نصية خاصة. بطاقة الخاصية القيمة الابتدائية clip تُطبَّق على الحاويات الكتلية (block container elements). قابلة للوراثة لا قابلة للحركة لا القيمة المحسوبة كما حُدِّدَت. /* الكلمات المحجوزة */ text-overflow: clip; text-overflow: ellipsis; /* <string> سلسلة نصية */ text-overflow: "…"; /* القيم العامة */ text-overflow: inherit; text-overflow: initial; text-overflow: unset; الخاصية text-overflow لا تؤدي إلى خروج المحتوى من صندوقه، ولجعل ...

التابع Connection.execute()‎ في بايثون

يستدعي هذا التابعُ التابعَ Cursor.execute()‎ مع تمرير المعاملات المعطاة. البنية العامة execute(sql[, parameters]) ‎ المعاملات sql سلسلة نصية تتضمن جملة SQL المراد تنفيذها. القيمة المعادة هذا التابع طريقة مختصرة لإنشاء كائن مؤشر عن طريق استدعاء التابع cursor()‎، حيث يستدعي التابع execute()‎ في كائن المؤشر مع تمرير المعاملات المعطاة، ثم يعيد كائن المؤشر. أمثلة يبين المثال التالي آلية عمل التابع: import sqlite3 conn = sqlite3.connect('example.db') c = conn.cursor() symbol = 'RHAT' c.execute("SELECT * FROM stocks WHERE symbol = '%s'" % symbol) انظر أيضًا التابع Connection.excutemany()‎: ...

التابع Connection.set_progress_handler()‎ في بايثون

يسجّل هذا التابع استدعاءً خلفيًا يجري تنفيذه لكل n من تعليمات SQLite في الجهاز الافتراضي virtual machine. هذا التابع مفيد عند الحاجة إلى اجراء استدعاء من SQLite أثناء عملية طويلة، كتحديث واجهة رسومية مثلًا. البنية العامة set_progress_handler(handler, n) المعاملات handler يمكن استدعاء التابع مع تمرير القيمة None للمعامل handler للتخلص من أي استدعاء خلفي معدّ مسبقًا. تؤدي إعادة قيمة غير الصفر من الاستدعاء الخلفي إلى إنهاء الاستعلام الحالي وإطلاق الاستثناء OperationalError. n عدد تعليمات SQLite. انظر أيضًا التابع Connection.set_authorizer()‎:يسجّل هذا ...

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

يجلب التابع الصفّ row التالي من نتيجة الاستعلام، ويعيد تسلسلًا واحدًا فقط، أو يعيد القيمة None في حال عدم توفّر المزيد من البيانات. البنية العامة fetchone() ‎القيمة المعادة يعيد التابع تسلسلًا واحدًا فقط، أو يعيد القيمة None في حال عدم توفّر المزيد من البيانات. أمثلة يبين المثال التالي آلية عمل التابع: >>> import sqlite3 >>> conn = sqlite3.connect(":memory:") >>> cur = conn.cursor() >>> cur.execute("create table people (name, age)") <sqlite3.Cursor object at 0x7f0ea62989d0> >>> name = "Mohammed" >>> age = 30 >>> cur.execute("insert into people values (?, ?)", ...

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

تمثّل وحدة dbm واجهة عامّة للأشكال المختلفة من قواعد بيانات DBM، مثل dbm.gnu و dbm.ndbm. في حال عدم تثبيت أيّ من هذه الوحدات، فإنّ اللغة ستستخدم الأداة البطيئة والبسيطة في وحدة dbm.dumb. وهناك واجهة تقدّمها جهة خارجية للتعامل مع قواعد بيانات Oracle Berkeley. الاستثناءات الاستثناء dbm.error صفّ يتضمن الاستثناءات التي يمكن أن تُطلق بواسطة الوحدات المدعومة، ويكون العنصر الأول في هذا الصفّ هو استثناء فريد يحمل الاسم dbm.error والذي يُستخدم عند إطلاق الاستثناء dbm.error. الدوال الدالة whichdb()‎ تحاول هذه الدالة ...

التابع Unpickler.load()‎ في بايثون

يقرأ التابع تمثيل كائن مسلسل من كائن الملف المفتوح في الدالة البانية للصنف، ويعيد هيكل الكائن المعاد بناؤها والموصوفة في هذا الملف، ويتجاهل التابع البايتات التي تسبق تمثيل الكائن المسَلسَل. البنية العامة load() ‎القيمة المعادة يعيد التابع هيكل الكائن المعاد بناؤها والموصوفة في هذا الملف، ويتجاهل التابع البايتات التي تسبق تمثيل الكائن المسَلسَل. أمثلة يبين المثال التالي طريقة عمل التابع (راجع المثال في صفحة التابع Pickler.dump()‎ للاطلاع على الكائن المسَلسَل في الملف file1.dat): >>> import pickle >>> f = open('file1.dat', 'rb') >>> ...

التابع Unpickler.load()‎ في بايثون

يقرأ التابع تمثيل كائن مسلسل من كائن الملف المفتوح في الدالة البانية للصنف، ويعيد هيكل الكائن المعاد بناؤها والموصوفة في هذا الملف، ويتجاهل التابع البايتات التي تسبق تمثيل الكائن المسَلسَل. البنية العامة load() ‎القيمة المعادة يعيد التابع هيكل الكائن المعاد بناؤها والموصوفة في هذا الملف، ويتجاهل التابع البايتات التي تسبق تمثيل الكائن المسَلسَل. أمثلة يبين المثال التالي طريقة عمل التابع (راجع المثال في صفحة التابع Pickler.dump()‎ للاطلاع على الكائن المسَلسَل في الملف file1.dat): >>> import pickle >>> f = open('file1.dat', 'rb') >>> ...

الدالة sqlite3.register_convertor()‎ في بايثون

تسجّل الدالة كائنًا قابلًا للاستدعاء callable لتحويل سلسلة بايتات نصية من قاعدة البيانات إلى نوع خاص من أنواع بيانات بايثون. البنية العامة sqlite3.register_converter(typename, callable) ‎المعاملات typename يستدعى الكائن الذي تسجّله الدالة لجميع القيم الموجودة في قاعدة البيانات والتي تكون من النوع المحدد بواسطة المعامل typename. يمكنك الرجوع إلى المعامل detect_types في دالة connect()‎ للاطلاع على طريقة الكشف عن الأنواع. يجدر التنبيه إلى أنّ المطابقة بين النوع المعطى والنوع المحدد في جملة الاستعلام تكون غير حساسة لحالة الأحرف. callable كائن قابل ...

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

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

الدالة Char.compareTo()‎ في Kotlin

توازن الدالة compareTo()‎ بين قيمة المحرف الذي استُدعي معها والقيمة المُمرّرة إليها ثمَّ تعيد القيمة 0 إن كانا متساويين، أو قيمة سالبة إن كانت القيمة الأولى (قيمة المحرف الذي استُدعي معها) أصغر من القيمة الثانية، أو قيمة موجبة إن كانت القيمة الأولى أكبر من القيمة الثانية. البنية العامة fun compareTo(other: Char): Int المعاملات other المحرف الآخر الذي يراد موازنته مع المحرف المعطى. القيمة المعادة تعاد القيمة 0 إن كانت القيمة المعطاة متساوية مع قيمة الوسيط other، أو تعاد قيمة سالبة إن كانت القيمة الأولى ...

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

تجلب الدالة lastIndexOf()‎ فهرس آخر ظهور لعنصر محدَّد من المصفوفة أو المجموعة أو القائمة التي استُدعيت معها. البنية العامة يمكن استدعاء الدالة lastIndexOf()‎ مع المصفوفات، والمجموعات والقوائم: fun <T> Array<out T>.lastIndexOf(element: T): Int fun ByteArray.lastIndexOf(element: Byte): Int fun ShortArray.lastIndexOf(element: Short): Int fun IntArray.lastIndexOf(element: Int): Int fun LongArray.lastIndexOf(element: Long): Int fun FloatArray.lastIndexOf(element: Float): Int fun DoubleArray.lastIndexOf(element: Double): Int fun BooleanArray.lastIndexOf(element: Boolean): Int fun CharArray.lastIndexOf(element: Char): Int fun <T> Iterable<T>.lastIndexOf(element: T): Int fun <T> List<T>.lastIndexOf(element: T): Int القيم المعادة يعاد فهرس آخر ظهور للعنصر المعطى والموجود في المصفوفة أو المجموعة أو القائمة المعطاة، أو القيمة ‎-1 إن لم ...

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