Forwarded from Oday Al-Naqep | Perspectives (𝐄𝐧𝐠 . 𝐎𝐝𝐚𝐲 𝐀𝐥-𝐍𝐚𝐪𝐞𝐩)
من أكثر الأخطاء شيوعًا عند تصميم قواعد البيانات الاعتقاد أن الفهرس (Index) يفرض التفرد (Uniqueness). والحقيقة أن هذين المفهومين مختلفان.
الفهرس هو بنية بيانات تُستخدم لتسريع الوصول إلى الصفوف وتحسين أداء عمليات البحث والترتيب وبعض عمليات الربط. وجود فهرس على عمود لا يعني بالضرورة أن القيم الموجودة فيه يجب أن تكون فريدة.
أما قيد التفرد (UNIQUE Constraint) فهو قاعدة تفرضها قاعدة البيانات لمنع تكرار القيم في عمود أو مجموعة أعمدة. وفي كثير من أنظمة إدارة قواعد البيانات يتم تنفيذ هذا القيد باستخدام فهرس فريد داخليًا، لكن الغرض الوظيفي يظل مختلفًا: الفهرس لتحسين الأداء، وقيد UNIQUE لضمان سلامة البيانات.
إدراك هذا الفرق يساعد على اتخاذ قرارات تصميم صحيحة، ويمنع الخلط بين تحسين الأداء وفرض قواعد العمل (Business Rules)، وهو من المفاهيم التي كثيرًا ما تُناقش في المقابلات التقنية وفي تصميم الأنظمة الإنتاجية
الفهرس هو بنية بيانات تُستخدم لتسريع الوصول إلى الصفوف وتحسين أداء عمليات البحث والترتيب وبعض عمليات الربط. وجود فهرس على عمود لا يعني بالضرورة أن القيم الموجودة فيه يجب أن تكون فريدة.
أما قيد التفرد (UNIQUE Constraint) فهو قاعدة تفرضها قاعدة البيانات لمنع تكرار القيم في عمود أو مجموعة أعمدة. وفي كثير من أنظمة إدارة قواعد البيانات يتم تنفيذ هذا القيد باستخدام فهرس فريد داخليًا، لكن الغرض الوظيفي يظل مختلفًا: الفهرس لتحسين الأداء، وقيد UNIQUE لضمان سلامة البيانات.
إدراك هذا الفرق يساعد على اتخاذ قرارات تصميم صحيحة، ويمنع الخلط بين تحسين الأداء وفرض قواعد العمل (Business Rules)، وهو من المفاهيم التي كثيرًا ما تُناقش في المقابلات التقنية وفي تصميم الأنظمة الإنتاجية
👍4
Forwarded from المجتمع اليمني للمطورين | YDC (ٰٰٰٰٰ𝙼𝚘𝚑𝚊𝚖𝚖𝚎𝚍 𝙱𝚒𝚗 𝙵𝚊𝚛𝚎𝚜)
واخيراً، بفضل الله تم رفع بعض اللقاءات على قناتنا في اليوتيوب
https://youtube.com/playlist?list=PLWe0KzPXbCkxXKPJgex1gmlMDDCiZ0ynB&si=PxTvsyzlNgFLwjAO
لاتنسوا الاشتراك وتفعيل الجرس ليصلكم كل شي جديد باذن الله
وأيضا انشروا الرابط والسلسة لعل هناك من يستفيد وتكون مرجع لكم باذن الله
كتب الله اجر الجميع
https://youtube.com/playlist?list=PLWe0KzPXbCkxXKPJgex1gmlMDDCiZ0ynB&si=PxTvsyzlNgFLwjAO
لاتنسوا الاشتراك وتفعيل الجرس ليصلكم كل شي جديد باذن الله
وأيضا انشروا الرابط والسلسة لعل هناك من يستفيد وتكون مرجع لكم باذن الله
كتب الله اجر الجميع
👍2
This media is not supported in the widget
VIEW IN TELEGRAM
❤8
"قد تتاخر انت بعض الوقت، لكن الوقت لن يتاخر لاجلك"
❤5
Forwarded from ProgrammingAdvices - Channel
YouTube
فخ مواقع التواصل الاجتماعي: المشكلة ليست كما تظن بالنسبة لضياع الوقت !
هذا الدرس من كورس ادارة الوقت في منصة الادارة
https://managementdose.com/p/time-management
لاتنسى 👍🏻 واشترك الآن في القناة 🔔 لتغيير حياتك للأفضل ✨، شاركها على أوسع نطاق 🌍 وكل التوفيق للجميع 💪🍀
www.ManagementDose.com 🌐
https://managementdose.com/p/time-management
لاتنسى 👍🏻 واشترك الآن في القناة 🔔 لتغيير حياتك للأفضل ✨، شاركها على أوسع نطاق 🌍 وكل التوفيق للجميع 💪🍀
www.ManagementDose.com 🌐
❤3
Forwarded from تكنولوجيا المعلومات / احمد وهيب
قال النبي ﷺ: "إذا قامت الساعة وفي يد أحدكم فسيلة فليغرسها". 🌱
العطاء لا يتوقف، والتعلّم رحلةٌ تنمو بالاستمرارية.
في المجتمع اليـ🇾🇪ـمني للمـ👨💻ـطورين نؤمن أن كل مهارةٍ تكتسبها، وكل معرفةٍ تشاركها، هي غرسةٌ تسهم في بناء مستقبلك ودعم مجتمعك.
💻 معًا نغرس اليوم بذور المعرفة والتعاون، لنحصد غدًا مجتمعًا تقنيًا أقوى وأثرًا يمتد للجميع.
لا تستهِن بمشاركةٍ صغيرة؛ فقد تكون بداية نجاحٍ كبير لشخصٍ آخر.
#المجتمع_اليمني_للمطورين
#مشاركة_المعرفة
العطاء لا يتوقف، والتعلّم رحلةٌ تنمو بالاستمرارية.
في المجتمع اليـ🇾🇪ـمني للمـ👨💻ـطورين نؤمن أن كل مهارةٍ تكتسبها، وكل معرفةٍ تشاركها، هي غرسةٌ تسهم في بناء مستقبلك ودعم مجتمعك.
ولأن المجتمعات العظيمة تُبنى بأفرادها، فلكل عضوٍ دور:
🔸 شارك معرفتك؛ فمعلومة أو حل لمشكلة قد يصنع فرقًا لمطورٍ آخر.
🔸 انشر ثقافة التعاون والتعلّم وكن قدوةً في مجتمعك.
🔸 بادر بأفكارك من مشاريع أو ورش أو تحديات تقنية.
🔸 تفاعل وادعم الآخرين؛ فالمجتمع ينمو بمشاركة أفراده.
💻 معًا نغرس اليوم بذور المعرفة والتعاون، لنحصد غدًا مجتمعًا تقنيًا أقوى وأثرًا يمتد للجميع.
لا تستهِن بمشاركةٍ صغيرة؛ فقد تكون بداية نجاحٍ كبير لشخصٍ آخر.
#المجتمع_اليمني_للمطورين
#مشاركة_المعرفة
❤3👍1
Forwarded from ProgrammingAdvices - Channel
YouTube
فخ العادة السرية: عندما تتحول من سلوك إلى وسيلة هروب
هذا الدرس من كورس ادارة الوقت في المنصة
https://managementdose.com/p/time-management
لاتنسى 👍🏻 واشترك الآن في القناة 🔔 لتغيير حياتك للأفضل ✨، شاركها على أوسع نطاق 🌍 وكل التوفيق للجميع 💪🍀
www.ManagementDose.com 🌐
https://managementdose.com/p/time-management
لاتنسى 👍🏻 واشترك الآن في القناة 🔔 لتغيير حياتك للأفضل ✨، شاركها على أوسع نطاق 🌍 وكل التوفيق للجميع 💪🍀
www.ManagementDose.com 🌐
Forwarded from Oday Al-Naqep | Perspectives (𝐄𝐧𝐠 . 𝐎𝐝𝐚𝐲 𝐀𝐥-𝐍𝐚𝐪𝐞𝐩)
شكوتُ إلى وكيعٍ سوء حفظي
فأرشدني إلى تركِ المعاصي
وأخبرني بأنَّ العلمَ نورٌ
ونورُ اللهِ لا يُهدى لعاصي. ✨
فأرشدني إلى تركِ المعاصي
وأخبرني بأنَّ العلمَ نورٌ
ونورُ اللهِ لا يُهدى لعاصي. ✨
❤7
Forwarded from Oday Al-Naqep | Perspectives (𝐄𝐧𝐠 . 𝐎𝐝𝐚𝐲 𝐀𝐥-𝐍𝐚𝐪𝐞𝐩)
🚨 من أكثر الأخطاء المكلفة في البرمجة: الخلط بين "ما هو حقيقي" و"ما هو مشتق".
عند تصميم النظام، خزّن الحقيقة (Source of Truth) فقط، ولا تخزّن قيمة يمكن حسابها من بيانات أخرى إلا إذا كان لديك سبب قوي ومدروس.
على سبيل المثال، إذا كانت معلومة ما يمكن استنتاجها دائمًا من سجلات أو بيانات موجودة، فإن تخزينها في مكان آخر يفتح الباب للتناقضات عندما يتم تحديث أحدهما ويُنسى الآخر.
النتيجة؟
- زيادة احتمالية الأخطاء.
- صعوبة في الصيانة.
- بيانات غير متسقة يصعب الوثوق بها.
المبرمج المحترف لا يفكر فقط في كيفية تخزين البيانات، بل يفكر أيضًا في من أين تأتي الحقيقة الوحيدة للنظام (Single Source of Truth).
عند تصميم النظام، خزّن الحقيقة (Source of Truth) فقط، ولا تخزّن قيمة يمكن حسابها من بيانات أخرى إلا إذا كان لديك سبب قوي ومدروس.
على سبيل المثال، إذا كانت معلومة ما يمكن استنتاجها دائمًا من سجلات أو بيانات موجودة، فإن تخزينها في مكان آخر يفتح الباب للتناقضات عندما يتم تحديث أحدهما ويُنسى الآخر.
النتيجة؟
- زيادة احتمالية الأخطاء.
- صعوبة في الصيانة.
- بيانات غير متسقة يصعب الوثوق بها.
المبرمج المحترف لا يفكر فقط في كيفية تخزين البيانات، بل يفكر أيضًا في من أين تأتي الحقيقة الوحيدة للنظام (Single Source of Truth).
❤1
إِنَّ اللَّهَ وَمَلَائِكَتَهُ يُصَلُّونَ عَلَى النَّبِيِّ ۚ يَا أَيُّهَا الَّذِينَ آمَنُوا صَلُّوا عَلَيْهِ وَسَلِّمُوا تَسْلِيمًا.
جمعــــــــة مبــــــــاركة 🌷.♕♡
جمعــــــــة مبــــــــاركة 🌷.♕♡
❤7
Forwarded from ProgrammingAdvices - Channel
YouTube
فخ اعادة البدء من جديد يهدر وقتك سدى ويجعلك عالقاً
هذا الدرس من كورس ادراة الوقت في منصة الادارة
https://managementdose.com/p/time-management
لاتنسى 👍🏻 واشترك الآن في القناة 🔔 لتغيير حياتك للأفضل ✨، شاركها على أوسع نطاق 🌍 وكل التوفيق للجميع 💪🍀
www.ManagementDose.com 🌐
https://managementdose.com/p/time-management
لاتنسى 👍🏻 واشترك الآن في القناة 🔔 لتغيير حياتك للأفضل ✨، شاركها على أوسع نطاق 🌍 وكل التوفيق للجميع 💪🍀
www.ManagementDose.com 🌐
❤4
Forwarded from زاد العالم الرقمي
عقلية المبرمج المحترف
لا تجعل ثقتك في صحة الكود نابعة من أنك كتبته، بل من أنك حاولت إثبات أنه خاطئ ولم تستطع.
المبرمج المبتدئ يسأل:
«هل يعمل؟»
أما المحترف فيسأل:
«كيف يمكن أن يفشل؟»
لهذا، قبل اعتبار أي ميزة منتهية، حاول أن تكسرها بنفسك:
- ماذا لو كانت المدخلات غير متوقعة؟
- ماذا لو استُخدمت بطريقة لم أخطط لها؟
- ماذا لو تغيرت البيانات أثناء التنفيذ؟
💡 الانتقال من عقلية إثبات النجاح إلى عقلية البحث عن الفشل هو أحد أكبر الفروق بين كتابة كود يعمل، وكتابة نظام يمكن الوثوق به في بيئة الإنتاج.
#عقلية_مبرمج_عملي
لا تجعل ثقتك في صحة الكود نابعة من أنك كتبته، بل من أنك حاولت إثبات أنه خاطئ ولم تستطع.
المبرمج المبتدئ يسأل:
«هل يعمل؟»
أما المحترف فيسأل:
«كيف يمكن أن يفشل؟»
لهذا، قبل اعتبار أي ميزة منتهية، حاول أن تكسرها بنفسك:
- ماذا لو كانت المدخلات غير متوقعة؟
- ماذا لو استُخدمت بطريقة لم أخطط لها؟
- ماذا لو تغيرت البيانات أثناء التنفيذ؟
💡 الانتقال من عقلية إثبات النجاح إلى عقلية البحث عن الفشل هو أحد أكبر الفروق بين كتابة كود يعمل، وكتابة نظام يمكن الوثوق به في بيئة الإنتاج.
#عقلية_مبرمج_عملي
🔥2❤1👍1
Forwarded from Ahmed Binattash
YouTube
#003 Composition / Inheritance [ شرح بالعربي ] #designprinciples #solid #composition #inheritance
الكورسات المدفوعة:
احتراف ASP.NET Core: من المفاهيم حتى APIs جاهزة للإطلاق 🚀
ابنِ APIs حقيقية باستخدام .ASP NET CORE من الصفر حتى البرودكشن
💡 منهج منظم، بدون حشو، وكود حقيقي قابل للنشر.
للاشتراك:
https://metigator.teachable.com/p/mastering-asp-net-core…
احتراف ASP.NET Core: من المفاهيم حتى APIs جاهزة للإطلاق 🚀
ابنِ APIs حقيقية باستخدام .ASP NET CORE من الصفر حتى البرودكشن
💡 منهج منظم، بدون حشو، وكود حقيقي قابل للنشر.
للاشتراك:
https://metigator.teachable.com/p/mastering-asp-net-core…