EduFlow

المسرد

478 مصطلح من كل الدورات، مرتّبة حسب المجال. وكل واحد منها بطاقة مراجعة أيضًا.

تطوير الويب · 180 مصطلحًا

:focus-visible
pseudo-class تطابق العنصر الذي عليه الـ focus فقط حين يرى المتصفّح أن مؤشّر الـ focus مفيد، مثل focus لوحة المفاتيح أو أيّ حقل نصي، لا عند نقرة فأرة على زر.
إتقان CSS الحديثة · ورد في «أنماط focus تؤدي عملها»
:focus-visible
pseudo-class في CSS يطابق حين يقرّر المتصفّح أن التركيز يجب أن يظهر، كما في التنقّل بلوحة المفاتيح. وتنسيقه بإطار قوي يمنح مستخدمي لوحة المفاتيح مؤشّرًا واضحًا دون إظهار الحلقات عند النقر بالفأرة.
إمكانية الوصول للويب عمليًا · ورد في «الوصول بلوحة المفاتيح والتركيز المرئي»
:has()
pseudo-class علائقية تطابق العنصر حين يجد الـ selector النسبي بداخلها تطابقًا، فتتيح تنسيق عنصر أب أو شقيق سابق بحسب أبنائه أو أشقّائه اللاحقين.
إتقان CSS الحديثة · ورد في «الـ Nesting الأصلي و:has()»
:is()
pseudo-class تطابق أيّ selector في قائمتها وتأخذ specificity أدقّ وسيط فيها؛ وتستخدم قائمة selectors متسامحة، فلا يُسقط وسيط واحد غير صالح القاعدة كلها.
إتقان CSS الحديثة · ورد في «الـ Specificity و:is() و:where()»
:where()
pseudo-class تطابق كما تطابق :is() لكن الـ specificity فيها صفر دائمًا، ما يجعلها مثالية لأنماط إعادة الضبط والأنماط الأساسية التي يجب أن تتجاوزها الـ components بسهولة.
إتقان CSS الحديثة · ورد في «الـ Specificity و:is() و:where()»
@property
قاعدة at-rule تسجّل custom property بصيغة وعلامة للوراثة وقيمة ابتدائية، فيستطيع المتصفّح فحص صحّتها والانتقال بين قيمها تدريجيًا في الـ transitions والحركات.
إتقان CSS الحديثة · ورد في «الـ Custom Properties و@property»
@starting-style
قاعدة at-rule تحدّد الأنماط التي ينطلق منها العنصر في الـ transition حين يُرسم أول مرة أو ينتقل من display: none إلى الظهور، فتتيح حركات الدخول بـ CSS وحدها.
إتقان CSS الحديثة · ورد في «الـ Transitions والـ Keyframes وتقليل الحركة»
أثر المكدّس (Stack trace)
قائمة استدعاءات الدوال، مع أسماء الملفات وأرقام الأسطر، التي أدّت إلى خطأ ما، الأحدث أولًا. وهي تُظهر أين وقع الخطأ وكيف وصل البرنامج إلى هناك.
أساسيات JavaScript · ورد في «الأخطاء وتصحيحها باستخدام DevTools»
اختبار الطفرات (Mutation testing)
تقييم مجموعة الاختبارات بصنع أخطاء صغيرة متعمَّدة (mutants) في الكود وإعادة تشغيل الاختبارات؛ الـ mutants المقتولة التُقطت، والناجية تكشف اختبارات ضعيفة.
اختبار تطبيقات JavaScript · ورد في «اختبار الطفرات (Mutation Testing)»
استعلام findBy (findBy query)
استعلام غير متزامن في Testing Library يعيد المحاولة حتى يظهر عنصر مطابق، فيُحلّ به، أو يُرفض بعد انتهاء المهلة (ثانية واحدة افتراضيًا).
اختبار تطبيقات JavaScript · ورد في «اختبار الواجهة غير المتزامنة»
إعادة التدفّق (reflow)
معيار WCAG ‏1.4.10: يجب أن يتّسع المحتوى لـ viewport عرضه 320 بكسل CSS دون تمرير أفقي، وهو عرض نافذة بعرض 1280px عند تكبير 400%. وجداول البيانات والخرائط مستثناة.
إمكانية الوصول للويب عمليًا · ورد في «التكبير وإعادة التدفّق وحجم الهدف والحركة»
إعادة تسمية المفاتيح (Key remapping)
جملة as في mapped type تعيد تسمية كل مفتاح، غالبًا بـ template literal. وتحويل مفتاح إلى never يحذفه، وهكذا يعمل Omit.
أنماط TypeScript المتقدّمة · ورد في «الـ Mapped Types وإعادة تسمية المفاتيح»
الاختبار المعتمد على الجداول (Table-driven test)
اختبار يُكتب مرة واحدة ويُشغَّل لكل صف في جدول من المدخلات والمخرجات المتوقّعة. في Vitest، ينشئ test.each اختبارًا مسمّى لكل صف.
اختبار تطبيقات JavaScript · ورد في «الحالات الحدّية والاختبارات المعتمدة على الجداول»
الاسم القابل للوصول (Accessible name)
الاسم الذي تعلنه التقنيات المساعدة لعنصر ما، ويُحسب من aria-labelledby أو aria-label أو تسمية مرتبطة أو نص العنصر. وتطابق استعلامات الدور عليه.
اختبار تطبيقات JavaScript · ورد في «الاستعلام عن الـ DOM كما يراه المستخدم»
الاسم المتاح (accessible name)
النص الذي يعرّف العنصر للتقنيات المساعدة. تحسبه المتصفّحات من aria-labelledby، ثم aria-label، ثم التسمية الأصلية مثل label أو alt، ثم المحتوى، ثم title.
إمكانية الوصول للويب عمليًا · ورد في «الأسماء والأوصاف المتاحة (Accessible Names)»
الإعاقة الظرفية (situational disability)
قيد مؤقت تسبّبه الظروف لا جسد الشخص، مثل وهج على الشاشة أو غرفة صاخبة أو حمل رضيع بذراع واحدة. والتصاميم التي تخدم الإعاقات الدائمة تساعد هنا في الغالب أيضًا.
إمكانية الوصول للويب عمليًا · ورد في «لمن تبني؟»
التحديث بلا تعديل مباشر (immutable update)
تغيير الـ state بإنشاء مصفوفات أو كائنات جديدة (باستخدام spread أو map أو filter) بدل تعديل الموجودة، حتى تستطيع React اكتشاف التغيير.
أساسيات React · ورد في «أساسيات useState»
التركيب (Compositing)
المرحلة الأخيرة من الرسم، حيث تُجمَّع الطبقات المرسومة على الـ GPU. وكثيرًا ما يمكن معالجة تغييرات transform وopacity هنا وحدها، بتخطّي التخطيط والرسم.
إتقان CSS الحديثة · ورد في «أداء الرسم في المتصفّح»
التطوير الموجّه بالاختبارات (TDD)
كتابة اختبار فاشل واحد، ثم جعله ينجح بأبسط كود، ثم إعادة الهيكلة والاختبارات خضراء، في دورات قصيرة متكرّرة تُعرف بـ red وgreen وrefactor.
اختبار تطبيقات JavaScript · ورد في «التطوير الموجّه بالاختبارات كأداة»
التفاصيل الداخلية (Implementation detail)
الطريقة التي ينتج بها الكود نتيجته (دوال مساعدة خاصة، وحالة داخلية، وترتيب الاستدعاءات)، في مقابل السلوك الذي يلاحظه المستدعون. الاختبارات المرتبطة بها تنكسر مع إعادات هيكلة غير ضارّة.
اختبار تطبيقات JavaScript · ورد في «اختبر السلوك لا التفاصيل الداخلية»
التفكيك (Destructuring)
صياغة تفكّ خصائص كائن أو عناصر مصفوفة إلى متغيّرات في خطوة واحدة، مثل const { label, amount } = expense. وتدعم القيم الافتراضية وتعمل في معاملات الدوال.
أساسيات JavaScript · ورد في «الكائنات والتفكيك (Destructuring) والنشر (Spread)»
التقنيات المساعدة (assistive technology)
برمجيات أو أجهزة يستخدمها الناس لتشغيل الحاسوب بطريقة تناسبهم، مثل قارئات الشاشة وبرامج التكبير وأجهزة التبديل والتحكّم الصوتي. وهي تقرأ الصفحة عبر شجرة إمكانية الوصول.
إمكانية الوصول للويب عمليًا · ورد في «كيف تقرأ التقنيات المساعدة صفحتك»
التنميط البنيوي (Structural typing)
قاعدة TypeScript التي تجعل القيمة متوافقة مع نوع ما حين تملك الشكل المطلوب، أيًّا كان اسم ذلك النوع. فالنوعان المختلفان في الاسم المتطابقان في الخصائص قابلان للتبادل.
أنماط TypeScript المتقدّمة · ورد في «الـ Structural Typing وقابلية الإسناد»
الثابت (Invariant)
خاصية تصحّ مع كل مدخل صالح، مثل “مجموع الحصص يساوي الإجمالي”. وتأكيد ثابت ما عبر عدة مدخلات يلتقط عائلات كاملة من الأخطاء.
اختبار تطبيقات JavaScript · ورد في «اختبر السلوك لا التفاصيل الداخلية»
الحجم الأدنى التلقائي (Automatic minimum size)
القيمة الافتراضية min-width: auto لعناصر flex وgrid، التي تمنعها من التقلّص تحت حجم محتواها. وضبط min-width: 0 يتيح للنص الطويل أن يُقتطع بدل أن يفيض.
إتقان CSS الحديثة · ورد في «Flexbox بالتفصيل»
الحركة المرتبطة بالتمرير (Scroll-driven animation)
حركة CSS يتبع تقدّمها خط زمن للتمرير، يُضبط بـ animation-timeline: scroll() أو view()، بدل الزمن المنقضي.
إتقان CSS الحديثة · ورد في «الحركات المرتبطة بالتمرير»
الحقل المتحكَّم به (controlled input)
حقل نموذج تأتي قيمته من الـ state في React، ويحدّث معالج onChange الخاص به ذلك الـ state، فيكون الـ state المصدر الوحيد للحقيقة لما يعرضه الحقل.
أساسيات React · ورد في «النماذج والـ controlled inputs»
الخصائص المنطقية (logical properties)
خصائص CSS مثل margin-inline-start وpadding-inline-end تتبع اتجاه الكتابة بدلًا من الجهات الفيزيائية، فتنعكس التخطيطات تلقائيًا في اللغات التي تُكتب من اليمين إلى اليسار مثل العربية.
إمكانية الوصول للويب عمليًا · ورد في «اللغة البسيطة واللغة والاتجاه»
الخصائص المنطقية (Logical properties)
خصائص مسمّاة بحسب سير النص لا بحسب الجهات الفيزيائية، مثل margin-inline-start وinline-size، فتنعكس التخطيطات بشكل صحيح في اللغات التي تُكتب من اليمين إلى اليسار مثل العربية.
إتقان CSS الحديثة · ورد في «الخصائص المنطقية والكتابة من اليمين إلى اليسار»
الخطوط المرنة (Fluid type)
أحجام خطوط تتغيّر باستمرار مع العرض المتاح، وتُكتب عادةً بـ clamp() مع حدّ أدنى بـ rem، وقيمة مفضّلة خطية تجمع rem مع vw أو cqi، وحدّ أقصى بـ rem.
إتقان CSS الحديثة · ورد في «خطوط ومسافات مرنة»
الدالة (Function)
كتلة كود لها اسم ويمكن إعادة استخدامها. تعلن عن معاملات، وتستلم وسائط حين تُستدعى، وتنفّذ جسمها وتُعيد نتيجة عبر return؛ ودون return تكون النتيجة undefined.
أساسيات JavaScript · ورد في «الدوال: التصريح والدوال السهمية والقيم الافتراضية»
الدالة السهمية (Arrow function)
صياغة أقصر للدوال، مثل (cents) => cents / 100. إن جاء بعد السهم تعبير واحد، أُرجع تلقائيًا؛ أما مع الأقواس المعقوفة فتحتاج إلى return صريحة.
أساسيات JavaScript · ورد في «الدوال: التصريح والدوال السهمية والقيم الافتراضية»
السلسلة الاختيارية (?.)
عامل يقرأ الخاصية فقط إن لم تكن القيمة على يساره null أو undefined، فيُرجع undefined بدلًا من رمي TypeError، كما في expense.receipt?.url.
أساسيات JavaScript · ورد في «القيم المفقودة وMap وSet»
الصنف (Class)
مخطّط للكائنات يحزم البيانات مع الـ methods التي تعمل عليها. تنفّذ new الـ constructor وتُرجع instance جديدة؛ والحقول الخاصة الموسومة بـ # مخفية عن الكود الخارجي.
أساسيات JavaScript · ورد في «الأصناف (Classes)»
الصورة الزخرفية (decorative image)
صورة لا تضيف أي معلومة في سياقها، مثل فاصل أو صورة للأجواء. تحصل على خاصية alt فارغة (alt=“”) فتتخطّاها قارئات الشاشة بدلًا من قراءة اسم ملفها.
إمكانية الوصول للويب عمليًا · ورد في «الصور والنص البديل وجداول البيانات»
العدد العشري الثنائي (Floating-point)
رقم مخزّن بالنظام الثنائي بدقة محدودة، كما هي كل أرقام JavaScript. كثير من الأعداد العشرية لا يمكن تخزينها بدقة، فتعطي 0.1 + 0.2 القيمة 0.30000000000000004؛ لذلك خزّن المال سنتاتٍ صحيحة.
أساسيات JavaScript · ورد في «الأرقام والعوامل والمقارنات»
العرض الشرطي (conditional rendering)
اختيار ما يُخرجه الـ component بحسب البيانات، باستخدام return مبكر أو المعامل الثلاثي أو && داخل JSX. وإرجاع null لا يعرض شيئًا.
أساسيات React · ورد في «العرض الشرطي»
إلغاء التركيب (unmount)
حين تزيل React الـ component من الشجرة، فتهدم الـ DOM والـ state الخاصين به. والـ component المعروض شرطيًا يُلغى تركيبه حين يصبح شرطه false.
أساسيات React · ورد في «العرض الشرطي»
القيمة المشتقّة (derived value)
بيانات تُحسب أثناء الـ render من الـ props أو الـ state، مثل عدد أو قائمة مصفّاة. لا تُخزَّن أبدًا في الـ state، فلا يمكن أن تخرج عن التزامن مع مصدرها.
أساسيات React · ورد في «التفكير بالـ components»
الكائن (Object)
قيمة تجمع خصائص مسمّاة، مثل { label: “Coffee”, amount: 450 }. تُقرأ الخصائص بصيغة النقطة، أو بالأقواس المربّعة حين يكون الاسم في متغيّر.
أساسيات JavaScript · ورد في «الكائنات والتفكيك (Destructuring) والنشر (Spread)»
المؤقّتات المزيّفة (Fake timers)
ساعة خاصة بالاختبار تستبدل setTimeout وsetInterval وDate، فتستطيع الاختبارات القفز إلى الأمام باستدعاءات مثل vi.advanceTimersByTime(2000) بدل الانتظار بالوقت الحقيقي.
اختبار تطبيقات JavaScript · ورد في «بدائل الاختبار، ومتى يضرّ الـ mocking»
المتغيّر (Variable)
اسم يشير إلى قيمة كي يستخدمها البرنامج لاحقًا. في JavaScript يكون النوع للقيمة لا للمتغيّر، لذلك يمكن لمتغيّر واحد أن يشير إلى أنواع مختلفة مع الوقت.
أساسيات JavaScript · ورد في «القيم وأنواع البيانات والمتغيّرات»
المرجع (Reference)
ما يحمله المتغيّر حين تكون قيمته كائنًا أو مصفوفة: مؤشّر إليها، لا نسخة منها. وإسناده أو تمريره يتشارك الكائن نفسه، فيظهر التغيير عبر أي اسم من خلال الأسماء كلها.
أساسيات JavaScript · ورد في «الكائنات والتفكيك (Destructuring) والنشر (Spread)»
المساواة الصارمة (===)
مقارنة لا تكون صحيحة إلا حين يكون للقيمتين النوع نفسه والقيمة نفسها. وعلى عكس المساواة المتساهلة (==)، لا تحوّل الأنواع أولًا أبدًا، لذلك “5” === 5 تساوي false.
أساسيات JavaScript · ورد في «الأرقام والعوامل والمقارنات»
المصفوفة (Array)
قائمة مرتّبة من القيم، تُكتب بين أقواس مربّعة وتبدأ فهارسها من 0. للمصفوفات دوال مثل map وfilter وfind وreduce لتحويل عناصرها والبحث فيها.
أساسيات JavaScript · ورد في «المصفوفات ودوالها اليومية»
المفتاح (key)
prop خاص على عناصر القوائم يُخبر React بهوية كل عنصر بين مرّات الـ render. يجب أن يكون فريدًا بين الإخوة وثابتًا، وهو عادةً معرّف من البيانات.
أساسيات React · ورد في «عرض القوائم باستخدام الـ keys»
المكوّن (component)
دالة JavaScript يبدأ اسمها بحرف كبير وتُرجع JSX. تستخدمها كوسم، وتستدعيها React لتعرف ما الذي يجب عرضه.
أساسيات React · ورد في «أول component لك»
المُنشئ الذكي (Smart constructor)
دالة تتحقّق من قيمة خام ثم تُعيدها كـ branded type. وهي المكان الوحيد الذي يجب أن يظهر فيه تحويل إلى ذلك الوسم.
أنماط TypeScript المتقدّمة · ورد في «الـ Branded Types والفحوص الشاملة»
النص البديل (alt text)
البديل النصي للصورة، ويُكتب في خاصية alt. يجب أن ينقل غرض الصورة في سياقها: ما تُظهره إن كانت معلوماتية، أو ما تفعله إن كانت رابطًا أو زرًّا.
إمكانية الوصول للويب عمليًا · ورد في «الصور والنص البديل وجداول البيانات»
النص المخفي بصريًا (visually hidden text)
نص يُقَصّ بـ CSS إلى مربع بحجم 1px فيبقى في شجرة إمكانية الوصول دون أن يشغل مساحة مرئية. وعلى عكس display: none، ما زالت قارئات الشاشة تُعلنه.
إمكانية الوصول للويب عمليًا · ورد في «كيف تقرأ التقنيات المساعدة صفحتك»
النطاق (Scope)
منطقة الكود التي يمكن فيها استخدام اسم ما. نطاق let وconst هو أقرب كتلة، والبحث عن الأسماء يتّجه من النطاقات الداخلية إلى الخارجية، لا إلى الداخل أبدًا.
أساسيات JavaScript · ورد في «النطاق (Scope) والـ Closures»
النوع الشرطي التوزيعي (Distributive conditional type)
conditional type يكون النوع المفحوص فيه معامل نوع مجرّدًا. حين يُعطى union يُنفَّذ مرة لكل عضو ويجمع النتائج؛ وتغليف الطرفين بأقواس مربّعة يوقف ذلك.
أنماط TypeScript المتقدّمة · ورد في «الـ Conditional Types والتوزيع و infer»
الوحدة (Module)
ملف JavaScript له نطاقه الخاص، ولا يتشارك القيم مع الملفات الأخرى إلا عبر export وimport. وفي المتصفّح، تُحمَّل وحدة الدخول بوسم script له type=“module”.
أساسيات JavaScript · ورد في «الوحدات (Modules): import وexport»
الوراثة (Inheritance)
حين لا يستهدف أيّ تصريح خاصيةً موروثة مثل color أو font-family، يأخذ العنصر القيمة المحسوبة لعنصره الأب؛ أما الخصائص غير الموروثة فترجع إلى قيمتها الابتدائية.
إتقان CSS الحديثة · ورد في «كيف يختار المتصفّح القاعدة الفائزة»
انتشار الحدث (event bubbling)
الطريقة التي ينتقل بها الحدث من العنصر الذي وقع عليه صعودًا عبر أسلافه، فيُطلق معالجاتهم أيضًا. والدالة e.stopPropagation() توقفه.
أساسيات React · ورد في «التعامل مع الأحداث»
أولوية الاستعلامات (Query priority)
الترتيب الذي توصي به Testing Library لإيجاد العناصر: بالدور، أو التسمية، أو النص النائب، أو النص، أو القيمة المعروضة أولًا؛ ثم النص البديل والعنوان؛ والـ test ids في الأخير.
اختبار تطبيقات JavaScript · ورد في «الاستعلام عن الـ DOM كما يراه المستخدم»
بديل الاختبار (Test double)
أي شيء يقوم مقام متعاون حقيقي في الاختبار: الـ stubs تعيد إجابات جاهزة، والـ spies تسجّل الاستدعاءات، والـ mocks هي spies تؤكّد عليها، والـ fakes نسخ أبسط تعمل فعلًا.
اختبار تطبيقات JavaScript · ورد في «بدائل الاختبار، ومتى يضرّ الـ mocking»
تحليل القيم الحدّية (Boundary value analysis)
اختبار المدخلات الواقعة تحت كل حدّ في قاعدة ما مباشرة، وعليه، وفوقه مباشرة، مثل 0 و0.01، أو منزلتين عشريتين وثلاث، لأن الأخطاء تتجمّع عند هذه الحواف.
اختبار تطبيقات JavaScript · ورد في «الحالات الحدّية والاختبارات المعتمدة على الجداول»
تحليل تدفّق التحكّم (Control-flow analysis)
طريقة TypeScript في تتبّع نوع المتغيّر عبر الفروع وجمل العودة والإسنادات، بحيث يكون للاسم نفسه نوع أضيق بعد الفحص مما كان عليه قبله.
أنماط TypeScript المتقدّمة · ورد في «الـ Narrowing وتحليل تدفّق التحكّم»
ترتيب التركيز (focus order)
التسلسل الذي ينتقل به مفتاح Tab بين العناصر القابلة للتركيز. وهو يتبع ترتيب الـ DOM، فيجب أن يطابق الكود ترتيب القراءة المرئي، ولا يجوز أبدًا استخدام قيم tabindex موجبة.
إمكانية الوصول للويب عمليًا · ورد في «الوصول بلوحة المفاتيح والتركيز المرئي»
تصريح using (using declaration)
تصريح يستدعي [Symbol.dispose]() على القيمة حين تنتهي كتلته، بالعودة أو بالرمي، ويحرّر الموارد المتعددة بترتيب معكوس لترتيب تصريحها.
أنماط TypeScript المتقدّمة · ورد في «تصريحات using والـ Decorators القياسية»
تفويض الأحداث (Event delegation)
التعامل مع أحداث عناصر أبناء كثيرة بمستمع واحد على الحاوية التي تضمّها. تنتشر الأحداث للأعلى إلى الحاوية، وتجد event.target.closest() الابن المعني، بما في ذلك الأبناء المضافون لاحقًا.
أساسيات JavaScript · ورد في «الأحداث وتفويض الأحداث (Event Delegation)»
توسيع الوحدات (Module augmentation)
الإضافة إلى الأنواع داخل وحدة باستخدام declare module 'name' { … } من ملف هو نفسه وحدة، مثلًا لتوسيع interface في مكتبة ما.
أنماط TypeScript المتقدّمة · ورد في «ملفات التصريحات وتوسيع الوحدات»
حلقة الأحداث (Event loop)
الآلية التي تتيح لـ JavaScript ذات الخيط الواحد أن تنتظر دون أن تتجمّد. حين يفرغ مكدّس الاستدعاءات، تنفّذ كل callbacks الـ promises المنتظرة (المهام الدقيقة)، ثم المهمة التالية مثل مؤقّت أو نقرة.
أساسيات JavaScript · ورد في «JavaScript غير المتزامنة: الـ Promises وasync/await وfetch»
دالة التأكيد (Assertion function)
دالة نوع إرجاعها asserts value is T. ترمي خطأً حين يفشل الفحص، وحين تعود بشكل طبيعي تضيّق القيمة لبقية النطاق.
أنماط TypeScript المتقدّمة · ورد في «تحليل البيانات غير الموثوقة عند الحدود»
دالة التحديث (updater function)
دالة تُمرَّر إلى setter الـ state، مثل setCount(© => c + 1). تستدعيها React بأحدث قيمة منتظرة، فتتراكم التحديثات المتتالية بشكل صحيح.
أساسيات React · ورد في «أساسيات useState»
دالة التنظيف (cleanup function)
دالة يُرجعها الـ effect لتلغي ما فعله، مثل إزالة مستمع أو إيقاف مؤقّت. وتشغّلها React قبل أن يعمل الـ effect مجددًا وعند إلغاء التركيب.
أساسيات React · ورد في «أساسيات useEffect»
دليل ARIA Authoring Practices ‏(APG)
دليل من W3C يصف أنماط الـ widgets الشائعة مثل التبويبات والـ disclosure ونافذة الحوار وزر القائمة، مع الأدوار والحالات وتفاعل لوحة المفاتيح الذي يتوقّعه المستخدمون من كلٍّ منها.
إمكانية الوصول للويب عمليًا · ورد في «أنماط الـ Widgets: الـ Disclosure والتبويبات وزر القائمة»
دمج التصريحات (Declaration merging)
القاعدة التي تجعل عدة تصريحات بالاسم نفسه، مثل تصريحَي interface، تتّحد في تصريح واحد. وهي طريقة توسيع أنواع الـ lib والـ interfaces الخاصة بالمكتبات.
أنماط TypeScript المتقدّمة · ورد في «ملفات التصريحات وتوسيع الوحدات»
رفع الـ state للأعلى (lifting state up)
نقل الـ state من component إلى أقرب أب مشترك لكل الـ components التي تحتاجه، ثم تمرير القيمة ومعالجات التغيير إلى الأسفل كـ props.
أساسيات React · ورد في «رفع الـ state للأعلى»
شجرة إمكانية الوصول (accessibility tree)
شجرة مبسّطة يبنيها المتصفّح من الـ DOM وCSS، لكل عقدة فيها دور واسم وأي حالات أو قيمة. والتقنيات المساعدة تقرأ هذه الشجرة، لا البكسلات على الشاشة.
إمكانية الوصول للويب عمليًا · ورد في «كيف تقرأ التقنيات المساعدة صفحتك»
صيغة الألوان النسبية (Relative color syntax)
طريقة لاشتقاق لون من آخر بفكّ قنواته باستخدام from، كما في oklch(from var(--brand) calc(l - 0.1) c h)، وتغيير ما تحتاج إليه فقط.
إتقان CSS الحديثة · ورد في «الألوان الحديثة: oklch() وcolor-mix()»
صيغة النشر (Spread)
ثلاث نقاط تنسخ عناصر مصفوفة أو خصائص كائن إلى مصفوفة أو كائن جديد، كما في […list, item] أو { …expense, amount: 500 }. والنسخة سطحية.
أساسيات JavaScript · ورد في «الكائنات والتفكيك (Destructuring) والنشر (Spread)»
طبقة الـ cascade (Cascade layer)
مجموعة مسمّاة من القواعد تُنشأ بـ @layer. الـ layers المُعلنة لاحقًا تتغلّب على السابقة قبل مقارنة الـ specificity، والأنماط خارج الـ layers تتغلّب على كل الـ layers في التصريحات العادية.
إتقان CSS الحديثة · ورد في «طبقات الـ Cascade باستخدام @layer»
عنصر React (React element)
كائن JavaScript عادي ينشئه JSX ويصف ما يجب أن يظهر على الشاشة: نوعًا مثل “h2” أو component، إضافةً إلى الـ props الخاصة به. وتحوّل React هذه العناصر إلى DOM.
أساسيات React · ورد في «قواعد JSX الأساسية»
غير صالح في وقت حساب القيمة (Invalid at computed-value time)
ما يحدث حين يُنتج الاستبدال في var() قيمة لا تستطيع الخاصية استخدامها: تتصرّف الخاصية كأنها غير مضبوطة، فتأخذ قيمتها الموروثة أو الابتدائية بدل تصريح سابق.
إتقان CSS الحديثة · ورد في «الـ Custom Properties و@property»
فحص الحالة الإلزامي (Required status check)
مهمّة CI يجب أن تنجح قبل أن يُدمج pull request في فرع محمي، فتحوّل pipeline الاختبارات من اقتراح إلى بوابة.
اختبار تطبيقات JavaScript · ورد في «الاختبار في CI واختيار ما لا تختبره»
فحص الخصائص الزائدة (Excess property check)
فحص يعلّم الخصائص المجهولة في كائن حرفي طازج مكتوب مباشرة حيث يُنتظر نوع. يلتقط الأخطاء الإملائية، لكن القيم الممرَّرة عبر متغيّر تتخطّاه.
أنماط TypeScript المتقدّمة · ورد في «الـ Structural Typing وقابلية الإسناد»
فحص الشمول (Exhaustiveness check)
ضمانة وقت الترجمة بأن كل عضو في union قد عولج، وتتحقّق عادةً بتمرير القيمة المتبقّية إلى معامل من نوع never في فرع default.
أنماط TypeScript المتقدّمة · ورد في «الـ Branded Types والفحوص الشاملة»
قابلية الإسناد (Assignability)
إمكانية استخدام قيمة من نوع ما حيث يُنتظر نوع آخر. تعمل مثل علاقة الاحتواء بين المجموعات: المجموعة الأضيق من القيم تقع داخل المجموعة الأوسع.
أنماط TypeScript المتقدّمة · ورد في «الـ Structural Typing وقابلية الإسناد»
قارئ الشاشة (screen reader)
برنامج مساعد يحوّل شجرة إمكانية الوصول إلى كلام منطوق أو إلى طريقة برايل، ويتيح للمستخدمين التنقّل عبر العناوين والـ landmarks والروابط وحقول النماذج. ومن أشهرها JAWS وNVDA وVoiceOver وTalkBack.
إمكانية الوصول للويب عمليًا · ورد في «كيف تقرأ التقنيات المساعدة صفحتك»
قانون إمكانية الوصول الأوروبي (European Accessibility Act)
التوجيه الأوروبي 2019/882، الساري منذ 28 يونيو 2025، الذي يشترط أن تكون المنتجات والخدمات المشمولة، مثل التجارة الإلكترونية والخدمات المصرفية وبيع التذاكر، سهلة الوصول. ومعياره المرجعي EN 301 549 يقابل WCAG 2.1 AA، وقد نُشر تحديثه المبني على WCAG 2.2 عام 2026.
إمكانية الوصول للويب عمليًا · ورد في «WCAG 2.2 ومبادئ POUR والقانون»
قيد الـ generic (Generic constraint)
جملة extends على معامل نوع تحدّ من الأنواع التي يقبلها، مثل T extends { id: number }، وتجعل تلك الخصائص قابلة للاستخدام داخل الدالة أيضًا.
أنماط TypeScript المتقدّمة · ورد في «الـ Generics بوصفها علاقات»
قيمة autocomplete (autocomplete token)
قيمة لخاصية autocomplete في HTML، مثل name أو email أو cc-number، تعلن الغرض من الحقل فيستطيع المتصفّح تعبئته. وهي تحقّق معيار WCAG ‏1.3.5 Identify Input Purpose.
إمكانية الوصول للويب عمليًا · ورد في «نماذج سهلة الوصول»
كأس الاختبارات (Testing trophy)
نموذج لمجموعة الاختبارات من أربع طبقات: التحليل الساكن، واختبارات unit وintegration وend-to-end. يكون في أعرض حالاته عند اختبارات الـ integration، التي تمنح عادةً أكبر ثقة مقابل تكلفتها.
اختبار تطبيقات JavaScript · ورد في «ما الذي تمنحك إياه الاختبارات»
لقطة الـ state (state snapshot)
مجموعة قيم الـ state الثابتة التي يراها render واحد. ضبط الـ state لا يغيّر المتغيّرات الحالية، بل يجدول render جديدًا بقيم جديدة.
أساسيات React · ورد في «أساسيات useState»
مراجع المشاريع (Project references)
ميزة في tsconfig تقسم قاعدة الكود إلى مشاريع تُبنى منفصلة (composite: true، وتُبنى بـ tsc -b)، فلا يُعاد فحص الأجزاء التي لم تتغيّر.
أنماط TypeScript المتقدّمة · ورد في «ترحيل JavaScript إلى TypeScript، والحفاظ على السرعة»
مستوى التوافق (A، AA، AAA)
المستوى الذي يقع فيه معيار النجاح، والذي يُعلَن عنده التوافق. المستوى AA، الذي يتضمّن كل معايير A، هو الهدف الذي تشترطه معظم القوانين والسياسات.
إمكانية الوصول للويب عمليًا · ورد في «WCAG 2.2 ومبادئ POUR والقانون»
مصفوفة الاعتماديات (dependency array)
الوسيط الثاني لـ useEffect، ويسرد كل قيمة يقرؤها الـ effect. ولا تعيد React تشغيل الـ effect إلا حين تتغيّر إحدى هذه القيم منذ الـ render السابق.
أساسيات React · ورد في «أساسيات useEffect»
معالج الحدث (event handler)
دالة تُمرَّر إلى prop مثل onClick أو onSubmit، تستدعيها React حين يقع الحدث. والمعالجات هي مكان الآثار الجانبية الناتجة عن إجراءات المستخدم.
أساسيات React · ورد في «التعامل مع الأحداث»
معامل النوع (Type parameter)
نوع نائب في دالة أو نوع generic، مثل T، يربط المدخلات بالمخرجات. ويجب أن يظهر مرتين على الأقل كي يضيف أمانًا حقيقيًا في الأنواع.
أنماط TypeScript المتقدّمة · ورد في «الـ Generics بوصفها علاقات»
معامل النوع const (const type parameter)
معامل نوع معرَّف بـ const (منذ TypeScript 5.0)، يستنتج الوسائط كأن المستدعي كتب as const، فيحتفظ بالقيم الحرفية والـ tuples للقراءة فقط.
أنماط TypeScript المتقدّمة · ورد في «كيف يعمل الـ Inference، ومعاملات النوع const»
موقع الاستنتاج (Inference site)
موضع في نوع معامل يظهر فيه معامل نوع. عند الاستدعاء، يجمع TypeScript مرشّحًا من كل موقع ليقرّر ما هو معامل النوع.
أنماط TypeScript المتقدّمة · ورد في «كيف يعمل الـ Inference، ومعاملات النوع const»
نافذة الحوار المشروطة (modal dialog)
نافذة تحجب بقية الصفحة حتى تُغلق. وعنصر dialog الأصلي المفتوح بـ showModal() ينقل التركيز إلى داخله، ويجعل الصفحة inert، ويُغلق بـ Escape، ويعيد التركيز بعد ذلك.
إمكانية الوصول للويب عمليًا · ورد في «إدارة التركيز: نوافذ الحوار والتطبيقات أحادية الصفحة»
نسبة التباين (contrast ratio)
مقياس WCAG للفرق في الإضاءة النسبية بين لونين، من 1:1 إلى 21:1. يحتاج المستوى AA إلى 4.5:1 للنص العادي، و3:1 للنص الكبير وللعناصر غير النصية الضرورية.
إمكانية الوصول للويب عمليًا · ورد في «اللون والتباين»
نسخة المعاينة (preview deployment)
deployment لـ branch غير الإنتاج أو لـ pull request على رابط فريد خاص به، حتى يمكن فحص التغييرات قبل دمجها ووصولها إلى موقع الإنتاج.
أساسيات React · ورد في «النشر على Vercel»
نقطة التوقّف (Breakpoint)
علامة في DevTools، أو تعليمة debugger في الكود، توقف التنفيذ مؤقتًا عند سطر ما كي تفحص كل متغيّر ومكدّس الاستدعاءات، وتتقدّم في الكود سطرًا سطرًا.
أساسيات JavaScript · ورد في «الأخطاء وتصحيحها باستخدام DevTools»
نوع البيانات (Type)
طبيعة القيمة، وهي التي تحدّد ما يمكنك فعله بها. من الأنواع الأساسية في JavaScript: number وstring وboolean وundefined وnull؛ والعامل typeof يخبرك بنوع أي قيمة.
أساسيات JavaScript · ورد في «القيم وأنواع البيانات والمتغيّرات»
نوع الوصول بالفهرس (Indexed access type)
نوع مثل Order['status'] أو T[number] يبحث عن نوع خاصية ما، أو عن نوع عناصر مصفوفة، باستخدام صياغة الأقواس المربّعة.
أنماط TypeScript المتقدّمة · ورد في «keyof و typeof وأنواع الوصول بالفهرس»
نوع Result (Result type)
discriminated union مثل { ok: true; value: T } | { ok: false; error: E } يُعيد الإخفاقات المتوقَّعة كقيم، فيُضطر المستدعون إلى معالجتها بدل نسيانها.
أنماط TypeScript المتقدّمة · ورد في «أنواع Result للإخفاقات المتوقَّعة»
وحدات الحاوية (Container query units)
وحدات مثل cqi وcqb تساوي 1% من الحجم الأفقي أو الرأسي لأقرب حاوية حجم، وترجع إلى وحدات الـ viewport الصغيرة حين لا توجد حاوية.
إتقان CSS الحديثة · ورد في «الـ Container Queries»
وضع التصفّح (browse mode)
وضع في NVDA يقرأ فيه مؤشّر افتراضي الصفحة، وتقفز الحروف المفردة بين العناصر، مثل H للعناوين. أما وضع التركيز (focus mode) فيرسل ضغطات المفاتيح إلى العنصر الذي عليه التركيز للكتابة.
إمكانية الوصول للويب عمليًا · ورد في «الاختبار بلوحة المفاتيح وقارئات الشاشة»
وضع المراقبة (Watch mode)
الوضع الافتراضي لـ Vitest محليًا: بعد التشغيل ينتظر، وحين تحفظ ملفًا يعيد تشغيل الاختبارات المتأثّرة بذلك التغيير فقط، معتمدًا على مخطّط الوحدات في Vite.
اختبار تطبيقات JavaScript · ورد في «إعداد Vitest»
ARIA
اختصار Accessible Rich Internet Applications، وهي مجموعة خصائص للأدوار والحالات والخصائص تغيّر ما تكشفه شجرة إمكانية الوصول. لا تضيف أي سلوك أبدًا، لذا يُفضَّل HTML الأصلي حيثما وُجد.
إمكانية الوصول للويب عمليًا · ورد في «ARIA: الأدوار والحالات والـ Live Regions»
Arrange, Act, Assert
شكل ثلاثي للاختبارات: ابنِ المدخلات، ونفّذ الفعل الوحيد الخاضع للاختبار، ثم اذكر ما يجب أن يكون صحيحًا الآن. يجعل الاختبارات سهلة التصفّح بالعين.
اختبار تطبيقات JavaScript · ورد في «تشريح الاختبار وقراءة رسائل الفشل»
as const
تأكيد const يستنتج أضيق نوع ممكن للقيمة: القيم الحرفية تبقى حرفية، والمصفوفات تصبح tuples للقراءة فقط، والخصائص تصبح للقراءة فقط.
أنماط TypeScript المتقدّمة · ورد في «الـ Literal Types و as const و satisfies»
Assertion
فحص داخل الاختبار يرمي خطأً حين لا تكون القيمة كما توقّعت، مثل expect(total).toBe(1000). ويفشل الاختبار حين يرمي أحد الـ assertions خطأً.
اختبار تطبيقات JavaScript · ورد في «تشريح الاختبار وقراءة رسائل الفشل»
Assertion موجّه للويب (Web-first assertion)
assertion في Playwright على locator، مثل toHaveText، يعيد فحص الصفحة حتى ينجح أو تنتهي مهلته، بدل قراءة قيمة مرة واحدة.
اختبار تطبيقات JavaScript · ورد في «الـ Locators والـ Assertions الموجّهة للويب والانتظار التلقائي»
async/await
صياغة للعمل مع الـ promises. داخل دالة async، توقف await تلك الدالة مؤقتًا حتى يستقرّ الـ promise وتعطي قيمته، فيُقرأ الكود غير المتزامن من الأعلى إلى الأسفل وتُلتقط الأخطاء بـ try/catch.
أساسيات JavaScript · ورد في «JavaScript غير المتزامنة: الـ Promises وasync/await وfetch»
auto-fit
كلمة مفتاحية لـ repeat() تنشئ أكبر عدد من الـ tracks يتّسع وتطوي الفارغة منها، فتتمدّد العناصر القليلة لتملأ الصف؛ أما auto-fill فتحتفظ بالـ tracks الفارغة.
إتقان CSS الحديثة · ورد في «Grid: المناطق وauto-fit وminmax()»
axe-core
محرّك قواعد مفتوح المصدر لإمكانية الوصول من شركة Deque، يعمل داخل الصفحة ويبلّغ عن المخالفات مع الإشارة إلى معايير WCAG. وهو يشغّل axe DevTools وتدقيق إمكانية الوصول في Lighthouse وتكاملات اختبار مثل ‎@axe-core/playwright.
إمكانية الوصول للويب عمليًا · ورد في «الاختبار الآلي باستخدام axe»
Branded type
تقاطع (intersection) بين نوع أولي وخاصية لا وجود لها إلا في نظام الأنواع، مثل number & { readonly [brand]: 'OrderId' }، فتتوقّف القيم ذات النوع نفسه وقت التشغيل عن التبادل.
أنماط TypeScript المتقدّمة · ورد في «الـ Branded Types والفحوص الشاملة»
Callback
دالة تُمرَّر إلى دالة أخرى، وتلك الأخرى هي التي تقرّر متى تستدعيها. دوال المصفوفات مثل map، ومستمعو الأحداث، والمؤقّتات، كلها تأخذ callbacks.
أساسيات JavaScript · ورد في «الدوال: التصريح والدوال السهمية والقيم الافتراضية»
Cascade
الخوارزمية التي يستخدمها المتصفّح لاختيار قيمة واحدة حين تستهدف عدّة تصريحات الخاصية نفسها على العنصر نفسه: المصدر والأهمية، ثم الأنماط المضمّنة، ثم الـ layers، ثم الـ specificity، ثم ترتيب الظهور.
إتقان CSS الحديثة · ورد في «كيف يختار المتصفّح القاعدة الفائزة»
children
الـ prop الذي يحمل كل ما يوضع بين وسمي الفتح والإغلاق لـ component. عرض {children} يتيح للـ component أن يغلّف محتوى لا يعرف عنه شيئًا.
أساسيات React · ورد في «أنماط التركيب (Composition)»
clamp()
دالة رياضية تُرجع قيمة مفضّلة محصورة بين حدّ أدنى وحدّ أقصى، وتُكتب clamp(MIN, PREFERRED, MAX). وهي تساوي max(MIN, min(PREFERRED, MAX)).
إتقان CSS الحديثة · ورد في «التحجيم الذاتي: min() وmax() وclamp()»
Closure
دالة مقترنة بمتغيّرات النطاق الذي أُنشئت فيه. تحتفظ الدالة بإمكانية الوصول إليها حتى بعد انتهاء الدالة الخارجية، وهذا يمنحها حالة خاصة تتذكّرها.
أساسيات JavaScript · ورد في «النطاق (Scope) والـ Closures»
Code coverage
نسبة العبارات والفروع والدوال والأسطر التي عملت أثناء الاختبارات. تُظهر الكود غير المختبَر، لكنها لا تُظهر إن كان الكود المنفَّذ قد فُحص فعلًا.
اختبار تطبيقات JavaScript · ورد في «الـ Coverage وحدودها»
Conditional type
نوع بالشكل T extends U ? X : Y يختار بين نوعين بحسب ما إذا كان T قابلًا للإسناد إلى U، ويُسمّى أيضًا النوع الشرطي.
أنماط TypeScript المتقدّمة · ورد في «الـ Conditional Types والتوزيع و infer»
Container query
قاعدة @container تطبّق الأنماط بحسب حجم حاوية من الأسلاف أو نمطها بدل الـ viewport، فيتكيّف الـ component مع الخانة التي يجلس فيها.
إتقان CSS الحديثة · ورد في «الـ Container Queries»
CSS nesting
صيغة أصلية لكتابة القواعد داخل قواعد أخرى، حيث تمثّل & الـ selector الأب. وهي تعمل على الـ selectors لا على النص، فلا تستطيع بناء أسماء classes على طريقة BEM كما يفعل Sass.
إتقان CSS الحديثة · ورد في «الـ Nesting الأصلي و:has()»
Custom property
خاصية يبدأ اسمها بشرطتين، مثل --track-color، وتُقرأ بـ var(). وهي موروثة افتراضيًا، وتُستبدل حيث تُستخدم، في وقت حساب القيمة.
إتقان CSS الحديثة · ورد في «الـ Custom Properties و@property»
Discriminated union
union من أنواع كائنات تتشارك خاصية بقيمة حرفية مختلفة في كل عضو، مثل status. وفحص تلك الخاصية يضيّق الكائن كله إلى عضو واحد.
أنماط TypeScript المتقدّمة · ورد في «الـ Discriminated Unions لحالات المجال»
DOM
نموذج كائنات المستند (Document Object Model): شجرة الكائنات الحيّة في المتصفّح التي تمثّل الصفحة. وتغيير هذه الكائنات بـ JavaScript، مثل textContent لعنصر ما، يحدّث ما يراه المستخدم فورًا.
أساسيات JavaScript · ورد في «الـ DOM: التحديد والإنشاء والتحديث»
Effect
كود يُمرَّر إلى useEffect ويعمل بعد أن تحدّث React الشاشة، ويُستخدم للتزامن مع شيء خارج React، مثل عنوان المستند أو التخزين أو المؤقّتات أو الاشتراكات.
أساسيات React · ورد في «أساسيات useEffect»
End-to-end test
اختبار يقود التطبيق الحقيقي في متصفّح حقيقي، عبر الواجهة والـ API وطبقة البيانات. وهو أقرب أنواع الاختبارات إلى الواقع وأغلاها ثمنًا.
اختبار تطبيقات JavaScript · ورد في «الـ Locators والـ Assertions الموجّهة للويب والانتظار التلقائي»
fit-content
كلمة مفتاحية للتحجيم الذاتي تجعل حجم العنصر بعرض max-content الخاص به، محدودًا بالمساحة المتاحة، فتستطيع الكتلة أن تحتضن محتواها دون أن تفيض.
إتقان CSS الحديثة · ورد في «التحجيم الذاتي: min() وmax() وclamp()»
Fixture
في Playwright، قيمة يطلبها الاختبار باسمها، مثل page أو group مخصّصة، تُهيّأ قبل use() وتُهدم بعده، ولا تُنشأ إلا للاختبارات التي تحتاجها.
اختبار تطبيقات JavaScript · ورد في «الـ Fixtures وعزل الاختبارات»
Flaky test
اختبار متقلّب ينجح أحيانًا ويفشل أحيانًا دون أي تغيير في الكود، عادةً بسبب التوقيت أو البيانات المشتركة أو الوقت غير المتحكَّم فيه. ويعلّم الفرق تجاهل حالات الفشل.
اختبار تطبيقات JavaScript · ورد في «تتبّع الاختبارات المتقلّبة وإصلاحها»
flex-basis
الحجم الذي يبدأ منه عنصر flex على امتداد المحور الرئيسي، قبل أن تتقاسم flex-grow المساحة المتبقية أو تستردّ flex-shrink النقص.
إتقان CSS الحديثة · ورد في «Flexbox بالتفصيل»
Form action
ميزة في React 19 تستقبل فيها دالة ممرَّرة إلى الخاصية action في النموذج كائن FormData المُرسَل. وتمنع React إعادة تحميل الصفحة وتعيد ضبط الحقول غير المتحكَّم بها بعد ذلك.
أساسيات React · ورد في «النماذج والـ controlled inputs»
Fragment
غلاف يُكتب بالشكل <>…</> أو يجمع عدّة عناصر من دون إضافة عقدة إلى الـ DOM، فيستطيع الـ component إرجاع عناصر متجاورة كجذر واحد.
أساسيات React · ورد في «أول component لك»
grid-template-areas
خاصية grid تسمّي مناطق الشبكة بسلاسل نصية، سلسلة لكل صف، فتستطيع وضع العناصر بأسمائها وإعادة ترتيب التخطيط بإعادة رسم السلاسل.
إتقان CSS الحديثة · ورد في «Grid: المناطق وauto-fit وminmax()»
Hook
دالة يبدأ اسمها بـ “use”، مثل useState أو useEffect، تتيح للـ component استخدام ميزات React. ويجب استدعاء الـ hooks في المستوى الأعلى من الـ component.
أساسيات React · ورد في «أساسيات useState»
inert
خاصية في HTML تُخرج العنصر وكل ما بداخله من التركيز والتفاعل بالمؤشّر وشجرة إمكانية الوصول. وهي مناسبة للأدراج المغلقة واللوحات الواقعة خارج الشاشة والمحتوى الذي خلف طبقة مخصّصة.
إمكانية الوصول للويب عمليًا · ورد في «إدارة التركيز: نوافذ الحوار والتطبيقات أحادية الصفحة»
infer
كلمة مفتاحية تُستخدم داخل جملة extends في conditional type لالتقاط جزء من النوع المطابق، كما في ReturnType الذي يلتقط نوع إرجاع الدالة.
أنماط TypeScript المتقدّمة · ورد في «الـ Conditional Types والتوزيع و infer»
Integration test
اختبار يفحص عدة وحدات تعمل معًا، مثل مكوّن نموذج يستخدم كود التحليل الحقيقي مع شبكة مزيّفة. يلتقط أخطاء الربط التي تفوت الـ unit tests.
اختبار تطبيقات JavaScript · ورد في «ما الذي تمنحك إياه الاختبارات»
JSON
اختصار JavaScript Object Notation، وهو صيغة نصية للبيانات. تحوّل JSON.stringify القيم إلى نص JSON وتعيده JSON.parse قيمًا؛ ويحمل النصوص والأرقام والقيم المنطقية وnull والمصفوفات والكائنات البسيطة.
أساسيات JavaScript · ورد في «حفظ البيانات: JSON وlocalStorage»
JSX
امتداد لصياغة JavaScript يتيح لك كتابة markup شبيه بـ HTML داخل JavaScript. يحوّل المترجم كل وسم إلى استدعاء دالة يُنشئ عنصر React.
أساسيات React · ورد في «قواعد JSX الأساسية»
Label in Name
معيار WCAG ‏2.5.3: حين يكون لعنصر التحكّم نص مرئي، يجب أن يحتوي اسمه المتاح ذلك النص، ويُفضَّل أن يكون في بدايته، ليستطيع مستخدمو التحكّم الصوتي تفعيله بنطق ما يرونه.
إمكانية الوصول للويب عمليًا · ورد في «الأسماء والأوصاف المتاحة (Accessible Names)»
Landmark
منطقة في الصفحة لها دور يستطيع مستخدمو قارئ الشاشة عرض قائمة بها والقفز إليها، مثل banner وnavigation وmain وcontentinfo. وتُنشئها عناصر HTML مثل header وnav وmain وfooter.
إمكانية الوصول للويب عمليًا · ورد في «الـ Landmarks والعناوين»
let وconst
الطريقتان الحديثتان للتصريح بمتغيّر. الاسم المُصرَّح به بـ const لا يمكن توجيهه إلى قيمة أخرى أبدًا؛ أما let فيمكن إعادة إسنادها. ابدأ بـ const ولا تستخدم let إلا عند الحاجة.
أساسيات JavaScript · ورد في «القيم وأنواع البيانات والمتغيّرات»
light-dark()
دالة ألوان تُرجع قيمتها الأولى حين يكون النظام اللوني المستخدم في العنصر فاتحًا، والثانية حين يكون داكنًا. وتحتاج إلى أن تسمح color-scheme بالداكن.
إتقان CSS الحديثة · ورد في «الفاتح والداكن باستخدام light-dark()»
Live region
عنصر تُعلن قارئات الشاشة تغييرات محتواه دون نقل التركيز. ‏role=“status” مهذّبة وrole=“alert” حازمة؛ ويجب أن تكون المنطقة موجودة قبل أن يتغيّر نصها.
إمكانية الوصول للويب عمليًا · ورد في «ARIA: الأدوار والحالات والـ Live Regions»
Locator
في Playwright، وصف كسول وصارم لطريقة إيجاد عنصر، مثل page.getByRole('button', { name: 'Save' }). ويُعاد حلّه مع كل فعل.
اختبار تطبيقات JavaScript · ورد في «الـ Locators والـ Assertions الموجّهة للويب والانتظار التلقائي»
Mapped type
نوع يمرّ على union من المفاتيح ويبني خاصية واحدة لكل مفتاح، كما في { [K in keyof T]?: T[K] }، وهو تعريف Partial.
أنماط TypeScript المتقدّمة · ورد في «الـ Mapped Types وإعادة تسمية المفاتيح»
MSW (Mock Service Worker)
مكتبة تعترض طلبات الشبكة في Node والمتصفّح وتجيب عنها بمعالِجات تعرّفها أنت، فيظلّ الـ fetch الحقيقي وكود البيانات لديك يعملان في الاختبارات.
اختبار تطبيقات JavaScript · ورد في «اختبار مكوّنات React والشبكة»
Mutant متكافئ (Equivalent mutant)
mutant لا يغيّر تعديله أي سلوك يستطيع المستدعي ملاحظته، فلا يستطيع أي اختبار معقول قتله. يجب تجاهله، لا مطاردته.
اختبار تطبيقات JavaScript · ورد في «اختبار الطفرات (Mutation Testing)»
Narrowing
تضييق نوع واسع إلى نوع أكثر تحديدًا بفحص وقت التشغيل، مثل typeof أو === أو in أو instanceof أو type predicate.
أنماط TypeScript المتقدّمة · ورد في «الـ Narrowing وتحليل تدفّق التحكّم»
NoInfer
نوع مدمج (منذ TypeScript 5.4) يجعل موضعًا ما للفحص فقط، فيُتحقَّق منه مقابل معامل نوع لكنه لا يساهم أبدًا بمرشّح في الاستنتاج.
أنماط TypeScript المتقدّمة · ورد في «التحكّم في الـ Inference: NoInfer والقيم الافتراضية والـ Overloads»
nullish coalescing (??)
عامل لا يُرجع طرفه الأيمن إلا حين يكون الطرف الأيسر null أو undefined. وعلى عكس ||، يحتفظ بالقيم الحقيقية مثل 0 والنص الفارغ.
أساسيات JavaScript · ورد في «القيم المفقودة وMap وSet»
oklch()
دالة ألوان تستخدم الإضاءة والتشبّع ودرجة اللون الإدراكية، فتبدو الألوان المتساوية في الإضاءة متساوية في السطوع. وتستطيع أيضًا التعبير عن ألوان خارج نطاق sRGB.
إتقان CSS الحديثة · ورد في «الألوان الحديثة: oklch() وcolor-mix()»
POUR
المبادئ الأربعة في قمّة WCAG: يجب أن يكون المحتوى قابلًا للإدراك (Perceivable)، وقابلًا للتشغيل (Operable)، وقابلًا للفهم (Understandable)، ومتينًا (Robust). ويقع كل إرشاد ومعيار نجاح تحت أحدها.
إمكانية الوصول للويب عمليًا · ورد في «WCAG 2.2 ومبادئ POUR والقانون»
prefers-reduced-motion
media feature في CSS تعكس إعداد نظام التشغيل لدى المستخدم لتقليل الحركة. استخدمها لاستبدال الحركات الكبيرة بتلاشٍ أو لحذفها، مراعاةً للمصابين باضطرابات دهليزية.
إمكانية الوصول للويب عمليًا · ورد في «التكبير وإعادة التدفّق وحجم الهدف والحركة»
Promise
كائن يمثّل نتيجة ليست جاهزة بعد. يبدأ معلّقًا (pending) ويستقرّ مرة واحدة، إمّا مُنجَزًا بقيمة أو مرفوضًا بخطأ؛ وتُلحق then وcatch ما يحدث بعد ذلك.
أساسيات JavaScript · ورد في «JavaScript غير المتزامنة: الـ Promises وasync/await وfetch»
Prop drilling
تمرير prop عبر عدّة components لا تستخدمه، فقط لإيصاله إلى component متداخل في العمق. وكثيرًا ما يزيله التركيب بالعناصر أو الـ context.
أساسيات React · ورد في «أنماط التركيب (Composition)»
Props
المدخلات التي يمرّرها الأب إلى component كخصائص، وتصل إليه ككائن واحد. الـ props للقراءة فقط: لا يغيّرها الـ component أبدًا، بل يستقبل props جديدة حين يعيد الأب الـ render.
أساسيات React · ورد في «الـ props بالتفصيل»
reduce
دالة مصفوفات تمرّ على العناصر حاملةً مُراكِمًا (accumulator)، وتُرجع المُراكِم النهائي. تُستخدم للمجاميع والتجميع؛ ومرّر لها دائمًا قيمة ابتدائية وسيطًا ثانيًا.
أساسيات JavaScript · ورد في «الجمع والترتيب: reduce وsort»
Roving tabindex
تقنية للـ widgets المركّبة لا يحمل فيها tabindex=“0” إلا العنصر النشط، بينما تحمل البقية “-1”. فيكون الـ widget محطة Tab واحدة، وتنقل مفاتيح الأسهم التركيز والقيمة 0 بين العناصر.
إمكانية الوصول للويب عمليًا · ورد في «أنماط الـ Widgets: الـ Disclosure والتبويبات وزر القائمة»
satisfies
عامل (operator) يفحص قيمة مقابل نوع دون أن يستبدل النوع المستنتَج للقيمة، فتحصل على التحقّق وتحتفظ في الوقت نفسه بالمفاتيح والقيم الحرفية الدقيقة.
أنماط TypeScript المتقدّمة · ورد في «الـ Literal Types و as const و satisfies»
Slot prop
prop يقبل JSX، مثل actions={}، فيقرّر المستدعي ما الذي يظهر، ويقرّر الـ component أين يظهر.
أساسيات React · ورد في «أنماط التركيب (Composition)»
Specificity
وزن الـ selector، ويُحسب ثلاثة أعداد منفصلة (الـ IDs؛ ثم الـ classes والسمات والـ pseudo-classes؛ ثم الأنواع والـ pseudo-elements) تُقارَن عمودًا بعمود، ولا تُجمع معًا أبدًا.
إتقان CSS الحديثة · ورد في «الـ Specificity و:is() و:where()»
Spy
غلاف حول دالة يسجّل كيف استُدعيت. يراقب vi.spyOn(object, method) دالة حقيقية، ويستطيع أيضًا استبدالها إلى أن تُستعاد.
اختبار تطبيقات JavaScript · ورد في «بدائل الاختبار، ومتى يضرّ الـ mocking»
State
بيانات يتذكّرها الـ component بين مرّات الـ render، ويُعلَن عنها باستخدام useState. استدعاء الـ setter الخاص بها يخزّن قيمة جديدة ويجعل React تعيد رسم الـ component.
أساسيات React · ورد في «أساسيات useState»
StrictMode
component غلاف في React يضيف فحوصًا خاصة بالتطوير، مثل رسم الـ components مرتين وتشغيل الـ effects مرتين، ليكشف الكود غير النقي ودوال التنظيف المفقودة. لا تأثير له في الإنتاج.
أساسيات React · ورد في «تجهيز المشروع باستخدام Vite»
Stub
متعاون بديل يعيد إجابات جاهزة كي يتحكّم الاختبار في اعتمادية ما، مثل كائن API تُحلّ دالة post فيه دائمًا بمعرّف.
اختبار تطبيقات JavaScript · ورد في «اختبار الأخطاء والكود غير المتزامن»
Subgrid
القيمة subgrid لـ grid-template-rows أو grid-template-columns، التي تجعل الشبكة المتداخلة تستخدم tracks الأب التي تمتدّ عليها، فيصطفّ المحتوى عبر الـ components الشقيقة.
إتقان CSS الحديثة · ورد في «الـ Subgrid لبطاقات متحاذية»
Template literal
نص يُكتب بين علامات backtick، يستطيع إدراج قيمة أي تعبير عبر ${ } ويمكن أن يمتد على عدّة أسطر، مثل Total: ${total}.
أساسيات JavaScript · ورد في «النصوص والـ Template Literals»
Template literal type
نوع نصي يُبنى بصياغة علامات الاقتباس المائلة من أنواع أخرى، مثل `order.${OrderStatus}`. والـ unions داخله تتوسّع إلى كل التركيبات الممكنة.
أنماط TypeScript المتقدّمة · ورد في «الـ Template Literal Types»
Trace
تسجيل من Playwright لتشغيل اختبار، فيه كل فعل، ولقطات DOM قبله وبعده، ومخرجات الـ console، واستدعاءات الشبكة، ويُفتح في عارض الـ trace.
اختبار تطبيقات JavaScript · ورد في «تتبّع الاختبارات المتقلّبة وإصلاحها»
Truthy وFalsy
طريقة معاملة JavaScript لأي قيمة تُستخدم شرطًا. ثماني قيم فقط falsy: false و0 و-0 و0n والنص الفارغ وnull وundefined وNaN. وكل قيمة أخرى truthy.
أساسيات JavaScript · ورد في «اتخاذ القرارات: if وelse والقيم الـ truthy»
Type predicate
نوع إرجاع دالة بالشكل value is T. حين تُعيد الدالة true يضيق الوسيط إلى T في موضع الاستدعاء؛ أما جسم الدالة نفسه فلا يُتحقَّق منه.
أنماط TypeScript المتقدّمة · ورد في «تحليل البيانات غير الموثوقة عند الحدود»
Unit test
اختبار يفحص دالة واحدة أو وحدة برمجية واحدة بمعزل عن غيرها، وعادةً في أجزاء من الثانية. مثالي للمنطق الصافي ذي الحالات الحدّية الكثيرة، مثل تقريب المبالغ المالية.
اختبار تطبيقات JavaScript · ورد في «ما الذي تمنحك إياه الاختبارات»
useActionState
hook في React 19 يغلّف دالة action ويُرجع آخر نتيجة أنتجتها، ودالة إرسال تمرّرها إلى النموذج، ومؤشّر isPending.
أساسيات React · ورد في «النماذج والـ controlled inputs»
user-event
حزمة من Testing Library تحاكي تفاعلات المستخدم كاملة، بما فيها أحداث المؤشّر والتركيز ولوحة المفاتيح، بدل إطلاق أحداث منفردة كما يفعل fireEvent.
اختبار تطبيقات JavaScript · ورد في «محاكاة تفاعل المستخدم»
Utility class
class صغير في CSS يفعل شيئًا واحدًا، مثل p-4 للحشو أو text-slate-600 للون. ويولّد Tailwind CSS الـ utilities التي تستخدمها ملفاتك.
أساسيات React · ورد في «التنسيق باستخدام Tailwind»
View transition
حركة تُنشئها document.startViewTransition(): يلتقط المتصفّح صورتين للحالتين القديمة والجديدة في تحديث الـ DOM، ويحرّك الانتقال بينهما عبر pseudo-elements تستطيع تنسيقها.
إتقان CSS الحديثة · ورد في «الـ View Transitions»
Vite
أداة بناء وخادم تطوير لمشاريع الواجهات الأمامية. يقدّم ملفات المصدر مع تحديثات فورية أثناء التطوير، ويجمّعها في ملفات ثابتة محسّنة داخل dist/ للإنتاج.
أساسيات React · ورد في «تجهيز المشروع باستخدام Vite»
WCAG
إرشادات إمكانية الوصول إلى محتوى الويب، وهي معيار W3C للمحتوى سهل الوصول. ينظّم الإصدار 2.2، المنشور في أكتوبر 2023، معايير نجاح قابلة للاختبار تحت أربعة مبادئ وثلاثة مستويات توافق.
إمكانية الوصول للويب عمليًا · ورد في «WCAG 2.2 ومبادئ POUR والقانون»

علم البيانات · 60 مصطلحًا

إطار النافذة (window frame)
نطاق الصفوف حول الصف الحالي الذي تراه دالة التجميع كدالة نافذة، مثل ROWS BETWEEN 6 PRECEDING AND CURRENT ROW لمتوسط متحرك على 7 صفوف.
SQL للمحلّلين · ورد في «المجاميع التراكمية وLAG والمتوسطات المتحركة»
الـ accessor المسمّى str
الخاصية .str في Series نصية، وتطبّق methods النصوص مثل strip وtitle وreplace وsplit وcontains على كل القيم دفعة واحدة.
Python لتحليل البيانات · ورد في «تنظيف الأعمدة النصية»
الـ anti-join
شرط يُبقي الصفوف التي لا تطابق لها في جدول آخر، ويُكتب بـ NOT EXISTS أو LEFT JOIN … WHERE right_key IS NULL. أما NOT IN فيفشل حين يحتوي الـ subquery على NULL.
SQL للمحلّلين · ورد في «الـ self-join والـ anti-join»
الـ CTE (common table expression)
نتيجة وسيطة مسمّاة تُعرَّف بـ WITH name AS (…). تجعل الـ CTEs التحليل الطويل يُقرأ كخطوات مرتّبة، يمكن تشغيل كلٍّ منها وفحصها وحدها.
SQL للمحلّلين · ورد في «الـ subqueries والـ CTE والـ CTE التكراري»
الـ CTE التكراري (recursive CTE)
CTE فيه query ارتكاز، ثم UNION ALL، ثم خطوة ترتبط بالـ CTE نفسه، ويتكرّر حتى لا تظهر صفوف جديدة. يُستخدم لتتبّع التسلسلات الهرمية بأي عمق.
SQL للمحلّلين · ورد في «الـ subqueries والـ CTE والـ CTE التكراري»
الـ fan-out (تضاعف الصفوف)
تضاعف الصفوف الذي يحدث حين يتبع الـ JOIN علاقة واحد-إلى-متعدد. القيم المخزّنة في جانب «الواحد» تتكرّر مرة لكل تطابق، فيؤدي جمعها إلى تضخيم المجاميع.
SQL للمحلّلين · ورد في «الـ fan-out: حين يحسب الـ JOIN الشيء مرتين»
الـ self-join
ربط جدول بنفسه باستخدام اسمين مستعارين لدورين مختلفين، مثل الموظف والمدير، لتتبّع رابط مخزّن داخل الجدول نفسه.
SQL للمحلّلين · ورد في «الـ self-join والـ anti-join»
الـ semi-join
شرط يُبقي الصفوف التي لها تطابق واحد على الأقل في جدول آخر، ويُكتب بـ EXISTS أو IN (subquery). وعلى عكس الـ JOIN، لا يكرّر الصفوف أبدًا.
SQL للمحلّلين · ورد في «الـ self-join والـ anti-join»
الارتباط (correlation)
رقم بين ‎-1 و1 يقيس مدى قوة تحرّك عمودين رقميين معًا في نمط خطي؛ وهو يدلّ على علاقة مصاحبة، لا على سبب.
Python لتحليل البيانات · ورد في «الإحصاء الوصفي والتوزيعات»
الإسناد المتسلسل (chained assignment)
الإسناد عبر عمليتي اختيار، مثل df["col"][mask] = value؛ قد يغيّر نسخة مؤقتة بدلًا من الـ DataFrame، فاستخدم بدلًا منه استدعاءً واحدًا لـ .loc.
Python لتحليل البيانات · ورد في «إضافة الأعمدة وتعديلها»
البيانات الطويلة والعريضة (long and wide)
شكلان للبيانات نفسها: الطويلة فيها صف لكل ملاحظة، والعريضة تنشر متغيّرًا واحدًا عبر الأعمدة؛ تنقل pivot_table من الطويل إلى العريض، وتعيد melt العكس.
Python لتحليل البيانات · ورد في «إعادة التشكيل باستخدام pivot_table و melt»
التاريخ الملتبس (ambiguous date)
نص تاريخ مثل 05/08/2025 يكون صالحًا وفق قراءة اليوم أولًا وقراءة الشهر أولًا معًا؛ ووحدها المعلومات الخارجية تحسم أيّهما الصحيح.
Python لتحليل البيانات · ورد في «تحليل التواريخ الفوضوية»
التجميع (groupby)
عملية pandas التي تقسم الصفوف إلى مجموعات بحسب مفتاح، وتطبّق حسابًا على كل مجموعة، وتضمّ النتائج في جدول واحد (split-apply-combine).
Python لتحليل البيانات · ورد في «التجميع (groupby) والحسابات التجميعية المسمّاة»
التحليل القابل لإعادة الإنتاج (reproducible analysis)
تحليل يستطيع أيّ شخص إعادة تشغيله من الملفات الخام، من الأعلى إلى الأسفل، دون خطوات يدوية، ويحصل على النتائج نفسها، باستخدام المُعامِلات والدوال والـ assertions.
Python لتحليل البيانات · ورد في «التحليل القابل لإعادة الإنتاج»
التعبير النمطي (regular expression)
لغة أنماط للنصوص تحمل فيها حروف مثل $ و. معاني خاصة؛ مرّر regex=False لمعاملتها كحروف عادية.
Python لتحليل البيانات · ورد في «تحويل المبالغ النصية إلى أرقام»
الجدول المشتق (derived table)
subquery داخل عبارة FROM يتصرّف كجدول مؤقت بمستوى تفصيل خاص به، ويُستخدم غالبًا لتجميع جدول تفصيلي قبل ربطه.
SQL للمحلّلين · ورد في «الـ fan-out: حين يحسب الـ JOIN الشيء مرتين»
الحسابات التجميعية المسمّاة (named aggregation)
صيغة من agg تسمّي فيها كل كلمة مفتاحية عمودًا ناتجًا، وقيمتها زوج (عمود، دالة)، مثل revenue=("revenue", "sum").
Python لتحليل البيانات · ورد في «التجميع (groupby) والحسابات التجميعية المسمّاة»
الدمج (merge)
method في pandas تدمج جدولين جنبًا إلى جنب بمطابقة قيم المفتاح؛ وhow تحدّد نوع الربط، وvalidate تتحقّق من علاقة المفاتيح المتوقّعة.
Python لتحليل البيانات · ورد في «دمج الجداول باستخدام merge»
العمود المجرّد (bare column)
عمود مختار ليس ضمن التجميع ولا داخل دالة تجميع. يسمح به SQLite ويملؤه من صف اعتباطي في كل مجموعة، بينما يرفض PostgreSQL الـ query.
SQL للمحلّلين · ورد في «GROUP BY وHAVING ومستوى تفصيل النتيجة»
القاموس (dictionary)
حاوية في Python من أزواج المفتاح والقيمة، مثل اسم منتج مربوط بسعره؛ تبحث عن القيم بالمفتاح باستخدام d[key] أو d.get(key, default).
Python لتحليل البيانات · ورد في «القوائم والقواميس»
القمع (funnel)
سلسلة من الخطوات، مثل الجلسة ثم الإضافة إلى السلة ثم الشراء، تُعرض كأعداد ومعدلات تحويل من خطوة إلى التي تليها لإظهار أين يتسرّب الناس.
SQL للمحلّلين · ورد في «القمع والـ cohorts ومعدل الاحتفاظ»
القناع المنطقي (boolean mask)
Series من قيم True و False، تأتي عادةً من مقارنة، وتُستخدم لاختيار الصفوف بـ df[mask]؛ مجموعها يعدّ المطابقات ومتوسطها يعطي حصتها.
Python لتحليل البيانات · ورد في «تصفية الصفوف وترتيبها»
المتغيّر (variable)
اسم يُربط بقيمة باستخدام =، مثل unit_price = 39، كي يمكن استخدام القيمة لاحقًا؛ يُحسب الطرف الأيمن أولًا، ثم يشير الاسم إلى النتيجة.
Python لتحليل البيانات · ورد في «القيم والأنواع والمتغيّرات»
المنطق ثلاثي القيم (three-valued logic)
منطق SQL الذي يكون فيه الشرط TRUE أو FALSE أو NULL (غير معروف). أي مقارنة مع NULL نتيجتها غير معروفة، وWHERE لا يُبقي إلا الصفوف التي يكون شرطها TRUE.
SQL للمحلّلين · ورد في «منطق NULL وتعبيرات CASE»
النمو السنوي (year-over-year)
التغيّر مقارنةً بالفترة نفسها قبل سنة، مثل pct_change(4) على البيانات الفصلية؛ وهو يزيل الأنماط الموسمية من المقارنة.
Python لتحليل البيانات · ورد في «السلاسل الزمنية: resample والـ accessor المسمّى dt»
النوع القابل للقيم المفقودة (nullable dtype)
نوع في pandas مثل Int64 أو Float64 أو boolean أو string يخزّن القيم المفقودة على هيئة pd.NA، فتبقى الأعمدة الصحيحة أعدادًا صحيحة حتى مع وجود فجوات.
Python لتحليل البيانات · ورد في «القيم المفقودة»
الوسيط (median)
القيمة الوسطى في عمود مرتّب، ونصف القيم أقل منها؛ وفي البيانات الملتوية مثل قيم الطلبات تصف القيمة النموذجية أفضل من المتوسط.
Python لتحليل البيانات · ورد في «الإحصاء الوصفي والتوزيعات»
أولوية المعاملات (AND قبل OR)
القاعدة التي يقيّم بها SQL المعامل AND قبل OR، فيجمّع الشرط الذي يخلط بينهما الشروط بطريقة غير متوقعة ما لم توضع كل مجموعة OR بين قوسين.
SQL للمحلّلين · ورد في «التصفية والترتيب بهدف»
تعبير CASE
تعبير يعيد نتيجة أول شرط WHEN قيمته TRUE، أو قيمة ELSE؛ وبدون ELSE تحصل الصفوف غير المطابقة على NULL.
SQL للمحلّلين · ورد في «منطق NULL وتعبيرات CASE»
خطة التنفيذ (query plan)
وصف قاعدة البيانات لطريقة تنفيذها query ما، ويُعرض في SQLite بـ EXPLAIN QUERY PLAN. تعني SEARCH أن index ضيّق العمل، وتعني SCAN أن كل صف قد قُرئ.
SQL للمحلّلين · ورد في «الـ indexes وخطط التنفيذ»
دالة النافذة (window function)
دالة يتبعها OVER (…) تحسب قيمة من مجموعة صفوف مترابطة مع إبقاء كل صف، على عكس GROUP BY الذي يضغطها في صف واحد.
SQL للمحلّلين · ورد في «دوال النافذة للترتيب»
عبارة FILTER
إضافة قياسية في SQL إلى دالة التجميع، كما في COUNT(*) FILTER (WHERE channel = ‘web’)، تقصر دالة التجميع تلك وحدها على الصفوف المطابقة داخل كل مجموعة.
SQL للمحلّلين · ورد في «GROUP BY وHAVING ومستوى تفصيل النتيجة»
فحص جودة البيانات (data-quality check)
query يعيد الصفوف التي تخالف قاعدة محدّدة، مثل المراجع اليتيمة أو التواريخ المستحيلة، فتعني النتيجة الفارغة أن القاعدة صامدة.
SQL للمحلّلين · ورد في «فحوص جودة البيانات»
محاذاة الفهرس (index alignment)
قاعدة pandas التي تجعل العمليات بين Series أو DataFrame وآخر تطابق القيم بحسب تسمية الفهرس لا بحسب الموقع؛ والتسميات الموجودة في طرف واحد فقط تنتج NaN.
Python لتحليل البيانات · ورد في «الـ Series والـ DataFrame»
مستوى التفصيل (grain)
ما يمثّله الصف الواحد في جدول أو في نتيجة query، مثل صف لكل طلب أو صف لكل دولة في كل شهر. تحديده قبل كتابة GROUP BY يمنع معظم أخطاء التجميع.
SQL للمحلّلين · ورد في «GROUP BY وHAVING ومستوى تفصيل النتيجة»
معدل الاحتفاظ (retention) لكل cohort
نسبة العملاء من مجموعة بدأت في الفترة نفسها، مثل شهر الطلب الأول، الذين عادوا نشطين بعد عدد معيّن من الفترات.
SQL للمحلّلين · ورد في «القمع والـ cohorts ومعدل الاحتفاظ»
نص التاريخ بصيغة ISO-8601
تواريخ مخزّنة كنص بالشكل ‘YYYY-MM-DD HH:MM:SS’. لأن الوحدة الأكبر تأتي أولًا، يطابق الترتيب الأبجدي الترتيب الزمني، فتعمل مقارنة النصوص كشرط على التاريخ.
SQL للمحلّلين · ورد في «التعامل مع التواريخ في SQLite»
نطاق التاريخ نصف المفتوح (half-open range)
شرط على فترة يشمل بدايتها ويستبعد بداية الفترة التالية، مثل order_date >= ‘2025-11-01’ AND order_date < ‘2025-12-01’، فلا يُقتطع اليوم الأخير أبدًا.
SQL للمحلّلين · ورد في «التعامل مع التواريخ في SQLite»
نوع الربط (join type)
القاعدة الخاصة بالمفاتيح غير المطابقة في عملية الدمج: inner يحتفظ بالمفاتيح الموجودة في الطرفين، و left بكل صف أيسر، و right بكل صف أيمن، و outer بكل المفاتيح.
Python لتحليل البيانات · ورد في «دمج الجداول باستخدام merge»
Assertion
جملة assert condition, message لا تفعل شيئًا حين يتحقّق الشرط، وتوقف البرنامج بالرسالة حين يفشل؛ تُستخدم لتحديد ما يجب أن تبدو عليه البيانات النظيفة.
Python لتحليل البيانات · ورد في «الصفوف المكرّرة ودالة تنظيف قابلة لإعادة الاستخدام»
COALESCE
دالة تعيد أول وسيط قيمته ليست NULL، وتُستخدم لإعطاء القيم المفقودة قيمة افتراضية عند العرض مثل ‘none’. أما استبدال NULL بصفر في المتوسطات فيشوّه النتائج.
SQL للمحلّلين · ورد في «منطق NULL وتعبيرات CASE»
Copy-on-Write
سلوك في pandas، افتراضي منذ الإصدار 3.0 واختياري في 2.x، تتصرّف فيه كل عملية اختيار كنسخة، فتكون الطريقة الوحيدة لتغيير DataFrame هي الإسناد إليه مباشرة.
Python لتحليل البيانات · ورد في «إضافة الأعمدة وتعديلها»
DataFrame
جدول pandas: أعمدة من نوع Series تتشارك فهرس صفوف واحدًا، مع methods لتحميل البيانات واختيارها وتصفيتها وتجميعها ودمجها وإعادة تشكيلها.
Python لتحليل البيانات · ورد في «الـ Series والـ DataFrame»
dtype
نوع البيانات المشترك بين كل القيم في عمود pandas، مثل int64 أو float64 أو object (نص) أو bool أو datetime64؛ والنوع الخاطئ وراء كثير من أخطاء البيانات.
Python لتحليل البيانات · ورد في «الـ Series والـ DataFrame»
f-string
نص يسبقه الحرف f ويضع القيم بين أقواس معقوفة مع تنسيق اختياري، مثل f"{revenue:,.2f}" لتعطي 1,234.50 أو f"{share:.1%}" لتعطي 12.5%.
Python لتحليل البيانات · ورد في «الدوال والـ f-strings وقراءة رسائل الخطأ»
HAVING
العبارة التي تصفّي المجموعات بعد التجميع، فتستطيع اختبار قيم مثل COUNT(*) أو SUM(revenue). أما الشروط على الصفوف فمكانها WHERE، الذي يعمل قبل التجميع.
SQL للمحلّلين · ورد في «GROUP BY وHAVING ومستوى تفصيل النتيجة»
IS DISTINCT FROM
مقارنة آمنة مع NULL تعامل NULL كقيمة عادية، فلا تُسقط الصفوف التي فيها NULL بصمت كما يفعل معامل «لا يساوي» العادي.
SQL للمحلّلين · ورد في «منطق NULL وتعبيرات CASE»
julianday()
دالة في SQLite تحوّل التاريخ إلى عدد من الأيام مع كسوره. طرح قيمتين منها يعطي مدة بالأيام، وضرب الناتج في 24 يعطي الساعات.
SQL للمحلّلين · ورد في «التعامل مع التواريخ في SQLite»
LAG وLEAD
دالتا نافذة تعيدان قيمة من الصف السابق (LAG) أو التالي (LEAD) بترتيب النافذة، وتُستخدمان للمقارنة بين فترة والفترة التي قبلها.
SQL للمحلّلين · ورد في «المجاميع التراكمية وLAG والمتوسطات المتحركة»
LEFT JOIN
ربط يُبقي كل صف من الجدول الأيسر ويملأ أعمدة الجدول الأيمن بـ NULL حيث لا يوجد تطابق. الشروط على الجدول الأيمن مكانها عبارة ON الخاصة به.
SQL للمحلّلين · ورد في «الـ INNER JOIN والـ LEFT JOIN»
List comprehension
طريقة لبناء قائمة في سطر واحد، [expr for x in items if condition]، تطبّق تعبيرًا على كل عنصر، وتصفّي اختياريًا العناصر التي يُحتفظ بها.
Python لتحليل البيانات · ورد في «الحلقات والشروط والـ comprehensions»
loc و iloc
أداتا الاختيار الدقيقتان في pandas: .loc[rows, columns] تختار بالتسمية وتشمل نهاية الشريحة، بينما .iloc تختار بالموقع العددي وتستبعدها.
Python لتحليل البيانات · ورد في «الاختيار باستخدام loc و iloc»
NaN
اختصار لعبارة “ليس رقمًا” (not a number): العلامة الكلاسيكية في pandas للقيمة المفقودة في الأعمدة العشرية؛ لا تساوي أي شيء، فافحص وجودها بـ isna().
Python لتحليل البيانات · ورد في «القيم المفقودة»
PARTITION BY
الجزء من تعريف النافذة الذي يقسم الصفوف إلى مجموعات، فيبدأ حساب النافذة، مثل الترتيب أو المجموع التراكمي، من جديد لكل مجموعة.
SQL للمحلّلين · ورد في «دوال النافذة للترتيب»
qcut
دالة في pandas تقسم القيم إلى مجموعات متساوية الحجم تقريبًا عند المئينات، مثل الرُّبيعات، بخلاف cut التي تستخدم حدودًا تختارها أنت.
Python لتحليل البيانات · ورد في «الترتيب والتقسيم إلى فئات»
resample
method في pandas تجمّع الصفوف ذات فهرس التواريخ في فترات منتظمة مثل الأيام أو الأسابيع (W) أو نهايات الأشهر (ME) أو نهايات الأرباع (QE)، بما في ذلك الفترات الفارغة.
Python لتحليل البيانات · ورد في «السلاسل الزمنية: resample والـ accessor المسمّى dt»
Sargable
وصف لشرط تستطيع قاعدة البيانات الإجابة عنه باستخدام index، وهو عادةً عمود مجرّد يُقارَن بثابت. إحاطة العمود بدالة تجعل الشرط في الغالب غير sargable.
SQL للمحلّلين · ورد في «الـ indexes وخطط التنفيذ»
scalar subquery
subquery يعيد صفًا واحدًا وعمودًا واحدًا بالضبط، مثل متوسط عام، ويمكن استخدامه في أي مكان يُسمح فيه بقيمة واحدة.
SQL للمحلّلين · ورد في «الـ subqueries والـ CTE والـ CTE التكراري»
Series
مصفوفة أحادية البعد من القيم في pandas مع فهرس من التسميات؛ والعمود الواحد في الـ DataFrame هو Series.
Python لتحليل البيانات · ورد في «الـ Series والـ DataFrame»
Traceback
التقرير الذي تطبعه Python حين يوقف استثناءٌ البرنامج؛ اقرأه من الأسفل، حيث يسمّي السطر الأخير نوع الخطأ ورسالته، ثم اصعد إلى السطر الذي فشل.
Python لتحليل البيانات · ورد في «الدوال والـ f-strings وقراءة رسائل الخطأ»

التصميم · 58 مصطلحًا

:focus-visible
pseudo-class في CSS يتطابق حين يقرّر المتصفّح أن التركيز يجب أن يكون مرئيًا، وعادةً بعد التنقّل بلوحة المفاتيح، ويُستخدم لإظهار حلقات التركيز دون إظهارها مع معظم نقرات الفأرة.
أنظمة تصميم تكبر مع فريقك · ورد في «الحالات وإمكانية الوصول، مبنيّة من الأساس»
اختبار الانحدار البصري (Visual regression test)
اختبار يلتقط صورة لحالة مكوّن ويقارنها بصورة مرجعية معتمدة، ويفشل عند وجود فروق يقبلها إنسان بعد ذلك كتغيير مقصود أو يرفضها كخلل.
أنظمة تصميم تكبر مع فريقك · ورد في «Storybook والاختبار البصري والإصدارات»
الـ mode في Figma variables (Figma variable mode)
واحدة من عدّة مجموعات قيم لمتغيّرات collection في Figma، مثل Light وDark، تُطبَّق على الإطارات كما تُطبَّق selectors الـ theme على أقسام الصفحة.
أنظمة تصميم تكبر مع فريقك · ورد في «Figma Variables والمكتبات، متزامنة مع الكود»
الـ token الدلالي (Semantic token)
variable يُسمّى بحسب دوره، مثل color/action/primary، وهو alias لقيمة خام من لوحة الألوان. ترتبط الـ components بالـ tokens الدلالية، فيبقى تغيير الثيم أو لوحة الألوان تعديلًا واحدًا.
تصميم الواجهات باستخدام Figma · ورد في «الـ Styles مقابل الـ Variables»
الاسم المستعار (Alias)
token تشير قيمته إلى token آخر بمساره بين أقواس معقوفة، مثل {color.blue.600}. ويجب أن يشير إلى token، لا إلى مجموعة أبدًا.
أنظمة تصميم تكبر مع فريقك · ورد في «صيغة DTCG للـ Tokens»
الترقيم الدلالي للإصدارات (Semantic versioning)
نظام ترقيم بالشكل MAJOR.MINOR.PATCH، تُصلح فيه الـ patches الأخطاء، وتضيف الـ minors ميزات متوافقة مع ما سبق، وتحتوي الـ majors تغييرات قد تكسر الاستخدام الحالي.
أنظمة تصميم تكبر مع فريقك · ورد في «الـ Semver والـ Changelog لنظام التصميم»
التسلسل البصري (Visual hierarchy)
الترتيب الذي يلاحظ به الناس عناصر الشاشة، ويُصنع عن قصد بالحجم والوزن واللون والموضع والمساحة حتى يُرى المحتوى الأهم أولًا.
تصميم الواجهات باستخدام Figma · ورد في «التسلسل البصري والمحاذاة والمسافات»
القُرب (Proximity)
مبدأ من مبادئ الجشطالت يقول إن العناصر المتقاربة تُرى مترابطة. وفي تصميم الواجهات يعني أن المسافة داخل المجموعة يجب أن تكون أصغر من المسافة بين المجموعات.
تصميم الواجهات باستخدام Figma · ورد في «التسلسل البصري والمحاذاة والمسافات»
المكتبة (Library)
ملف Figma منشور تستطيع الملفات الأخرى استخدام الـ components والـ styles والـ variables فيه. وتُبلَّغ الملفات التي تستخدمه بالتحديثات، فتختار متى تقبلها.
تصميم الواجهات باستخدام Figma · ورد في «بناء مجموعة Steady المصغّرة»
المكوّن المركّب (Compound component)
مكوّن مؤلّف من قطع متعاونة، مثل Tabs.List وTabs.Trigger، يرتّبها المستخدم بحرية بينما تتشارك القطع الحالة عبر الـ context.
أنظمة تصميم تكبر مع فريقك · ورد في «الـ Composition بدل الإعدادات»
النقد التصميمي (Design critique)
جلسة منظّمة يقيّم فيها الناس تصميمًا مقابل أهدافه المعلنة، فيقدّمون ملاحظات، وما يترتّب عليها، وأسئلة بدل التفضيلات الشخصية أو الموافقة.
تصميم الواجهات باستخدام Figma · ورد في «النقد التصميمي ودراسة الحالة الخاصة بك»
جرد الواجهة (Interface inventory)
تدقيق يجمع كل نسخة من كل عنصر في واجهات المنتجات مجمّعة حسب النوع، ليصبح التكرار مرئيًا، ولتحديد ما يجب أن يملكه نظام التصميم أولًا.
أنظمة تصميم تكبر مع فريقك · ورد في «جرد الواجهة»
حجم الهدف (Target size)
مساحة النقر في العنصر التفاعلي. يتطلّب المستوى AA في WCAG 2.2 ما لا يقلّ عن 24 × 24 CSS pixels؛ وتوصي Apple بـ 44 نقطة، ويوصي Material بـ 48 dp.
تصميم الواجهات باستخدام Figma · ورد في «التصميم مع مراعاة إمكانية الوصول»
خط إنتاج الـ tokens (Token pipeline)
خطوة بناء تحلّل ملفات الـ tokens، وتحلّ الأسماء المستعارة، وتحوّل الأسماء والقيم لكل منصّة، وتكتب صيغًا مثل CSS custom properties وSwift وKotlin.
أنظمة تصميم تكبر مع فريقك · ورد في «خطوط إنتاج الـ Tokens: من JSON إلى كل منصّة»
سلّم أحجام الخط (Type scale)
قائمة قصيرة وثابتة من أحجام النص، كل حجم مقترن بارتفاع سطر ووزن وله وظيفة مسمّاة مثل Title أو Body أو Caption، وتُستخدم باتّساق في كل الشاشات.
تصميم الواجهات باستخدام Figma · ورد في «سلّم أحجام الخط والألوان بتباين كافٍ»
صيغة DTCG (DTCG format)
صيغة JSON للـ design tokens حدّدتها مجموعة Design Tokens Community Group التابعة لـ W3C، وأول إصدار مستقر منها، 2025.10، يغطّي الـ tokens والأنواع والمجموعات والأسماء المستعارة والألوان.
أنظمة تصميم تكبر مع فريقك · ورد في «صيغة DTCG للـ Tokens»
طبقة العلامة (Brand tier)
طبقة صغيرة من الـ tokens بين الـ primitives والـ semantic tokens، مثل تدرّج الألوان والخطوط وأنصاف الأقطار، تربطها كل علامة تجارية بقيمها الخاصة.
أنظمة تصميم تكبر مع فريقك · ورد في «الـ Theming لعلامات متعدّدة على نطاق واسع»
قواعد تسمية الـ tokens (Token naming grammar)
ترتيب ثابت لأجزاء الاسم، مثل الفئة والمفهوم والخاصية والـ variant والحالة، يجعل أسماء الـ tokens سهلة التخمين والترتيب، وقابلة للفحص بقاعدة lint.
أنظمة تصميم تكبر مع فريقك · ورد في «تسمية الـ Tokens لتعيش طويلًا»
مبدأ التصميم (Design principle)
عبارة قصيرة تنحاز إلى طرف في مفاضلة حقيقية، مثل «إمكانية الوصول قبل الجمال»، حتى تستطيع حسم خلافات التصميم دون اجتماع طويل.
أنظمة تصميم تكبر مع فريقك · ورد في «المبادئ ونماذج الفرق»
محور الـ mode (Mode axis)
بُعد مستقل من أبعاد الـ theming، مثل نظام الألوان أو العلامة أو الكثافة، يملك مجموعة tokens خاصة به، فتتركّب التركيبات دون ملف منفصل لكل منها.
أنظمة تصميم تكبر مع فريقك · ورد في «الـ Themes والـ Modes»
مصفوفة الحالات (State matrix)
شبكة تقابل كل variant بكل حالة تفاعل، مثل الـ hover والتركيز المرئي والتعطيل والتحميل والضغط، وتُستخدم لتصميم المكوّن وبنائه واختباره بالكامل.
أنظمة تصميم تكبر مع فريقك · ورد في «الحالات وإمكانية الوصول، مبنيّة من الأساس»
معدّل التبنّي (Adoption rate)
نسبة عناصر الواجهة في منتج ما التي تعرضها مكوّنات نظام التصميم الحقيقية، وتُقاس بإشارات لا تنتجها إلا تلك المكوّنات، وتُتابَع كاتّجاه عبر الزمن.
أنظمة تصميم تكبر مع فريقك · ورد في «قياس التبنّي وفنّ قول «لا»»
نسبة التباين (Contrast ratio)
مقياس للفرق في السطوع بين لونين، من 1:1 إلى 21:1. يتطلّب المستوى AA في WCAG نسبة 4.5:1 للنص العادي و3:1 للنص الكبير والعناصر غير النصية الأساسية.
تصميم الواجهات باستخدام Figma · ورد في «سلّم أحجام الخط والألوان بتباين كافٍ»
نظام الـ 8 نقاط (8-point system)
اصطلاح للمسافات تكون فيه الأحجام والمسافات من مضاعفات 8، مع 4 كنصف خطوة، فتتدرّج القيم بسلاسة عبر كثافات الشاشات وتختار الفرق من قائمة قصيرة.
تصميم الواجهات باستخدام Figma · ورد في «الـ Layout guides ونظام الـ 8 نقاط»
نظام التصميم (Design system)
المجموعة المشتركة من الـ tokens والمكوّنات والأنماط والتوثيق، ومعها الناس والعمليات التي تُبقيها محدَّثة، حتى تبني فرق كثيرة واجهات متّسقة دون إعادة التفكير في كل قرار من الصفر.
أنظمة تصميم تكبر مع فريقك · ورد في «منتج، لا مشروع»
نموذج الفريق الهجين (Hybrid team model)
طريقة لإدارة نظام التصميم تملك فيها نواة صغيرة متفرّغة الـ tokens والمراجعات والإصدارات، بينما تساهم فرق المنتجات بمكوّنات وإصلاحات عبر عملية محدّدة.
أنظمة تصميم تكبر مع فريقك · ورد في «المبادئ ونماذج الفرق»
Auto layout
إعداد في الـ frame يرتّب أبناءه تلقائيًا في flow عمودي أو أفقي أو شبكي، مع gap محدّد بينها وpadding حولها، ويعيد الترتيب كلما تغيّر المحتوى.
تصميم الواجهات باستخدام Figma · ورد في «الـ Auto layout: الاتجاه والـ Gap والـ Padding»
Breakpoint
عرض يغيّر عنده التخطيط بنيته، مثل شبكة إحصاءات تنتقل من عمودين إلى أربعة. الـ breakpoints الجيدة تأتي من النقطة التي يتوقّف فيها المحتوى عن العمل، لا من قوائم الأجهزة.
تصميم الواجهات باستخدام Figma · ورد في «التكيّف مع أحجام الشاشات المختلفة»
Changeset
ملف صغير يُضاف إلى الـ pull request يذكر رفع الإصدار الذي يحتاجه التغيير وملخّصًا موجّهًا للمستخدمين، ويُجمَع لاحقًا في رقم الإصدار والـ changelog.
أنظمة تصميم تكبر مع فريقك · ورد في «الـ Semver والـ Changelog لنظام التصميم»
Codemod
سكربت يعيد كتابة الكود المصدري آليًا، مثل إعادة تسمية prop مُهمَل عبر مستودع كامل، فتصبح عمليات الانتقال مراجعات بدل عمل يدوي.
أنظمة تصميم تكبر مع فريقك · ورد في «مسارات الـ Deprecation»
Component property
مفتاح في الـ component تستطيع الـ instances تغييره دون variants جديدة: boolean للظهور، وtext للنصوص القابلة للتعديل، وinstance swap للـ components المتداخلة، وslots لمناطق المحتوى المرنة.
تصميم الواجهات باستخدام Figma · ورد في «الـ Variants والـ Component properties»
Component token
token خاص بمكوّن واحد، مثل --nw-button-bg، يشير إلى semantic token ويسمح بتعديل ذلك المكوّن دون التأثير في المكوّنات الأخرى.
أنظمة تصميم تكبر مع فريقك · ورد في «ثلاث طبقات: Primitive وSemantic وComponent»
Constraints
قواعد على ابن داخل frame عادي تحدّد كيف يتحرّك أو يتمدّد حين يتغيّر حجم الـ frame، مثل Left and right أو Bottom أو Center أو Scale.
تصميم الواجهات باستخدام Figma · ورد في «الـ Frames والـ Groups والطبقات والـ Constraints»
Deprecation
تعليم API أو token أو مكوّن بأنه مُقرَّر حذفه بينما ما زال يعمل، مع ذكر بديله وإصدار حذفه، حتى تنتقل الفرق قبل أن يختفي.
أنظمة تصميم تكبر مع فريقك · ورد في «مسارات الـ Deprecation»
Design token
قرار تصميم له اسم، مثل لون أو قيمة مسافة أو حجم خط، يُخزَّن مرة واحدة وتشير إليه أدوات التصميم والكود باسمه بدل تكرار القيم الخام.
أنظمة تصميم تكبر مع فريقك · ورد في «ثلاث طبقات: Primitive وSemantic وComponent»
Frame
حاوية في Figma لها حجمها وتعبئتها وقصّها والـ constraints الخاصة بها، ويمكن أن تحمل Auto layout أو Layout guides. الشاشات والصفوف والأزرار والبطاقات كلها تُبنى من frames.
تصميم الواجهات باستخدام Figma · ورد في «الـ Frames والـ Groups والطبقات والـ Constraints»
Gap وPadding
في الـ Auto layout، الـ gap هو المسافة بين الأبناء الإخوة، والـ padding هو المسافة بين الأبناء وحوافّ الـ frame الأب. وكلاهما يخصّ الأب.
تصميم الواجهات باستخدام Figma · ورد في «الـ Auto layout: الاتجاه والـ Gap والـ Padding»
Group
حزمة من الطبقات يُشتقّ حجمها من أبنائها. ليس لها تعبئة ولا padding ولا Auto layout خاص بها، لذا تناسب التجمّعات البصرية الحرّة لا أجزاء الواجهة.
تصميم الواجهات باستخدام Figma · ورد في «الـ Frames والـ Groups والطبقات والـ Constraints»
Hug وFill وFixed
خيارات تحديد الحجم في الـ Auto layout. ‏Hug contents يجعل الـ frame بحجم أبنائه، وFill container يأخذ المساحة المتاحة في الأب، وFixed يحافظ على حجم دقيق مهما كان المحتوى.
تصميم الواجهات باستخدام Figma · ورد في «تغيير الحجم: Hug وFill وFixed وWrap»
Ignore auto layout
إعداد كان اسمه absolute position، يخرج ابنًا واحدًا من الـ flow الخاص بالـ Auto layout فيُحدَّد موضعه بالـ constraints، مثل شارة على زاوية أيقونة.
تصميم الواجهات باستخدام Figma · ورد في «تغيير الحجم: Hug وFill وFixed وWrap»
Instance
نسخة مرتبطة من main component. يمكنها تطبيق overrides على المحتوى والمظهر مثل النص والتعبئة والظهور والـ instances المتداخلة، لكنها لا تستطيع تغيير بنية طبقاتها.
تصميم الواجهات باستخدام Figma · ورد في «الـ Components والـ Instances»
Interactive component
component set فيه تفاعلات prototype بين الـ variants الخاصة به، مثل On tap مع Change to ‏Done، فتستجيب كل instance في الـ prototypes دون شاشات إضافية.
تصميم الواجهات باستخدام Figma · ورد في «الـ Prototype: التفاعلات وSmart animate والـ Overlays»
Layout guide
أداة بصرية مساعدة مرتبطة بالـ frame، كانت تُسمّى layout grid، على شكل أعمدة أو صفوف أو شبكة منتظمة، وتُعرَّف بالعدد والهامش والـ gutter. لا تحرّك الطبقات من تلقاء نفسها أبدًا.
تصميم الواجهات باستخدام Figma · ورد في «الـ Layout guides ونظام الـ 8 نقاط»
Main component
التعريف المصدر لعنصر قابل لإعادة الاستخدام في Figma. تتدفّق تغييراته إلى كل instance مرتبطة به، باستثناء الخصائص التي طبّقت عليها الـ instance ‏override.
تصميم الواجهات باستخدام Figma · ورد في «الـ Components والـ Instances»
Output references
إعداد في خط الإنتاج يُبقي الأسماء المستعارة مراجع var() في الـ CSS المولَّد بدل القيم المحلولة، فتصل طبقات الـ tokens والتخصيصات وقت التشغيل إلى المتصفّح سليمة.
أنظمة تصميم تكبر مع فريقك · ورد في «خطوط إنتاج الـ Tokens: من JSON إلى كل منصّة»
Primitive token
token يسمّي قيمة خامًا بحسب ما هي، مثل --nw-blue-600، دون أن يقول أين تُستخدم. والـ primitives تشكّل لوحة ألوان النظام وسلالمه.
أنظمة تصميم تكبر مع فريقك · ورد في «ثلاث طبقات: Primitive وSemantic وComponent»
Ready for dev
حالة في Dev Mode توضع على الـ sections أو الـ frames أو الـ components لتشير إلى أن التصميم مستقرّ بما يكفي لبنائه. وأي تعديل لاحق يغيّر الحالة تلقائيًا إلى Changed.
تصميم الواجهات باستخدام Figma · ورد في «Dev Mode والتسليم للمطوّرين»
RFC (طلب تعليقات)
اقتراح مكتوب لتغيير كبير، مثل مكوّن جديد، يعرض المشكلة والأدلّة ومسوّدة الـ API وخطة إمكانية الوصول، لمراجعة علنية قبل البناء.
أنظمة تصميم تكبر مع فريقك · ورد في «المساهمة والـ Governance»
Semantic token
token يسمّي نيّة، مثل --nw-color-action-bg، ويشير إلى primitive. والـ themes والعلامات تغيّر الـ primitive الذي يشير إليه كل semantic token.
أنظمة تصميم تكبر مع فريقك · ورد في «ثلاث طبقات: Primitive وSemantic وComponent»
Slot
مكان في المكوّن يمرّر فيه المستخدم محتوى، مثل children أو عنصر startIcon، بدل ضبط ذلك المحتوى عبر مزيد من الـ props.
أنظمة تصميم تكبر مع فريقك · ورد في «الـ Component API: الـ Props والـ Variants والـ Slots»
Smart animate
حركة في الـ prototype تطابق الطبقات ذات الاسم والتسلسل الهرمي نفسيهما في frame-ين، وتحرّك الاختلافات في الموضع والحجم والدوران والشفافية والتعبئة.
تصميم الواجهات باستخدام Figma · ورد في «الـ Prototype: التفاعلات وSmart animate والـ Overlays»
Style
مركّب مسمّى وقابل لإعادة الاستخدام من الخصائص البصرية في Figma، مثل text style يضمّ نوع الخط وحجمه ووزنه وارتفاع السطر، أو effect style يحمل ظلالًا متراكبة.
تصميم الواجهات باستخدام Figma · ورد في «الـ Styles مقابل الـ Variables»
Theme
إعادة ربط للـ semantic tokens بـ primitives مختلفة، مثل الـ theme الداكن، تُطبَّق بـ selector مثل [data-theme="dark"] بينما تبقى المكوّنات بلا تغيير.
أنظمة تصميم تكبر مع فريقك · ورد في «الـ Themes والـ Modes»
Variable
قيمة مفردة مسمّاة في Figma، مثل لون أو رقم أو نص أو boolean، يمكن ربطها بخصائص الطبقات، وأن تكون alias لـ variable آخر، وأن تحمل قيمًا مختلفة لكل mode.
تصميم الواجهات باستخدام Figma · ورد في «الـ Styles مقابل الـ Variables»
Variable mode
عمود واحد من القيم في collection من الـ variables، مثل Light أو Dark. ضبط mode على frame أو صفحة يستبدل كل قيمة مرتبطة دفعة واحدة، ويرثه الأبناء.
تصميم الواجهات باستخدام Figma · ورد في «Modes الـ Variables: الفاتح والداكن»
Variant
نسخة واحدة من component داخل component set، تصفها variant properties مثل State=Done، وتُستخدم للاختلافات التي تعيد تنسيق عدّة طبقات معًا.
تصميم الواجهات باستخدام Figma · ورد في «الـ Variants والـ Component properties»
Variant
واحد من مجموعة ثابتة من الأنماط المتنافية لمكوّن ما، مثل primary أو secondary أو danger، ويُعبَّر عنه أفضل بـ prop واحد من نوع enum بدل قيم منطقية منفصلة.
أنظمة تصميم تكبر مع فريقك · ورد في «الـ Component API: الـ Props والـ Variants والـ Slots»
Wrap
خيار في الـ Auto layout للـ flow الأفقي والعمودي ينقل الأبناء إلى سطر جديد حين لا يعود السطر الحالي يتّسع لها، وهو مفيد للشرائح والوسوم في الشاشات الضيّقة.
تصميم الواجهات باستخدام Figma · ورد في «تغيير الحجم: Hug وFill وFixed وWrap»

تطوير تطبيقات الجوال · 60 مصطلحًا

@MainActor
سمة تعزل الكود أو النوع على الـ main actor، أي الـ main thread الذي تعمل عليه الواجهة. ومشاريع تطبيقات Xcode الجديدة تجعله العزل الافتراضي.
أساسيات Swift لتطبيقات iOS · ورد في «async/await والـ concurrency في Swift 6»
@Model (SwiftData)
ماكرو يحوّل الـ class إلى بيانات SwiftData محفوظة بشكل دائم. تقرأ النماذج عبر @Query، وتضيفها أو تحذفها عبر الـ model context الذي يحفظ تلقائيًا.
أساسيات Swift لتطبيقات iOS · ورد في «حفظ البيانات بـ SwiftData»
@Observable
ماكرو من إطار Observation يجعل خصائص الـ class قابلة للتتبّع، فلا يعيد SwiftUI رسم إلا الـ views التي قرأ الـ body الخاص بها خاصية تغيّرت.
أساسيات Swift لتطبيقات iOS · ورد في «الـ state والـ bindings و@Observable»
@State
property wrapper في SwiftUI يخزّن قيمة يملكها الـ view خارج الـ struct الخاص به، فتبقى بعد كل re-render وتطلق تحديثًا حين تتغيّر.
أساسيات Swift لتطبيقات iOS · ورد في «الـ state والـ bindings و@Observable»
استنتاج النوع (Type inference)
قدرة Swift على معرفة نوع القيمة من القيمة التي تسندها، فيكون let cups = 3 من النوع Int دون تحديد صريح. ويبقى النوع ثابتًا بعد ذلك.
أساسيات Swift لتطبيقات iOS · ورد في «الثوابت والمتغيّرات والأنواع»
إصدار وقت التشغيل (runtime version)
وسم مشترك بين build والتحديثات المتوافقة معه. لا ينطبق التحديث إلا على الـ builds التي لها إصدار وقت التشغيل نفسه، وهذا يحمي الـ builds القديمة من كود JavaScript يحتاج إلى كود أصلي أحدث.
بناء تطبيقات الجوّال باستخدام React Native · ورد في «التحديثات عبر الهواء (OTA) وروتين الإصدار»
الـ concurrency المهيكلة (Structured concurrency)
تشغيل العمل غير المتزامن كمهام أبناء، عبر async let أو مجموعات المهام، يجب أن تنتهي قبل أن يعود الأب. وإلغاء الأب يلغي كل الأبناء تلقائيًا.
أساسيات Swift لتطبيقات iOS · ورد في «async/await والـ concurrency في Swift 6»
الـ switch الشاملة (Exhaustive switch)
قاعدة Swift التي تُلزم جملة switch بمعالجة كل قيمة ممكنة. ومع الـ enums تجعل الـ compiler يسرد كل switch يجب تحديثها حين تضيف حالة.
أساسيات Swift لتطبيقات iOS · ورد في «المجموعات والتحكّم في التدفّق»
التوجيه المبني على الملفات (file-based routing)
نموذج Expo Router الذي يكون فيه كل ملف داخل src/app شاشةً ومساره هو الـ URL، مع ملفات _layout تغلّف المسارات المجاورة بأداة تنقّل.
بناء تطبيقات الجوّال باستخدام React Native · ورد في «التوجيه المبني على الملفات في Expo Router»
الفكّ القسري (Force unwrap !)
كتابة ! بعد optional لأخذ قيمته دون فحص. إن كان الـ optional مساويًا لـ nil يتعطّل التطبيق فورًا، فاستخدمه فقط حين تكون nil خطأً من المبرمج.
أساسيات Swift لتطبيقات iOS · ورد في «الـ optionals بلا أعطال»
القيمة الخام (Raw value)
نص String أو رقم ثابت يُخزَّن لكل حالة في enum معرّف مثل enum Category: String. ويحوّل init(rawValue:) في الاتجاه المعاكس ويعيد nil للقيم غير المعروفة.
أساسيات Swift لتطبيقات iOS · ورد في «الـ enums مع القيم المرتبطة»
القيمة المرتبطة (Associated value)
بيانات مرفقة بحالة معيّنة من enum لكل instance، مثل case card(lastFour: String). وتقرؤها من جديد عبر مطابقة الأنماط مثل case .card(let lastFour).
أساسيات Swift لتطبيقات iOS · ورد في «الـ enums مع القيم المرتبطة»
المحور الرئيسي (main axis)
الاتجاه الذي ترتّب فيه حاوية flex أبناءها، ويحدّده flexDirection. وهو عمودي افتراضيًا في React Native، ويحدّد justifyContent مواضع الأبناء على امتداده.
بناء تطبيقات الجوّال باستخدام React Native · ورد في «Flexbox بإعدادات الجوّال الافتراضية»
المسار الديناميكي (dynamic route)
ملف مسار اسمه بين أقواس مربّعة، مثل [id].tsx، يطابق أي جزء مفرد من الـ URL ويكشفه param نصيًا عبر useLocalSearchParams.
بناء تطبيقات الجوّال باستخدام React Native · ورد في «الـ tabs والمسارات الديناميكية والـ params»
المسار المحمي (protected route)
مسار مغلّف بـ Stack.Protected مع شرط guard. ما دام الشرط false يكون المسار غير متاح، ويُعاد توجيه أي تنقّل إليه، بما في ذلك من الـ deep links.
بناء تطبيقات الجوّال باستخدام React Native · ورد في «الـ modals والمسارات المحميّة والـ deep links»
النقطة المستقلّة عن الكثافة (density-independent point)
الوحدة التي تقف خلف كل رقم بلا وحدة في تنسيقات React Native. تحوّل المنصّة النقاط إلى بكسلات فعلية، فتبدو الأحجام متماثلة على الشاشات منخفضة الكثافة وعالية الكثافة.
بناء تطبيقات الجوّال باستخدام React Native · ورد في «الـ StyleSheet في عالم بلا cascade»
ترحيل قاعدة البيانات (database migration)
خطوة مرقّمة بإصدار ترقّي مخطّط قاعدة بيانات موجودة، كإضافة عمود، وتُنفَّذ مرة واحدة على كل جهاز بالترتيب، وتُتتبَّع عادةً عبر PRAGMA user_version في SQLite.
بناء تطبيقات الجوّال باستخدام React Native · ورد في «تخزين البيانات على الجهاز»
دورة الاحتفاظ (Retain cycle)
كائنان، أو كائن وclosure، يحمل كلٌّ منهما مرجعًا قويًا إلى الآخر، فلا يستطيع ARC تحرير أيٍّ منهما. والتقاط [weak self] داخل الـ closure يكسر الدورة.
أساسيات Swift لتطبيقات iOS · ورد في «الـ structs والـ classes وسلوك القيمة»
سلوك القيمة (Value semantics)
سلوك الـ structs والـ enums: إسناد القيمة أو تمريرها ينتج نسخة مستقلّة، فتغيير النسخة لا يؤثّر أبدًا في الأصل.
أساسيات Swift لتطبيقات iOS · ورد في «الـ structs والـ classes وسلوك القيمة»
سلوك المرجع (Reference semantics)
سلوك الـ classes والـ actors: إسناد instance ينسخ مرجعًا، فيمكن لعدة أسماء أن تشير إلى الكائن نفسه وترى تغييرات بعضها.
أساسيات Swift لتطبيقات iOS · ورد في «الـ structs والـ classes وسلوك القيمة»
عامل الدمج مع nil (??)
العامل ?? الذي يعيد القيمة الموجودة داخل optional، أو قيمة افتراضية حين يكون الـ optional مساويًا لـ nil، كما في note ?? "No note".
أساسيات Swift لتطبيقات iOS · ورد في «الـ optionals بلا أعطال»
مجموعة المسارات (route group)
مجلّد اسمه بين قوسين، مثل (tabs). يتيح لمساراته مشاركة layout واحد دون أن يضيف جزءًا إلى عناوين URL الخاصة بها.
بناء تطبيقات الجوّال باستخدام React Native · ورد في «الـ tabs والمسارات الديناميكية والـ params»
مصفوفة التنسيق (style array)
prop التنسيق حين يُعطى مصفوفةً من كائنات التنسيق. يدمجها React Native من اليسار إلى اليمين، فتفوز المفاتيح اللاحقة، وتُتخطّى القيم الزائفة.
بناء تطبيقات الجوّال باستخدام React Native · ورد في «الـ StyleSheet في عالم بلا cascade»
Actor
نوع مرجعي يحمي الـ state القابلة للتغيير الخاصة به بتنفيذ استدعاء واحد في كل مرة. والكود خارج الـ actor يجب أن يستخدم await للوصول إليه، وهذا يمنع سباقات البيانات.
أساسيات Swift لتطبيقات iOS · ورد في «async/await والـ concurrency في Swift 6»
AsyncStorage
مخزن مفتاح-قيمة للنصوص، غير متزامن وغير مشفّر. يناسب التفضيلات الصغيرة، لا الأسرار ولا المجموعات الكبيرة من السجلّات التي تحتاج إلى الاستعلام عنها.
بناء تطبيقات الجوّال باستخدام React Native · ورد في «تخزين البيانات على الجهاز»
Binding
اتصال في الاتجاهين مع قيمة يملكها طرف آخر، يُكتب بالبادئة $. وعناصر التحكّم مثل Toggle وTextField تأخذ bindings لتقرأ مصدر الحقيقة وتكتب فيه.
أساسيات Swift لتطبيقات iOS · ورد في «الـ state والـ bindings و@Observable»
canAskAgain
حقل في استجابة الأذونات في Expo. حين تكون قيمته false، لا يعرض النظام نافذة الإذن مرة أخرى، فلا يستطيع تغيير إجابة المستخدم إلا تطبيق الإعدادات.
بناء تطبيقات الجوّال باستخدام React Native · ورد في «الأذونات: الطلب في اللحظة المناسبة»
Closure
كتلة كود بلا اسم يمكن تخزينها، وتمريرها إلى دوال مثل filter أو map، واستدعاؤها لاحقًا. وتلتقط المتغيّرات التي تستخدمها من النطاق المحيط بها.
أساسيات Swift لتطبيقات iOS · ورد في «الدوال والـ closures»
Codable
الجمع بين Decodable وEncodable، ما يتيح للـ compiler توليد كود يحوّل أنواعك من صيغ مثل JSON وإليها.
أساسيات Swift لتطبيقات iOS · ورد في «الشبكات باستخدام URLSession وCodable»
Config plugin
مُدخل في app.json يكتب الإعدادات الأصلية، مثل أوصاف الأذونات في iOS أو مُدخلات الـ manifest في Android، حين يُبنى التطبيق. وأي تغيير فيه يحتاج إلى build جديد.
بناء تطبيقات الجوّال باستخدام React Native · ورد في «الأذونات: الطلب في اللحظة المناسبة»
Decimal
نوع أرقام من Foundation يخزّن الأرقام بالنظام العشري بدقة، ما يجعله الخيار الصحيح للمال. وعلى عكس Double، إضافة 0.1 عشر مرات تعطي 1 بالضبط.
أساسيات Swift لتطبيقات iOS · ورد في «الثوابت والمتغيّرات والأنواع»
Development build
ملف تطبيقك الخاص، بوحداتك الأصلية وهويّتك وإعداداتك، إضافةً إلى أدوات التطوير مثل Fast Refresh. تنشئه باستخدام npx expo run أو EAS Build.
بناء تطبيقات الجوّال باستخدام React Native · ورد في «بدء مشروع باستخدام Expo»
EAS Build
خدمة Expo السحابية التي تترجم ملفات تطبيقات Android وiOS وتوقّعها من مشروعك، باستخدام profiles معرّفة في eas.json مثل development وpreview وproduction.
بناء تطبيقات الجوّال باستخدام React Native · ورد في «البناء والإرسال إلى المتاجر عبر EAS»
EAS Update
خدمة Expo لنشر كود JavaScript وassets جديدة إلى الـ builds المثبّتة عبر الهواء، دون إصدار في المتجر. ولا تستطيع إيصال تغييرات الكود الأصلي.
بناء تطبيقات الجوّال باستخدام React Native · ورد في «التحديثات عبر الهواء (OTA) وروتين الإصدار»
Expo Go
تطبيق من المتجر فيه مجموعة ثابتة من الوحدات الأصلية، يحمّل كود JavaScript الخاص بمشروعك من خادم التطوير. ممتاز للتعلّم، لكنه لا يستطيع أن يضمّ كودًا أصليًا مخصّصًا.
بناء تطبيقات الجوّال باستخدام React Native · ورد في «بدء مشروع باستخدام Expo»
guard let
جملة تفكّ optional أو تفحص شرطًا، ويجب أن يغادر فرع else فيها النطاق. وبعدها تبقى القيمة المفكوكة متاحة حتى نهاية الدالة.
أساسيات Swift لتطبيقات iOS · ورد في «الـ optionals بلا أعطال»
Hermes
محرّك JavaScript المصمّم لـ React Native. يشغّل كود JavaScript في تطبيقك على thread خاص به، منفصل عن الـ UI thread الذي يرسم الـ views ويستقبل اللمسات.
بناء تطبيقات الجوّال باستخدام React Native · ورد في «ما هو React Native حقًا»
hitSlop
prop في Pressable يوسّع منطقة اللمس إلى ما وراء العنصر المرئي، فتستطيع الأيقونات الصغيرة مع ذلك بلوغ الحدّ الأدنى لهدف اللمس وهو 44 نقطة.
بناء تطبيقات الجوّال باستخدام React Native · ورد في «اللمس والكتابة: Pressable وTextInput»
jest-expo
preset لأداة Jest يضبط التحويلات اللازمة لـ React Native ويصنع mock للجانب الأصلي من وحدات Expo، فتعمل الاختبارات في Node دون جهاز.
بناء تطبيقات الجوّال باستخدام React Native · ورد في «الاختبار باستخدام Jest وReact Native Testing Library»
keyExtractor
prop في FlatList يُرجع مفتاحًا ثابتًا وفريدًا لكل عنصر، وهو معرّفه عادةً، فتحتفظ الصفوف بهويّتها الصحيحة حين تُضاف العناصر أو تُحذف أو يُعاد ترتيبها.
بناء تطبيقات الجوّال باستخدام React Native · ورد في «قوائم تبقى سريعة: FlatList وSectionList»
Metro
مُجمِّع JavaScript وخادم التطوير الذي يشغّله الأمر npx expo start. يقدّم كودك إلى Expo Go أو إلى الـ development build، وعليه يعتمد Fast Refresh.
بناء تطبيقات الجوّال باستخدام React Native · ورد في «بدء مشروع باستخدام Expo»
mutating
كلمة مفتاحية توضع على methods الـ structs والـ enums التي تغيّر خصائص القيمة نفسها. ولا تُستدعى الـ mutating methods إلا على var، لا على let أبدًا.
أساسيات Swift لتطبيقات iOS · ورد في «الـ structs والـ classes وسلوك القيمة»
Native view
عنصر واجهة من المنصّة، مثل UIView على iOS أو android.view.View على Android، ينشئه React Native ويحدّثه انطلاقًا من الـ components الخاصة بك بدلًا من رسم HTML.
بناء تطبيقات الجوّال باستخدام React Native · ورد في «ما هو React Native حقًا»
NavigationStack
حاوية في SwiftUI تدفع الشاشات وتُخرجها. يختار NavigationLink(value:) قيمة، ويقرّر .navigationDestination(for:) أيّ شاشة تعرضها.
أساسيات Swift لتطبيقات iOS · ورد في «القوائم والتنقّل والنماذج»
New Architecture
نظام الرسم والوحدات الأصلية في React Native، المبني على JSI ومُصيِّر Fabric والـ TurboModules. وهو المعمارية الوحيدة منذ الإصدار 0.82 من React Native.
بناء تطبيقات الجوّال باستخدام React Native · ورد في «ما هو React Native حقًا»
Optional
نوع مثل Decimal? يحمل إما قيمة أو nil. لا تسمح لك Swift باستخدامه كقيمة عادية حتى تفكّه بأمان.
أساسيات Swift لتطبيقات iOS · ورد في «الـ optionals بلا أعطال»
Pressable
الـ component الأساسي لكل ما يُنقَر. يُبلغ عن الضغطات والضغطات المطوّلة، ويمكن أن يكون التنسيق الخاص به دالة لحالة الضغط لإعطاء استجابة بصرية فورية.
بناء تطبيقات الجوّال باستخدام React Native · ورد في «اللمس والكتابة: Pressable وTextInput»
Protocol
مجموعة مسمّاة من المتطلّبات، مثل الخصائص والـ methods، تستطيع الـ structs والـ classes والـ enums تبنّيها. والكود المكتوب للـ protocol يعمل مع كل نوع متوافق معه.
أساسيات Swift لتطبيقات iOS · ورد في «الـ protocols والـ extensions»
Protocol extension
extension على protocol يوفّر تنفيذات افتراضية، فيكتسب كل نوع متوافق ذلك السلوك دون كتابته مرة أخرى.
أساسيات Swift لتطبيقات iOS · ورد في «الـ protocols والـ extensions»
React Native DevTools
أداة التصحيح المدمجة، تُفتح بالضغط على j في طرفية Metro، وتقدّم console ونقاط توقّف ومستكشف Components وProfiler لتطبيقك العامل.
بناء تطبيقات الجوّال باستخدام React Native · ورد في «تصحيح الأخطاء والأداء»
Safe area
جزء الشاشة الذي لا تغطّيه النتوءات ولا الزوايا المستديرة ولا مؤشّر الشاشة الرئيسية ولا أشرطة النظام. والشاشات التي ليس لها ترويسة تضيف حشوها بنفسها عبر هوامش react-native-safe-area-context.
بناء تطبيقات الجوّال باستخدام React Native · ورد في «أحجام الشاشات والـ safe areas وكود كل منصّة»
SecureStore
الوحدة expo-secure-store، التي تشفّر القيم الصغيرة مثل الـ tokens باستخدام Keychain في iOS وKeystore في Android.
بناء تطبيقات الجوّال باستخدام React Native · ورد في «تخزين البيانات على الجهاز»
Sendable
protocol يعلّم الأنواع الآمنة للتمرير بين نطاقات الـ concurrency. والـ structs المبنية من قيم Sendable تستوفيه تلقائيًا؛ أما الـ classes العادية ذات الخصائص القابلة للتغيير فلا.
أساسيات Swift لتطبيقات iOS · ورد في «async/await والـ concurrency في Swift 6»
Stack navigator
أداة تنقّل تضيف الشاشات بعضها فوق بعض مع حركات أصلية وإيماءات رجوع. وتبقى الشاشات التي تحتها مركّبة، محتفظةً بالـ state وموضع التمرير.
بناء تطبيقات الجوّال باستخدام React Native · ورد في «التوجيه المبني على الملفات في Expo Router»
Swift Testing
إطار الاختبار من Apple، حيث الاختبارات دوال معلّمة بـ @Test، تُفحص بـ #expect و#require، وتُشغَّل على مدخلات متعدّدة عبر arguments:.
أساسيات Swift لتطبيقات iOS · ورد في «الاختبار وTestFlight»
TestFlight
خدمة Apple لتوزيع النسخ التجريبية. النسخ المرفوعة إلى App Store Connect تصل فورًا إلى 100 مختبِر داخلي كحدّ أقصى، وإلى 10,000 مختبِر خارجي كحدّ أقصى بعد Beta App Review.
أساسيات Swift لتطبيقات iOS · ورد في «الاختبار وTestFlight»
Typed throws
صيغة في Swift 6 مثل throws(BudgetError) تسمّي نوع الخطأ الدقيق الذي قد ترميه الدالة، فيستطيع المستدعون كتابة switch شاملة على الخطأ دون حالة التقاط عامة.
أساسيات Swift لتطبيقات iOS · ورد في «معالجة الأخطاء والـ typed throws»
View modifier
method مثل .padding() أو .font(.headline) تغلّف view في SwiftUI داخل view جديد مع تطبيق تغيير. وتُطبَّق الـ modifiers بالترتيب، لذلك ترتيبها مهم.
أساسيات Swift لتطبيقات iOS · ورد في «الـ views والـ modifiers»
Virtualization
التقنية التي يستخدمها FlatList وSectionList لتركيب الصفوف القريبة من منطقة العرض فقط، واستبدال البقية بفراغ، فتبقى القوائم الطويلة سريعة وخفيفة على الذاكرة.
بناء تطبيقات الجوّال باستخدام React Native · ورد في «قوائم تبقى سريعة: FlatList وSectionList»

DevOps والسحابة · 90 مصطلحًا

.dockerignore
ملف يسرد أنماطًا تُستبعد من الـ build context، مثل node_modules و.git وملفات .env، فيسرّع البناء ويُبقي الأسرار خارج الـ images.
Docker وKubernetes: انشر وأنت مطمئن · ورد في «الـ Multi-Stage Builds وملف .dockerignore»
.gitignore
ملف يسرد أنماط الملفات غير المتتبَّعة التي يجب ألّا يتتبّعها Git أبدًا، مثل node_modules/ وناتج البناء و .env. ولا يؤثّر في الملفات المتتبَّعة أصلًا.
Git و GitHub · ورد في «الـ Stash وملف .gitignore»
أقل الصلاحيات (least privilege)
منح الهوية الإجراءات المحدّدة فقط على الموارد المحدّدة التي تحتاجها مهمتها، وعدم توسيع الصلاحيات إلا حين يُظهر خطأ AccessDenied حقيقي أن شيئًا ما ناقص.
أساسيات AWS السحابية · ورد في «قراءة سياسات IAM وكتابتها»
البصمة (Image digest)
‏hash من نوع SHA-256 يحدّد المحتوى الدقيق للـ image. على عكس الـ tag، لا يمكن أن يشير أبدًا إلى بايتات مختلفة، فالتثبيت بالـ digest يضمن أن كل node يشغّل الـ image نفسها.
Docker وKubernetes: انشر وأنت مطمئن · ورد في «الـ Tags والـ Digests والـ Registries»
التحديث المتدرّج (Rolling update)
الاستراتيجية الافتراضية للـ Deployment: يتوسّع ReplicaSet جديد بينما يتقلّص القديم، بوتيرة يضبطها maxSurge وmaxUnavailable، ولا يتقدّم إلا بقدر ما تسمح به الـ readiness.
Docker وKubernetes: انشر وأنت مطمئن · ورد في «التحديثات المتدرّجة والتراجع وHelm»
التحكم في الإصدارات (Version control)
نظام يسجّل لقطات من المشروع عبر الزمن، فتستطيع أن ترى ما الذي تغيّر ومتى ولماذا، وأن تعود إلى نسخ سابقة، وأن تجمع عمل عدة أشخاص.
Git و GitHub · ورد في «لماذا التحكم في الإصدارات، وكيف يفكّر Git»
الرفض الصريح (explicit deny)
عبارة Deny في أي سياسة منطبقة تطابق الطلب. وهي تتجاوز أي Allow دائمًا، ما يجعلها أساس حواجز الحماية الموثوقة.
أساسيات AWS السحابية · ورد في «مستخدمو IAM والمجموعات والـ roles والسياسات»
الشبكة الفرعية العامة (public subnet)
شبكة فرعية في VPC يرسل جدول التوجيه الخاص بها 0.0.0.0/0 إلى بوابة إنترنت. أما الشبكات الفرعية الخاصة فليس فيها مسار كهذا، فلا يستطيع الإنترنت بدء اتصالات بها.
أساسيات AWS السحابية · ورد في «الشبكات: Amazon VPC والشبكات الفرعية ومجموعات الأمان»
الفرع (Branch)
مؤشّر مسمّى ومتحرّك إلى commit واحد. إنشاء commit وأنت على فرع يقدّمه إلى الـ commit الجديد؛ وإنشاء فرع لا ينسخ أي ملفات.
Git و GitHub · ورد في «الـ branches مؤشّرات، والـ HEAD هو أنت»
الكتابة المشروطة (conditional write)
عملية كتابة في DynamoDB مع ConditionExpression، مثل attribute_not_exists(email)، لا تنجح إلا إذا تحقّق الشرط، ويُفحص الشرط بشكل ذرّي لمنع التكرار.
أساسيات AWS السحابية · ورد في «API من نوع serverless باستخدام Lambda وAPI Gateway وDynamoDB»
المستودع (Repository)
السجلّ الكامل للمشروع وإعداداته، مخزّنًا في مجلد .git المخفي؛ يحتوي كل commit وكل فرع وكل tag، ويُنشأ بـ git init أو git clone.
Git و GitHub · ورد في «التثبيت والإعداد وأول commit لك»
المستودع البعيد (Remote)
عنوان URL مسمّى لنسخة أخرى من الـ repository، على GitHub في الغالب. و origin هو الاسم المتعارف عليه للنسخة التي استنسخت منها أو ترفع إليها.
Git و GitHub · ورد في «الـ Remotes: الـ Push والـ Fetch والـ Pull والفروع المتتبِّعة»
إنذار CloudWatch (CloudWatch alarm)
قاعدة تراقب مقياسًا واحدًا مقابل حدّ معيّن على مدى فترة، وتغيّر حالتها عند تجاوزه، وعادةً ترسل إشعارًا إلى topic في Amazon SNS ينبّه الأشخاص.
أساسيات AWS السحابية · ورد في «المراقبة عبر CloudWatch والمراجعة بإطار Well-Architected»
تعارض الدمج (Merge conflict)
ما يحدث حين يغيّر الفرعان الأسطر نفسها منذ الـ merge base. يكتب Git النسختين بين علامات وينتظر منك أن تحرّر الملف وتنفّذ git add وتكمل.
Git و GitHub · ورد في «حلّ تعارضات الدمج خطوة بخطوة»
حلقة التحكّم (Control loop)
النمط الذي تقوم عليه الـ controllers في Kubernetes: مراقبة الحالة الفعلية باستمرار، ومقارنتها بالحالة المرغوبة المخزّنة في الـ API، والتصرّف لسدّ الفرق.
Docker وKubernetes: انشر وأنت مطمئن · ورد في «حلقة التحكّم وأول cluster لك»
خدمة Compose ‏(Compose service)
مكوّن واحد من تطبيق Compose، مثل api أو db، معرَّف في compose.yaml، وتصل إليه الخدمات الأخرى على شبكة المشروع باسم الخدمة.
Docker وKubernetes: انشر وأنت مطمئن · ورد في «أساسيات Compose: الخدمات والشبكات»
رسم الـ commits البياني (DAG)
سجلّ Git كرسم بياني موجَّه غير دوري: يشير كل commit إلى أبيه أو أبويه، وتتبّع هذه الروابط إلى الخلف من أي commit يعطيك سجلّه.
Git و GitHub · ورد في «قراءة السجلّ: الـ commits كرسم بياني»
زوج مفاتيح SSH (SSH key pair)
مفتاحان مترابطان يُستخدمان لإثبات هويتك أمام GitHub: المفتاح الخاص يبقى على جهازك، والمفتاح العام ذو الامتداد .pub يُضاف إلى حسابك على GitHub.
Git و GitHub · ورد في «المصادقة بمفاتيح SSH أو HTTPS»
سياسة الثقة (trust policy)
السياسة القائمة على المورد في الـ role الخاص بـ IAM، والتي تسمّي الـ principals الذين يحق لهم تقمّص الـ role، مثل lambda.amazonaws.com.
أساسيات AWS السحابية · ورد في «Identity Center للأشخاص، والـ roles لأحمال العمل»
صيغة exec ‏(Exec form)
كتابة CMD أو ENTRYPOINT كمصفوفة JSON، مثل ["node", "dist/server.js"]، حتى يعمل البرنامج كـ PID 1 دون shell ويستقبل إشارات الإيقاف مباشرة.
Docker وKubernetes: انشر وأنت مطمئن · ورد في «أول Dockerfile لك»
طلب الدمج (Pull request)
اقتراح على GitHub لدمج فرع في آخر، يعلّق فيه المراجعون وتعمل فيه الفحوص الآلية، ثم يُدمج التغيير في النهاية. والرفع الجديد إلى الفرع يحدّثه.
Git و GitHub · ورد في «الـ Pull Requests ومراجعة الكود»
فئة التخزين في S3 (S3 storage class)
إعداد لكل كائن، مثل S3 Standard أو S3 Glacier Deep Archive، يقايض بين سعر التخزين وتكلفة الاسترجاع ووقته والحد الأدنى لمدة التخزين.
أساسيات AWS السحابية · ورد في «التخزين: Amazon S3 وEBS وEFS»
فحص الصحة (Healthcheck)
أمر يشغّله Docker داخل الـ container وفق جدول زمني ليقرّر هل هو سليم. ويستطيع Compose جعل الخدمات الأخرى تنتظره بالشرط condition: service_healthy.
Docker وKubernetes: انشر وأنت مطمئن · ورد في «ترتيب الإقلاع مع الـ Healthchecks»
فرع تتبّع بعيد (Remote-tracking branch)
سجلّ محلي للقراءة فقط، مثل origin/main، لمكان فرع ما على الـ remote عند آخر fetch أو pull أو push. لا يتحرّك إلا حين تتواصل مع الـ remote.
Git و GitHub · ورد في «الـ Remotes: الـ Push والـ Fetch والـ Pull والفروع المتتبِّعة»
مجلد العمل (Working tree)
ملفات المشروع على القرص التي تفتحها وتعدّلها. يقارنها Git بالـ index وبآخر commit ليبلّغك بما تغيّر.
Git و GitHub · ورد في «المناطق الثلاث: الـ Working Tree والـ Index والـ Repository»
مجموعة الأمان (security group)
جدار حماية ذو حالة على شكل قائمة سماح، يُرفق بواجهة الشبكة الخاصة بمورد ما. يُسمح تلقائيًا بالردود على الزيارات المسموح بها، ويمكن أن تسمّي القواعد مجموعة أمان أخرى كمصدر.
أساسيات AWS السحابية · ورد في «الشبكات: Amazon VPC والشبكات الفرعية ومجموعات الأمان»
مستخدم الجذر (root user)
الهوية التي تُنشأ ببريد التسجيل في حساب AWS. يستطيع فعل أي شيء، بما في ذلك إغلاق الحساب، لذا يحصل على MFA قوي، ولا مفاتيح وصول، ولا يُستخدم إلا نادرًا.
أساسيات AWS السحابية · ورد في «نموذج المسؤولية المشتركة وحساب آمن»
مفتاح التقسيم (partition key)
سمة المفتاح في DynamoDB التي تحدّد مكان تخزين العنصر. يجب أن يسمّي Query قيمة واحدة لمفتاح التقسيم، ولهذا تُصمَّم المفاتيح حول الأسئلة التي تطرحها.
أساسيات AWS السحابية · ورد في «قواعد البيانات: Amazon RDS مقابل Amazon DynamoDB»
مفتاح الشرط (condition key)
قيمة من سياق الطلب، مثل aws:SecureTransport أو aws:MultiFactorAuthPresent، تختبرها كتلة Condition في السياسة لتقرّر هل تنطبق العبارة.
أساسيات AWS السحابية · ورد في «قراءة سياسات IAM وكتابتها»
ملف غير متتبَّع (Untracked file)
ملف في مجلد العمل لم يسجّله Git قط وليس مجهّزًا. يبقى خارج الـ commits حتى تنفّذ git add له، ويستطيع .gitignore إخفاءه.
Git و GitHub · ورد في «التثبيت والإعداد وأول commit لك»
منطقة التجهيز (Index / staging area)
الـ commit التالي قيد التجميع. ينسخ git add المحتوى الحالي للملف إليه، ويحوّله git commit إلى commit، ويُخرج git restore --staged المحتوى منه.
Git و GitHub · ورد في «المناطق الثلاث: الـ Working Tree والـ Index والـ Repository»
منطقة التوافر (Availability Zone, AZ)
مركز بيانات مستقل أو أكثر داخل Region، بكهرباء وشبكات مستقلة. تشغيل حمل العمل في منطقتي توافر أو أكثر يتيح له النجاة من خسارة إحداها.
أساسيات AWS السحابية · ورد في «الـ Regions ومناطق التوافر ومواقع الحافة»
موقع الحافة (edge location)
واحد من مواقع AWS الصغيرة الكثيرة القريبة من المستخدمين، يخزّن فيه Amazon CloudFront المحتوى مؤقتًا ويقدّمه، ويجيب فيه Amazon Route 53 عن استعلامات DNS.
أساسيات AWS السحابية · ورد في «الـ Regions ومناطق التوافر ومواقع الحافة»
نشر Multi-AZ (Multi-AZ deployment)
إعداد في Amazon RDS فيه قاعدة بيانات standby متزامنة في منطقة توافر ثانية، تتولّى العمل تلقائيًا إذا تعطّلت منطقة توافر النسخة الرئيسية.
أساسيات AWS السحابية · ورد في «قواعد البيانات: Amazon RDS مقابل Amazon DynamoDB»
نموذج المسؤولية المشتركة (shared responsibility model)
تقسيم لمهام الأمان تؤمّن فيه AWS السحابة نفسها، كالعتاد والمنشآت وبرمجيات الخدمات، بينما يؤمّن العملاء بياناتهم والوصول والإعدادات والكود.
أساسيات AWS السحابية · ورد في «نموذج المسؤولية المشتركة وحساب آمن»
نوع الـ instance (instance type)
الاسم الذي يحدّد عتاد الـ instance في EC2، مثل m7g.large: العائلة m، والجيل 7، ومعالج Graviton g، والحجم large. كل خطوة في الحجم تضاعف الموارد تقريبًا.
أساسيات AWS السحابية · ورد في «الحوسبة: Amazon EC2 وAWS Lambda»
ARN (Amazon Resource Name)
المعرّف الفريد لمورد في AWS، بالشكل arn:partition:service:region:account-id:resource. تستخدم السياسات الـ ARNs لتحديد الموارد التي تغطّيها العبارة بدقّة.
أساسيات AWS السحابية · ورد في «مستخدمو IAM والمجموعات والـ roles والسياسات»
AWS Budgets
خدمة تتتبّع الإنفاق الفعلي والمتوقّع مقابل مبلغ تحدّده، وترسل تنبيهات عند تجاوز الحدود. إنها تحذّرك لكنها لا توقف الإنفاق من تلقاء نفسها.
أساسيات AWS السحابية · ورد في «نموذج المسؤولية المشتركة وحساب آمن»
AWS CLI v2
أداة سطر الأوامر التي تستدعي الـ APIs نفسها التي يستدعيها الـ console. تتبع الأوامر النمط aws ، مع خيارات عامة مثل --profile و–region و–query و–output.
أساسيات AWS السحابية · ورد في «الـ Console وAWS CLI v2»
aws sts get-caller-identity
أمر في الـ CLI يعيد معرّف الحساب والـ ARN للهوية التي تمثّلها بيانات اعتمادك. لا يحتاج إلى أي صلاحيات، لذا فهو الفحص القياسي قبل الأوامر المدمّرة.
أساسيات AWS السحابية · ورد في «الـ Console وAWS CLI v2»
AWS Well-Architected Framework
مجموعة أسئلة التصميم من AWS، مجمّعة في ست ركائز هي التميّز التشغيلي والأمان والموثوقية وكفاءة الأداء وتحسين التكلفة والاستدامة.
أساسيات AWS السحابية · ورد في «المراقبة عبر CloudWatch والمراجعة بإطار Well-Architected»
Build cache
نتائج مخزّنة لخطوات بناء سابقة. تُعاد الخطوة من الـ cache حين لا تتغيّر تعليمتها ومُدخلاتها؛ أما أول خطوة متغيّرة وكل خطوة بعدها فيُعاد بناؤها.
Docker وKubernetes: انشر وأنت مطمئن · ورد في «الـ Layers والـ Build Cache»
Build context
مجموعة الملفات التي يرسلها docker build إلى أداة البناء، وهي عادةً المجلد الذي تمرّره كآخر معامل، مطروحًا منه كل ما يطابق .dockerignore. ولا تقرأ COPY إلا منه.
Docker وKubernetes: انشر وأنت مطمئن · ورد في «أول Dockerfile لك»
Commit
لقطة مسجّلة لكل ملف متتبَّع، مع المؤلف والتاريخ والرسالة ومؤشّر إلى الـ commit الأب. معرّفه hash مشتقّ من كل ذلك، لذا لا يتغيّر أبدًا.
Git و GitHub · ورد في «لماذا التحكم في الإصدارات، وكيف يفكّر Git»
Compose watch
وضع للتطوير يبدأ بـ docker compose up --watch، يزامن الملفات المعدّلة إلى الـ containers العاملة أو يعيد بناء الـ image حين تتغيّر ملفات مثل الـ lockfile.
Docker وKubernetes: انشر وأنت مطمئن · ورد في «ملفات env والـ Overrides ووضع Watch»
ConfigMap وSecret
كائنان يحفظان إعدادات الـ Pods، ويُحقنان كمتغيّرات بيئة أو كملفات. الـ Secrets لبيانات الاعتماد لكنها مرمّزة بـ base64 فقط، لذا يهمّ التحكّم في الوصول إليها.
Docker وKubernetes: انشر وأنت مطمئن · ورد في «الـ ConfigMaps والـ Secrets والـ Namespaces»
Container
عملية عادية تعزلها نواة Linux بالـ namespaces وتحدّ مواردها بالـ cgroups، وتعمل من نظام ملفات image مع layer خاصة قابلة للكتابة يمكن التخلّص منها.
Docker وKubernetes: انشر وأنت مطمئن · ورد في «ما هو الـ container حقًا»
Conventional Commits
صيغة لرسائل الـ commits، type(optional scope): description، تستخدم أنواعًا مثل feat و fix و docs، لكي تستطيع الأدوات توليد سجلّات التغيير وأرقام الإصدارات الدلالية.
Git و GitHub · ورد في «رسائل الـ Commit والـ Tags والإصدارات»
Deployment
كائن في Kubernetes يُبقي مجموعة من الـ Pods المتطابقة قيد التشغيل عبر الـ ReplicaSets، ويستبدلها تدريجيًا حين يتغيّر قالب الـ Pod.
Docker وKubernetes: انشر وأنت مطمئن · ورد في «الـ Pods والـ ReplicaSets والـ Deployments»
Detached HEAD
الحالة التي يشير فيها الـ HEAD مباشرة إلى commit بدل فرع. الـ commits الجديدة المنشأة هناك لا تنتمي إلى أي فرع حتى تنشئ واحدًا بـ git switch -c.
Git و GitHub · ورد في «الـ branches مؤشّرات، والـ HEAD هو أنت»
Distroless image
‏base image مصغّرة لا تحتوي إلا على بيئة تشغيل اللغة ومكتباتها، دون shell أو مدير حزم، فتقلّص مساحة الهجوم وتقرير الثغرات.
Docker وKubernetes: انشر وأنت مطمئن · ورد في «Base images صغيرة ومستخدمون غير root»
Fast-forward
دمج لم يتحرّك فيه الفرع الحالي منذ بدأ الفرع الآخر، فيقدّم Git المؤشّر إلى الأمام ببساطة ولا ينشئ merge commit.
Git و GitHub · ورد في «الدمج: Fast-Forward و Merge Commits»
Fork
نسختك الخاصة على GitHub من repository يملكه شخص آخر. ترفع إليها الفروع وتفتح منها pull requests عائدة إلى الأصل، الذي يُسمّى بحسب العُرف upstream.
Git و GitHub · ورد في «الـ Issues والـ Projects والـ Forks والمصادر المفتوحة»
Gateway API
خليفة Ingress في Kubernetes لتوجيه الحركة الخارجية، مقسّم إلى موارد GatewayClass وGateway وHTTPRoute حتى يملك كلٌّ من فريق المنصّة وفريق التطبيق جزأه.
Docker وKubernetes: انشر وأنت مطمئن · ورد في «الحركة إلى الداخل والمشاكل إلى الخارج: Gateway API والتشخيص»
GB-second
وحدة احتساب الحوسبة في Lambda: الذاكرة المخصّصة بالغيغابايت مضروبة في وقت التشغيل بالثواني، مقيسًا بالمللي ثانية.
أساسيات AWS السحابية · ورد في «الحوسبة: Amazon EC2 وAWS Lambda»
git push --force-with-lease
رفع بالقوة لا يكتب فوق الفرع البعيد إلا إن كان ما زال يشير إلى حيث رأيته آخر مرة، فلن تمحو بصمت commits رفعها شخص آخر منذ آخر fetch لك.
Git و GitHub · ورد في «الـ Rebase مقابل الـ Merge، والقاعدة الذهبية»
git revert
أمر ينشئ commit جديدًا يطبّق العكس التام لـ commit سابق. يتراجع عن التغييرات دون إعادة كتابة السجلّ، لذا فهو آمن على الفروع المشتركة.
Git و GitHub · ورد في «التراجع بأمان: Revert و Reset والـ Reflog»
GitHub Actions workflow
ملف YAML في .github/workflows/ يشغّل jobs على آلات GitHub حين تقع أحداث مثل pull_request. وكل job يبلّغ عن status check على الـ pull request.
Git و GitHub · ورد في «حماية main: الـ CI مع Actions والـ Rulesets»
HEAD
مؤشّر Git إلى مكانك. يسمّي عادةً الفرع الحالي، والفرع يسمّي commit؛ و HEAD~1 تعني الـ commit الذي يسبق الـ commit الذي أنت عليه.
Git و GitHub · ورد في «الـ branches مؤشّرات، والـ HEAD هو أنت»
Helm chart
حزمة من manifests ‏Kubernetes على شكل قوالب مع قيم افتراضية. الأمر helm upgrade --install ينشرها كـ release revision مرقّمة يستطيع helm rollback العودة إليها.
Docker وKubernetes: انشر وأنت مطمئن · ورد في «التحديثات المتدرّجة والتراجع وHelm»
HorizontalPodAutoscaler
‏controller ‏(autoscaling/v2) يعدّل عدد نسخ حمل العمل ليُبقي مقياسًا ما، مثل متوسط استخدام المعالج نسبةً إلى الـ requests، عند هدف محدّد أو حوله.
Docker وKubernetes: انشر وأنت مطمئن · ورد في «الـ Requests والـ Limits والتوسّع التلقائي»
IAM Identity Center
خدمة AWS التي يسجّل فيها الأشخاص الدخول مرة واحدة، مع MFA، ويحصلون على وصول قصير الأمد إلى الحسابات وحزم الصلاحيات المسندة إليهم، دون مستخدمي IAM أو مفاتيح وصول.
أساسيات AWS السحابية · ورد في «Identity Center للأشخاص، والـ roles لأحمال العمل»
IAM role
هوية لها صلاحيات لكن بلا بيانات اعتماد طويلة الأمد. يتقمّصها principal موثوق فيتلقّى من AWS STS بيانات اعتماد مؤقتة تنتهي صلاحيتها بعد الجلسة.
أساسيات AWS السحابية · ورد في «مستخدمو IAM والمجموعات والـ roles والسياسات»
Image
لقطة لنظام ملفات مقسّمة إلى layers وللقراءة فقط، مع بيانات وصفية مثل الأمر الافتراضي والمستخدم. يمكن لـ image واحدة أن تكون قالبًا لأي عدد من الـ containers.
Docker وKubernetes: انشر وأنت مطمئن · ورد في «ما هو الـ container حقًا»
Label selector
استعلام على labels من أزواج مفتاح-قيمة تستخدمه كائنات Kubernetes ليجد بعضها بعضًا، مثل Service يختار الـ Pods التي يرسل إليها الحركة.
Docker وKubernetes: انشر وأنت مطمئن · ورد في «الـ Pods والـ ReplicaSets والـ Deployments»
Lambda execution role
الـ role في IAM الذي تتقمّصه دالة Lambda حين تعمل. تلتقط حزم AWS SDK بيانات اعتماده المؤقتة تلقائيًا، فلا يحتوي كود الدالة على مفاتيح وصول أبدًا.
أساسيات AWS السحابية · ورد في «Identity Center للأشخاص، والـ roles لأحمال العمل»
Liveness probe
فحص دوري يقرّر هل الـ container عالق. فشله يعيد تشغيل الـ container، لذا يجب ألا يعتمد على قواعد البيانات أو الخدمات الأخرى.
Docker وKubernetes: انشر وأنت مطمئن · ورد في «الـ Probes والإيقاف الآمن»
Merge base
أحدث commit يتشاركه فرعان. يقارن Git طرف كل فرع به أثناء الدمج الثلاثي ليقرّر أيّ التغييرات يأخذ.
Git و GitHub · ورد في «الدمج: Fast-Forward و Merge Commits»
Merge commit
commit له أبوان، يُنشأ حين يجمع Git فرعين تقدّم كلاهما. ولقطته تحتوي العمل من خطَّي السجلّ معًا.
Git و GitHub · ورد في «قراءة السجلّ: الـ commits كرسم بياني»
Multi-stage build
‏Dockerfile فيه عدّة مراحل FROM لا تُشحن منها إلا الأخيرة، فتبقى المترجِمات واعتماديات التطوير والمصادر في المراحل السابقة وخارج image الإنتاج.
Docker وKubernetes: انشر وأنت مطمئن · ورد في «الـ Multi-Stage Builds وملف .dockerignore»
Named volume
تخزين يديره Docker ويوجد باستقلال عن الـ containers، يُستخدم لبيانات مثل ملفات قاعدة البيانات التي يجب أن تبقى بعد حذف الـ container. والأمر docker compose down -v يحذفه.
Docker وKubernetes: انشر وأنت مطمئن · ورد في «الـ Volumes: بيانات تبقى»
Namespace
نطاق في Kubernetes لأسماء الكائنات والصلاحيات والحصص، يكون عادةً واحدًا لكل تطبيق أو فريق. لا يحجب حركة الشبكة دون NetworkPolicy.
Docker وKubernetes: انشر وأنت مطمئن · ورد في «الـ ConfigMaps والـ Secrets والـ Namespaces»
Namespaces وcgroups
ميزتان في النواة تقوم عليهما الـ containers: الـ namespaces تتحكّم فيما تراه العملية (العمليات والشبكة والـ mounts)، والـ cgroups تحدّ ما تستهلكه (المعالج والذاكرة والإدخال والإخراج).
Docker وKubernetes: انشر وأنت مطمئن · ورد في «ما هو الـ container حقًا»
Network ACL
قائمة عديمة الحالة من قواعد السماح والرفض المرقّمة، تُطبَّق عند حدود الشبكة الفرعية. ولأنها عديمة الحالة، تحتاج زيارات الرد إلى قواعد خاصة بها.
أساسيات AWS السحابية · ورد في «الشبكات: Amazon VPC والشبكات الفرعية ومجموعات الأمان»
Origin access control (OAC)
ميزة في CloudFront توقّع الطلبات إلى bucket خاص في S3، كي تستطيع سياسة الـ bucket السماح لذلك الـ distribution وحده بالقراءة، فيبقى الـ bucket مغلقًا أمام أي أحد آخر.
أساسيات AWS السحابية · ورد في «استضافة موقع ثابت على S3 وCloudFront»
Pod
أصغر وحدة يُجدوِلها Kubernetes: ‏container واحد أو أكثر تتشارك هوية شبكية وvolumes. الـ Pods يمكن التخلّص منها، فهي تُستبدل ولا تُصلَح.
Docker وKubernetes: انشر وأنت مطمئن · ورد في «الـ Pods والـ ReplicaSets والـ Deployments»
Readiness probe
فحص دوري يقرّر هل يجب أن يستقبل الـ Pod حركة. فشله يزيل الـ Pod من endpoints الـ Service دون إعادة تشغيله، وهو بوّابة للتحديثات المتدرّجة.
Docker وKubernetes: انشر وأنت مطمئن · ورد في «الـ Probes والإيقاف الآمن»
Rebase
إعادة تشغيل commits فرع فوق commit آخر، فتنتج commits جديدة بمعرّفات جديدة وسجلّ خطّي. آمن فقط للـ commits التي لم يبنِ عليها أحد غيرك.
Git و GitHub · ورد في «الـ Rebase مقابل الـ Merge، والقاعدة الذهبية»
Reflog
سجلّ محلي لكل موضع شغله الـ HEAD، مثل الـ commits وعمليات الـ reset والـ rebase والانتقال بين الفروع. يتيح لك العثور على commits لم يعد يشير إليها أي فرع واستعادتها.
Git و GitHub · ورد في «التراجع بأمان: Revert و Reset والـ Reflog»
Region
منطقة جغرافية منفصلة تشغّل فيها AWS نسختها الخاصة من معظم الخدمات، مثل eu-west-1 في أيرلندا. تبقى بياناتك في الـ Region التي تختارها ما لم تنقلها أو تنسخها.
أساسيات AWS السحابية · ورد في «الـ Regions ومناطق التوافر ومواقع الحافة»
Requests وlimits
إعدادات موارد لكل container: الـ requests هي ما يحجزه الـ scheduler، والـ limits سقوف مفروضة. تجاوز حدّ المعالج يسبّب الخنق (throttling)؛ وتجاوز حدّ الذاكرة يسبّب القتل بسبب نفاد الذاكرة (OOM).
Docker وKubernetes: انشر وأنت مطمئن · ورد في «الـ Requests والـ Limits والتوسّع التلقائي»
Ruleset
مجموعة مسمّاة من قواعد GitHub للفروع أو الـ tags، مثل اشتراط pull request، واشتراط نجاح الـ status checks، ومنع الرفع بالقوة إلى main.
Git و GitHub · ورد في «حماية main: الـ CI مع Actions والـ Rulesets»
S3 Block Public Access
إعدادات على مستوى الـ bucket والحساب، مفعّلة افتراضيًا في الـ buckets الجديدة، تتجاوز أي سياسة أو ACL قد تجعل البيانات عامة.
أساسيات AWS السحابية · ورد في «التخزين: Amazon S3 وEBS وEFS»
Secret mount
ميزة في BuildKit، هي RUN --mount=type=secret، تتيح بيانات اعتماد لخطوة بناء واحدة كملف أو كمتغيّر بيئة دون كتابتها في أي layer من الـ image.
Docker وKubernetes: انشر وأنت مطمئن · ورد في «فحص الـ Images وإبعاد الأسرار عنها»
Service
عنوان IP افتراضي واسم DNS ثابتان أمام مجموعة متغيّرة من الـ Pods الجاهزة يختارها label selector. من أنواعه ClusterIP وNodePort وLoadBalancer.
Docker وKubernetes: انشر وأنت مطمئن · ورد في «الـ Services: عناوين ثابتة لـ Pods متنقّلة»
SIGTERM
إشارة الإيقاف المهذّبة التي يرسلها Docker وKubernetes إلى PID 1 قبل SIGKILL القسرية. على التطبيقات معالجتها بإنهاء العمل الجاري والخروج بنظافة.
Docker وKubernetes: انشر وأنت مطمئن · ورد في «تشغيل الـ Containers: المنافذ ومتغيّرات البيئة والسجلات والإشارات»
Spot Instance
سعة فائضة في EC2 تُعرض بخصم كبير، ويمكن أن تسترجعها AWS بإنذار مدته دقيقتان. تناسب العمل الدفعي القابل لإعادة التشغيل، لا قواعد البيانات ولا الخوادم التي يتعامل معها المستخدمون.
أساسيات AWS السحابية · ورد في «الحوسبة: Amazon EC2 وAWS Lambda»
Stash
مكان تركن فيه التغييرات غير المسجّلة لتحصل على مجلد عمل نظيف. يحفظها git stash push، ويعيدها git stash pop؛ أضف -u لتضمين الملفات غير المتتبَّعة.
Git و GitHub · ورد في «الـ Stash وملف .gitignore»
Tag مشروح (Annotated tag)
علامة دائمة ومسمّاة على commit تخزّن أيضًا اسم الواسم والتاريخ ورسالة. يُنشأ بـ git tag -a، وهو الطريقة المعتادة لتعليم الإصدارات.
Git و GitHub · ورد في «رسائل الـ Commit والـ Tags والإصدارات»
Upstream branch
الفرع البعيد الذي يتتبّعه فرع محلي، ويُضبط بـ git push -u. يجعل git push و git pull المجرّدين يعملان، ويتيح لـ git status عرض عدد الـ commits المتقدّمة والمتأخّرة.
Git و GitHub · ورد في «الـ Remotes: الـ Push والـ Fetch والـ Pull والفروع المتتبِّعة»

الذكاء الاصطناعي وتعلّم الآلة · 30 مصطلحًا

الإفراط في التوافق (Overfitting)
حين يتعلّم النموذج الضجيج في بيانات تدريبه، فيحقق على صفوف التدريب نتيجة أفضل بكثير منها على الصفوف الجديدة. وعلاجه مرونة أقل أو بيانات أكثر أو الـ regularization.
دورة مكثّفة في تعلّم الآلة · ورد في «النماذج في scikit-learn: fit وpredict وscore»
الانحدار اللوجستي (Logistic regression)
نموذج تصنيف خطي يمرّر مجموعًا موزونًا من الـ features عبر دالة الـ sigmoid ليُخرج احتمالًا بين 0 و1.
دورة مكثّفة في تعلّم الآلة · ورد في «الانحدار اللوجستي: التنبؤ بالاحتمالات»
الباقي (Residual)
الفرق بين القيمة الفعلية وتنبؤ النموذج بها. ومقاييس الانحدار مثل MAE وRMSE تلخّص البواقي.
دورة مكثّفة في تعلّم الآلة · ورد في «الانحدار الخطي ومقاييسه»
التحقق المتقاطع (Cross-validation)
تقسيم بيانات التدريب إلى k طيّة وتدريب k نموذجًا، كلٌّ منها يُقيَّم على طيّة مختلفة، للحصول على تقدير أثبت للأداء وفكرة عن مدى تشتّته.
دورة مكثّفة في تعلّم الآلة · ورد في «التحقق المتقاطع»
التعلّم الموجَّه (Supervised learning)
تعلّم الربط بين الـ features وهدف معروف باستخدام أمثلة ذات labels، كي يتنبأ النموذج بالهدف لحالات جديدة. والتصنيف والانحدار شكلاه الرئيسيان.
دورة مكثّفة في تعلّم الآلة · ورد في «التعلّم من الأمثلة»
التعلّم غير الموجَّه (Unsupervised learning)
إيجاد بنية في بيانات لا عمود هدف فيها، مثل مجموعات من الصفوف المتشابهة (العنقدة) أو ملخّص مضغوط لأعمدة كثيرة (تقليل الأبعاد).
دورة مكثّفة في تعلّم الآلة · ورد في «التعلّم من الأمثلة»
الهدف (Target / label)
العمود الذي يتعلّم النموذج الموجَّه التنبؤ به، مثل ما إذا كان العميل قد انقطع. ويُسمّى عادةً y في scikit-learn.
دورة مكثّفة في تعلّم الآلة · ورد في «سير العمل وتقسيم بيانات التدريب والاختبار»
انجراف البيانات (Data drift)
تغيّر مع الزمن في توزيع مدخلات النموذج مقارنةً ببيانات تدريبه، قد يجعل التنبؤات أقل موثوقية ويجب مراقبته.
دورة مكثّفة في تعلّم الآلة · ورد في «تعلّم الآلة المسؤول: الانحياز والإنصاف والانجراف»
تحليل المكوّنات الرئيسية (PCA)
تقنية تجد محاور جديدة، كلٌّ منها مزيج موزون من الأعمدة الأصلية، مرتّبة بحسب مقدار ما تلتقطه من تباين البيانات، فيستطيع عدد قليل منها تلخيص الكثير.
دورة مكثّفة في تعلّم الآلة · ورد في «العنقدة وPCA»
تسرّب البيانات (Data leakage)
معلومات متاحة أثناء التدريب أو التقييم لن تكون متاحة وقت التنبؤ، مثل features سُجّلت بعد تاريخ التنبؤ أو معالجة مسبقة دُرِّبت على صفوف التحقق.
دورة مكثّفة في تعلّم الآلة · ورد في «تسرّب البيانات»
تقسيم التدريب والاختبار (Train/test split)
حجز جزء من البيانات ذات الـ labels، لا يُستخدم أبدًا في التدريب أو في اختيار النموذج، لقياس مدى نجاح النموذج النهائي مع حالات لم يرَها.
دورة مكثّفة في تعلّم الآلة · ورد في «سير العمل وتقسيم بيانات التدريب والاختبار»
توحيد مقاييس الـ features (Feature scaling)
إعادة معايرة الأعمدة إلى نطاقات متقاربة، عادةً متوسط 0 وانحراف معياري 1 باستخدام StandardScaler المدرَّب على بيانات التدريب وحدها. ويلزم للنماذج المعتمدة على المسافة والمدرَّبة بالتدرّج والمعاقَبة.
دورة مكثّفة في تعلّم الآلة · ورد في «كيف تتعلّم النماذج: دالة الخسارة والـ Gradient Descent»
خط الأساس (Baseline)
نموذج مرجعي بسيط، مثل التنبؤ بفئة الأغلبية أو قاعدة عمل من سطر واحد، يجب على أي نموذج حقيقي أن يتفوّق عليه بوضوح كي يستحق كلفته.
دورة مكثّفة في تعلّم الآلة · ورد في «خطوط الأساس: النموذج الذي يجب التغلّب عليه»
شجرة القرار (Decision tree)
نموذج يتنبأ بطرح سلسلة من أسئلة نعم/لا عن features مفردة، مختارة بحيث تكون المجموعات الناتجة أنقى ما يمكن.
دورة مكثّفة في تعلّم الآلة · ورد في «أشجار القرار»
عتبة القرار (Decision threshold)
حدّ الاحتمال الذي يصنّف المصنِّف فوقه الحالة إيجابية. القيمة الافتراضية 0.5، لكن يجب اختيارها بناءً على كلفة كل نوع من الأخطاء.
دورة مكثّفة في تعلّم الآلة · ورد في «العتبات وعدم توازن الفئات»
مصفوفة الالتباس (Confusion matrix)
جدول يعدّ السلبيات الصحيحة والإيجابيات الكاذبة والسلبيات الكاذبة والإيجابيات الصحيحة. وفي scikit-learn تمثّل الصفوف الفئات الفعلية والأعمدة الفئات المتنبأ بها.
دورة مكثّفة في تعلّم الآلة · ورد في «مقاييس التصنيف أبعد من الـ Accuracy»
معامل التحديد (R²)
حصة تباين الهدف التي يفسّرها نموذج الانحدار مقارنةً بالتنبؤ الدائم بالمتوسط: 1 يعني الكمال، و0 يعني أنه ليس أفضل من المتوسط، وقد يكون سالبًا.
دورة مكثّفة في تعلّم الآلة · ورد في «الانحدار الخطي ومقاييسه»
Embedding
متّجه ثابت الطول ينتجه نموذج لتمثيل نص أو عنصر آخر، مرتّب بحيث تكون للعناصر المتشابهة في المعنى متّجهات متقاربة.
دورة مكثّفة في تعلّم الآلة · ورد في «أين تقع النماذج اللغوية الكبيرة والـ Embeddings»
Epoch
مرور كامل واحد لخوارزمية تدريب الشبكة العصبية على بيانات التدريب كلها. ويستمر التدريب عادةً لعدد كبير من الـ epochs بينما تنخفض الخسارة.
دورة مكثّفة في تعلّم الآلة · ورد في «الشبكات العصبية والتعلّم العميق»
Estimator
أي كائن في scikit-learn يتعلّم من البيانات عبر fit. النماذج والـ scalers والـ encoders كلها estimators، وتضيف النماذج إليها predict وscore.
دورة مكثّفة في تعلّم الآلة · ورد في «النماذج في scikit-learn: fit وpredict وscore»
Feature
عمود مُدخل يستخدمه النموذج ليتنبأ، مثل عدد الأيام منذ آخر طلب. ويجب أن تكون الـ features معروفة في اللحظة التي يُجرى فيها التنبؤ.
دورة مكثّفة في تعلّم الآلة · ورد في «سير العمل وتقسيم بيانات التدريب والاختبار»
Gradient boosting
نموذج مجمّع يضيف أشجارًا ضحلة واحدة تلو الأخرى، كلٌّ منها مدرَّبة على أخطاء الأشجار التي قبلها، مع معدّل تعلّم يتحكم في مساهمة كل شجرة.
دورة مكثّفة في تعلّم الآلة · ورد في «الغابات العشوائية والـ Gradient Boosting»
Gradient descent
طريقة تحسين تحسب مرارًا ميل دالة الخسارة لكل معامل، وتحرّك المعاملات خطوة صغيرة نزولًا، بحجم يحدّده معدّل التعلّم.
دورة مكثّفة في تعلّم الآلة · ورد في «كيف تتعلّم النماذج: دالة الخسارة والـ Gradient Descent»
Hyperparameter
إعداد يُختار قبل التدريب ويتحكم في طريقة تعلّم النموذج، مثل max_depth أو C، بخلاف المعاملات التي يتعلّمها النموذج أثناء fit.
دورة مكثّفة في تعلّم الآلة · ورد في «النماذج في scikit-learn: fit وpredict وscore»
k-means
خوارزمية عنقدة تتناوب بين إسناد كل نقطة إلى أقرب مركز ونقل كل مركز إلى متوسط نقاطه، لعدد مختار من العناقيد k.
دورة مكثّفة في تعلّم الآلة · ورد في «العنقدة وPCA»
One-hot encoding
تحويل عمود فئوي إلى عمود 0/1 لكل فئة كي تستطيع النماذج استخدامه. ويتعامل OneHotEncoder مع الفئات غير المرئية حين يُضبط handle_unknown على ignore.
دورة مكثّفة في تعلّم الآلة · ورد في «الـ Pipelines وColumnTransformer»
Pipeline
كائن في scikit-learn يسلسل خطوات المعالجة المسبقة ونموذجًا نهائيًا في estimator واحد، فتُدرَّب كل خطوة على بيانات التدريب وحدها وتُطبَّق بالطريقة نفسها لاحقًا.
دورة مكثّفة في تعلّم الآلة · ورد في «الـ Pipelines وColumnTransformer»
Precision وRecall
الـ precision هي حصة الحالات المُعلَّمة التي هي إيجابية فعلًا؛ والـ recall هي حصة الحالات الإيجابية فعلًا التي عُلِّمت. ورفع إحداهما يخفض الأخرى عادةً.
دورة مكثّفة في تعلّم الآلة · ورد في «مقاييس التصنيف أبعد من الـ Accuracy»
Regularization
إضافة عقوبة على حجم المعاملات إلى دالة الخسارة كي يفضّل النموذج ملاءمات أبسط. يستخدم Ridge مربعات المعاملات؛ ويستخدم Lasso قيمها المطلقة وقد يجعل بعضها صفرًا.
دورة مكثّفة في تعلّم الآلة · ورد في «الـ Regularization باستخدام Ridge وLasso»
ROC AUC
مقياس لجودة الترتيب لا يعتمد على عتبة: احتمال أن ينال مثال إيجابي مختار عشوائيًا درجة أعلى من مثال سلبي مختار عشوائيًا. القيمة 0.5 عشوائية، و1.0 مثالية.
دورة مكثّفة في تعلّم الآلة · ورد في «مقاييس التصنيف أبعد من الـ Accuracy»