مساحة المتعلّمLearner hub

الحزمة التعليمية الكاملةComplete learner course pack

الأسبوع السادسربط Python مع PostgreSQLWeek 6Day 1 — connection lifecycle and local settings

مواد تعلّم مفتوحة للدراسة المستقلة. يبقى التقدم غير الرسمي في هذا المتصفح فقط، وقد يُمحى عند مسح بيانات تخزين المتصفح. لا يُنشأ هنا حساب أو سجل حضور أو درجة أو نتيجة مساق رسمية.Open learning materials for independent study. Unofficial progress stays only in this browser and can be erased if browser storage is cleared. No account, attendance record, score, or official course result is created here.

تنزيلات المساقCourse downloads

إصدار الحلSolution release

يتوفر بعد التحقق ونافذة الاستدراك والإصدار المعتمد من المدرّبAvailable after the checkpoint, recovery window, and trainer-approved release

اليوم 1Day 1

اليوم 1 — دورة الاتصال والإعدادات المحليةDay 1 — connection lifecycle and local settings

ملخص الشرائحSlide summary

الأهدافObjectives

  • حمّل إعداد قاعدة بيانات محلياً مستبعداً وافتح اتصال Psycopg وأغلقه بأمان وأثبت الاتصال باستعلام قراءة واحد.Load an ignored local database setting, open and close a Psycopg connection safely, and prove the connection with one read query.
  • اشرح الأمر والتحقق والاستعلام ومعاملة قاعدة البيانات والنتيجة المخزنة باستخدام معرفات اصطناعية وإعدادات محلية محجوبة فقط.Explain the command, validation, query, transaction, and stored result using only synthetic identifiers and redacted local settings.

المتطلبات المسبقةPrerequisites

  • اجتز تحقق الأسبوع الخامس للمخطط المُطبّع أو استخدم مسار الدعم المرتب.Pass the Week 5 normalised-schema checkpoint or use the arranged supported path.
  • افتح حزمة بداية الأسبوع السادس كما هي وحمّل عينة PostgreSQL النظيفة وأبقِ DATABASE_DSN في البيئة المحلية المستبعدة فقط.Open the exact Week 6 starter, load its clean PostgreSQL fixture, and keep DATABASE_DSN only in the ignored local environment.

الشروحاتExplanations

الإعداد خارج الكود المصدريConfiguration outside source code

حمّل إعداد قاعدة بيانات محلياً مستبعداً وافتح اتصال Psycopg وأغلقه بأمان وأثبت الاتصال باستعلام قراءة واحد.Load an ignored local database setting, open and close a Psycopg connection safely, and prove the connection with one read query.

يتحقق كود قاعدة البيانات الموثوق من القيم قبل الوصول، ويمرر القيم كمعاملات للاستعلام، ويضبط التثبيت والتراجع، ويفحص الحالة المخزنة بدلاً من الثقة برسالة نجاح.Reliable database code validates values before access, passes values as query parameters, controls commit and rollback, and checks the stored state rather than trusting a success message.

أمثلةExamples
DATABASE_DSN مستبعد ← فتح الاتصال ← SELECT لصف عينة معروف ← إغلاق نظيفignored DATABASE_DSN → open connection → SELECT known fixture row → clean close

الشرائحSlides

نتيجة اليوم القابلة للملاحظةToday's observable result

  • حمّل إعداد قاعدة بيانات محلياً مستبعداً وافتح اتصال Psycopg وأغلقه بأمان وأثبت الاتصال باستعلام قراءة واحد.Load an ignored local database setting, open and close a Psycopg connection safely, and prove the connection with one read query.

اطلب من متعلم توقع قيمة الإرجاع والصف المخزن قبل التنفيذ.Ask a learner to predict both the return value and stored row before execution.

الاتصال دون كشف بيانات الدخولConnect without exposing credentials

  • DATABASE_DSN مستبعد ← فتح الاتصال ← SELECT لصف عينة معروف ← إغلاق نظيفignored DATABASE_DSN → open connection → SELECT known fixture row → clean close

تتبع قيمة P-/S-/B- واحدة عبر التحقق والمعاملات ومعاملة قاعدة البيانات والنتيجة.Trace one P-/S-/B- value through validation, parameters, transaction, and result.

الإعدادات المحلية والصفوف الاصطناعيةLocal settings and synthetic rows

  • أبقِ DATABASE_DSN في إعدادات محلية مستبعدة. اعرض الكود بمسارات نسبية للمشروع والمعرفات الاصطناعية والمخرجات المحجوبة فقط.Keep DATABASE_DSN in ignored local settings. Show only project-relative code, synthetic identifiers, and redacted output.

نفّذ فحص بيانات دخول القاعدة والبيانات الحقيقية قبل المختبر.Run the database credential and real-data scan before the lab.

التدريب الموجّهGuided practice

  • صنّف أدلة الاتصال الآمنة وغير الآمنة ثم تتبع صفاً معروفاً واحداً دون عرض قيمة الإعداد.Classify safe and unsafe connection evidence, then trace one known row without displaying the setting value.

ورقة العملWorksheet

  1. قدّم مخطط دورة الاتصال ودليل الإعداد المستبعد وعدد الحجوزات المتوقع والفعلي ومخرج الإغلاق النظيف وفحص الخصوصية.Submit the connection lifecycle diagram, ignored-setting proof, expected and actual booking count, clean-close output, and privacy scan.مرجع الدليل: w6d1-connection-evidenceEvidence reference: w6d1-connection-evidence

خطوات المختبرLab steps

  1. أعد العينة المقدمة واكتب قيمة الإرجاع والصفوف المخزنة المتوقعة قبل التنفيذ.Reset the supplied fixture and write the expected return value and stored rows before execution.
  2. نفّذ open_connection واستعلم عن عدد الحجوزات المقدمة وأغلق الاتصال بنظافة واحفظ دليل التشخيص المحجوب فقط.Implement open_connection, query the count of supplied bookings, close cleanly, and save only redacted diagnostic evidence.
  3. شغّل الأمر أو الاختبار المركز مرتين وافحص الحالة المخزنة وأصلح أول حد منحرف في التحقق أو الاستعلام أو معاملة قاعدة البيانات فقط.Run the focused command or test twice, inspect stored state, and repair only the first divergent validation, query, or transaction boundary.
  4. احفظ الأوامر المحجوبة والمخرجات الاصطناعية ودليل الاختبار والتعليل وملاحظة استخدام الذكاء الاصطناعي أو عدم استخدامه فقط.Save only redacted commands, synthetic output, test evidence, reasoning, and the AI-use or non-use note.

البيانات الاصطناعيةSynthetic data

الإدخال المقدمSupplied inputالنوع المتوقعExpected kind
create B-401 P-104 S-203 confirmedaccepted
create B-402 P-104 S-203 unknownrejected
update B-999 cancelledrejected
reset fixture; list; update B-302 confirmed; reset fixture; listsummary

مسرد الإنجليزية التقنيةTechnical English glossary

  • قناة تواصل مع قاعدة البياناتconnection
  • قيمة إعداد خارج الكودenvironment setting
  • واجهة لتنفيذ استعلام وقراءة نتيجتهcursor
  • تحرير اتصال قاعدة البيانات بأمانclose

الخصوصيةPrivacy

استخدم صفوف الورشة المولدة المقدمة فقط. أبقِ بيانات الدخول وDATABASE_DSN ومخرجات الاتصال وأسماء المستخدمين وبيانات التسجيل الحقيقية خارج Git والأدلة.Use only the supplied generated workshop rows. Keep credentials, DATABASE_DSN, connection output, usernames, and real registration data outside Git and evidence.

ممارسة الذكاء الاصطناعيAI practice

يمكن للذكاء الاصطناعي مراجعة دالة قاعدة بيانات محجوبة واحدة بعد أن يتوقع المتعلم سلوكها. ولا يجوز أن ينشئ التحقق الكامل؛ وكل اقتراح مقبول يحتاج دليلاً محلياً من PostgreSQL والاختبارات.AI may review one redacted database function after the learner predicts its behaviour. It must not generate the complete checkpoint; every accepted suggestion requires local PostgreSQL and test evidence.

الاستدراكRecovery

خلال أسبوع واحد، أعد العينة المقدمة وصحح أول حد معطوب في التحقق أو المعامل أو معاملة قاعدة البيانات وأعد تشغيل مسار الإنشاء والقراءة والتحديث نفسه مرتين ثم أعد تقديم دليل الاتصال المحجوب.Within one week, reset the supplied fixture, correct the first broken validation, parameter, or transaction boundary, rerun the same create/read/update path twice, and resubmit the redacted connection evidence.

أخطاء شائعة ينبغي ملاحظتهاCommon errors to notice

  • تُدمج القيم في نص SQL بدلاً من تمريرها منفصلة كمعاملات.Values are joined into SQL text instead of passed separately as parameters.
  • يعلن البرنامج النجاح دون فحص الصف المرجع أو المخزن.The program reports success without checking the returned or stored row.
  • تعتمد الاختبارات على صفوف تركها تشغيل سابق وتفشل عند التكرار.Tests depend on rows left by an earlier run and fail when repeated.
دليلي التعلّمي المُبلّغ عنه ذاتياًMy self-reported learning evidence

يُحفظ في هذا المتصفح فقط لدعم تعلّمك الشخصي. ليس حضوراً ولا درجة ولا نتيجة تحقق ولا سجلاً لشهادة.Saved only in this browser to support your own learning. It is not attendance, a score, a checkpoint result, or a certificate record.

جارٍ تحميل ملاحظاتك التعليمية المحلية…Loading your local learning notes…

اليوم 2Day 2

اليوم 2 — الإنشاء والقراءة بمعاملاتDay 2 — parameterised create and read

ملخص الشرائحSlide summary

الأهدافObjectives

  • أنشئ حجزاً اصطناعياً واحداً واعرض الحجوزات المخزنة باستخدام SQL ذي معاملات وترتيب ثابت وصفوف مرجعة متحقق منها.Create one synthetic booking and list stored bookings with parameterised SQL, stable ordering, and checked returned rows.
  • اشرح الأمر والتحقق والاستعلام ومعاملة قاعدة البيانات والنتيجة المخزنة باستخدام معرفات اصطناعية وإعدادات محلية محجوبة فقط.Explain the command, validation, query, transaction, and stored result using only synthetic identifiers and redacted local settings.

المتطلبات المسبقةPrerequisites

  • اجتز تحقق الأسبوع الخامس للمخطط المُطبّع أو استخدم مسار الدعم المرتب.Pass the Week 5 normalised-schema checkpoint or use the arranged supported path.
  • افتح حزمة بداية الأسبوع السادس كما هي وحمّل عينة PostgreSQL النظيفة وأبقِ DATABASE_DSN في البيئة المحلية المستبعدة فقط.Open the exact Week 6 starter, load its clean PostgreSQL fixture, and keep DATABASE_DSN only in the ignored local environment.

الشروحاتExplanations

بنية SQL مع قيم منفصلةSQL structure plus separate values

أنشئ حجزاً اصطناعياً واحداً واعرض الحجوزات المخزنة باستخدام SQL ذي معاملات وترتيب ثابت وصفوف مرجعة متحقق منها.Create one synthetic booking and list stored bookings with parameterised SQL, stable ordering, and checked returned rows.

يتحقق كود قاعدة البيانات الموثوق من القيم قبل الوصول، ويمرر القيم كمعاملات للاستعلام، ويضبط التثبيت والتراجع، ويفحص الحالة المخزنة بدلاً من الثقة برسالة نجاح.Reliable database code validates values before access, passes values as query parameters, controls commit and rollback, and checks the stored state rather than trusting a success message.

أمثلةExamples
INSERT ... VALUES (%s, %s, %s, %s) مع B-401/P-104/S-203/confirmed كمعاملاتINSERT ... VALUES (%s, %s, %s, %s) with B-401/P-104/S-203/confirmed as parameters

الشرائحSlides

نتيجة اليوم القابلة للملاحظةToday's observable result

  • أنشئ حجزاً اصطناعياً واحداً واعرض الحجوزات المخزنة باستخدام SQL ذي معاملات وترتيب ثابت وصفوف مرجعة متحقق منها.Create one synthetic booking and list stored bookings with parameterised SQL, stable ordering, and checked returned rows.

اطلب من متعلم توقع قيمة الإرجاع والصف المخزن قبل التنفيذ.Ask a learner to predict both the return value and stored row before execution.

فصل القيم عن SQLKeep values separate from SQL

  • INSERT ... VALUES (%s, %s, %s, %s) مع B-401/P-104/S-203/confirmed كمعاملاتINSERT ... VALUES (%s, %s, %s, %s) with B-401/P-104/S-203/confirmed as parameters

تتبع قيمة P-/S-/B- واحدة عبر التحقق والمعاملات ومعاملة قاعدة البيانات والنتيجة.Trace one P-/S-/B- value through validation, parameters, transaction, and result.

الإعدادات المحلية والصفوف الاصطناعيةLocal settings and synthetic rows

  • أبقِ DATABASE_DSN في إعدادات محلية مستبعدة. اعرض الكود بمسارات نسبية للمشروع والمعرفات الاصطناعية والمخرجات المحجوبة فقط.Keep DATABASE_DSN in ignored local settings. Show only project-relative code, synthetic identifiers, and redacted output.

نفّذ فحص بيانات دخول القاعدة والبيانات الحقيقية قبل المختبر.Run the database credential and real-data scan before the lab.

التدريب الموجّهGuided practice

  • استبدل إدخالاً مبنياً بدمج النص بعلامات موضعية وتوقع الصف المرجع وقارنه بالحالة المخزنة.Replace one string-built insert with placeholders, predict the returned row, and compare it with stored state.

ورقة العملWorksheet

  1. قدّم إعادة الكتابة من غير الآمن إلى ذي المعاملات وجدول المعاملات والقيم والصف المتوقع وسجل الإنشاء والعرض ومقارنة الصف المخزن.Submit the unsafe-to-parameterised rewrite, parameter/value table, predicted row, create/list transcript, and stored-row comparison.مرجع الدليل: w6d2-create-read-evidenceEvidence reference: w6d2-create-read-evidence

خطوات المختبرLab steps

  1. أعد العينة المقدمة واكتب قيمة الإرجاع والصفوف المخزنة المتوقعة قبل التنفيذ.Reset the supplied fixture and write the expected return value and stored rows before execution.
  2. نفّذ create_booking وlist_bookings وأنشئ B-401 واعرض بترتيب ثابت وأثبت مطابقة الصف المرجع لـPostgreSQL.Implement create_booking and list_bookings, create B-401, list in stable order, and prove the returned row matches PostgreSQL.
  3. شغّل الأمر أو الاختبار المركز مرتين وافحص الحالة المخزنة وأصلح أول حد منحرف في التحقق أو الاستعلام أو معاملة قاعدة البيانات فقط.Run the focused command or test twice, inspect stored state, and repair only the first divergent validation, query, or transaction boundary.
  4. احفظ الأوامر المحجوبة والمخرجات الاصطناعية ودليل الاختبار والتعليل وملاحظة استخدام الذكاء الاصطناعي أو عدم استخدامه فقط.Save only redacted commands, synthetic output, test evidence, reasoning, and the AI-use or non-use note.

البيانات الاصطناعيةSynthetic data

الإدخال المقدمSupplied inputالنوع المتوقعExpected kind
create B-401 P-104 S-203 confirmedaccepted
create B-402 P-104 S-203 unknownrejected
update B-999 cancelledrejected
reset fixture; list; update B-302 confirmed; reset fixture; listsummary

مسرد الإنجليزية التقنيةTechnical English glossary

  • استعلام تُمرر قيمه منفصلةparameterised query
  • موضع آمن لقيمة معاملplaceholder
  • أمر إنشاء صفINSERT
  • قراءة الصفوف المرجعةfetch

الخصوصيةPrivacy

استخدم صفوف الورشة المولدة المقدمة فقط. أبقِ بيانات الدخول وDATABASE_DSN ومخرجات الاتصال وأسماء المستخدمين وبيانات التسجيل الحقيقية خارج Git والأدلة.Use only the supplied generated workshop rows. Keep credentials, DATABASE_DSN, connection output, usernames, and real registration data outside Git and evidence.

ممارسة الذكاء الاصطناعيAI practice

يمكن للذكاء الاصطناعي مراجعة دالة قاعدة بيانات محجوبة واحدة بعد أن يتوقع المتعلم سلوكها. ولا يجوز أن ينشئ التحقق الكامل؛ وكل اقتراح مقبول يحتاج دليلاً محلياً من PostgreSQL والاختبارات.AI may review one redacted database function after the learner predicts its behaviour. It must not generate the complete checkpoint; every accepted suggestion requires local PostgreSQL and test evidence.

الاستدراكRecovery

خلال أسبوع واحد، أعد العينة المقدمة وصحح أول حد معطوب في التحقق أو المعامل أو معاملة قاعدة البيانات وأعد تشغيل مسار الإنشاء والقراءة والتحديث نفسه مرتين ثم أعد تقديم دليل الإنشاء والقراءة.Within one week, reset the supplied fixture, correct the first broken validation, parameter, or transaction boundary, rerun the same create/read/update path twice, and resubmit the create and read evidence.

أخطاء شائعة ينبغي ملاحظتهاCommon errors to notice

  • تُدمج القيم في نص SQL بدلاً من تمريرها منفصلة كمعاملات.Values are joined into SQL text instead of passed separately as parameters.
  • يعلن البرنامج النجاح دون فحص الصف المرجع أو المخزن.The program reports success without checking the returned or stored row.
  • تعتمد الاختبارات على صفوف تركها تشغيل سابق وتفشل عند التكرار.Tests depend on rows left by an earlier run and fail when repeated.
دليلي التعلّمي المُبلّغ عنه ذاتياًMy self-reported learning evidence

يُحفظ في هذا المتصفح فقط لدعم تعلّمك الشخصي. ليس حضوراً ولا درجة ولا نتيجة تحقق ولا سجلاً لشهادة.Saved only in this browser to support your own learning. It is not attendance, a score, a checkpoint result, or a certificate record.

جارٍ تحميل ملاحظاتك التعليمية المحلية…Loading your local learning notes…

اليوم 3Day 3

اليوم 3 — التحديث والتحقق والسجلات المفقودةDay 3 — update, validation, and missing records

ملخص الشرائحSlide summary

الأهدافObjectives

  • تحقق من الحالة قبل الوصول وحدّث حجزاً واحداً في معاملة قاعدة بيانات مضبوطة وأعد نتيجة واضحة لعدم التطابق مع معرف مفقود.Validate status before access, update one booking in a controlled transaction, and return a clear no-match result for a missing identifier.
  • اشرح الأمر والتحقق والاستعلام ومعاملة قاعدة البيانات والنتيجة المخزنة باستخدام معرفات اصطناعية وإعدادات محلية محجوبة فقط.Explain the command, validation, query, transaction, and stored result using only synthetic identifiers and redacted local settings.

المتطلبات المسبقةPrerequisites

  • اجتز تحقق الأسبوع الخامس للمخطط المُطبّع أو استخدم مسار الدعم المرتب.Pass the Week 5 normalised-schema checkpoint or use the arranged supported path.
  • افتح حزمة بداية الأسبوع السادس كما هي وحمّل عينة PostgreSQL النظيفة وأبقِ DATABASE_DSN في البيئة المحلية المستبعدة فقط.Open the exact Week 6 starter, load its clean PostgreSQL fixture, and keep DATABASE_DSN only in the ignored local environment.

الشروحاتExplanations

تحقق ثم حدّث ثم أثبتValidate, update, verify

تحقق من الحالة قبل الوصول وحدّث حجزاً واحداً في معاملة قاعدة بيانات مضبوطة وأعد نتيجة واضحة لعدم التطابق مع معرف مفقود.Validate status before access, update one booking in a controlled transaction, and return a clear no-match result for a missing identifier.

يتحقق كود قاعدة البيانات الموثوق من القيم قبل الوصول، ويمرر القيم كمعاملات للاستعلام، ويضبط التثبيت والتراجع، ويفحص الحالة المخزنة بدلاً من الثقة برسالة نجاح.Reliable database code validates values before access, passes values as query parameters, controls commit and rollback, and checks the stored state rather than trusting a success message.

أمثلةExamples
B-302 من waitlisted إلى confirmed؛ B-999 بلا تطابق؛ unknown مرفوضة قبل SQLB-302 waitlisted → confirmed; B-999 → no match; unknown → rejected before SQL

الشرائحSlides

نتيجة اليوم القابلة للملاحظةToday's observable result

  • تحقق من الحالة قبل الوصول وحدّث حجزاً واحداً في معاملة قاعدة بيانات مضبوطة وأعد نتيجة واضحة لعدم التطابق مع معرف مفقود.Validate status before access, update one booking in a controlled transaction, and return a clear no-match result for a missing identifier.

اطلب من متعلم توقع قيمة الإرجاع والصف المخزن قبل التنفيذ.Ask a learner to predict both the return value and stored row before execution.

الفشل بوضوح دون إفساد البياناتFail clearly without corrupting data

  • B-302 من waitlisted إلى confirmed؛ B-999 بلا تطابق؛ unknown مرفوضة قبل SQLB-302 waitlisted → confirmed; B-999 → no match; unknown → rejected before SQL

تتبع قيمة P-/S-/B- واحدة عبر التحقق والمعاملات ومعاملة قاعدة البيانات والنتيجة.Trace one P-/S-/B- value through validation, parameters, transaction, and result.

الإعدادات المحلية والصفوف الاصطناعيةLocal settings and synthetic rows

  • أبقِ DATABASE_DSN في إعدادات محلية مستبعدة. اعرض الكود بمسارات نسبية للمشروع والمعرفات الاصطناعية والمخرجات المحجوبة فقط.Keep DATABASE_DSN in ignored local settings. Show only project-relative code, synthetic identifiers, and redacted output.

نفّذ فحص بيانات دخول القاعدة والبيانات الحقيقية قبل المختبر.Run the database credential and real-data scan before the lab.

التدريب الموجّهGuided practice

  • رتب التحقق والاستعلام وفحص عدد الصفوف والتثبيت أو التراجع والنتيجة المرجعة للمسارات الثلاثة المنشورة.Order validation, query, row-count check, commit or rollback, and returned result for the three published paths.

ورقة العملWorksheet

  1. قدّم جدول قرار المسارات والصفوف قبل وبعد وقرارات معاملة قاعدة البيانات ومخرج الحالة غير الصالحة ومخرج المعرف المفقود ودليل الصفوف غير المتغيرة.Submit the path decision table, before/after rows, transaction decisions, invalid-status output, missing-ID output, and unchanged-row proof.مرجع الدليل: w6d3-update-failure-evidenceEvidence reference: w6d3-update-failure-evidence

خطوات المختبرLab steps

  1. أعد العينة المقدمة واكتب قيمة الإرجاع والصفوف المخزنة المتوقعة قبل التنفيذ.Reset the supplied fixture and write the expected return value and stored rows before execution.
  2. نفّذ update_booking_status وأثبت تحديث B-302 ونتيجة عدم تطابق B-999 ورفض الحالة unknown دون تغيير الصفوف الأخرى.Implement update_booking_status, prove the B-302 update, the B-999 no-match result, and the unknown-status rejection without changing other rows.
  3. شغّل الأمر أو الاختبار المركز مرتين وافحص الحالة المخزنة وأصلح أول حد منحرف في التحقق أو الاستعلام أو معاملة قاعدة البيانات فقط.Run the focused command or test twice, inspect stored state, and repair only the first divergent validation, query, or transaction boundary.
  4. احفظ الأوامر المحجوبة والمخرجات الاصطناعية ودليل الاختبار والتعليل وملاحظة استخدام الذكاء الاصطناعي أو عدم استخدامه فقط.Save only redacted commands, synthetic output, test evidence, reasoning, and the AI-use or non-use note.

البيانات الاصطناعيةSynthetic data

الإدخال المقدمSupplied inputالنوع المتوقعExpected kind
create B-401 P-104 S-203 confirmedaccepted
create B-402 P-104 S-203 unknownrejected
update B-999 cancelledrejected
reset fixture; list; update B-302 confirmed; reset fixture; listsummary

مسرد الإنجليزية التقنيةTechnical English glossary

  • تغييرات تثبت أو تتراجع معاًtransaction
  • تثبيت التغييرcommit
  • التراجع عن التغييرrollback
  • عدد الصفوف التي غيّرها الاستعلامrow count

الخصوصيةPrivacy

استخدم صفوف الورشة المولدة المقدمة فقط. أبقِ بيانات الدخول وDATABASE_DSN ومخرجات الاتصال وأسماء المستخدمين وبيانات التسجيل الحقيقية خارج Git والأدلة.Use only the supplied generated workshop rows. Keep credentials, DATABASE_DSN, connection output, usernames, and real registration data outside Git and evidence.

ممارسة الذكاء الاصطناعيAI practice

يمكن للذكاء الاصطناعي مراجعة دالة قاعدة بيانات محجوبة واحدة بعد أن يتوقع المتعلم سلوكها. ولا يجوز أن ينشئ التحقق الكامل؛ وكل اقتراح مقبول يحتاج دليلاً محلياً من PostgreSQL والاختبارات.AI may review one redacted database function after the learner predicts its behaviour. It must not generate the complete checkpoint; every accepted suggestion requires local PostgreSQL and test evidence.

الاستدراكRecovery

خلال أسبوع واحد، أعد العينة المقدمة وصحح أول حد معطوب في التحقق أو المعامل أو معاملة قاعدة البيانات وأعد تشغيل مسار الإنشاء والقراءة والتحديث نفسه مرتين ثم أعد تقديم دليل التحديث ومسارات الفشل.Within one week, reset the supplied fixture, correct the first broken validation, parameter, or transaction boundary, rerun the same create/read/update path twice, and resubmit the update and failure-path evidence.

أخطاء شائعة ينبغي ملاحظتهاCommon errors to notice

  • تُدمج القيم في نص SQL بدلاً من تمريرها منفصلة كمعاملات.Values are joined into SQL text instead of passed separately as parameters.
  • يعلن البرنامج النجاح دون فحص الصف المرجع أو المخزن.The program reports success without checking the returned or stored row.
  • تعتمد الاختبارات على صفوف تركها تشغيل سابق وتفشل عند التكرار.Tests depend on rows left by an earlier run and fail when repeated.
دليلي التعلّمي المُبلّغ عنه ذاتياًMy self-reported learning evidence

يُحفظ في هذا المتصفح فقط لدعم تعلّمك الشخصي. ليس حضوراً ولا درجة ولا نتيجة تحقق ولا سجلاً لشهادة.Saved only in this browser to support your own learning. It is not attendance, a score, a checkpoint result, or a certificate record.

جارٍ تحميل ملاحظاتك التعليمية المحلية…Loading your local learning notes…

اليوم 4Day 4

اليوم 4 — أوامر الواجهة والاختبارات القابلة للتكرارDay 4 — CLI commands and repeatable tests

ملخص الشرائحSlide summary

الأهدافObjectives

  • اربط أوامر create وlist وupdate بدوال صغيرة واختبر المسارات الصالحة وغير الصالحة والمفقودة والمتكررة على عينة نظيفة.Map create, list, and update commands to small functions and test valid, invalid, missing, and repeated clean-fixture paths.
  • اشرح الأمر والتحقق والاستعلام ومعاملة قاعدة البيانات والنتيجة المخزنة باستخدام معرفات اصطناعية وإعدادات محلية محجوبة فقط.Explain the command, validation, query, transaction, and stored result using only synthetic identifiers and redacted local settings.

المتطلبات المسبقةPrerequisites

  • اجتز تحقق الأسبوع الخامس للمخطط المُطبّع أو استخدم مسار الدعم المرتب.Pass the Week 5 normalised-schema checkpoint or use the arranged supported path.
  • افتح حزمة بداية الأسبوع السادس كما هي وحمّل عينة PostgreSQL النظيفة وأبقِ DATABASE_DSN في البيئة المحلية المستبعدة فقط.Open the exact Week 6 starter, load its clean PostgreSQL fixture, and keep DATABASE_DSN only in the ignored local environment.

الشروحاتExplanations

قابلية التكرار دليلRepeatability is evidence

اربط أوامر create وlist وupdate بدوال صغيرة واختبر المسارات الصالحة وغير الصالحة والمفقودة والمتكررة على عينة نظيفة.Map create, list, and update commands to small functions and test valid, invalid, missing, and repeated clean-fixture paths.

يتحقق كود قاعدة البيانات الموثوق من القيم قبل الوصول، ويمرر القيم كمعاملات للاستعلام، ويضبط التثبيت والتراجع، ويفحص الحالة المخزنة بدلاً من الثقة برسالة نجاح.Reliable database code validates values before access, passes values as query parameters, controls commit and rollback, and checks the stored state rather than trusting a success message.

أمثلةExamples
إعادة ← 4 صفوف ← إنشاء B-401 ← 5 صفوف ← تحديث ← إعادة ← 4 صفوف أصليةreset → 4 rows → create B-401 → 5 rows → update → reset → original 4 rows

الشرائحSlides

نتيجة اليوم القابلة للملاحظةToday's observable result

  • اربط أوامر create وlist وupdate بدوال صغيرة واختبر المسارات الصالحة وغير الصالحة والمفقودة والمتكررة على عينة نظيفة.Map create, list, and update commands to small functions and test valid, invalid, missing, and repeated clean-fixture paths.

اطلب من متعلم توقع قيمة الإرجاع والصف المخزن قبل التنفيذ.Ask a learner to predict both the return value and stored row before execution.

أمر واحد ودالة واحدة وعينة معروفةOne command, one function, known fixture

  • إعادة ← 4 صفوف ← إنشاء B-401 ← 5 صفوف ← تحديث ← إعادة ← 4 صفوف أصليةreset → 4 rows → create B-401 → 5 rows → update → reset → original 4 rows

تتبع قيمة P-/S-/B- واحدة عبر التحقق والمعاملات ومعاملة قاعدة البيانات والنتيجة.Trace one P-/S-/B- value through validation, parameters, transaction, and result.

الإعدادات المحلية والصفوف الاصطناعيةLocal settings and synthetic rows

  • أبقِ DATABASE_DSN في إعدادات محلية مستبعدة. اعرض الكود بمسارات نسبية للمشروع والمعرفات الاصطناعية والمخرجات المحجوبة فقط.Keep DATABASE_DSN in ignored local settings. Show only project-relative code, synthetic identifiers, and redacted output.

نفّذ فحص بيانات دخول القاعدة والبيانات الحقيقية قبل المختبر.Run the database credential and real-data scan before the lab.

التدريب الموجّهGuided practice

  • اربط كل وسيط للواجهة بمدخل دالة متحقق منه وصمّم إعداد العينة وتنظيفها قبل كتابة التأكيدات.Map each CLI argument to one validated function input and design fixture setup and cleanup before writing assertions.

ورقة العملWorksheet

  1. قدّم خريطة الأمر والدالة ودورة العينة وتأكيدات المسارات الخمسة وتشغيلين ناجحين متطابقين وتشخيص أول فشل.Submit the command/function map, fixture lifecycle, five path assertions, two identical passing runs, and first-failure diagnosis.مرجع الدليل: w6d4-cli-tests-evidenceEvidence reference: w6d4-cli-tests-evidence

خطوات المختبرLab steps

  1. أعد العينة المقدمة واكتب قيمة الإرجاع والصفوف المخزنة المتوقعة قبل التنفيذ.Reset the supplied fixture and write the expected return value and stored rows before execution.
  2. أكمل اختبارات قاعدة البيانات الثلاثة الناقصة وشغّلها مرتين من العينة الموثقة وقارن الصفوف الدقيقة بدلاً من نص النجاح.Complete the three missing database tests, run them twice from the documented fixture, and compare exact rows rather than success text.
  3. شغّل الأمر أو الاختبار المركز مرتين وافحص الحالة المخزنة وأصلح أول حد منحرف في التحقق أو الاستعلام أو معاملة قاعدة البيانات فقط.Run the focused command or test twice, inspect stored state, and repair only the first divergent validation, query, or transaction boundary.
  4. احفظ الأوامر المحجوبة والمخرجات الاصطناعية ودليل الاختبار والتعليل وملاحظة استخدام الذكاء الاصطناعي أو عدم استخدامه فقط.Save only redacted commands, synthetic output, test evidence, reasoning, and the AI-use or non-use note.

البيانات الاصطناعيةSynthetic data

الإدخال المقدمSupplied inputالنوع المتوقعExpected kind
create B-401 P-104 S-203 confirmedaccepted
create B-402 P-104 S-203 unknownrejected
update B-999 cancelledrejected
reset fixture; list; update B-302 confirmed; reset fixture; listsummary

مسرد الإنجليزية التقنيةTechnical English glossary

  • فعل مسمى في واجهة سطر الأوامرcommand
  • بيانات اختبار معروفةfixture
  • مقارنة آلية بين الفعلي والمتوقعassertion
  • يعطي النتيجة نفسها من الحالة نفسهاrepeatable

الخصوصيةPrivacy

استخدم صفوف الورشة المولدة المقدمة فقط. أبقِ بيانات الدخول وDATABASE_DSN ومخرجات الاتصال وأسماء المستخدمين وبيانات التسجيل الحقيقية خارج Git والأدلة.Use only the supplied generated workshop rows. Keep credentials, DATABASE_DSN, connection output, usernames, and real registration data outside Git and evidence.

ممارسة الذكاء الاصطناعيAI practice

يمكن للذكاء الاصطناعي مراجعة دالة قاعدة بيانات محجوبة واحدة بعد أن يتوقع المتعلم سلوكها. ولا يجوز أن ينشئ التحقق الكامل؛ وكل اقتراح مقبول يحتاج دليلاً محلياً من PostgreSQL والاختبارات.AI may review one redacted database function after the learner predicts its behaviour. It must not generate the complete checkpoint; every accepted suggestion requires local PostgreSQL and test evidence.

الاستدراكRecovery

خلال أسبوع واحد، أعد العينة المقدمة وصحح أول حد معطوب في التحقق أو المعامل أو معاملة قاعدة البيانات وأعد تشغيل مسار الإنشاء والقراءة والتحديث نفسه مرتين ثم أعد تقديم دليل اختبارات الواجهة القابلة للتكرار.Within one week, reset the supplied fixture, correct the first broken validation, parameter, or transaction boundary, rerun the same create/read/update path twice, and resubmit the repeatable cli test evidence.

أخطاء شائعة ينبغي ملاحظتهاCommon errors to notice

  • تُدمج القيم في نص SQL بدلاً من تمريرها منفصلة كمعاملات.Values are joined into SQL text instead of passed separately as parameters.
  • يعلن البرنامج النجاح دون فحص الصف المرجع أو المخزن.The program reports success without checking the returned or stored row.
  • تعتمد الاختبارات على صفوف تركها تشغيل سابق وتفشل عند التكرار.Tests depend on rows left by an earlier run and fail when repeated.
دليلي التعلّمي المُبلّغ عنه ذاتياًMy self-reported learning evidence

يُحفظ في هذا المتصفح فقط لدعم تعلّمك الشخصي. ليس حضوراً ولا درجة ولا نتيجة تحقق ولا سجلاً لشهادة.Saved only in this browser to support your own learning. It is not attendance, a score, a checkpoint result, or a certificate record.

جارٍ تحميل ملاحظاتك التعليمية المحلية…Loading your local learning notes…

اليوم 5Day 5

اليوم 5 — التحقق الفردي لواجهة قاعدة البيانات المختبرةDay 5 — individual tested database CLI checkpoint

ملخص الشرائحSlide summary

الأهدافObjectives

  • نفّذ دوال قاعدة البيانات الأربع بصورة فردية واعرض الإنشاء والقراءة والتحديث فقط وتعامل مع المسارين غير الصالح والمفقود وأنجح اختبارات قابلة للتكرار واشرح اختيارات معاملة قاعدة البيانات.Individually implement the four database functions, demonstrate create/read/update only, handle invalid and missing paths, pass repeatable tests, and explain transaction choices.
  • اشرح الأمر والتحقق والاستعلام ومعاملة قاعدة البيانات والنتيجة المخزنة باستخدام معرفات اصطناعية وإعدادات محلية محجوبة فقط.Explain the command, validation, query, transaction, and stored result using only synthetic identifiers and redacted local settings.

المتطلبات المسبقةPrerequisites

  • اجتز تحقق الأسبوع الخامس للمخطط المُطبّع أو استخدم مسار الدعم المرتب.Pass the Week 5 normalised-schema checkpoint or use the arranged supported path.
  • افتح حزمة بداية الأسبوع السادس كما هي وحمّل عينة PostgreSQL النظيفة وأبقِ DATABASE_DSN في البيئة المحلية المستبعدة فقط.Open the exact Week 6 starter, load its clean PostgreSQL fixture, and keep DATABASE_DSN only in the ignored local environment.

الشروحاتExplanations

تثبت الحالة المخزنة انتقال التعلم الفرديStored state proves independent transfer

نفّذ دوال قاعدة البيانات الأربع بصورة فردية واعرض الإنشاء والقراءة والتحديث فقط وتعامل مع المسارين غير الصالح والمفقود وأنجح اختبارات قابلة للتكرار واشرح اختيارات معاملة قاعدة البيانات.Individually implement the four database functions, demonstrate create/read/update only, handle invalid and missing paths, pass repeatable tests, and explain transaction choices.

يتحقق كود قاعدة البيانات الموثوق من القيم قبل الوصول، ويمرر القيم كمعاملات للاستعلام، ويضبط التثبيت والتراجع، ويفحص الحالة المخزنة بدلاً من الثقة برسالة نجاح.Reliable database code validates values before access, passes values as query parameters, controls commit and rollback, and checks the stored state rather than trusting a success message.

أمثلةExamples
إعداد مستبعد + 4 دوال مكتملة + سجل إنشاء/قراءة/تحديث + دليل غير صالح/مفقود + تشغيلان نظيفان للاختباراتignored setting + 4 completed functions + CRU transcript + invalid/missing evidence + two clean test runs

الشرائحSlides

نتيجة اليوم القابلة للملاحظةToday's observable result

  • نفّذ دوال قاعدة البيانات الأربع بصورة فردية واعرض الإنشاء والقراءة والتحديث فقط وتعامل مع المسارين غير الصالح والمفقود وأنجح اختبارات قابلة للتكرار واشرح اختيارات معاملة قاعدة البيانات.Individually implement the four database functions, demonstrate create/read/update only, handle invalid and missing paths, pass repeatable tests, and explain transaction choices.

اطلب من متعلم توقع قيمة الإرجاع والصف المخزن قبل التنفيذ.Ask a learner to predict both the return value and stored row before execution.

التنفيذ والتخزين والتحقق والشرح بصورة فرديةImplement, store, verify, and explain independently

  • إعداد مستبعد + 4 دوال مكتملة + سجل إنشاء/قراءة/تحديث + دليل غير صالح/مفقود + تشغيلان نظيفان للاختباراتignored setting + 4 completed functions + CRU transcript + invalid/missing evidence + two clean test runs

تتبع قيمة P-/S-/B- واحدة عبر التحقق والمعاملات ومعاملة قاعدة البيانات والنتيجة.Trace one P-/S-/B- value through validation, parameters, transaction, and result.

الإعدادات المحلية والصفوف الاصطناعيةLocal settings and synthetic rows

  • أبقِ DATABASE_DSN في إعدادات محلية مستبعدة. اعرض الكود بمسارات نسبية للمشروع والمعرفات الاصطناعية والمخرجات المحجوبة فقط.Keep DATABASE_DSN in ignored local settings. Show only project-relative code, synthetic identifiers, and redacted output.

نفّذ فحص بيانات دخول القاعدة والبيانات الحقيقية قبل المختبر.Run the database credential and real-data scan before the lab.

التدريب الموجّهGuided practice

  • اقرأ المعيار وتوقع الحالات الأربع المنشورة وحدد الحذف ودليل بيانات الدخول المحظورين وخطط لإعادة العينة قبل البناء المحدد بالوقت.Read the rubric, predict all four published cases, identify forbidden delete and credential evidence, and plan fixture reset before the timed build.

ورقة العملWorksheet

  1. أكمل سجل التحقق الفردي: الإعداد المستبعد والدوال الأربع والمعاملات وقرارات معاملة قاعدة البيانات والصفوف المخزنة الدقيقة والمسارات الخمسة وتشغيلي الاختبار وفحص الخصوصية وملاحظة الذكاء الاصطناعي والشرح المباشر.Complete the individual checkpoint record: ignored setting, four functions, parameters, transaction decisions, exact stored rows, five paths, two test runs, privacy scan, AI note, and live explanation.مرجع الدليل: w6d5-checkpoint-evidenceEvidence reference: w6d5-checkpoint-evidence

خطوات المختبرLab steps

  1. أعد العينة المقدمة واكتب قيمة الإرجاع والصفوف المخزنة المتوقعة قبل التنفيذ.Reset the supplied fixture and write the expected return value and stored rows before execution.
  2. من حزمة البداية دون تغيير، أكمل دوال قاعدة البيانات واختباراتها وشغّل create/list/update مع المسارين غير الصالح والمفقود وأعد التشغيل من عينة نظيفة واشرح معاملاً ومعاملة قاعدة بيانات واحدة مباشرة.From the unchanged starter, complete the database functions and tests, run create/list/update plus invalid and missing paths, rerun from a clean fixture, and explain one parameter and transaction live.
  3. شغّل الأمر أو الاختبار المركز مرتين وافحص الحالة المخزنة وأصلح أول حد منحرف في التحقق أو الاستعلام أو معاملة قاعدة البيانات فقط.Run the focused command or test twice, inspect stored state, and repair only the first divergent validation, query, or transaction boundary.
  4. احفظ الأوامر المحجوبة والمخرجات الاصطناعية ودليل الاختبار والتعليل وملاحظة استخدام الذكاء الاصطناعي أو عدم استخدامه فقط.Save only redacted commands, synthetic output, test evidence, reasoning, and the AI-use or non-use note.

البيانات الاصطناعيةSynthetic data

الإدخال المقدمSupplied inputالنوع المتوقعExpected kind
create B-401 P-104 S-203 confirmedaccepted
create B-402 P-104 S-203 unknownrejected
update B-999 cancelledrejected
reset fixture; list; update B-302 confirmed; reset fixture; listsummary

مسرد الإنجليزية التقنيةTechnical English glossary

  • قناة تواصل مع قاعدة البياناتconnection
  • استعلام بقيم منفصلةparameterised query
  • تغييرات مضبوطة كوحدةtransaction
  • إنشاء وقراءة وتحديثCRU
  • عينة اختبار معروفةfixture

الخصوصيةPrivacy

استخدم صفوف الورشة المولدة المقدمة فقط. أبقِ بيانات الدخول وDATABASE_DSN ومخرجات الاتصال وأسماء المستخدمين وبيانات التسجيل الحقيقية خارج Git والأدلة.Use only the supplied generated workshop rows. Keep credentials, DATABASE_DSN, connection output, usernames, and real registration data outside Git and evidence.

ممارسة الذكاء الاصطناعيAI practice

يمكن للذكاء الاصطناعي مراجعة دالة قاعدة بيانات محجوبة واحدة بعد أن يتوقع المتعلم سلوكها. ولا يجوز أن ينشئ التحقق الكامل؛ وكل اقتراح مقبول يحتاج دليلاً محلياً من PostgreSQL والاختبارات.AI may review one redacted database function after the learner predicts its behaviour. It must not generate the complete checkpoint; every accepted suggestion requires local PostgreSQL and test evidence.

الاستدراكRecovery

خلال أسبوع واحد، أعد العينة المقدمة وصحح أول حد معطوب في التحقق أو المعامل أو معاملة قاعدة البيانات وأعد تشغيل مسار الإنشاء والقراءة والتحديث نفسه مرتين ثم أعد تقديم دليل تحقق الأسبوع السادس الفردي.Within one week, reset the supplied fixture, correct the first broken validation, parameter, or transaction boundary, rerun the same create/read/update path twice, and resubmit the individual week 6 checkpoint evidence.

أخطاء شائعة ينبغي ملاحظتهاCommon errors to notice

  • تُدمج القيم في نص SQL بدلاً من تمريرها منفصلة كمعاملات.Values are joined into SQL text instead of passed separately as parameters.
  • يعلن البرنامج النجاح دون فحص الصف المرجع أو المخزن.The program reports success without checking the returned or stored row.
  • تعتمد الاختبارات على صفوف تركها تشغيل سابق وتفشل عند التكرار.Tests depend on rows left by an earlier run and fail when repeated.
دليلي التعلّمي المُبلّغ عنه ذاتياًMy self-reported learning evidence

يُحفظ في هذا المتصفح فقط لدعم تعلّمك الشخصي. ليس حضوراً ولا درجة ولا نتيجة تحقق ولا سجلاً لشهادة.Saved only in this browser to support your own learning. It is not attendance, a score, a checkpoint result, or a certificate record.

جارٍ تحميل ملاحظاتك التعليمية المحلية…Loading your local learning notes…