نتائج البحث

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

الوحدة File::Constants في روبي

توفر الوحدة File::Constants ثوابت متعلقة بالملفات في روبي. جميع ثوابت الملفات المحتملة موثَّقة هنا ولكن ليس بالضرورة أن تكون كلها متاحة على منصتك. إن كانت المنصة الأساسية لا تعرِّف ثابتًا ما، فلن يُعرَّف ثابت روبي المقابل له. قد تجد بعض المعلومات المفيدة في توثيقات المنصة التي تعمل عليها (مثل الدليل man للدالة open(2)‎). الثوابت APPEND الإضافة عند كل عملية كتابة. BINARY تعطيل تحويل الشيفرة السطري. CREAT إنشاء ملف إن لم يكن موجودًا. DIRECT محاولة تصغير ثأتيرات الذاكرة المخبَّأة (cache) للدخل ...

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

(PHP 4 >= 4.0.4, PHP 5, PHP 7) تعيدُ الدالة constant()‎ قيمة ثابتٍ ما. الوصف mixed constant ( string $name ) تعيدُ الدالة constant()‎ قيمة الثابت المشار إليه بالمعامل name. الدالة constant()‎ مفيدة إذا كنت بحاجة إلى استرداد قيمة ثابت، ولكن لا تعرف اسمه. أي أنه مُخَزَّنٌ في متغير أو مُعَادٌ بواسطة دالة. تعمل الدالة constant()‎ أيضًا مع ثوابت الأصناف. العوامل name اسم الثابت. القيم المعادة إعادة قيمة الثابت، أو NULL إذا لم يكن الثابت مُعرَّفًا. الأخطاء والاستثناءات يُنشأ خطأ من ...

التابع Module.const_set‎ في روبي

يضبط التابع const_set قيمة ثابت محدَّد إلى قيمة الكائن المعطى ثم يعيد ذلك الكائن. في حال لم يكن هناك ثابت يحمل الاسم المعطى، فسيُنشئ ثابت جديد ويسند إلى تلك القيمة. البنية العامة const_set(sym, obj) → obj const_set(str, obj) → obj‎ المعاملات sym‎ رمز يمثل الثابت. إذا لم يكن المعامل sym اسم ثابت صالح، فسيُطلق الخطأ NameError مع التحذير "wrong constant name". obj‎ الكائن المراد ضبط قيمته إلى الثابت. str‎ سلسلة نصية تمثل الثابتة. إذا لم يكن المعامل str‎ اسم ثابت صالح، فسيُطلق ...

التابع Module.constants‎ في روبي

يعيد التابع constants مصفوفة من أسماء كل الثوابت التي يمكن الوصول إليها لحظة الاستدعاء. تتضمن هذه القائمة أسماء جميع الوحدات والأصناف المحددة في النطاق العام (global scope). البنية العامة constants→ array القيمة المعادة تعاد مصفوفة من أسماء كل الثوابت التي يمكن الوصول إليها لحظة الاستدعاء. أمثلة مثال على استخدام التابع constants‎: Module.constants.first(4) # => [:ARGF, :ARGV, :ArgumentError, :Array] Module.constants.include?(:SEEK_SET) # => false class IO Module.constants.include?(:SEEK_SET) # => true end‎ انظر أيضا التابع const_set: يضبط قيمة الثابت المعطى عند الكائن المحدد، ...

التابع Module.constants‎ في روبي

يعيد التابع constants مصفوفة من أسماء كل الثوابت التي يمكن الوصول إليها من الوحدة. هذا يتضمن أسماء الثوابت في الوحدات المُتضمنة إلا إن مُرِّرت القيمة false. لا يوجد ضمانة لمعرفة الترتيب الذي ستُعاد به الثوابت. البنية العامة constants(inherited)→ array‎ المعاملات inherited‎ قيمة منطقية إن كانت false، فلن تشمل المصفوفة المعادة أسماء الثوابت في الوحدات المُتضمنة. القيمة المعادة تعاد مصفوفة من أسماء كل الثوابت التي يمكن الوصول إليها من الوحدة. أمثلة مثال على استخدام التابع constants‎: IO.constants.include?(:SYNC) ...

التابع ‎Module.const_defined?‎‎ في روبي

يتحقق التابع const_defined?‎ مما إذا كانت الوحدة التي استُدعي معها أو أحد أسلافها (ancestors) تحوي الثابت المعطى. Float.const_defined?(:EPSILON) #=> true, found in Float itself Float.const_defined?("String") #=> true, found in Object (ancestor) BasicObject.const_defined?(:Hash) #=> false إذا كانت الوحدة من النوع Module، فسيتم إضافة إلى ذلك فحص Object وكذلك أسلافه. Math.const_defined?(:String) #=> true, found in Object في كل الأصناف أو الوحدات المفحوصة، إذا لم يكن الثابت موجودًا وكان التحميل التلقائي (autoload) مفعلًا له، ...

التابع Module.const_get‎ في روبي

يتحقق التابع const_get من وجود ثابت باسم محدد في الوحدة التي استُدعي معها. في حال تعيين المعامل inherit، فسيشمل البحث الأسلاف أيضًا (وكذلك Object إن كانت الوحدة من النوع Module). تُعاد قيمة الثابت إذا عُثر على تعريف له؛ خلا ذلك، سيُطلق الخطأ NameError. Math.const_get(:PI) #=> 3.14159265358979 سيبحث التابع const_get بشكل تكراري (recursively) عن أسماء الثوابت إذا تم توفير اسم صنف من مجال أسماء (namespaced class name). اطلع مثلًا على المثال التالي: module Foo; class Bar; end end Object.const_get 'Foo::Bar' تؤخذ الراية inherit بالحسبان ...

التابع Module.nesting‎ في روبي

يعيد التابع nesting قائمة من الوحدات المتشعبة (Modules nested) لحظة الاستدعاء. البنية العامة nesting → array‎ القيمة المعادة تعاد مصفوفة تحوي قائمة من الوحدات المتشعبة لحظة الاستدعاء. أمثلة مثال على استخدام التابع nesting‎: module M1 module M2 $a = Module.nesting end end $a #=> [M1::M2, M1] $a[0].name #=> "M1::M2"‎ انظر أيضا التابع constants: يعيد مصفوفة مكونة أسماء كل الثوابت التي يمكن الوصول إليها لحظة الاستدعاء. التابع new: ينشئ وحدة مجهولة ...

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

يُطلق الاستثناء NameError عندما يكون الاسم المعطى غير صالح أو غير مُعرّف. انظر إلى السطر البرمجي التالي: puts foo سيُطلق عند تنفيذه الاستثناء التالي: NameError: undefined local variable or method `foo' for main:Object أسماء الثوابت يجب أن تبدأ بحرف كبير، لذلك فالشيفرة البرمجية التالي: Integer.const_set :answer, 42 ستطلق الاستثناء NameError: NameError: wrong constant name answer توابع الصنف العامة (Public Class Methods) new ينشئ استثناءً جديدًا من النوع NameError. توابع النسخة العامة (Public Instance Methods) local_variables يعيد قائمة بأسماء المتغيرات المحلية المُعرّفة حيث أُطلٍق ...

ثوابت الأصناف في PHP

يمكن تعريف قيم ثابتة لا يمكن تعديلها ولكل صنفٍ على حدة. تختلف الثوابت عن المتغيرات الاعتيادية في عدم استخدام العلامة $ للتصريح عنها أو استخدامها. تمتلك ثوابت الأصناف قابلية رؤية من نوع public. يجب أن تكون القيمة تعبيرًا ثابتًا وليس (على سبيل المثال) متغيرًا أو خاصّية أو استدعاء دالة. يمكن للواجهات interfaces أن تمتلك ثوابت أيضًا. راجع التوثيق الخاص بالواجهات لمشاهدة الأمثلة. منذ الإصدار 5.3.0، أصبح بالإمكان استخدام المتغيرات للإشارة إلى الصنف، ولا يمكن أن يحمل المتغير قيمة تمثّل إحدى ...

ثوابت الأصناف في PHP

يمكن تعريف قيم ثابتة لا يمكن تعديلها ولكل صنفٍ على حدة. تختلف الثوابت عن المتغيرات الاعتيادية في عدم استخدام العلامة $ للتصريح عنها أو استخدامها. تمتلك ثوابت الأصناف قابلية رؤية من نوع public. يجب أن تكون القيمة تعبيرًا ثابتًا وليس (على سبيل المثال) متغيرًا أو خاصّية أو استدعاء دالة. يمكن للواجهات interfaces أن تمتلك ثوابت أيضًا. راجع التوثيق الخاص بالواجهات لمشاهدة الأمثلة. منذ الإصدار 5.3.0، أصبح بالإمكان استخدام المتغيرات للإشارة إلى الصنف، ولا يمكن أن يحمل المتغير قيمة تمثّل إحدى ...

التابع Module.new‎ في روبي

ينشئ التابع new وحدة مجهولة (anonymous module) جديدة. في حال إعطاء كتلة، فسيٌمرر إليها الوحدة (module)، وستُقيم الكتلة في سياق هذه الوحدة مثل module_eval. اضبط الوحدة وأسند إليها قيمةً ثابتةً (يبدأ اسمها بحرف كبير) إذا كنت تريد معاملتها كأنها وحدة عادية. البنية العامة new→ mod new {|mod| block }→ mod‎ القيمة المعادة تعاد وحدة مجهولة (anonymous module) جديدة. أمثلة مثال على استخدام التابع new‎: fred = Module.new do def meth1 "hello" end def meth2 ...

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

يعيد التابع to_path سلسلة نصية تمثِّل المسار الذي استُعمِل لإنشاء الملف الذي استدعي معه. لا يعمل هذا التابع على توحيد شكل وبنية المسار (normalize). قد لا يشير اسم المسار إلى الملف المقابل للملف المعطى. على سبيل المثال، يصبح اسم المسار خاويًا (void) عندما يُنقَل أو يحذف الملف. يرمي هذا التابع الاسثناء IOError للملف المعطى إذا كان قد أنشئ باستعمال File::Constants::TMPFILE لأنه لا يملك اسم مسارٍ.  البنية العامة to_path → filename القيمة المعادة تعاد سلسلة نصية تمثِّل المسار الذي استُعمِل لإنشاء الملف ...

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

يعيد التابع path سلسلة نصية تمثِّل المسار الذي استُعمِل لإنشاء الملف الذي استدعي معه. لا يعمل هذا التابع على توحيد شكل وبنية المسار (normalize). قد لا يشير اسم المسار إلى الملف المقابل للملف المعطى. على سبيل المثال، يصبح اسم المسار خاويًا (void) عندما يُنقَل أو يحذف الملف. يرمي هذا التابع الاسثناء IOError للملف المعطى إذا كان قد أنشئ باستعمال File::Constants::TMPFILE لأنه لا يملك اسم مسارٍ. البنية العامة path → filename to_path → filename القيمة المعادة تعاد سلسلة نصية تمثِّل المسار الذي استُعمِل ...

التابع Module.define_method‎ في روبي

يعرّف التابع define_method تابع نُسخة (instance method) في المُستقبِل (receiver). في حال تمرير كتلة، فستُستخدم كجسم (body) للتابع. تُقيّم هذه الكتلة باستخدام التابع instance_eval، وهو أمر قد يكون مُشكلًا على البعض، لأن define_method خاصة. (لهذا سنحتال ونستخدم التابع send في المثال التالي.) البنية العامة define_method(symbol, method) → symbol define_method(symbol) { block }→ symbol‎ المعاملات symbol‎ رمز. method‎ تابع نُسخة. يمكن أن يكون من النوع Proc أو Method أو UnboundMethod. القيمة المعادة يعاد رمزٌ. أمثلة مثال على استخدام التابع define_method‎: class A ...

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

الصنف Module هو مجموعة من التوابع والثوابت. التوابع الموجودة في الوحدات Module قد تكون إما توابع نسخة (instance methods)، أو توابع وحدة (module methods). توابع النسخة تظهر كتوابع في صنفٍ عند تضمين الوحدة، وذلك على خلاف توابع الوحدة. وعلى النقيض، يمكن استدعاء توابع الوحدة دون إنشاء كائن يُغلفها، بينما قد لا يمكن فعل ذلك مع توابع النسخة. انظر صفحة module_function. في الأمثلة الموجودة في صفحات التوابع، يشير المعامل sym إلى رمز، والذي قد يكون إما سلسلة نصية، أو كائنًا من النوع ...

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

(PHP 4, PHP 5, PHP 7) تُعرِّف الدالة define()‎ ثابتًا. الوصف bool define ( string $name , mixed $value [, bool $case_insensitive = FALSE ] ) تُستخدم الدالة define()‎ لتعريف ثابتٍ ما بإعطائه اسمًا معينًا. المعاملات name اسم الثابت.   value قيمة الثابت. سابقًا في PHP 5، كانت القيمة value التي يمكن أن تُسنَد إلى الثابت constant هي قيمةٌ أوليةٌ فقط (الأعداد الصحيحة، والأعداد العشرية، والسلاسل النصية، والقيم المنطقية، والقيمة NULL) ولاحقًا في PHP 7 بات من الممكن إسناد مصفوفة ...

تبديل الأعداد السحرية بثوابت رمزية (Replace Magic Number with Symbolic Constant)

المشكلة تستخدم الشيفرة البرمجية عددًا له معنىً معين له. الحل استبدال هذا العدد بثابت له اسم يمكن قراءته ويشرح معنى العدد. مثال قبل إعادة التصميم تستخدم الشيفرة التالية العدد 9.81 بالشكل المجرَّد الذي يمثِّل ثابت الجاذبية الأرضية: في لغة Java: double potentialEnergy(double mass, double height) { return mass * height * 9.81; } في لغة C#‎: double PotentialEnergy(double mass, double height) { return mass * height * 9.81; } في لغة PHP: function potentialEnergy($mass, $height) { return $mass * $height * ...

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

تُعدُّ الأصناف كائناتٍ من الدرجة الأولى (first-class objects) في روبي، وتعدُّ جميعها نُسخٌ من الصنف Class. عادةً، يمكن عادةً إنشاء صنف جديد بالشكل التالي: class Name # تكتب هنا الشيفرة التي تعرف سلوك الصنف end عندما يُنشَأ صنف جديد، يهيَّأ كائن من النوع Class ويسند إلى ثابت عام (global constant، هو Name في المثال السابق). عند استدعاء Name.new لإنشاء كائن جديد، يُنفَّذ التابع new الخاص بالصنف Class بشكل افتراضي. يمكن إثبات ذلك من خلال إعادة تعريف التابع new: class Class alias old_new ...

التابع Struct.new‎ في روبي

ينشئ التابع new صنفًا فرعيًّا جديدًا أو نسخةً جديدةً من الصنف Struct. البنية العامة new([class_name] [, member_name]+)→ StructClass new([class_name] [, member_name]+, keyword_init: true) → StructClass new([class_name] [, member_name]+) {|StructClass| block } → StructClass new(value, ...) → object StructClass[value, ...]→ object‎ يُستخدم الشكلان الأولان من التابع new لإنشاء صنف فرعي جديد من Struct يحمل الاسم class_name، والذي يمكن أن يحتوي قيمةً مقابل كل وسيط member_name. يمكن استخدام هذا الصنف الفرعي لإنشاء نسخ من البنية مثل أي صنف آخر. إذا لم يُعطَ الوسيط class_name، فسيُنشِئ التابع ...

const في JavaScript

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

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

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

التابع datetime.time()‎ في بايثون

يعيد التابع كائن timedelta يمثّل مقدار إزاحة التوقيت المحلي عن التوقيت العالمي المنسّق UTC. البنية العامة ‎tzinfo.utcoffset(dt) المعاملات القيمة المعادة يعيد التابع كائن timedelta يمثّل مقدار إزاحة التوقيت المحلي عن التوقيت العالمي المنسّق UTC. إن كان التوقيت المحلّي في الجانب الشرقي من التوقيت العالمي المنسّق فإنّ النتيجة تحمل إشارة موجبة، وإن كان في الجانب الغربي فإنّ النتيجة تحمل إشارة سالبة. يجب الانتباه إلى أنّ المقصود هنا هو مقدار الإزاحة الكلية عن التوقيت العالمي المنسّق؛ فعلى سبيل المثال إن كان كائن ...

هوس الحقول الأساسية (Primitive Obsession)

توصيف المشكلة تظهر المشكلة بعدَّة جوانب: استخدام الحقول الأساسيّة (primitives) بدلًا من الكائنات (objects) لأداء المهامّ البسيطة (مثل: عمليات العملة [currency] والمجالات [ranges] والسلاسل النصية [strings] المُخصَّصة للأرقام الهاتفية، …إلخ.). استخدام الثوابت (constants) لترميز المعلومات (مثل استخدام الثابت USER_ADMIN_ROLE = 1 للدلالة على المستخدمين ذوي الصلاحيّات الإداريّة). استخدام الثوابت النصيّة (string constants) كأسماءٍ للحقول (fields) في مصفوفات البيانات (data arrays). أسبابها تنشأ هذه المشكلة بسبب العبارة المُدمِّرة التي يفكّر بها المبرمجون بلحظة ضعفٍ: "حقلٌ واحدٌ فقط، ولتخزين معلومةٍ بسيطةٍ وحسب!"ولأنهم ...

الثوابت المعرَّفة مسبقًا في قسم التعامل مع المجلَّدات في PHP

الاسم النوع الوصف DIRECTORY_SEPARATOR string PATH_SEPARATOR string فاصلة منقوطة في ويندوز، ونقطتان في غيره. SCANDIR_SORT_ASCENDING integer أصبح متاحٌ منذ إصدار PHP 5.4.0. SCANDIR_SORT_DESCENDING integer أصبح متاحٌ منذ إصدار PHP 5.4.0. SCANDIR_SORT_NONE integer أصبح متاحٌ منذ إصدار PHP 5.4.0. انظر أيضًا قسم التعامل مع المجلَّدات. قسم التعامل مع نظام الملفات. مصادر الصفحة constants في توثيق PHP الرسمي.

صيغ متنوعة في روبي

سنتطرق في هذه الصفحة إلى شرح بقية الصيغ والبنى المستعملة في روبي والتي لم تُشمَل في الأقسام السابقة. ستجد هنا شرحًا حول الصيغة المستعملة في إنهاء التعبيرات البرمجية في روبي، وكيفية استعمال المسافات البادئة بالإضافة إلى شرح الكلمات المفتاحية alias، و undef، و ?defined، و BEGIN، و END. إنهاء تعبير برمجي يعدّ السطر الجديد في لغة روبي إنهاءًا للتعبير البرمجيّ السابق. وإذا انتهى السطر بعملية أو قوس مفتوح أو فاصلة أو ما شابه، فسيستمرّ التعبير البرمجيّ إلى السطر التالي. كما ...

الثوابت المتعددة في TypeScript

مقدمة تسمح لنا الثوابت المتعدّدة بتعريف مجموعة مُسمّاةٍ من الثوابت (set of named constants). استخدام الثوابت المتعدّدة يُسهّل توضيحَ نية استعمال الشيفرة أو إنشاء مجموعة حالات مختلفة. تُوفّر TypeScript كلا من الثوابت المتعددة المعتمِدة على الأعداد وتلك المُعتمِدة على السلاسل النصية كذلك. الثوابت المتعددة العددية (Numeric enums) سنبدأ بالثوابت المتعددة العددية، والتي ستكون مألوفة لمن هو آتٍ من لغات البرمجة الأخرى. يُمكن تعريف ثابت متعدّد بالكلمة المفتاحية ‎enum‎: enum Direction { Up = 1, ...

PHP/misc

هذه مجموعة من الدوال المتفرقة في لغة PHP، والتي لا تنتمي إلى التصنيفات الأخرى الموجودة في هذا التوثيق. connection_aborted()‎ تفحص الدالةconnection_aborted()‎ ‎ ما إذا كان العميل غير متصل. connection_status()‎ تحصل الدالةُ connection_status()‎ على bitfield لحالة الاتصال. constant()‎ تعيدُ الدالة constant()‎ قيمة ثابتٍ ما. ob_end_clean()‎ تنظف (تمسح) الدالة ob_end_clean()‎ المخزنَ المؤقت للإخراج وتوقف التخزين المؤقت للإخراج. ob_clean()‎ تنظف (تمسح) الدالة ob_clean()‎ المخزنَ المؤقت للإخراج. die()‎ تكافئ البنيةُ die البنيةَ exit()‎. eval()‎ تُقدِّر البنيةُ eval()‎ قيمة شيفرة PHP المُمثَّلة في سلسلةٍ نصيةٍ. exit()‎ تُخرج البنية exit()‎ رسالةً وتنهي البرنامج الحالي. get_browser()‎ تعيد الدالة get_browser()‎ الميزات التي يدعمها متصفح المستخدم. ...

المزيد حول المتغيرات في Bash

يمكن للمتغير أن يحتوي أي نوع من البيانات ما لم يُصرح بخلاف ذلك بوضوح، وتُضبط المتغيرات الساكنة (Constant Variables) باستخدام أمر readonly. وتحتوي المصفوفة على مجموعة من المتغيرات، وإن صُرح بنوع معين من البيانات لتلك المصفوفة فإن جميع العناصر داخلها ستُضبط على احتواء ذلك النوع فقط من البيانات. كذلك تسمح مزايا Bash بإحلال وتحويل المتغيرات بسرعة، وتتضمن العمليات القياسية حساب طول المتغير والتوسعات الحسابية عليه وإحلال محتواه أو جزء من محتواه. أنواع المتغيرات في Bash شرح للقيم العامة للمتغيرات والمتغيرات ...

الثوابت في PHP

الثابت هو معرّف (اسم) لقيمة بسيطة، وكما هو واضح من الاسم فإنّ هذه القيمة غير قابلة للتبديل أثناء تنفيذ الشيفرة (باستثناء الثوابت السحرية والتي لا تعدّ ثوابت في الواقع). الثابت حساس لحالة الأحرف ومن الشائع استخدام الأحرف الكبيرة في تسمية الثوابت. تتبع الثوابت نفس القواعد المتّبعة للتسمية في PHP، فاسم الثابت الصحيح يبدأ بحرف أو بشرطة سفلية، متبوعًا بعدد غير محدّد من الأحرف والأرقام والشرطات السفلية. ولو أردنا استخدام التعابير النمطية (Regular Expressions) للتعبير عن اسم المتغير فسيكون كالتالي: [a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]* ...

الثوابت في PHP

الثابت هو معرّف (اسم) لقيمة بسيطة، وكما هو واضح من الاسم فإنّ هذه القيمة غير قابلة للتبديل أثناء تنفيذ الشيفرة (باستثناء الثوابت السحرية والتي لا تعدّ ثوابت في الواقع). الثابت حساس لحالة الأحرف ومن الشائع استخدام الأحرف الكبيرة في تسمية الثوابت. تتبع الثوابت نفس القواعد المتّبعة للتسمية في PHP، فاسم الثابت الصحيح يبدأ بحرف أو بشرطة سفلية، متبوعًا بعدد غير محدّد من الأحرف والأرقام والشرطات السفلية. ولو أردنا استخدام التعابير النمطية (Regular Expressions) للتعبير عن اسم المتغير فسيكون كالتالي: [a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]* ...

الأعداد العشرية الثابتة في أردوينو

تُستعمَل الأعداد العشرية الثابتة العشرية، بشكل مشابه للأعداد الصحيحة الثابتة، لجعل الشيفرة أكثر قابليةٍ للقراءة. تُبدَّل الأعداد الثابتة ذات الفاصلة العشرية في وقت تصريف الشيفرة إلى القيمة المساوية والمقابلة لهذا التعبير المكتوب. أمثلة إسناد عدد ثابت ذي فاصلة عشرية إلى متغير: n = 0.005; // يعد العدد 0.005 عددًا ثابتًا ذا فاصلة عشرية ملاحظات وتحذيرات يمكن تمثيل الأعداد الثابتة ذات الفاصلة العشرية بصيغ مختلفة أيضًا. يُقبَل استعمال 'E' و 'e' على أنَّهما مؤشِّرٌان للقوة (exponent)، إذ سيُعدُّ العدد الذي ...

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

(PHP 4, PHP 5, PHP 7) تتحقق الدالة defined()‎ من الثابت المعطىَ إن كان موجودًا. الوصف bool defined ( string $name ) تستخدم الدالة defined()‎ للتحقق من الثابت المعطىَ إن كان موجودًا ومعرفًا. ملاحظة: إِذا كنُت تريد التحقق من وجود متغيرًا ما استخدم الدالة isset()‎، ذلك لأنَّ الدالة defined()‎ تُستخدم على الثوابت فقط.  إذا كنُت تريد التحقق من وجود دالة ما، فاستخدم الدالة function_exists()‎. المعاملات name اسم الثابت الذي نريد التحقق من وجوده. القيم المعادة ستعُاد القيمة TRUE إذا كان ...

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

تقدم بايثون مجموعة من الثوابت، بعضها في مجال الأسماء الداخلي، أما البعض الآخر فيضاف من قبل الوحدة site إلى مفسّر بايثون التفاعلي. ثوابت في مجال الأسماء الداخلي False يمثّل هذا الثابت القيمة الخاطئة للنوع bool. لا تسمح اللغة بإسناد أي قيمة إلى هذا الثابت وستطلق الخطأ SyntaxError عند محاولة القيام بذلك. True يمثّل هذا الثابت القيمة الصحيحة للنوع bool. لا تسمح اللغة بإسناد أي قيمة إلى هذا الثابت وستطلق الخطأ SyntaxError عند محاولة القيام بذلك. None هذا الثابت هو القيمة ...

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

(PHP 4, PHP 5, PHP 7) تُعيد الدالة session_id()‎ أو تَضبط المعرف الحالي للجلسة. الوصف string session_id ([ string $id ] ) تُعيد الدالة session_id()‎ أو تضبط المعرف الحالي للجلسة. يُمكن استعمال المعرف الثابت للجلسة (constant SID)  لاسترجاع اسم الجلسة ومعرفها في متغير نصي مناسب للإضافة على الروابط (URLs). المعاملات   id إذا حُدد المعامل  id، سيُبدَّل المعرف الحالي للجلسة إليه، ويجب في هذه الحالة استخدام الدالة session_id()‎ قَبل الدالة session_start()‎. بالنسبة للحروف المسموح بِها في التسمية فهي مِن a حتى z ومِن A حتى Z، ومِن ...

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

يمثل الصنف Integer الأعداد الصحيحة. لا يمكن إضافة تابع أحادي (singleton method) إلى كائن من الصنف Integer، وأي محاولة لفعل ذلك ستؤدي إلى إطلاق الخطأ TypeError. الثوابت (Constants) GMP_VERSION يمثِّل النسخة GMP المُحمّلة. توابع الصنف العامة (Public Class Methods) sqrt يعيد التابع sqrt‎ الجذر التربيعي الصحيح للعدد الصحيح الموجب المُمرر إليه. توابع الكائن العامة (Public Instance Methods) % يعيد المعامل %‎ باقي عملية القسمة الصحيحة بين عددين. & ينفذ المعامل & العملية AND بين بتات العددين المعطيين. * يعيد المعامل *‎ ناتج عملية الضرب بين عددين. ** يعيد المعامل **‎ ناتج ...

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

(PHP 5 >= 5.2.0, PHP 7, PECL json >= 1.2.0) تفك الدالة json_decode()‎ ترميز سلسلة نصية بصيغة JSON. الوصف mixed json_decode ( string $json [, bool $assoc = FALSE [, int $depth = 512 [, int $options = 0]]] ) تأخذ سلسلة مُرمَّزة بصيغة JSON وتحوِّلها إلى مُتغيِّر PHP. المعاملات json سلسلة نصية بصيغة JSON التي سيُفكُّ ترميزها. تعمل هذه الدّالّة مع سلاسل نصّيّة مُرمَّزة بترميز UTF-8 فقط. ملاحظة: تعتمد PHP مجموعة عُليا من JSON كما هو مُحدَّد في المعيار ...

اختلال الشيفرات ومشاكلها (Code Smells)

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

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

يمثل الصنف Encoding ترميز المحارف الذي يمكننا استخدامه في لغة روبي. تُعرَّف النّسخة المنشأة من الصنف Encoding بأنّها ثابتٌ (constant) يندرج ضمن مجال أسماء الصنف (encoding namespace)؛ يكون لها اسم، واسم بديل (Alias) اختياري. Encoding::ISO_8859_1.name #=> "ISO-8859-1" Encoding::ISO_8859_1.names #=> ["ISO-8859-1", "ISO8859-1"] التّوابع (methods) في لغة روبي التي تتعامل مع التّرميزات تعيد أو تقبل النسخ Encoding على شكل وسيط (عندما يقبل التّابع كائنًا على شكل وسيط، يمكن عندها أن نستخدم اسم أو لقب الترميز عوضًا عن الكائن). "some string".encoding #=> #<Encoding:UTF-8> string = "some string".encode(Encoding::ISO_8859_1) #=> "some string" string.encoding #=> ...

Ruby/Topics

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

الثوابت المعرَّفة مسبقًا في قسم التعامل مع نظام الملفات في PHP

الثوابت المذكورة في الأسفل مُعرَّفةٌ باستعمال هذا الملحق، وستُتاح هذه الثوابت فقط عند توفُّر الملحق إمّا عندما تُفسَّر (compiled) إلى لغة PHP أو عند التحميل الديناميكي وقت التنفيذ. الاسم النوع الوصف SEEK_SET integer SEEK_CUR integer SEEK_END integer LOCK_SH integer LOCK_EX integer LOCK_UN integer LOCK_NB integer GLOB_BRACE integer GLOB_ONLYDIR integer GLOB_MARK integer GLOB_NOSORT integer GLOB_NOCHECK integer GLOB_NOESCAPE integer GLOB_AVAILABLE_FLAGS integer PATHINFO_DIRNAME integer PATHINFO_BASENAME integer PATHINFO_EXTENSION integer PATHINFO_FILENAME integer منذ إصدار PHP 5.2.0. FILE_USE_INCLUDE_PATH integer البحث عن اسم الملف filename في المسار ...

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

الصنف File هو اختصار لأي كائن ملفٍ قابل للوصول عبر البرنامج ومرتبط عن كثب بالصنف IO. يتضمن الصنف File توابع الوحدة FileTest كتوابع صنفٍ مما يسمح لك باستعمال File.exist?("foo")‎ مثلًا. في شرح توابع الصنف File التالية، تكون بتات الأذونات (permission bits) مجموعة من البتات التي تعتمد على المنصة المستعملة والتي تشير إلى أذونات الملف. في الأنظمة الشبيهة بيونكس، تُعرض الأذونات على شكل مجموعة من ثلاثة ثمانيات (octets)؛ الأولى من أجل المالك، والثانية من أجل المجموعة المالكة، والثالثة تخص الأشخاص الآخرين. ...

القيم المنطقية في بايثون

القيمتان المنطقيتان (البوليانيتان، Boolean) اللتان تدعمهما بايثون هما True و False وهما كائنان ثابتان (Constant objects) يعبران عن صحّة تعبير ما، فإمّا أن يكون صحيحًا True أو خطأً False. تعدّ القيم المنطقية نوعًا فرعيًا (subtype) من الأعداد الصحيحة، وتسلك القيمتان False و True سلوك القيمتين 0 و 1 على التوالي في معظم السياقات تقريبًا، ويستثنى من ذلك تحويل القيم المنطقية إلى سلاسل نصية، فتعاد حينئذ السلسلتان النصيتان "False" و "True" على التوالي. 1 >>> foo = True 2 >>> bar ...

القيم المنطقية في بايثون

القيمتان المنطقيتان (البوليانيتان، Boolean) اللتان تدعمهما بايثون هما True و False وهما كائنان ثابتان (Constant objects) يعبران عن صحّة تعبير ما، فإمّا أن يكون صحيحًا True أو خطأً False. تعدّ القيم المنطقية نوعًا فرعيًا (subtype) من الأعداد الصحيحة، وتسلك القيمتان False و True سلوك القيمتين 0 و 1 على التوالي في معظم السياقات تقريبًا، ويستثنى من ذلك تحويل القيم المنطقية إلى سلاسل نصية، فتعاد حينئذ السلسلتان النصيتان "False" و "True" على التوالي. 1 >>> foo = True 2 >>> bar ...

مجال المتغيرات في أردوينو

تملك المتغيرات في لغة C، التي اشتقَّت لغة أردونيو منها، خاصيةً تدعى scope (مجال) تحدِّد مجال استعمال هذه المتغيرات ومن يمكنه الوصول إليها. هذا يختلف عن الإصدارات الحديثة للغاتٍ مثل BASIC التي يكون فيها المتغير عامًّا (global) دومًا. المتغيرات العامة يمكن أن تراها جميع الدوال في البرنامج. من جهة أخرى، تكون المتغيرات المحلية (local variables) مرئية في الدالة التي عُرَّفت ضمنها فقط وغير متاحة للدوال الأخرى. في بيئة أردونيو IDE، أي متغيِّر يُعرَّف خارج دالةٍ (مثل الدالة setup()‎ والدالة loop()‎ ...

التعبير ‎#define في أردوينو

التعبير ‎#define هو أحد العناصر المفيدة في C، إذ يسمح بإعطاء اسمٍ لقيمةٍ ثابتةٍ قبل أن يُفسَّر البرنامج. الثوابت المعرَّفة باستعمال هذا التعبير في أردوينو لا تحتل أيَّة مساحةٍ من ذاكرة البرنامج على الشريحة (chip). سيبدِّل المفسِّر (compiler) القيمة المعرَّفة مكان المراجع التي تشير إلى هذه الثوابت أثناء عملية تصريف الشيفرة. انتبه إلى أنَّ استعمال التعبير ‎#define في تعريف الثوابت كما ذُكِر آنفًا له آثار جانبية غير مرغوبة مثل استعمال اسم ثابت عُرِّف في ‎#define مع اسم ثابت أو متغير ...

الكلمة const المفتاحية في أردوينو

الكلمة const المفتاحية هي اختصارٌ للكلمة «ثابت» (constant)، وهي مقيِّدةٌ للمتغيرات التي تٌستعمَل معها، إذ تعدِّل سلوك المتغير لتجعله في وضع «القراءة فقط» (read-only). هذا يعني أنَّه يمكن استعمال المتغير بشكل ممثال للمتغيرات التي من نفس نوعه باستثناء عدم القدرة على تغيير القيمة التي أُسندَت إليه عند إنشائه. ستواجه خطأً من المُصرِّف إن حاولت إسناد قيمةٍ لمتغيرٍ استُعملَت الكلمة المفتاحية const معه. تمتثل الثوابت المعرَّفة باستعمال الكلمة المفتاحية const لقواعد مجال المتغير (variable scoping) التي تضبط بقية المتغيرات. مع أخذ ...

الحزم (Packages) في Kotlin

التصريح عن الحزم يبدأ الملف المصدريّ (source file) عادةً بالتصريح (declaration) عن الحزم مثل: package foo.bar fun baz() {} class Goo {} // ... ويتوضع حينها كلُّ ما يحتويه هذا الملف (كالأصناف [classes] والدوال [functions] مثلًا) في الحزمة المُصرَّح عنها ببدايته، ففي الشيفرة السابقة إن الاسم الفعليّ الكامل للدالة baz()‎ هو foo.bar.baz والاسم الكامل للصنف Goo هو foo.bar.Goo. وإذا لم تُحدَّد الحزمة في بداية الملف فإن محتوياته تتبع للحزمة الافتراضيّة "default" التي لا اسم لها. استيراد الحزم الافتراضيّة (Default Imports) يُستورَد عددٌ من الحزم ...

أساسيات إنشاء الإضافات في ريلز

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

عوامل الأنواع في PHP

تستخدم instanceof لتحديد ما إذا كان المتغير كائنًا مهيّئًا من صنف معين: المثال 1: استخدام instanceof مع الأصناف <?php class MyClass { } class NotMyClass { } $a = new MyClass; var_dump($a instanceof MyClass); var_dump($a instanceof NotMyClass); ?> يعطي المثال السابق المخرجات التالية: bool(true) bool(false) يمكن استخدام instanceof كذلك لتحديد ما إذا كان المتغير كائنًا مهيّئًا من صنف موروث من صنف آخر: المثال 2: استخدام instanceof مع الأصناف الموروثة <?php class ParentClass { } class MyClass extends ParentClass { } $a = new MyClass; var_dump($a instanceof MyClass); var_dump($a instanceof ParentClass); ?> يعطي المثال السابق المخرجات التالية: bool(true) bool(true) يمكن استخدام عامل النفي ...

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