مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تطبيق عملي على صياغة المدخلات والمخرجات والمعادلات الحسابية لجمع عددين
Slide 05 / 28
PROBLEM
اكتب برنامجاً لحساب وطباعة مجموع عددين يدخلهما المستخدم.
📥 INPUT (المدخلات)
📤 OUTPUT (المخرجات والنتائج)
• Summation variable (sum)
⚙️ PROCESSING (المعالجة والمعادلة)
Summation = first + second ➔ sum = x1 + x2
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تحليل معطيات ومعادلات حساب المتوسط الحسابي لثلاثة أرقام مدخلة
Slide 06 / 28
PROBLEM
اكتب برنامجاً يقوم بحساب وطباعة المتوسط الحسابي لثلاثة أعداد مدخلة من المستخدم.
📥 INPUT (المدخلات والمستقبلات)
📤 OUTPUT (النتائج المتوقعة)
• Average variable (avg)
⚙️ PROCESSING (المعادلة الحسابية)
Average = (first + second + third) / 3 ➔ avg = (x1 + x2 + x3) / 3
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تفكيك مسألة حساب حجم المكعب ومجموع مساحات أوجهه الرياضية
Slide 07 / 28
PROBLEM
اكتب برنامجاً يقوم بحساب وطباعة حجم المكعب ومجموع مساحات أوجهه الجانبية بناءً على طول الضلع.
📥 INPUT (المدخلات)
• Side length (L)
📤 OUTPUT (المخرجات المتعددة)
⚙️ PROCESSING (المعالجة والعمليات)
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
العلاقة المتبادلة بين التحليل والخوارزمية وكيفية تجسيدها في شبه الكود والمخططات
Slide 08 / 28
1. Problem Definition تعريف وتأطير المسألة
2. Problem Analysis تحليل العلاقات والمدخلات
3. Solution Design تصميم الحل وصياغة الخوارزمية
DEVELOP
ALGORITHM The Two Main Ways: الطريقتان الأساسيتان لتجسيد الخوارزميات
Pseudo Code شبه الكود البرمجي المكتوب
Flowchart خرائط ومخططات التدفق البصرية
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
المسار المنطقي للمعلومة داخل خوارزميات المعالجة الرقمية
Slide 09 / 28
1
قراءة وتخزين جميع المدخلات
استقبال البيانات الأولية وحجز متغيرات مخصصة لها في الذاكرة.
2
تنفيذ وحساب العمليات والمعادلات
إجراء المعالجة المطلوبة وحقن النتائج الرياضية في متغيرات وسيطة.
3
عرض وطباعة المخرج النهائي
تقديم النتائج البرمجية للمستخدم وعرضها بوضوح تام على الشاشة.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
التعريف التقني والمنطقي للخوارزمية البرمجية ودورها الفعال في الأنظمة
Slide 10 / 28
DEFINITION
الخوارزمية هي خطة عمل مبدئية، ومجموعة متسلسلة ومنظمة من التعليمات التفصيلية خطوة بخطوة، تصمم خصيصاً لحل مسألة معينة بكفاءة.
CORE ATTRIBUTES
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
شرح أبعاد واستخدامات شبه الكود البرمجي لتجسيد وتأطير المنطق
Slide 11 / 28
لغة وصفية غير رسمية تشبه كثيراً لغة البشر اليومية لتسهيل القراءة والمراجعة.
لا يخضع لقواعد الترجمة النحوية الصارمة ولا يمكن تشغيله وتنفيذه مباشرة على معالجات الحواسب.
يقدم دليلاً تخطيطياً ممتازاً قبل البدء بكتابة الكود الفعلي بلغات الجافا أو السي بلس بلس.
هو مجرد صياغة ورقية لتنظيم تفكير المبرمج قبل تحويله للغات التشغيل الحقيقية.
يجب صياغته ليشمل جميع مراحل القراءة والمعالجة الحسابية والطباعة للمخرجات.
تتم ترجمته وصياغته بسهولة فائقة للغات برمجية متنوعة كـ Pascal, Java, C++.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
استعراض الخطوات التفصيلية لشبه الكود البرمجي لحساب مجموع متغيرين
Slide 12 / 28
Step 1. Start the program | بدء البرنامج
Step 2. Read first number and save it in variable N1 | قراءة العدد الأول وحفظه
Step 3. Read second number and save it in variable N2 | قراءة العدد الثاني وحفظه
Step 4. Add both numbers and save the result in Sum ➔ Sum = N1 + N2
Step 5. Print the result (Sum) | طباعة المتغير الإجمالي
Step 6. End the program | إنهاء تشغيل البرنامج
Step 2, 3 INPUT مدخلات
Step 4 PROCESSING المعالجة
Step 5 OUTPUT مخرجات
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
صياغة خطوات شبه الكود البرمجي لحساب المتوسط الحسابي لثلاثة أرقام
Slide 13 / 28
Start the program
Read first number and save in variable (num1)
Read second number and save in variable (num2)
Read third number and save in variable (num3)
Add numbers and save in (sum) ➔ sum = num1 + num2 + num3
Divide sum by 3 and save in (avg) ➔ avg = sum / 3
Print the result (avg)
End the program
Step 2, 3, 4 INPUT
Step 5, 6 PROCESSING
Step 7 OUTPUT
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
هيكلية شبه الكود البرمجي لحساب حجم المكعب ومجموع مساحات أوجهه المتعددة
Slide 14 / 28
Start the program
Read length of side and save in variable (L)
Calculate volume and store in (V) ➔ V = L * L * L
Calculate surfaces' areas and store in (S) ➔ S = 6 * L * L
Print output1: variable (Volume)
Print output2: variable (Surface)
End the program
Step 2 INPUT
Step 3, 4 PROCESSING
Step 5, 6 OUTPUT
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تعريف وأهمية ومزايا التجسيد البصري والرسومي للخوارزميات والرموز
Slide 15 / 28
تمثيل رسومي بصري للخوارزمية
مخطط التدفق هو التجسيد البصري والرسومي المباشر الذي يحول الأكواد والخطوات الجافة لرموز بصرية واضحة ومعالجة.
توضيح دقيق وتفصيلي للمسار
يساهم المخطط في رسم وتوضيح أدق مسارات الكود وحالاته الشرطية، مما يجعله قريباً جداً من صياغة الكود الفعلي لاحقاً.
مستقل عن لغة البرمجة
تتميز كل من الخوارزميات والخرائط التدفقية بالاستقلالية المطلقة عن لغة البرمجة المستعملة في بناء النظام.
رموز قياسية ومعايير رسومية موحدة
يستخدم مخطط التدفق رموزاً ومعايير عالمية موحدة للتفاهم بين المهندسين والمبرمجين للتعبير عن الإدخال والتشغيل.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
الدليل والقاموس المعياري للأشكال والرموز البرمجية المعتمدة عالمياً
Slide 16 / 28
Start / End
البداية والنهاية
يستخدم لتحديد نقطة انطلاق البرنامج ونهاية مساره التشغيلي.
Read / Print
الإدخال والإخراج (I/O)
متوازي الأضلاع يعبر عن قراءة المدخلات وطباعة النتائج.
x = 5
عمليات الإسناد والتخصيص
المستطيل يعبر عن إعطاء قيم أولية للمتغيرات (Assignment).
N2 = n1 + 3
العمليات الحسابية والمعالجة
المستطيل يعبر أيضاً عن المعالجة الرياضية وحل المعادلات.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
أشكال القرارات، أسهم التوجيه، التعليقات البرمجية والربط الفني
Slide 17 / 28
n1 > 3
اتخاذ القرار والشرط
المعين يمثل اتخاذ القرارات وحالات الشروط (True / False).
أسهم التوجيه والاتصال
الأسهم تربط وترسم مسار تدفق الأوامر البرمجية خطوة بخطوة.
1
نقاط التوصيل الفرعية
تُستخدم لربط المسارات المتباعدة في الصفحات المتعددة.
// my name
التعليقات والملاحظات
أجزاء مهملة من المترجم لكتابة شروحات إضافية للكود.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
بناء رسومي لمخطط تدفق عملية حساب مجموع المتغيرات
Slide 18 / 28
Start
Read n1, n2
Sum = n1 + n2
Print Sum
End
FLOWCHART LOGIC
يقوم المخطط بتمثيل البرنامج بشكل متسلسل: البداية ثم استقبال المتغير n1 ثم n2 من لوحة المفاتيح، وبعدها معالجة وجمع العددين وتخزينهما في Sum، وأخيراً عرض المجموع للمستخدم.
💡 ملاحظة برمجية: يجب أن تمتلك المتغيرات والمدخلات في كود المصدر أسماء مختلفة تماماً لتفادي التداخل في الذاكرة.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
التمثيل الرسومي المتسلسل لحساب المتوسط الحسابي لثلاثة مدخلات متباينة
Slide 19 / 28
Start
Read x1, x2, x3
R = x1 + x2 + x3
Avr = R / 3
1
AVERAGE COMPUTATION
نقوم بجمع المتغيرات الثلاثة أولاً وتخزينها في متغير وسيط يسمى R، ثم نقسم المتغير R على 3 ونحفظ النتيجة في المتغير النهائي Avr، وأخيراً نربط مع نقطة التوصيل 1 لنعرض النتيجة في الشريحة التالية.
⚠️ قاعدة برمجية صارمة: يجب أن تحتوي المتغيرات الموجودة في الجانب الأيمن من أي معادلة حسابية على قيم محددة مسبقاً في الذاكرة لتجنب أخطاء التشغيل.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تكملة المخطط التوصيلي واستعراض النتائج والطباعة للمستخدم
Slide 20 / 28
1
Print Avr
End
CONTINUATION PATHWAY
يرتبط هذا الجزء بالشريحة السابقة مباشرة عن طريق نقطة التوصيل الدائرية 1، حيث يكمل مسار التدفق لطباعة المتغير Avr الحاضر مسبقاً في الذاكرة ثم إنهاء تشغيل البرنامج بنجاح.
📌 قاعدة ذهبية: كل المتغيرات والنتائج المراد طباعتها للمستخدم يجب أن تمتلك قيماً فعلية تم حسابها وإسنادها مسبقاً في الذاكرة.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
كيف نختصر ونبسط خطوات المخطط البرمجي لتقليل المساحة والجهد؟
Slide 21 / 28
Start
Read x1, x2, x3
Avr = (x1 + x2 + x3) / 3
Print Avr
End
SIMPLIFIED ADVANTAGES
طريقة رائعة ومختصرة لخرائط التدفق، حيث قمنا بدمج مرحلتي الجمع والقسمة في خطوة مستطيل واحد مباشر: Avr = (x1+x2+x3)/3، مما اختصر مساحة الرسم وسهل القراءة السريعة.
💡 ميزة للمهندس: يقلل هذا التبسيط البصري فرصة الوقوع في تعقيدات الأسهم ونقاط التوصيل الفرعية المزعجة بالملفات الكبيرة.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
الربط الرسومي المتكامل لحساب حجم ومساحة المكعب من مدخل واحد
Slide 22 / 28
Start
Read L
V = L * L * L
S = 6 * L * L
Print V, S
End
MULTIPLE OUTPUT PROCESSING
يعبر المخطط عن استقبال طول الضلع L، ثم حساب حجم المكعب وتخزينه بـ V، ومجموع مساحات أوجهه الجانبية بـ S، ثم يقوم بطباعة النتيجتين معاً للمستخدم قبل إنهاء تشغيل البرنامج بنجاح.
💡 ملحوظة رياضية: المكعب يمتلك 6 أوجه متطابقة المساحة، وصيغة مساحة الوجه الواحد هي الضلع في نفسه، لذلك ضربنا الناتج بـ 6 لحساب مجموع أوجه المكعب كاملة.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تحليل مسألة حساب الضريبة على الرواتب بناءً على شرط مالي محدد
Slide 23 / 28
CONDITION PROBLEM
اكتب برنامجاً لحساب الضريبة على رواتب الموظفين: إذا كان الراتب أقل من 5,000 ريال تكون الضريبة 10%؛ وإلا تكون الضريبة 8%.
📥 INPUT (المدخلات والمستقبلات)
• Employer's salary (salary)
📤 OUTPUT (النتائج المتوقعة)
• Required tax (tax)
⚙️ PROCESSING (المعالجة الشرطية)
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
التمثيل الرسومي والشرطي بالمعين والأسهم لعمليات اتخاذ القرار في الرواتب
Slide 24 / 28
Start
Read salary
tax = salary * 0.1
True (Yes)
Salary < 5000?
False (No)
tax = salary * 0.08
Print tax
End
DECISION TREE RULES
يوضح المعين البرمجي اتخاذ القرار: إذا تحقق الشرط وتجاوز الراتب الحدود المحددة، ينتقل مسار التحكم لحساب الضريبة عبر مسار True (اليسار)، وإذا كان الراتب مساوياً أو أكبر من 5,000 ريال، يتجه لمسار False (اليمين).
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
صياغة خوارزمية تحديد القيمة المطلقة للمتغيرات وإهمال الإشارات السالبة
Slide 25 / 28
ABSOLUTE PROBLEM
اكتب برنامجاً يقوم بقراءة عدد x وطباعة القيمة المطلقة له (|x|).
📥 INPUT (المدخلات والمستقبلات)
• A number (x)
📤 OUTPUT (النتائج المتوقعة)
• Absolute value of x (|x|)
⚙️ PROCESSING (المعالجة والتحقق)
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تخطيط رسومي متكامل للتحقق من قيم الإشارات والتحويل لنتائج موجبة
Slide 26 / 28
Start
Read x
x = x * -1
True (Yes)
x < 0?
False (No)
Do Nothing
Print x
End
ABSOLUTE VALUE LOGIC
يوضح المخطط كيفية فحص المتغير: إذا كان x سالباً (x < 0) يتجه لضرب القيمة بـ -1 لتحويلها لموجبة، وإلا يمرر القيمة مباشرة للطباعة دون تعديل.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تحديات تطبيقية لاختبار قدرتك على صياغة الخوارزميات وخرائط التدفق
Slide 27 / 28
Challenge 1
تحويل درجة الحرارة من مئوية (°C) إلى فهرنهايت (°F).
تحديد المدخلات والمخرجات والمعالجة المناسبة بدقة.
Challenge 2
حساب عدد الثواني في عدد معين من الدقائق والساعات.
كيف نربط الدقائق بالثواني برمجياً؟ صغ المعادلة.
Challenge 3
تحديد حالة نجاح أو رسوب الطالب بناءً على درجته.
استعن بالمعين الشرطي لصياغة القرار المناسب.
Challenge 4
إضافة نفس الرقم إلى نفسه لعدد n من المرات.
التخطيط لاستخدام الحلقات التكرارية والربط الخوارزمي.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تحدي اكتشاف الأخطاء في خرائط التدفق لتفادي مشاكل الذاكرة والتسلسل
Slide 28 / 28
FC 1 (Flawed)
Start
Product = x1 * x2
Read x1, x2
الخطأ: الحساب قبل قراءة المدخلات!
FC 2 (Flawed)
Start
Read n1, n2
Sum = n1 + n2
Print n1
الخطأ: طباعة n1 بدلاً من Sum!
FC 3 (Flawed)
Start
Read n1, n2
Diff = n1 - n2
Print Sum
الخطأ: طباعة متغير غير موجود (Sum)!
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
طباعة مجموع عددين Target: sum
حساب وطباعة متوسط ثلاثة أعداد Target: average (avg)
حساب حجم المكعب ومجموع مساحات أسطحه Target: volume & surface area
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
حساب وطباعة مجموع عددين برمجياً بالتفصيل
Slide 05 / 28
Write a program that prints the sum of two numbers
اكتب برنامجاً لطباعة مجموع عددين.
INPUT (المدخلات) العدد الأول والعدد الثاني
1st number (x1) ➔ Entered by user
2nd number (x2) ➔ Entered by user
OUTPUT (المخرجات) مجموع العددين
The summation (sum)
PROCESSING (المعالجة) معادلة الجمع الحسابية
sum = x1 + x2
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
حساب وطباعة متوسط ثلاثة أعداد مدخلة من قبل المستخدم
Slide 06 / 28
Write a program that prints the average of three numbers
اكتب برنامجاً لحساب وطباعة المتوسط الحسابي لثلاثة أعداد.
INPUT (المدخلات) الثلاثة أعداد التي يدخلها المستخدم
1st (x1), 2nd (x2), 3rd (x3) ➔ Entered by user
OUTPUT (المخرجات) متوسط الأعداد
The average (avg)
PROCESSING (المعالجة) معادلة المتوسط الحسابي
avg = (x1 + x2 + x3) / 3
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
حساب وطباعة حجم ومساحة سطح المكعب برمجياً
Slide 07 / 28
Write a program that prints the volume of a cube and the sum of its surfaces' areas
اكتب برنامجاً لطباعة حجم المكعب ومجموع مساحات أسطحه الستة.
INPUT (المدخلات) طول ضلع المكعب
Side length (L)
OUTPUT (المخرجات) الحجم ومساحة الأسطح
Volume (V) & Surface Area (A)
PROCESSING (المعالجة) المعادلات الهندسية للمكعب
V = L * L * L
A = (L * L) * 6
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
الترابط الفعلي بين التحديد، التحليل، وتصميم الخوارزمية
Slide 08 / 28
تصميم الحل لأي مشكلة يتم عن طريق صياغة وكتابة الخوارزمية (Algorithm).
وهناك طريقتان رئيسيتان وموحدتان لتمثيل وتوضيح الخوارزميات عالمياً: • شبه الرمز / كود شبه برمي (Pseudo code) • المخطط الانسيابي (Flowchart)
Solution Representation Hierarchy
Problem Definition
Problem Analysis
Solution Design
Pseudo Code (شبه الرمز اللغوي)
Flowchart (المخطط الانسيابي البصري)
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
المسار اللانهائي لكل عملية حوسبة من البداية للنهاية
Slide 09 / 28
قراءة وتلقي جميع المدخلات
استقبال البيانات الضرورية وحفظها في الذاكرة باسم متغيرات واضحة.
إجراء ومعالجة العمليات
تنفيذ المعادلات الرياضية والمنطقية اللازمة للحل تدريجياً.
طباعة وعرض النتائج
إخراج وعرض النتيجة المستهدفة النهائية للمستخدم عبر الشاشة.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
المفهوم الأساسي والتاريخي للخوارزميات كخطوات مرتبة لحل أي مشكلة
Slide 10 / 28
"An algorithm is a plan, a set of step-by-step instructions to resolve a problem."
الخوارزمية هي عبارة عن خطة مرتبة، تصف بدقة متسلسلة مجموعة من التعليمات والخطوات المتعاقبة لحل مشكلة معينة بنجاح.
💡 أصل الكلمة التاريخي:
يعود مصطلح خوارزمية (Algorithm) إلى العالم المسلم الشهير أبو جعفر محمد بن موسى الخوارزمي، مؤسس علم الجبر والمساهم الرئيسي في استخدام النظام العشري البرمجي الحديث.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
اللغة التفاهمية الوسيطة بين صرامة الآلة ولغة الإنسان اليومية
Slide 11 / 28
لغة غير رسمية شبيهة بلغة البشر
تعتمد على كلمات إنجليزية مبسطة لصياغة الحل دون التقيد بصرامة النحو البرمجي.
لا تعتبر لغة برمجة فعلية ولا تعمل على الكمبيوتر
هي مجرد خطة تصميم لغوية ورقية، وتعتبر خطوة استباقية قبل فتح محرر الأكواد.
تساعد المبرمج وتضم خطوات واضحة للحل
تحتوي على معلومات كافية تحدد كافة المدخلات والمخرجات والمعادلات الحسابية اللازمة.
سهلة التحويل لأي لغة برمجة حقيقية
يمكن تحويلها في دقائق إلى لغات برمجية شهيرة مثل Java, C++, Pascal, Python.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تطبيق شبه الرمز لجمع وحساب متغيرين وتعيين قيمتهما
Slide 12 / 28
pseudo_code_example1.txt LINE-BY-LINE DESIGN
// Step-by-step logic
Start the program
Read the first number and save it in the variable N1 ➔ INPUT
Read the second number and save it in the variable N2 ➔ INPUT
Add both numbers and save the result in Sum ➔ PROCESSING
Sum = N1 + N2
Print the result (Sum) ➔ OUTPUT
End the program
Concept
تم تفكيك المسألة لجمع عددين برسم ست خطوات لغوية بديهية يسهل على المبرمج برمجتها لاحقاً بأي لغة برمجة.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تصميم كود شبه برمي لحساب المتوسط الرياضي لثلاث قيم ومشاركتها في المتغيرات
Slide 13 / 28
average_calculation.txt
Start the program
Read first number and save in variable (num1) ➔ INPUT
Read second number and save in variable (num2) ➔ INPUT
Read third number and save in variable (num3) ➔ INPUT
Add three numbers and save in (sum) ➔ PROCESSING
sum = num1 + num2 + num3
avg = sum / 3
Print result (avg) ➔ OUTPUT
End program
تلاحظ هنا أن عملية المعالجة انقسمت لخطوتين منفصلتين لتبسيط وحل المشكلة (جمع الأعداد ثم قسمتها على عددها 3).
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تصميم وتفكيك الكود شبه البرمي لحساب معايير المكعب الهندسية
Slide 14 / 28
cube_logic.txt
Start the program
Read length of side and save in variable (L) ➔ INPUT
Calculate volume and save in variable (V) ➔ PROCESSING
V = L * L * L
S = 6 * L * L
Print output1: the variable ( Volume ) ➔ OUTPUT
Print output2: the variable ( Surface ) ➔ OUTPUT
End the program
تتميز هذه المسألة بوجود مخرجين نهائيين منفصلين (V) و (S) تمت طباعتهما وعرضهما بشكل تتابعي في نهاية الكود.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
التمثيل البصري للحل والخطوات البرمجية باستخدام الأشكال الهندسية القياسية
Slide 15 / 28
المخطط الانسيابي هو عبارة عن تمثيل رسومي وبصري شامل للخوارزمية، يهدف لتسهيل مراجعتها وفهمها بلمحة بصر.
يقوم بتوضيح الخوارزمية البرمجية التي تم تطويرها مسبقاً بمزيد من التفاصيل الدقيقة والمخططات الفرعية.
هذه التفاصيل الرسومية تقرب الخوارزمية لتصبح ملاصقة وقريبة جداً لشكل الكود الفعلي المطبق بأي لغة برمجة.
المخططات الانسيابية مستقلة تماماً وموحدة لجميع لغات البرمجة، وتستخدم رموزاً هندسية متعارف عليها عالمياً.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
لكل شكل هندسي دلالة ومعنى قياسي يلتزم به المبرمجون كافة
Slide 16 / 28
Symbol / الشكل الرسومي
Name / اسم الرمز
Description & Usage / الوظيفة والاستخدام بالتفصيل
Start / End
Start / End terminal
يمثل البداية الفعلية أو النهاية الحتمية للبرنامج الإجمالي.
Read / Print
Input / Output
يستخدم لقراءة المدخلات (Read) أو طباعة وعرض المخرجات (Print).
x = 5
Process / Action
يمثل إجراء العمليات الحسابية أو تخصيص وتعيين القيم للمتغيرات.
n1 > 3
Decision / Branching
اتخاذ القرار واختبار الشروط (مثال: نعم/لا) لتفريع مسار البرنامج.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
رسم وتمثيل خوارزمية الإضافة الحسابية لمتغيرين منفصلين بالرموز
Slide 17 / 28
Start
Read n1
Read n2
Sum = n1 + n2
Print Sum
End
Important Notice
يجب أن تحمل المتغيرات (Variables) في الخوارزمية أسماءً مختلفة تماماً لتفادي تداخل البيانات في الذاكرة (مثال: نستخدم n1 و n2).
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
التمثيل المفصل خطوة بخطوة لمسألة حساب المتوسط باستخدام نقاط الوصل
Slide 18 / 28
Start
Read x1
Read x2
Read x3
R = x1 + x2 + x3
Avr = R / 3
1
Connector Points
عندما لا تسع صفحة المخطط الانسيابي كتابته كاملاً، نستخدم نقاط الوصل (Connector Points) الدائرية المرقمة للربط والتدفق اللانهائي للصفحة التالية.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تكملة تدفق المخطط الانسيابي من النقطة المرجعية الأولى
Slide 19 / 28
1
Print Avr
End
Important Rules
• يجب أن تكون كافة المتغيرات المكتوبة في الجانب الأيمن من أي معادلة حسابية تحمل قيماً مخزنة مسبقاً (تمت قراءتها أو حسابها مسبقاً). • كذلك، المتغيرات المراد طباعتها وعرضها (مثل Avr) يجب أن تكون قد حسبت وحملت قيمة حقيقية في مسار المخطط المتقدم.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
كيف نختصر الخطوات في مخطط واحد بدون الحاجة لنقاط الوصل المتعددة؟
Slide 20 / 28
Start
Read x1, x2, x3
Avr = (x1 + x2 + x3) / 3
Print Avr
End
Optimization
يمكن اختصار المخطط بشكل ممتاز عن طريق قراءة المتغيرات الثلاثة في شكل هندسي واحد (Read x1, x2, x3)، وحساب المعادلة الإجمالية مباشرة لتقليص مساحة التدفق.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
بناء التدفق البرمجي المتعدد المخرجات هندسياً للمكعب
Slide 21 / 28
Start
Read L
V = L * L * L
S = 6 * L * L
Print V
Print S
End
يوضح هذا المخطط المتسلسل كيف تتدفق البيانات لإنتاج مساحتين منفصلتين للمخرجات (V) و (S) وطباعتهما تباعاً قبل إنهاء تشغيل البرنامج البرمجي.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
صياغة خوارزمية ذكية لاختبار شروط المرتب وتخصيص الضرائب المناسبة
Slide 22 / 28
Example 4 Logic
قم بحساب الضريبة المطلوبة بناءً على راتب الموظف. إذا كان الراتب أقل من 5,000 ريال، تكون الضريبة 10% من قيمة الراتب؛ بخلاف ذلك تكون الضريبة 8%.
INPUT (المدخلات) Employer's salary (salary)
OUTPUT (المخرجات) The required tax (tax)
PROCESSING (المعالجة الشرطية)
• If salary < 5000 then tax = salary * 0.10
• If salary >= 5000 then tax = salary * 0.08
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تمثيل رسومي وتفريع الشرط الهيكلي بالمعين المخصص للقرارات
Slide 23 / 28
Decision Making Flowchart
Start
Read salary
True
tax = 0.10
salary < 5000?
False
tax = 0.08
Print tax
End
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تطبيق الشروط الرياضية لضمان إنتاج مخرجات موجبة دوماً
Slide 24 / 28
Absolute Value Logic
اكتب خوارزمية تقوم بطباعة القيمة المطلقة لعدد معين x.
INPUT (المدخلات) A number (x)
OUTPUT (المخرجات) The absolute value of x (|x|)
PROCESSING (المعالجة الشرطية)
• If x >= 0 then do nothing
• If x < 0 then x = x * -1
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تمثيل رسومي لعملية ضرب الأعداد السالبة بالثابت -1 لقلب الإشارة
Slide 25 / 28
Start
Read x
True
x = x * -1
x < 0?
False لا تفعل شيئاً
Print x
End
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تطبيق حلقة شرطية تمنع الانهيار الحتمي للبرنامج نتيجة المعطيات المعطوبة
Slide 26 / 28
Mathematical Target
Y = (X - 2) / X
ملاحظة حيوية جداً: إذا كانت قيمة المتغير X تساوي صفراً، فيجب مطالبة المستخدم بإعادة إدخال قيمته مجدداً، وذلك لاستحالة القسمة رياضياً وبرمجياً على صفر.
Pseudo Code:
Input: X
Process: If X == 0, Re-enter new value of X
Y = (X - 2) / X
Output: Y
start
Input X
If X = 0?
yes ➔ حلقة التكرار للوراء
No
Y = (X - 2) / X
Print Y
End
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تحديات صفية تفاعلية لقياس مستوى الفهم وتطبيق المخططات الانسيابية
Slide 27 / 28
1
تحويل درجة الحرارة من مئوية إلى فهرنهايت
Convert: °C ➔ °F
2
حساب عدد الثواني في عدد من الدقائق والساعات
تحديد المدخلات والمخرجات لحساب الزمن الكلي.
3
تحديد ما إذا كان الطالب ناجحاً أم راسباً في المادة
شريطة أن تكون درجة النجاح القياسية المحددة هي 60%.
4
إضافة وتكرار جمع نفس الرقم لنفسه n من المرات
استخدام الحلقات التكرارية والمخططات الشرطية المتتابعة.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تحدي استكشاف العيوب والأخطاء المنطقية في ثلاثة مخططات انسيابية شهيرة
Slide 28 / 28
FC 1 (عيب في المخطط الأول)
Start
➔ Product = x1 * x2
➔ Read x1
➔ Read x2
➔ Print Product
End
Fault: المعالجة والضرب تمت قبل قراءة المتغيرات n1 و n2.
FC 2 (عيب في المخطط الثاني)
Start
➔ Read n1
➔ Read n2
➔ Sum = n1 + n2
➔ Print n1
End
Fault: يقوم المخطط بطباعة المتغير n1 بدلاً من المجموع الفعلي Sum.
FC 3 (عيب في المخطط الثالث)
Start
➔ Read n1
➔ Read n2
➔ Diff = n1 - n2
➔ Print Sum
End
Fault: يقوم بطباعة متغير غير معروف يسمى Sum بدلاً من الفرق الحقيقي Diff.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
Slide 04 / 38
FORM 1
كتابة وحصر جميع عناصر المجموعة مباشرة داخل قوسين مجعدين تفصلهما فواصل.
• A = {2, 4, 6, 8}
• B = {Sun, Mon, Tue, Wed, Thur}
FORM 2
التعبير عن المجموعة عن طريق صياغة صفة أو قاعدة منطقية تحدد وتلزم عناصر المجموعة بالانتماء إليها.
• A = {x | x is an even positive integer < 10}
• A = {x | x ∈ ℕ, x is even, x < 10}
• B = {d | d is a working weekday}
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
مرجع الرموز الرياضية والمجموعات الأساسية في لغة الرياضيات المتقطعة
Slide 05 / 38
ℕ (Natural Numbers) مجموعة الأعداد الطبيعية
أرقام العد العادية غير السالبة، وتبدأ عادة من الصفر فصاعداً: ℕ = {0, 1, 2, 3, ...}
ℤ (All Integers) مجموعة الأعداد الصحيحة
تشمل كافة الأرقام الصحيحة الموجبة والسالبة والصفر: ℤ = {..., -2, -1, 0, 1, 2, ...}
ℤ⁺ / ℤ⁻ (Positive/Negative) الأعداد الصحيحة الموجبة والسالبة
ℤ⁺ تمثل الأعداد الصحيحة الموجبة بدءاً من 1، و ℤ⁻ تمثل الأعداد الصحيحة السالبة.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تكملة هرم الأعداد والمجموعات اللانهائية في الرياضيات المتقطعة
Slide 06 / 38
ℚ (Rational Numbers) مجموعة الأعداد النسبية (الكسور)
كافة الأعداد التي يمكن صياغتها على شكل بسط ومقام صحيحين: ℚ = {p/q | p ∈ ℤ, q ∈ ℤ, q ≠ 0}
ℝ / ℝ⁺ (Real Numbers) مجموعة الأعداد الحقيقية والموجبة منها
تشمل كافة الأعداد على خط الأعداد (الحقيقية، العشرية، والكسور): ℝ represents all decimals.
ℂ (Complex Numbers) مجموعة الأعداد المركبة والتخيلية
تتكون من أجزاء حقيقية وتخيلية: ℂ = {a + ib | a, b ∈ ℝ, i² = -1}
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
المجموعة الفريدة الخالية من العناصر ودلالاتها في مجموعات القوى
Slide 07 / 38
هي عبارة عن مجموعة مميزة فريدة لا تحتوي مطلقاً على أي عناصر، ويُرمز لها بالرمز الإغريقي Ø أو بقوسين مجعدين فارغين {}.
💡 قاعدة هامة جداً: المجموعة الخالية Ø هي مجموعة جزئية (Subset) من أي مجموعة برمجية أو رياضية أخرى دون استثناء.
EXAMPLE
X = {x | x ∈ ℕ and x < 0}
بما أنه لا يوجد أي عدد طبيعي (Natural Number) سالب القيمة (أقل من الصفر)، فإن الشرط والصفة المميزة هنا خاطئة تماماً وعناصر المجموعة تساوي صفراً، لذلك: ➔ X = Ø = {}
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
متى تتساوى مجموعتان رياضيتان وما هو تأثير تكرار كتابة العناصر؟
Slide 08 / 38
يُقال للمجموعتين A و B أنهما متساويتان (A = B) إذا وفقط إذا كانتا تحتويان على نفس العناصر تماماً دون زيادة أو نقصان.
A = B ➔ for every x ∈ A, x ∈ B and for every x ∈ B, x ∈ A
⚠️ قاعدة التكرار والترتيب: التكرار والترتيب داخل المجموعة ليس له أي قيمة رياضية؛ فتكرار كتابة العنصر يعتبر كأنه كُتب مرة واحدة فقط.
EQUALITY DEMONSTRATION
• Let A = {a, b, c, d}
• Let B = {c, a, b, d}
• Let C = {b, c, b, a, a, c, d, b, a, d}
➔ A = B = C
كل المجموعات الثلاث متساوية بالرغم من اختلاف ترتيب وتكرار العناصر.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تحديد فضاء العينة والمجال العام لجميع العناصر المطروحة للنقاش
Slide 09 / 38
المجموعة الشاملة، ويُرمز لها بالرمز اللاتيني الكبير U، هي المجموعة التي تحتوي على كافة العناصر التي يمكن مناقشتها وتداولها في مسألة أو سياق برمجي معين.
💡 ميزة ديناميكية لـ U: تتغير وتختلف المجموعة الشاملة U بشكل كلي وبناءً على طبيعة وسياق المسألة المطروحة.
DYNAMIC U EXAMPLES
Example 1: Calendar Context
إذا كنا نناقش شهور السنة الميلادية، فإن:
➔ U = {January, February, March, ..., December}
Example 2: Pure Numbers Context
إذا كنا نجري حسابات عددية صرفة، فقد تكون المجموعة الشاملة هي:
➔ U = ℝ (The set of all real numbers)
مسودة Student / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
حساب عدد عناصر المجموعة الفردية ودلالة المجموعات اللانهائية
Slide 10 / 38
رتبة أو كاردينالية المجموعة A، ويُرمز لها بالرمز |A|، هي عبارة عن عدد العناصر الفريدة والمستقلة الموجودة داخل هذه المجموعة.
• Let A = {a, b, c, d, e, f} ➔ |A| = 6
• Let B = {a, b, c, ..., z} ➔ |B| = 26
• Let C = {1, 2, 3, ..., 10} ➔ |C| = 10
• Let D = {x | x is registered student in DM} ➔ |D| = ?
QUIZ CHALLENGE
|ℕ| = ? (Infinite)
|ℝ| = ? (Infinite)
|ℤ| = ? (Infinite)
|Ø| = 0
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
التمثيل الرسومي الأقوى للعلاقات الرياضية والتقاطعات والمجموعات الشاملة
Slide 11 / 38
مخططات فين (Venn Diagrams) تُستخدم لتمثيل وعرض العلاقات الرياضية بين المجموعات المختلفة بصرياً ورسومياً لتسهيل فهم وتحديد العمليات المعقدة.
📐 الهيكل الرسومي القياسي: يتم تمثيل المجموعة الشاملة U بمستطيل خارجي كبير، بينما يتم تمثيل المجموعات الأخرى الواقعة ضمن U بدوائر أو أشكال بيضاوية داخل المستطيل.
عادةً ما تُستخدم مخططات فين للتعبير عن وتمثيل العلاقات المعقدة والتقاطعات المتعددة لما يصل إلى 3 مجموعات مختلفة في فضاء العينة بوضوح.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تطبيق عملي: تمثيل مجموعة حروف العلة الإنجليزية V داخل الفضاء الكلي U
Slide 12 / 38
U = مجموعة الحروف الإنجليزية الـ 26 كاملة.
V = مجموعة حروف العلة الخمسة {a, e, i, o, u}.
Universal Set U
V (Vowels)
a e i o u
b, c, d, f, g, h, j, k, ...
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
متى تكون مجموعة ما واقعة بالكامل ومحتواة في فضاء مجموعة أخرى؟
Slide 13 / 38
تُعتبر المجموعة A مجموعة جزئية (Subset) من المجموعة B، ويُكتب ذلك رمزياً A ⊆ B، إذا وفقط إذا كان كل عنصر موجود في A هو أيضاً عنصر موجود في B.
B is a superset of A, denoted B ⊇ A
SUBSET EVALUATION
• Let A = {a, b, c, d, e, f}
• Let B = {a, b, c, ..., z}
• Let C = {1, 2, 3, ..., 10}
Result check:
➔ A ⊆ B is True
➔ A ⊆ C is False
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
كيف ترتبط المجموعات العددية القياسية ببعضها البعض بعلاقة الاحتواء؟
Slide 14 / 38
EXERCISE TASK
صف العلاقات والارتباطات بين المجموعات العددية التالية باستخدام رمز الاحتواء الجزئي ⊆:
ℝ, ℂ, ℤ, ℤ⁺, ℤ⁻, ℕ
SOLUTION
• ℤ⁺ ⊆ ℕ ⊆ ℤ ⊆ ℝ ⊆ ℂ
• الأعداد الصحيحة السالبة محتواة بالكامل أيضاً:
• ℤ⁻ ⊆ ℤ
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تمثيل رسومي بصري دقيق لهرم الأعداد واحتواء المجموعات الجزئية المتداخلة
Slide 15 / 38
ℂ
ℝ
ℤ
ℕ
ℤ⁺
ℤ⁻
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
الفرق الجوهري بين الاحتواء العادي والاحتواء الفعلي الصارم
Slide 16 / 38
لأي مجموعة عشوائية X، نلتزم بالقاعدتين التاليتين دوماً:
• Ø ⊆ X (المجموعة الخالية محتواة في كل مجموعة)
• X ⊆ X (كل مجموعة محتواة في نفسها)
تتساوى مجموعتان (A = B) إذا وفقط إذا كان الاحتواء جزئياً ومتبادلاً بينهما:
A = B ⟺ A ⊆ B and B ⊆ A
PROPER SUBSETS
تُعتبر المجموعة A مجموعة جزئية فعلية (Proper Subset) من المجموعة B، ويُكتب ذلك رمزياً A ⊂ B، إذا وفقط إذا كان: A ⊆ B and A ≠ B ويعني ذلك بالضرورة وجود عنصر واحد على الأقل في المجموعة B لا ينتمي للمجموعة الجزئية A.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
كيف ننتج ونحسب المجموعة التي تضم كافة التشكيلات والخيارات الممكنة للمجموعات؟
Slide 17 / 38
مجموعة القوى للمجموعة X، ويُرمز لها بالرمز P(X)، هي عبارة عن المجموعة التي تضم كافة المجموعات الجزئية الممكنة للمجموعة X على الإطلاق بما فيها المجموعة الخالية والمجموعة نفسها.
🔢 قانون حساب عدد العناصر: |P(X)| = 2^|X| (كاردينالية مجموعة القوى)
P(X) CALCULATION EXAMPLE
• P(A) = { { }, {a}, {b}, {c}, {a, b}, {a, c}, {b, c}, {a, b, c} }
• Total elements count in P(A):
• |P(A)| = 2^|A| = 2³ = 8 elements
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تطبيق متقدم ومحير على حساب فضاء مجموعة القوى للأكواد الرياضية الصفرية
Slide 18 / 38
وفقاً لقواعد جبر المجموعات المتقطعة، فإن المجموعة الخالية ونفسها هما دائماً أعضاء أساسيان في أي مجموعة قوى دون نقاش.
🔢 كاردينالية مجموعة الخلية: بما أن |Ø| = 0، فإن كاردينالية مجموعة قواها تساوي: 2⁰ = 1
EVALUATION METRICS
1. Power set of empty set (Ø):
P(Ø) = { Ø }
عدد العناصر داخلها عنصر واحد فقط وهو المجموعة الخالية نفسها.
2. Power set of {Ø}:
P({Ø}) = { Ø, {Ø} } = { {}, {{}} }
عدد العناصر داخلها عنصرين.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
بناء وإنتاج الأزواج المرتبة لربط بيانات المجموعات المتنوعة
Slide 19 / 38
حاصل الضرب الديكارتي لمجموعتين A و B، ويُرمز له بالرمز A × B، هو مجموعة تضم كافة الأزواج المرتبة (a, b) بحيث ينتمي المسقط الأول a للمجموعة الأولى A، وينتمي المسقط الثاني b للمجموعة الثانية B.
A × B = {(a, b) | a ∈ A and b ∈ B}
IMPORTANT LAWS
الترتيب داخل الزوج هام للغاية: (a, b) ≠ (b, a) ما لم يكن العنصران متساويين تماماً a = b.
حاصل الضرب الديكارتي ليس عملية إبدالية: A × B ≠ B × A ما لم تكن إحدى المجموعات خالية أو متطابقة.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
كيف ننتج ونحسب عدد عناصر حاصل الضرب الديكارتي رياضياً وسردياً؟
Slide 20 / 38
PRACTICAL CALCULATION
Let X = {a, b} and Y = {1, 2, 3}
• X × Y = { (a, 1), (a, 2), (a, 3), (b, 1), (b, 2), (b, 3) }
• Y × X = { (1, a), (2, a), (3, a), (1, b), (2, b), (3, b) }
🔢 كاردينالية حاصل الضرب:
• |A × B| = |A| × |B|
• في المثال السابق:
• |X × Y| = 2 × 3 = 6 elements
🚨 المجموعة الخالية في الضرب: إذا كانت إحدى المجموعتين المضروبتين خالية (Ø)، فإن نتيجة حاصل الضرب الديكارتي تساوي خالية أيضاً: A × Ø = Ø
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
مفهوم حاصل الضرب لثلاث مجموعات أو أكثر وصيغة الصفة النونية (n-tuples)
Slide 21 / 38
يمكن تعميم حاصل الضرب الديكارتي ليشمل ضرب ثلاث مجموعات A, B, C أو أكثر لإنتاج ما يسمى الأزواج المرتبة النونية (n-tuples).
A × B × C = {(a, b, c) | a ∈ A, b ∈ B and c ∈ C}
NOTATIONS & STACKS
• تسمى المجموعة الثلاثية (a, b, c) زوجاً مرتباً ثلاثياً (ordered tuple).
• عملية التجميع والضرب غير إبدالية من ناحية الهيكل:
(A × B) × C ≠ A × B × C
• التعبير عن ضرب مجموعة في نفسها n من المرات:
Aⁿ = {(a₁, a₂, ..., a_n) | a_i ∈ A, i = 1, 2, ..., n}
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تحديد واستخلاص العناصر المشتركة في المجموعات وتعريف المجموعات المنفصلة
Slide 22 / 38
تقاطع مجموعتين A و B، ويُرمز له بالرمز A ∩ B، هو مجموعة جديدة تضم كافة العناصر المشتركة التي تنتمي للمجموعة A واللجموعة B في نفس الوقت.
A ∩ B = {x | x ∈ A and x ∈ B}
DISJOINT SETS
تُعتبر المجموعتان A و B مجموعتين منفصلتين (Disjoint) تماماً إذا كانت لا توجد بينهما أي عناصر مشتركة على الإطلاق، أي أن نتيجة تقاطعهما تساوي المجموعة الخالية: A ∩ B = Ø
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
محاكاة بصرية لمخطط فين لتقاطع مجموعتين وتحديد منطقة الاشتراك الحمراء
Slide 23 / 38
Universal Set U
A
B
A ∩ B
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
أقصى تمثيل رسومي لمخططات فين وتعيين منطقة التقاطع الثلاثية المتطابقة
Slide 24 / 38
Universal Set U
A
B
C
A ∩ B ∩ C
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
دمج كافة عناصر المجموعات معاً، وحساب العناصر الخارجة عن نطاق المجموعة
Slide 25 / 38
UNION (الاتحاد)
اتحاد مجموعتين A و B هو مجموعة جديدة تضم كافة العناصر الموجودة في A أو B بالكامل دون استبعاد أو حصر مسبق.
A ∪ B = {x | x ∈ A or x ∈ B}
COMPLEMENT (المتممة)
متممة المجموعة A هي مجموعة جديدة تضم كافة عناصر المجموعة الشاملة U التي لا تنتمي مطلقاً للمجموعة A.
Ā = {x | x ∈ U and x ∉ A}
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تمثيل كامل لعناصر المجموعتين وتظليل كافة المساحات المشتركة وغير المشتركة
Slide 26 / 38
Universal Set U
A
B
A ∪ B
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تمثيل رسومي بصري يبين تظليل كافة المساحة الخارجية المستقلة عن المجموعة A
Slide 27 / 38
Universal Set U
A
Ā shaded region
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
طرح المجموعات برمجياً وتحديد العناصر المتبقية حصراً للمجموعة المطروحة
Slide 28 / 38
الفرق بين المجموعتين A و B، ويُرمز له بالرمز A - B، هو عبارة عن مجموعة جديدة تحتوي على كافة عناصر المجموعة A التي لا تنتمي مطلقاً للمجموعة B.
A - B = {x | x ∈ A and x ∉ B}
DIFFERENCE EVALUATION
• ℤ - ℤ⁺ = ℤ⁻ ∪ {0}
• طرد الأرقام من فضاء الطبيعية:
• ℕ - {10, 11, 12, ...} = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}
• المكمل الشامل للمجموعة:
• U - A = Ā
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تمثيل رسومي يوضح بقاء هلال المجموعة المطروحة مظللاً بالكامل عدا منطقة الاشتراك
Slide 29 / 38
Universal Set U
A
B
A ∩ B
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
العناصر الحصرية في المجموعات مع استبعاد وتصفية منطقة التقاطع تماماً
Slide 30 / 38
الفرق المتماثل لمجموعتين A و B، ويُرمز له بالرمز A ⊕ B أو A Δ B، هو مجموعة جديدة تحتوي على العناصر التي تنتمي للمجموعة A أو المجموعة B ولكن لا تنتمي مطلقاً لتقاطعهما المشترك.
🔢 الصياغة الجبرية للفرق المتماثل: A ⊕ B = (A - B) ∪ (B - A) = (A ∪ B) - (A ∩ B)
A
B
Unshaded Intersection
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تطبيق عملي لحساب التقاطع، الاتحاد، والفرق الفردي والمتماثل بالأرقام الفعلية
Slide 31 / 38
TASK & CALCULATION
Let A = {2, 3, 4, 5, 6, 7} and B = {1, 2, 4, 7, 8}
• A ∩ B = {2, 4, 7}
• A ∪ B = {1, 2, 3, 4, 5, 6, 7, 8}
• A - B = {3, 5, 6}
• B - A = {1, 8}
• A ⊕ B = {1, 3, 5, 6, 8}
A
3, 5
6
B
1
8
2, 4 7
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تطبيق معقد لحساب متممة ومقاصد المجموعات من فضاء الحروف {a..j}
Slide 32 / 38
PROBLEM PARAMETERS
بفرض أن فضاء المجموعة الشاملة U والمجموعات الفرعية A, B, C معرفة كالتالي:
• U = {a, b, c, d, e, f, g, h, i, j}
• A = {a, b, c, d, e, f, g}
• B = {b, d, f, i, j}
• C = {a, c, f, j}
SOLUTIONS
• A ∪ C = {a, b, c, d, e, f, g, j}
• A ∩ B = {b, d, f}
• A ∩ C = {a, c, f}
• Ā = {h, i, j}
• A - B = {a, c, e, g}
• Ā - B = {h}
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
مقارنة واختبار التساوي بين عناصر المجموعات ومجموعات القوى الجزئية
Slide 33 / 38
💡 CHALLENGE PROBLEM:
• Let A = { Ø, {a}, {b}, {a, b} }
• Let B = { X | X ⊆ {a, b} }
Question: Is A = B?
هل المجموعة A المتعددة العناصر مطابقة وتساوي المجموعة B من ناحية القيمة الرياضية؟
PROOF SOLUTION
1. Let's find elements of B by writing the subsets of {a, b}:
➔ B = { Ø, {a}, {b}, {a, b} }
2. Comparing elements of A and B:
➔ Yes, A = B is True!
بما أن عناصر B المستخرجة تطابق تماماً عناصر A، فإن المجموعتين متساويتان.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
مبدأ الشمول والاستبعاد (Inclusion-Exclusion Principle) لمنع تكرار العناصر
Slide 34 / 38
عند حساب عدد عناصر اتحاد مجموعتين، لا يمكننا ببساطة جمع عدد عناصرهما بشكل مباشر، بل يجب طرح عناصر التقاطع المشتركة مرة واحدة لمنع ازدواج تكرار العناصر المشتركة في الذاكرة.
|A ∪ B| = |A| + |B| - |A ∩ B|
A
B
Overlap Subtracted
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
القوانين الأساسية لتبسيط المعادلات والتعابير المنطقية للمجموعات
Slide 35 / 38
Mathematical Law / القانون الرياضي
Law Name & Logic / اسم ومقصد القانون
A ∪ Ø = A | A ∩ U = A
قوانين الهوية (Identity Laws): متممة الاتحاد مع الخالية أو تقاطع الشاملة تحافظ على نفس قيمة المجموعة الأصلية.
A ∪ U = U | A ∩ Ø = Ø
قوانين السيطرة والعدم (Domination Laws): المجموعة الشاملة تسيطر بالاتحاد، بينما الخالية Ø تلتهم وتسيطر بالتقاطع تماماً.
A ∪ A = A | A ∩ A = A
قوانين التكرار الذاتي (Idempotent Laws): اتحاد أو تقاطع المجموعة مع نفسها ينتج نفس المجموعة مجدداً.
Ā̄ = A
متممة المتممة (Double Complement): نفي النفي إثبات، متممة متممة المجموعة تعيد المجموعة لأصلها.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
قوانين التوزيع، التجميع، وقواعد دي مورغان (De Morgan's Laws) لحل الشيفرات البرمجية
Slide 36 / 38
Mathematical Law / القانون الرياضي
Law Name & Logic / اسم ومقصد القانون
A ∪ B = B ∪ A | A ∩ B = B ∩ A
قوانين الإبدال (Commutative Laws): إبدال المجموعات في الاتحاد أو التقاطع لا يغير النتائج.
(A ∪ B) ∪ C = A ∪ (B ∪ C)
(A ∩ B) ∩ C = A ∩ (B ∩ C)
قوانين التجميع (Associative Laws): دمج وترتيب الأقواس للعمليات المتشابهة لا يغير قيمة النتيجة الكلية.
A ∩ (B ∪ C) = (A ∩ B) ∪ (A ∩ C)
A ∪ (B ∩ C) = (A ∪ B) ∩ (A ∪ C)
قوانين التوزيع (Distributive Laws): توزيع التقاطعات على الاتحادات وبالعكس تماماً كضرب الأعداد الجبرية.
overline(A ∪ B) = Ā ∩ B̄
overline(A ∩ B) = Ā ∪ B̄
قوانين دي مورغان (DeMorgan's Laws): نفي المجموعات المركبة يقلب الاتحادات لتقاطعات ونفي عناصرها.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
استكمال قوانين الامتصاص وقواعد المتممات مع تمرين تبسيط تطبيقي
Slide 37 / 38
Mathematical Law / القانون
Law Name & Logic / مقصد القانون
A ∪ (A ∩ B) = A
A ∩ (A ∪ B) = A
قوانين الامتصاص (Absorption Laws): يمتص المتغير الفردي التكرارات الداخلية لإنتاج قيمة المجموعة الفردية.
A ∪ Ā = U
A ∩ Ā = Ø
قوانين المتممة والاحتواء (Complement Laws): الاتحاد مع المكمل يملأ الفضاء الكلي U، بينما تقاطع المجموعة مع متممتها مستحيل ويساوي Ø.
SIMPLIFICATION EXERCISE
// Step-by-step simplification:
1. = (A ∪ A) ∪ B ➔ Associative Law
2. = A ∪ B ➔ Idempotent Law (A ∪ A = A)
➔ Final Simplified: A ∪ B
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تصنيف المجموعات الرياضية بناءً على إمكانية حصر قيمها وعد عناصرها الفعلي
Slide 38 / 38
FINITE SETS (المجموعات المنتهية)
يُقال للمجموعة S أنها مجموعة منتهية (Finite) إذا كانت تحتوي على عدد محدد ومعلوم n من العناصر المستقلة التي يسهل عدها وحصرها بالكامل.
• A = {x | x ∈ ℕ and x < 10} ➔ |A| = 10
• B = {a, b, c, ..., z} ➔ |B| = 26
INFINITE SETS (المجموعات غير المنتهية)
يُقال للمجموعة S أنها مجموعة غير منتهية (Infinite) إذا كانت لا يمكن حصر عناصرها برقم n محدد، وتستمر المجموعات بالامتداد اللانهائي.
• O = {1, 3, 5, ...} (All odd numbers)
• E = {2, 4, 6, ...} (All even numbers)
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
كيف غير الإنترنت والشبكات حجم البيانات المتداولة بالثانية؟
Slide 04 / 35
بدأت شبكات التواصل الاجتماعي (مثل Facebook, Twitter, LinkedIn) في التقاط وتسجيل تلال هائلة من البيانات الشخصية والتفاعلية للناس مثل: منشورات الحساب، التغريدات، الصور الشخصية، والملفات المرئية.
➔ All of the above constitutes data
تعتمد محركات البحث العالمية الكبرى (مثل Google, Bing, Yahoo) على بناء وتجميع مخازن ومستودعات ضخمة وفائقة من صفحات الويب المؤرشفة لتسهيل وتحسين عمليات البحث الفوري السريعة.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
ظهور التقنيات غير العادية لتخزين البيانات غير الهيكلية السحابية
Slide 05 / 35
تعتمد التقنيات الحديثة لمعالجة البيانات الضخمة على استخدام مجموعات وعناقيد ضخمة من الحواسب الموزعة لتخزين ومعالجة البيانات المتنامية بسرعة خيالية عبر الويب.
ظهرت فئة أنظمة NoSQL لتقديم بدائل مرنة وسريعة لنظم إدارة قواعد البيانات العلائقية التقليدية، لتخزين ومعالجة الوثائق والجداول المرنة وغير الهيكلية بذكاء.
تتواجد وتخزن كميات خيالية من البيانات المعاصرة اليوم داخل ما يسمى "السحابة" (The Cloud)، والتي تعني في حقيقتها مراكز بيانات عملاقة ومؤمنة تضم آلاف الأجهزة المترابطة.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
المصطلحات العلمية الدقيقة لبناء فهم نظري راسخ لقواعد البيانات
Slide 06 / 35
قاعدة البيانات
هي عبارة عن تجمع أو حصيلة مرتبطة منطقياً من البيانات ذات الصلة (Related Data) والمترابطة بشكل وثيق.
البيانات والمعطيات
هي الحقائق والوقائع والرموز المعلومة التي يمكن رصدها وتسجيلها وحفظها بأمان، وتحمل معنىً برمجياً ضمنياً (Implicit Meaning).
العالم المصغر المعني
يمثل جزءاً محدداً من الواقع الحقيقي الذي تدور حوله البيانات المحفوظة، وتسمى علمياً بكون البحث (Universe of Discourse) مثل درجات وسجلات الطلاب في جامعة.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
الفرق الجوهري بين محرك البرمجيات والمنظومة التقنية المتكاملة للتطبيق
Slide 07 / 35
DBMS Software
هو عبارة عن حزمة أو محرك برمجيات مدمج ومتطور للغاية، يهدف لتسهيل وتسريع عمليات إنشاء وتخزين وتعديل وصيانة قاعدة بيانات محوسبة متكاملة.
Database System (المنظومة الكاملة)
هو المصطلح الأعم والأشمل، ويعبر عن دمج برمجيات الـ DBMS مع البيانات المخزنة نفسها، وفي بعض الأحيان يتضمن التطبيقات والواجهات البرمجية المستخدمة للوصول للبيانات.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
كيف تقود محركات البيانات كبرى قطاعات المال والأعمال والتعليم والصحة؟
Slide 08 / 35
1. Businesses (الأعمال والمصارف)
الحسابات البنكية، عقود التأمين، سلاسل التجزئة، النقل، التصنيع والرعاية الطبية.
2. Service Industries (الخدمات)
القطاعات المالية، البورصة، العقارات، القضاء، التجارة الإلكترونية، والمشاريع الصغيرة.
3. Education & Medicine (التعليم والطب)
سجلات الطلاب الأكاديمية، إدارة المحتوى، تداول الأبحاث الطبية والخرائط الجينية المعقدة.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
مخطط رسومي يوضح مسار وسريان طلبات الاستعلام بين المستخدم النهائي والذاكرة الصلبة
Slide 09 / 35
Simplified Environment Pipeline (Figure 1.1)
Users / Programmers المستخدمون
Queries / App Programs الاستعلامات والبرمجيات
DBMS Software مترجم استعلام ومعالج بيانات
Meta-Data (Catalog) كتالوج التعاريف
Stored Database البيانات الحقيقية
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
ما هي الأدوار والمراحل التقنية المتكاملة التي يقوم بها محرك قاعدة البيانات؟
Slide 10 / 35
01. Define
تحديد وبناء هيكلية قاعدة البيانات وتعيين أنواع حقول البيانات، وتحديد هياكل الجداول والقيود المفروضة عليها (Constraints).
02. Construct
بناء وتعبئة وتخزين البيانات الأولية الحقيقية بشكل آمن وتجهيزها داخل وحدات التخزين الثانوية الصلبة.
03. Manipulate
تعديل وتحديث وصيانة البيانات المخرجة، وتسهيل استرجاعها بكتابة استعلامات فاعلة (Querying) وتعديلها.
04. Process & Share
تمكين مشاركة ومعالجة الاستعلامات لعدد هائل من المستخدمين المتزامنون بكفاءة تامة دون المساس بسلامتها.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
كيف تتواصل برمجيات المستخدم النهائية مع محرك قاعدة البيانات؟
Slide 11 / 35
Basic Operations
Constraints & Evolution
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
ما هي التدابير الإضافية والمساندة التي يقدمها محرك البيانات لتأمين وصيانة الكود؟
Slide 12 / 35
1. Security & Protection Measures
تأمين وحماية البيانات بفرض مستويات حماية صارمة لمنع الاختراق والولوج غير المصرح به كلياً.
2. "Active" Processing on Data
القدرة على اتخاذ إجراءات وقرارات داخلية ومباشرة كالمشغلات (Triggers) بناءً على التغير في محتوى السجلات.
3. Presentation & Visualization of Data
تسهيل سبل عرض وتمثيل وتصوير البيانات المحفوظة بطرق مرئية ورسومية واضحة ومبسطة.
4. System & Software Maintenance
صيانة وترميم قواعد البيانات وكافة البرمجيات والأنظمة المصاحبة لها طوال فترة تشغيل دورة حياة التطبيق المالي.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
دراسة وتفكيك البيئة الجامعية كنموذج تطبيقي لبناء الكيانات
Slide 13 / 35
Mini-world Context
في هذا المثال التطبيقي البارز، نقوم برصد وتغطية جزء محدد من الواقع وهو البيئة التعليمية والأكاديمية لجامعة (UNIVERSITY environment).
1. STUDENTs كيان يحتوي بيانات الطلاب
2. COURSEs بيانات المقررات الأكاديمية
3. SECTIONs بيانات الشعب والفصول التدريسية
4. DEPARTMENTs & INSTRUCTORs بيانات الأقسام وأعضاء هيئة التدريس
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تمثيل الروابط التي تربط الكيانات ببعضها البعض في بيئة الجامعة
Slide 14 / 35
1. SECTIONs are of specific COURSEs
كل شعبة دراسية يجب أن ترتبط بمقرر دراسي أكاديمي معين.
2. STUDENTs take SECTIONs
يسجل الطلاب في شعب معينة لحضور المحاضرات واستلام الدرجات.
3. COURSEs have prerequisite COURSEs
توجد مقررات جامعية تتطلب متطلبات سابقة واجتياز مواد أخرى أولاً.
4. INSTRUCTORs teach SECTIONs
يتولى المحاضرون تدريس وإدارة شعب أكاديمية مخصصة.
5. COURSEs are offered by DEPARTMENTs
تطرح المقررات الجامعية تحت إشراف الأقسام الأكاديمية المختلفة.
6. STUDENTs major in DEPARTMENTs
يتخصص الطلاب في أقسام معينة للدراسة والحصول على الدرجة العلمية.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
استعراض الجداول وتناسق الأعمدة والصفوف المخزنة فعلياً في الذاكرة
Slide 15 / 35
COURSE TABLE (جدول المقررات)
| Course_name | Course_number | Credit_hours | Department |
|---|---|---|---|
| Intro to CS | CS1310 | 4 | CS |
| Data Structures | CS3320 | 4 | CS |
| Database | CS3380 | 3 | CS |
SECTION TABLE (جدول الشعب)
| Section_id | Course_number | Semester | Instructor |
|---|---|---|---|
| 85 | MATH2410 | Fall | King |
| 92 | CS1310 | Fall | Anderson |
| 112 | MATH2410 | Fall | Chang |
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
ما الذي يجعل قواعد البيانات متفوقة تماماً مقارنة بالنظم الملفية التقليدية؟
Slide 16 / 35
Characteristic 1
تحتفظ قاعدة البيانات بتعريفها وصياغتها وتراكيب جودتها ومكونات حقولها داخلياً في ملفات مميزة خاصة تسمى كتالوج الـ DBMS (DBMS catalog).
• تسمى هذه البيانات والتعريفات التقنية لملفات الجداول بالبيانات الوصفية Meta-Data.
• تتيح هذه الطبيعة الذاتية لمحرك الـ DBMS إمكانية العمل مع مختلف التطبيقات البرمجية دون الحاجة لإعادة التعديل والتكويد.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
مفهوم استقلالية البيانات وكيف يحمي كود المصدر من تبعات تعديل مساحات التخزين
Slide 17 / 35
Characteristic 2
يعرف هذا المفهوم علمياً باسم استقلالية البرنامج والبيانات (Program-data independence).
• يمنح هذا المبدأ الفريد إمكانية تعديل وتحديث تراكيب وهياكل البيانات وتغيير تنظيم حفظها الفيزيائي دون إجبار المبرمج على إجراء أي تعديلات مقابلة في كود برمجيات الوصول للبيانات.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
استعراض جداول الكتالوج التي تحتفظ ببيانات الكيانات والصفوف والحقول (Figure 1.3)
Slide 18 / 35
RELATIONS CATALOG TABLE
| Relation_name | No_of_columns |
|---|---|
| STUDENT | 4 |
| COURSE | 4 |
| SECTION | 5 |
COLUMNS CATALOG TABLE
| Column_name | Data_type | Belongs_to_relation |
|---|---|---|
| Name | Character (30) | STUDENT |
| Student_number | Character (4) | STUDENT |
| Course_name | Character (10) | COURSE |
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
مفهوم إخفاء التفاصيل التخزينية المعقدة ودعم النظرات المختلفة للبيانات
Slide 19 / 35
Data Abstraction (تجريد البيانات)
تعتمد قواعد البيانات على استخدام نموذج البيانات (Data Model) كأداة قوية لإخفاء تفاصيل التخزين والترتيب الفيزيائية المعقدة عن واجهات المطورين والمستخدمين، وعرض رؤية تخيلية مبسطة (Conceptual View).
Multiple Views (تعدد واجهات العرض)
تمنح قواعد البيانات القدرة على تقديم واجهات ونظرات برمجية متعددة ومختلفة لكل مستخدم، بحيث لا تظهر للمستخدم سوى البيانات والصفوف التي تقع في دائرة اهتمامه وعمله الفعلي.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
كيف يضمن نظام قاعدة البيانات سلامة المعاملات لآلاف المستخدمين في نفس الثانية؟
Slide 20 / 35
Concurrency & Recovery
• التحكم في التزامن (Concurrency Control): يضمن محرك الـ DBMS تنفيذ المعاملات بشكل سليم وخلوها من الأخطاء والتعارض حتى مع تداخل آلاف الطلبات المتزامنة.
• نظام الاسترجاع (Recovery Subsystem): يضمن تدوين وحفظ نتائج المعاملات المكتملة بأمان تام على الأقراص الصلبة دون ضياعها نتيجة انقطاع الكهرباء فجأة.
High Performance Transactions
يمثل الجزء والأداء الأكثر حيوية في معالجة تطبيقات قواعد البيانات، حيث يسمح النظام بتشغيل ومعالجة مئات المعاملات البرمجية المعقدة في الثانية الواحدة بكفاءة فائقة (مثل عمليات حجز تذاكر الطيران والدفع الإلكتروني المباشر).
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
الفرق بين اللاعبين على مسرح البيانات والجنود العاملين خلف الكواليس
Slide 21 / 35
Actors on the Scene (المتفاعلون المباشرون)
يمثلون الفئات التي تتفاعل مباشرة مع محتوى ومحرك قاعدة البيانات بشكل يومي، ويقومون بتصميم وتطوير وصيانة وبناء هيكلية الجداول والتطبيقات المستهدفة.
Workers Behind the Scene (العاملون بالخلف)
يمثلون الجنود المجهولين الذين يصبون تركيزهم على تصميم وبناء وتحديث محرك الـ DBMS نفسه وتطوير الأدوات البرمجية المساندة، بالإضافة إلى مشغلي الأجهزة والخوادم الضخمة.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
الأدوار والمسؤوليات الفنية لمدير النظام ومصممي الهياكل والجداول
Slide 22 / 35
• مسؤول بالكامل عن منح التراخيص وصلاحيات الدخول والمراقبة الأمنية للنظام.
• يتولى مسؤولية اقتناء وتجهيز الموارد المادية (Hardware) والبرمجيات المساندة.
• مراقبة مستوى أداء واستقرار النظام وحماية البيانات من الانهيار والضياع.
• مسؤول عن تحديد وتصميم محتوى قاعدة البيانات وهياكل الجداول والقيود المفروضة عليها.
• يتواصل مباشرة مع المستخدم النهائي لفهم متطلبات واحتياجات العمل البرمجية بدقة وصياغتها برمجياً.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تصنيف فئات الناس والأنظمة التي تستهلك وتسترجع البيانات بشكل متكرر
Slide 23 / 35
Casual Users (المستخدم العارض)
يمثل الفئة التي تلج لقاعدة البيانات بشكل متقطع وعارض عند الحاجة فقط، ويديرون استعلامات متغيرة ومختلفة في كل مرة حسب طبيعة مهامهم المؤقتة.
Naïve / Parametric Users (المستخدم الروتيني)
الفئة الكبرى والمهيمنة على مستخدمي النظام، ينفذون معاملات برمجية ثابتة ومجهزة مسبقاً (Canned Transactions).
• أمثلة: موظفو البنوك، مكاتب الحجوزات، ومستخدمو تطبيقات شبكات التواصل الاجتماعي ومواقع الويب المتنوعة.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تصنيف الخبراء الفنيين والذين يديرون قواعد بيانات شخصية ومستقلة كلياً
Slide 24 / 35
Sophisticated Users (المستخدمون المتمرسون)
يضم فئات ذوي مهارات فنية عميقة وخبرة عالية في فهم قدرات وسعة قاعدة البيانات مثل: المحللين، العلماء، والمهندسين.
• يستخدمون حزم وأدوات برمجية متطورة للغاية لإنجاز مهام بحثية وتحليلية دقيقة تتصل مباشرة بالنظام.
Stand-alone Users (المستخدم المستقل)
الفئة التي تنشئ وتدير قواعد بيانات شخصية ومستقلة بالكامل للوفاء بمهامهم الشخصية الخاصة ومحاسبتهم الفردية.
• مثال: استخدام برمجيات مخصصة لإدارة وحفظ ألبومات الصور والملفات الصوتية والملفات التفاعلية العائلية.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
الفئات الفنية المسؤولة عن نقل متطلبات العميل وترجمتها إلى كود برمجي فاعل
Slide 25 / 35
محللو نظم البيانات
يتولون مسؤولية فهم ودراسة متطلبات واحتياجات المستخدمين والعملاء (سواء الروتينية أو المتمرسة) وصياغة المواصفات وهيكلة شكل التطبيقات المقترحة بدقة تامة للبدء في بنائها.
مطورو مبرمجيات التطبيقات
يتولون مهام تنفيذ وكتابة وتطوير المواصفات التي صاغها محللو النظم، وتجربة وفحص كود التطبيق الفعلي واكتشاف وتصحيح الأخطاء (Debug) قبل التثبيت النهائي والنشر التجاري.
محللو الأعمال والمشاريع
تتزايد الحاجة إليهم اليوم لفحص وتحليل كميات البيانات الضخمة (Big Data) بهدف التوجيه وصناعة قرارات تخطيطية تسويقية وتجارية ناجحة للمؤسسات والشركات التجارية الكبرى.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
من هم صناع ومصممو محركات قواعد البيانات وأدوات النمذجة المتقدمة؟
Slide 26 / 35
مصممو ومنفذو المحركات
يتولون تصميم وهندسة محركات الـ DBMS المدمجة وتجربة وفحص المكونات الداخلية البرمجية مثل الكومبايلر، واجهات التخزين، المفسرات، ووحدات الاتصال التفاعلية مع نظام التشغيل الفعلي.
مطورو الأدوات المساندة
يصممون برمجيات مساندة وثانوية هامة تسهل عملية نمذجة وتصميم وبناء ومراقبة أداء واستقرار قاعدة البيانات، كأدوات فحص سلامة البيانات وتوليد السجلات والبيانات التخيلية للتجربة.
مشغلو وعاملو الصيانة والعتاد
يتولون مهام المراقبة والتشغيل اليومي الفعلي لخوادم وأجهزة وشبكات بيئة قواعد البيانات، وإجراء عمليات الصيانة اللازمة للأجهزة والتأكد من عدم تعطل الخدمات نهائياً.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
كيف نقضي على تكرار البيانات ونمنع الوصول غير المصرح به بكفاءة؟
Slide 27 / 35
Redundancy Control (التحكم في التكرار)
يقضي نهج قواعد البيانات على مشكلة تشتت وتكرار تخزين البيانات الفردية غير الضروري في ملفات مختلفة، مما يساهم بشكل فوري في توفير مساحات تخزين ضخمة وتقليص نفقات وجهود الصيانة.
Access Control & Sharing (مشاركة وحماية البيانات)
• تتيح قواعد البيانات مشاركة البيانات الحقيقية والملفات بمرونة فائقة بين كافة المستخدمين المسموح لهم بالوصول.
• منع وتقييد كافة محاولات الوصول غير المصرح بها بذكاء فني، والسماح للمسؤولين فقط (DBA) بالدخول الشامل للنظام.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
كيف تحافظ جافا وقواعد البيانات على الكائنات البرمجية وما دور الفهارس في الأداء؟
Slide 28 / 35
Object Persistence (استدامة الكائنات)
توفر قواعد البيانات كائنية التوجه (OODBMS) ميزة حفظ الكائنات البرمجية والبيانات المعقدة بشكل مستديم (Persistent) على الأقراص، بحيث تعود للوجود والتشغيل الفوري وتظل محفوظة حتى بعد إغلاق وإنهاء تشغيل البرنامج البرمجي.
Efficient Querying (الفهارس لتسريع القراءة)
تعتمد قواعد البيانات على إنشاء تراكيب وهياكل تخزين فائقة الفاعلية تسمى الفهارس (Indexes)، وتلعب دوراً مشابهاً لفهرس الكتاب لتسريع استرجاع وقراءة السجلات وتسهيل معالجة الاستعلامات الكبيرة دون إهدار موارد الخادم.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
منظومة الحماية والاسترجاع وفرض قيود التناسق وربط جداول البيانات ببعضها البعض
Slide 29 / 35
النسخ الاحتياطي والاسترجاع
توفير بروتوكول حماية مؤتمت بالكامل يقوم بإنشاء نسخ احتياطية دورية واسترجاع البيانات بسلامة فائقة في حال حدوث أي خلل تقني أو تلف للأجهزة.
تمثيل العلاقات المعقدة
القدرة على تمثيل وربط وتخزين العلاقات المتداخلة المعقدة والشعب والمسارات والروابط المتعددة التي تربط جداول وكيانات البيانات ببعضها البعض بسهولة.
فرض قيود سلامة وتناسق البيانات
فرض شروط وقواعد صارمة (مثل ألا يكون الحقل فارغاً، أو فريداً بالكامل كالمعرّف)، والتحقق المؤتمت من سلامتها وصحتها عند أي عملية إدخال أو تعديل.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
كيف تساهم قواعد البيانات في فرض المعايير وتسريع وقت تطوير الأنظمة؟
Slide 30 / 35
Enforcing Standards (فرض المعايير الموحدة)
تعتبر خطوة فرض المعايير (Standards) حاسمة لنجاح التطبيقات في المؤسسات الضخمة. وتشمل توحيد:
• تسميات حقول الجداول وتنسيق وطريقة عرض البيانات على الشاشات.
• هياكل التقارير المخرجة وتنسيقات صفحات الويب.
Speed & Efficiency (تقليص زمن التطوير البرمجي)
بفضل وجود الهيكل والكتالوج الموحد وتوفر واجهات الربط وقراءة الاستعلامات الفاعلة، يتناقص وينخفض بشكل لافت الوقت المطلوب لتطوير وبناء تطبيقات جديدة إضافية فوق النظام.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
أثر قواعد البيانات في توفير التكاليف وتحديث المعطيات باستمرار
Slide 31 / 35
مرونة وقابلية تطوير الجداول
تمنح قواعد البيانات مرونة استثنائية لترقية وتعديل وتطوير هياكل البيانات بمرور الوقت دون التأثير على استقرار التطبيقات الجارية.
توفر وتوافر المعلومات اللحظية
ميزة استثنائية وجوهرية للأنظمة الحية كالتجارة الإلكترونية وحجز غرف الفنادق وحجز مقاعد الطائرات وتتبع المبيعات.
ميزات وفورات الحجم الاقتصادي
تقليص وتجنب هدر وتداخل الموارد والأجهزة عن طريق توحيد البيانات والأنظمة والمشاريع البرمجية الموزعة للأقسام في خادم مركزي واحد.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تتبع مسار الأجيال البرمجية من النظم الشجرية الكلاسيكية لثورة النظام العلائقي
Slide 32 / 35
Early Applications (الأنظمة الهرمية والشبكية)
• تم تقديم النماذج الهرمية (Hierarchical) والشبكية (Network Models) في منتصف الستينات وسيطرت بالكامل طوال فترة السبعينات.
• ما يزال جزء كبير من عمليات معالجة البيانات الضخمة للمؤسسات التقليدية مستمراً حتى اليوم باستخدام هذه النماذج (كأنظمة IBM IMS الهرمية).
The Relational Revolution (ثورة النموذج العلائقي)
• تم ابتكار وتصميم النموذج العلائقي (Relational Model) لأول مرة في عام 1970 بواسطة العالم Edgar F. Codd في معامل أبحاث IBM والجامعات الكبرى.
• ظهرت وبدأت منتجات قواعد البيانات العلائقية (Relational DBMS) في الهيمنة التجارية في مطلع الثمانينات.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
الجيل الثالث للبيانات وتداول المعطيات عبر الشبكة العنكبوتية والتجارة الإلكترونية
Slide 33 / 35
Object-Oriented Database Systems (OODBMS)
• تم تقديم محركات OODBMS في أواخر الثمانينات وبداية التسعينات لتلبية متطلبات معالجة البيانات المعقدة ثلاثية الأبعاد وعلوم الفلك (CAD).
• تطورت لاحقاً لدمج المفاهيم الكائنية مع الجداول لإنتاج فئة قواعد البيانات الكائنية-العلائقية (ORDBMS).
Web & E-Commerce (الويب والتجارة الإلكترونية)
• اعتماد الويب على معايير تشعبية مرنة مثل HTML ونماذج تبادل البيانات المهيكلة مثل XML.
• دمج لغات البرمجة النصية كـ PHP و JavaScript لبناء وعرض صفحات ويب تفاعلية وديناميكية بالاتصال المباشر بقواعد البيانات.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
استعراض محاذير وتكاليف النظم ومتى نكتفي بالحلول البرمجية الخفيفة؟
Slide 34 / 35
Main Costs & Barriers (الاستثمار التقني والتكاليف)
• يتطلب استخدام محرك الـ DBMS استثماراً مالياً أولياً باهظاً في التراخيص البرمجية واقتناء الأجهزة والعتاد المساند المرتفع التكلفة.
• تحمل عبء تكاليف عمليات الحماية والسرية، وإعداد مشغلي التحكم في التزامن والاسترجاع المستمر.
When DBMS Is Unnecessary (الحالات غير الضرورية)
• إذا كانت البيانات والتطبيقات المطلوبة بسيطة للغاية وثابتة الهيكلية، ولا يتوقع تغييرها بمرور الوقت.
• إذا لم تكن هناك حاجة مطلقاً لمشاركة وتداول البيانات بين مستخدمين متعددين متزامنين.
• في الأنظمة المضمنة الصغيرة (Embedded Systems) لضيق مساحات التخزين المتوفرة.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
مراجعة سريعة لأهم المفاهيم والأدوار التي قمنا بمناقشتها في هذه الوحدة
Slide 35 / 35
مفاهيم البيانات والـ DBMS
تعرفنا على البيانات والمجموعة الشاملة والفرق بين محرك الـ DBMS والـ Database System بالبيئة المصغرة (Mini-world).
مميزات نهج قواعد البيانات
فهمنا ميزة عزل البرامج واستقلالية البيانات والكتالوج والـ Meta-data وتعدد واجهات المستخدم والتجريد (Data Abstraction).
أدوار وتصنيف مستخدمي الأنظمة
صنفنا المستخدمين إلى متفاعلين مباشرين (DBA ومصممين ومبرمجين) وعاملين بالخلف لتطوير وبناء الخوادم والمحرك.
آفاق التطور والمحاذير الحالية
تطرقنا إلى مبررات تجنب استخدام محركات قواعد البيانات تلافياً للأعباء والتكاليف الباهظة في الأجهزة البسيطة والمضمنة.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
كيف غيرت منصات التواصل الاجتماعي ومحركات البحث مفهوم تخزين البيانات الضخمة؟
Slide 04 / 36
بدأت الشبكات الاجتماعية (مثل Facebook, Twitter, LinkedIn) في التقاط وحصر كميات هائلة من المعلومات حول تواصل البشر كالتغريدات، البوستات، الصور ومقاطع الفيديو المتنوعة.
Every post, photo, and click constitutes database storage.
تقوم محركات البحث الشهيرة (مثل Google, Bing, Yahoo) ببناء وجمع مستودعات وكتالوجات عملاقة ومعقدة جداً من صفحات الويب المتوفرة عالمياً لأغراض البحث الفوري المتقدم.
Repositories index billions of pages in milliseconds.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
نشوء التقنيات الحديثة خارج نطاق الأنظمة الإدارية المألوفة لقواعد البيانات
Slide 05 / 36
بنية تجمعات البيانات الضخمة
أنظمة حوسبة وتخزين متقدمة تتضمن حواسب موزعة في شبكات مجمعة لإدارة تلال مهولة من الأكواد والبيانات.
أنظمة قواعد البيانات NoSQL
تعني (Not Only SQL)، وهي تقنيات مرنة تم تطويرها لتخزين البيانات غير الهيكلية والمرنة دون قيود الجداول المعتادة.
التخزين السحابي الشامل
تخزين كميات لامتناهية من البيانات الموزعة على آلاف السيرفرات والأجهزة في مراكز البيانات (Data Centers).
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
اللبنات والتعاريف الأساسية لقواعد البيانات وعالم البيانات المصغر
Slide 06 / 36
Database قاعدة البيانات
هي عبارة عن تجمع أو حقيبة من البيانات المترابطة والمنظمة منطقياً.
Data البيانات الأساسية
الحقائق المكتشفة والمعلومة التي يمكن حصرها وتخزينها، ولها معانٍ ضمنية مألوفة.
Mini-World العالم المصغر (مجال التخزين)
جزء من العالم الواقعي الحقيقي الذي يتم حفظ وتخزين البيانات لتوصيفه (مثل درجات الطلاب بالجامعة).
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
كيف تتدخل قواعد البيانات لتسيير عصب الحياة الاقتصادية والاجتماعية في وقتنا الحالي؟
Slide 07 / 36
Classic Businesses
المصارف والأنشطة المالية، أنظمة التأمين الصحي، سلاسل المتاجر، النقل والتصنيع.
Service Industries
القطاعات الخدمية، العقارات، القوانين والمحاماة، التجارة الإلكترونية، والمتاجر الصغيرة.
Education Sector
إدارة المواد التعليمية والدروس، منصات المذاكرة والدراسة عن بعد، وسجلات التسجيل.
Personal Apps
التطبيقات الشخصية المعتمدة على الهواتف والأجهزة الذكية لحفظ الصور والمواقع والخرائط.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تمثيل رسومي بصري دقيق يوضح مسار مرور الاستعلامات والمحركات بالعتاد
Slide 08 / 36
Users / Programmers المستخدمون والمبرمجون
Queries / Programs الاستعلامات والبرمجيات
DBMS SOFTWARE
معالجة الاستعلامات والولوج للبيانات المخزنة
Metadata Catalog بيانات التعريف الوصفية
Stored Database البيانات الفعليه المخزنة
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
المحركات والقدرات التشغيلية التي تقدمها محركات تشغيل وتصميم قواعد البيانات
Slide 09 / 36
• التعريف (Defining): تحديد أنواع البيانات (Data Types)، الهياكل التنظيمية والقيود (Constraints) المفروضة على المدخلات.
• البناء (Constructing): تخزين وحقن محتويات وبذور البيانات الأولية على أقراص التخزين الثانوية والمستديمة.
• المعالجة (Manipulating): تفعيل عمليات استرجاع البيانات (Retrieval)، تصفية الاستعلامات والتقارير، والتحديث والتعديل.
• المشاركة (Sharing): إدارة تشغيل وتنفيذ البرنامج لعدة مستخدمين متزامنين في نفس الوقت دون تعطل أو تضارب.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
كيف تتواصل برامج الهواتف والحواسب مع قاعدة البيانات لتنفيذ الأوامر الفورية؟
Slide 10 / 36
عمليات مستمرة لقراءة واسترجاع معلومات منتقاة من عدة جداول برمجية لصياغة رد أو نتيجة للطلب (مثل عرض قائمة الأصدقاء المتصلين).
سلسلة خطوات برمجية لحقن أو تعديل أو تحديث قيم معينة في جداول الخادم، مع ضمان تنفيذ كافة الخطوات معاً أو إلغائها تماماً لعدم تلف البيانات.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
الأمان المتطور، معالجة البيانات الفعالة، والصيانة طويلة الأمد للتطبيقات
Slide 11 / 36
تأمين حماية وصلاحيات الولوج
توفير إجراءات وتدابير أمنية صارمة لمنع استغلال أو ولوج المستخدمين غير المخولين لبيانات حساسة بالخادم.
المعالجة النشطة (Triggers)
القدرة على اتخاذ إجراءات وقرارات داخلية برمجية تلقائية بالخادم بمجرد حدوث تعديلات معينة في الجداول.
صيانة واستمرارية الأنظمة
صيانة محتويات قواعد البيانات، والبرامج الإدارية المرافقة لها، وضمان النسخ الاحتياطي المستمر للأكواد.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تصميم وتفكيك الكيانات الملموسة لتوصيف العالم المصغر لبيئة الجامعة
Slide 12 / 36
MINI-WORLD DETAILS
تم استخدام بيئة الجامعة لتوضيح آلية عمل وبناء النظم. وتتضمن الكيانات الملموسة وغير الملموسة (Entities) التالية:
STUDENTs الطلاب
COURSEs المناهج
SECTIONs الشعب والفصول الدراسية
DEPARTMENTs الأقسام الأكاديمية
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
كيف تترابط كيانات الطلاب والمناهج والشعب معاً لتشكيل قاعدة بيانات موحدة؟
Slide 13 / 36
• الشعب والمناهج: كل شعبة (SECTION) تنتمي وتعود لمنهج ومسار دراسي (COURSE) محدد.
• تسجيل الطلاب: الطلاب (STUDENTs) يقومون بالتسجيل والالتحاق في تلك الشعب (SECTIONs).
• المتطلبات المسبقة: لبعض المناهج متطلبات مسبقة (Prerequisites) يجب اجتيازها أولاً.
• أعضاء هيئة التدريس: يقوم المحاضرون (INSTRUCTORs) بتدريس تلك الفصول والشعب الدراسية.
• علاقة الأقسام: المناهج الدراسية يتم طرحها وعرضها بواسطة الأقسام الأكاديمية بالجامعة.
• التخصص الأكاديمي: يتخصص الطلاب (STUDENTs) ويسجلون تحت إشراف تلك الأقسام.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
التمثيل الجدولي المألوف للعلاقات والأعمدة وربط البيانات بالـ Schema
Slide 14 / 36
RELATIONS (جداول الكيانات)
| Relation_name | No_of_columns |
|---|---|
| STUDENT | 4 |
| COURSE | 4 |
| SECTION | 5 |
| GRADE_REPORT | 3 |
COLUMNS (الأعمدة وتصنيف أنواع البيانات)
| Column_name | Data_type | Belongs_to_relation |
|---|---|---|
| Name | Character (30) | STUDENT |
| Student_number | Character (4) | STUDENT |
| Course_name | Character (10) | COURSE |
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
الوصف الذاتي للبيانات وميزة الفصل التام بين البرامج وهياكل التخزين
Slide 15 / 36
تضم قواعد البيانات ميزة فريدة حيث يحفظ كتالوج الـ DBMS التوصيف الهيكلي الكامل والبيانات الوصفية للبرنامج، وتسمى هذه التوصيفات بالـ Meta-Data.
وتسمى علمياً بالاستقلالية بين البرمجيات والبيانات (Program-data independence)، وتتيح إمكانية تعديل وتحديث هياكل التخزين والجداول دون الاضطرار إطلاقاً لتعديل الكود البرمجي للتطبيقات.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تجريد وحجب التفاصيل المعقدة للتخزين وتوفير واجهات عرض متعددة ومخصصة
Slide 16 / 36
تعتمد محركات الأنظمة على موديل وبنية لتجريد البيانات (Data Model)، لحجب وإخفاء تفاصيل التخزين الفيزيائية المعقدة عن واجهة المطور، وتقديم رؤية واجهة منطقية مبسطة للحل.
تضمن الأنظمة إمكانية عرض واجهات وتفاصيل مختلفة مخصصة لكل مستخدم (Views)، حيث يرى كل موظف أو عميل البيانات التي تقع ضمن دائرة اهتمامه وعمله وصلاحياته فقط وحجب البقية.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
التزامن الآمن، التحكم في التداخل، وضمان تشغيل ومعالجة مئات المعاملات بالثانية
Slide 17 / 36
تتيح الأنظمة لآلاف المستخدمين قراءة وتحديث الجداول في نفس اللحظة بأمان، بفضل وجود برمجيات التحكم في التزامن المتعدد (Concurrency Control) لمنع الأخطاء وحماية الصفقات.
تعتبر معالجة المعاملات الفورية (Online Transaction Processing) جزءاً جوهرياً يسير مئات المعاملات المالية بالثانية، مع وجود نظام استرجاع كلي (Recovery Subsystem) لتسجيل الحسابات عند الطوارئ.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تقسيم المستخدمين إلى ممثلين في ساحة العمل الفعلي أو جنود خلف الكواليس
Slide 18 / 36
وهم فئات الموظفين والمطورين والمستخدمين الذين يتفاعلون بشكل فوري ومستمر مع محتوى وتفاصيل وتصميم قاعدة البيانات للتنفيذ.
وهم مهندسو البرمجيات والعتاد الذين يقومون بابتكار وتصميم وبناء وصيانة محرك الـ DBMS والأدوات المرافقة له لخدمة الساحة.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
مسؤوليات مدراء قواعد البيانات ومصممي الهياكل والبيانات الوصفية
Slide 19 / 36
مسؤول بالكامل عن السماح وتخويل المستخدمين بالولوج للبيانات، تنسيق الاستخدام والرقابة الأمنية عليه، إدارة موارد السيرفرات والعتاد بكفاءة عالية.
مسؤول بالكامل عن صياغة وبناء وتصميم وتحديد الهياكل والمحتويات والقيود والعلاقات بالتواصل الوثيق مع المستخدمين لفهم متطلباتهم.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تصنيفات المستخدمين الأربعة لقواعد البيانات في بيئة الإنتاج
Slide 20 / 36
1. Casual Users المستخدم العارض
يلج لقواعد البيانات بشكل متباعد وعشوائي حسب الحاجة الطارئة.
2. Naïve / Parametric المستخدم المبرمج المسبق
يستخدمون وظائف سريعة ومعلبة وثابتة كصرافي البنوك ومستخدمي التطبيقات.
3. Sophisticated المستخدم المحترف (الخبير)
المحللون، العلماء، والمهندسون العارفون بقدرات وإمكانات المحرك بالكامل.
4. Stand-alone المستخدم المستقل
من يبنون ويديرون قواعد بيانات مخصصة وشخصية لملفاتهم أو حساباتهم الخاصة.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
محللو النظم، مبرمجو التطبيقات ومحللو أنشطة قطاع الأعمال التجارية
Slide 21 / 36
System Analysts محلل النظم البرمجية
يقومون بفهم وصياغة احتياجات المستخدمين وبناء الموديل المناسب للحل.
Application Programmers مبرمج التطبيقات الفنية
ينفذون التصميم بكود برمجي متين، ويجرون اختبارات الفحص وإزالة العيوب.
Business Analysts محللو الأعمال التجارية
يحللون جبال البيانات الضخمة (Big Data) لمساعدة المدراء في اتخاذ القرارات.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
الجنود والمطورون لبرمجيات قواعد البيانات ومصممو الأدوات المرافقة
Slide 22 / 36
DBMS Designers & Implementors مصممو ومنفذو حزمة الـ DBMS
يقومون ببناء محرك التخزين الأساسي، مفسر الاستعلامات والمنافذ الأمنية المرافقة.
Tool Developers مطورو الأدوات والبرمجيات المساعدة
يبنون البرمجيات المرافقة لتصميم الجداول، مراقبة وحساب الأداء ومحاكاة الجداول.
Operators & Maintenance مشغلو وطواقم صيانة السيرفرات
يديرون التشغيل الفعلي والمراقبة المستمرة لأجهزة السيرفرات ومراكز البيانات الكبرى.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
محاربة تكرار البيانات وتأمين المشاركة الموثوقة وحفظ الهياكل والبيانات
Slide 23 / 36
تضمن المنهجية حصر تخزين كل معلومة في مكان واحد موحد لمنع تشتت وهدر مساحات التخزين، والمحافظة على اتساق السجلات بشكل دائم وموثوق.
توفير درجات أمان وحماية متطورة جداً، بحيث تسمح بمرور وتنفيذ الاستعلامات للمستخدمين بناءً على أدوارهم وحجب الاستعلامات السرية عن عامة الموظفين.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
تحسين وتسريع تصفية الاستعلامات بالاعتماد على الفهارس الذكية
Slide 24 / 36
توفر الأنظمة ميزة بناء هياكل فهارس متقدمة (Indexes) لتسريع وتسهيل عمليات تصفية والبحث في الجداول العملاقة في أجزاء من الثانية.
توفير مستودعات استمرار دائمة للمبرمجين لحفظ وهيكلة الكائنات البرمجية (Objects) الخاصة بالتطبيقات بشكل دائم وتلقائي دون فقدانها عند إغلاق الأجهزة.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
إلزام وتوحيد المقاييس وتوفير فترات وأوقات تطوير برمجيات التطبيقات بشكل كبير
Slide 25 / 36
تعتبر غاية في الأهمية للمؤسسات والشركات الكبرى، وتتمثل في توحيد صياغة أسماء الجداول والأعمدة، مقاييس الشاشات وتصاميم واجهات المستخدم والبيانات الوصفية.
بفضل وجود محرك مسبق متكامل للـ DBMS، يقتصر دور المطور على صياغة المنطق دون القلق بشأن تخزين وحماية الملفات، وهو ما يختصر مئات ساعات التطوير.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
مرونة التعديل الهيكلي، وتوفير أحدث النسخ والبيانات فورياً للأنظمة الموزعة
Slide 26 / 36
Flexibility to Change مرونة تطور هياكل البيانات
القدرة التامة للـ Schema والكتالوج على التطور ومجاراة المتطلبات البرمجية الجديدة بمرونة متناهية.
Availability of Current Info توفير البيانات والنسخ الفورية
حيوية جداً لتطبيقات الحجز الفوري المتزامن للرحلات، الغرف والمشتريات لضمان تحديث الأرصدة بالملي ثانية.
Economies of Scale اقتصاديات الحجم وسعة العمل
تفادي الهدر والتعطيل لموارد الموظفين وأجهزة السيرفرات بدمج وحصر وتجميع وتوحيد قواعد البيانات في الخادم.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
من الموديلات الهرمية القديمة في الستينيات إلى بزوغ فجر الثورة الجدلية للـ Relational Model
Slide 27 / 36
تم ابتكارها وتأسيسها في منتصف الستينيات وسيطرت بالكامل في السبعينيات (مثل نظام IMS التابع لشركة IBM الشهيرة)، ولا زال بعضها يسيطر على البورصات وتسيير المعاملات التاريخية.
تم اقتراح النموذج في عام 1970، وأقيمت عليه مئات الأبحاث البرمجية الأكاديمية بالجامعات، حتى ظهرت أولى محركات وجداول قواعد البيانات التجارية في مطلع الثمانينيات.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
بزوغ الموديلات الكائنية والعلائقية الهجينة في التسعينيات
Slide 28 / 36
ظهرت في أواخر الثمانينيات لتلبية معالجة البيانات الهندسية الكثيفة والمعقدة (مثل تطبيقات الرسم والتصميم CAD)، ورغم تفوقها المنطقي إلا أن استخدامها لم يشهد إقبالاً وتطوراً تجارياً ضخماً.
قامت الشركات بدمج وتطعيم ميزات الكائنات البرمجية داخل هياكل الجداول التقليدية لإنشاء فئة مدمجة هجينة تدعم الملفات المعقدة والـ XML ومقاطع الفيديو بأمان.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
ثورة التجارة الإلكترونية، لغة الـ XML ولغات البرمجة النصية للويب (Scripting)
Slide 29 / 36
ارتبطت صفحات الويب بلغة HTML بروابط حيوية، مما تطلب معايير تبادل بيانات مرنة ومحايدة للأنظمة، فبرزت لغة XML (eXtended Markup Language) كحل قياسي للتصدير والتبادل.
أتاحت لغات مثل PHP و JavaScript إمكانية الاتصال المباشر بقواعد البيانات، لبناء وتوليد صفحات ويب تفاعلية وديناميكية فورية وتعديل بيانات الخادم مباشرة عبر المتصفح.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
المجالات والقطاعات الأكاديمية والعلمية الجديدة الداعمة لهياكل تخزين معقدة
Slide 30 / 36
Scientific Applications العلوم التجريبية وعلم الفلك
دعم الأبحاث الطبية والفيزيائية الحيوية المعقدة كخريطة الجينات البشرية والملاحظات الفلكية اللانهائية.
Spatial & Location Services إدارة بيانات المواقع الحيوية (Spatial)
إدارة وتوجيه وفهرسة تصفية الخرائط الجغرافية ثلاثية الأبعاد وخدمات تتبع المواقع الفورية للأجهزة الجوالة.
Audio & Video Storage صيانة وإدارة مقاطع الفيديو والأصوات
توفير هياكل بحث سريعة قادرة على تصنيف وحفظ والبحث السريع داخل ملفات الميديا الضخمة ومستودعات التعدين.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
النمو الهائل للبيانات الناتجة عن محركات البحث والمنصات السحابية اللامتناهية
Slide 31 / 36
شهد العقد الأول نمواً استثنائياً لبيانات المستخدمين الناتجة تلقائياً عن الهواتف وتطبيقات التواصل ومحركات البحث، وصارت مخرجات السوشيال ميديا تولد ملايين الحركات التفاعلية والصفقات بالثانية.
أتاح التخزين السحابي للشركات خفض التكاليف المادية للعتاد، ووفر مساحات لامتناهية مستديمة للنسخ الاحتياطي السريع الآمن للبيانات، مما مهد الطريق لظهور تقنيات تحليل الأنشطة الضخمة.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
الحلول الجديدة لمواجهة طوفان البايتابايتات (Petabytes) اليومية عبر الشبكات
Slide 32 / 36
أبرز التقنيات التي نشأت للتعامل مع طوفان بيتابايتات البيانات اليومي بالاستعانة بمشروع Hadoop (المبتكر من Yahoo) ومنهجية البرمجة الموزعة Mapreduce (المبتكرة من Google).
تم تصميم نظم NoSQL خصيصاً لتسريع عمليات البحث المستمرة للوثائق المعقدة، معالجة العلاقات المتشابكة والرسومات الضخمة للسوشيال ميديا بمرونة فائقة وتفادي جمود الجداول العلائقية التقليدية.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
الأعباء والمثبطات المالية والفنية الناتجة عن تعقيد محركات قواعد البيانات
Slide 33 / 36
تتطلب محركات قواعد البيانات شراء تراخيص باهظة للـ DBMS، مع الحاجة لشراء عتاد سيرفرات وسعة تخزين وأقراص معالجة ذات كفاءة مادية مرتفعة جداً.
مستويات الأمان المتقدمة، برمجيات التحكم في التزامن المتزامن، عمليات الاسترجاع عند الطوارئ (Recovery) تفرض عبئاً زمنياً ومعالجة إضافية مستمرة تبطئ المعالج.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
الحالات البرمجية التي يصبح فيها استخدام الـ DBMS تزيد التعقيد دون مبرر
Slide 34 / 36
Simple Applications التطبيقات البسيطة جداً
عندما تكون طبيعة البيانات بسيطة، واضحة الهياكل تماماً، ولا يُتوقع تعديلها أو تطورها مطلقاً مستقبلاً.
Single User Access منفذ المستخدم المنفرد
إذا كان البرنامج مصمماً لولوج مستخدم واحد فقط دون الحاجة نهائياً لمشاركة متزامنة للبيانات مع آخرين.
Embedded Systems الأنظمة المضمنة الصغرى
في الأجهزة الإلكترونية الصغرى ذات السعة التخزينية المحدودة والضيقة جداً والتي لا تسع لمحرك الـ DBMS.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
متطلبات الزمن الحقيقي الصارمة، وحدود النمذجة المتقدمة للبيانات
Slide 35 / 36
في الأنظمة الحرجة كأنظمة مقاسم الاتصالات ومفاتيح الهاتف المباشرة التي لا تحتمل أي عبء أو تأخير (Overhead) يسببه الـ DBMS وتتطلب استجابة فورية بالنانوثانية.
عندما تكون طبيعة البيانات بالغة التعقيد والتشابك (مثل قواعد بيانات الجينات المعقدة وسلاسل البروتين الدقيقة جداً) بحيث تفوق القدرة والحدود المعيارية لموديلات الـ DBMS المتاحة تجارياً.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit
مراجعة سريعة لأهم المفاهيم والأفكار التي تم تغطيتها وتفصيلها بالدرس
Slide 36 / 36
• المبادئ والتعاريف:
تم حصر الفروق الأساسية بين البيانات (Data) وقاعدة البيانات (Database) والعالم المصغر (Mini-world) والـ DBMS.
• المزايا والخصائص:
ناقشنا الوصف الذاتي (Meta-data)، وعزل البرامج عن هياكل التخزين، ومرونة التطور والتعديل الهيكلي الآمن.
• مستخدمو الأنظمة:
تم تصنيف المستخدمين لفاعل في الساحة (Actors on the scene) أو مجهول خلف الكواليس (Behind the scene).
• حدود الاستخدام والجدوى المادية:
حددنا متى يثبط ويفشل أو ينجح استخدام الـ DBMS بناءً على حجم وتكلفة التشغيل وحدود الزمن الحقيقي الصارم.
مسودة الطالب / Interactive Notes Canvas Write notes here or draw thoughts • Click to edit