Skip to content · ⁨الانتقال إلى المحتوى⁩
Subjects · ⁨المواد⁩

GAC Computing · ⁨علوم الحاسب (GAC)⁩

Tips

GAC Computing هي سلم ثلاثي الخطوات. GAC005 يتعلق باستخدام الحاسوب للأعمال الأكاديمية، مما يعني محو الأمية البحثية، والكتابة التعاونية، وإدارة المشاريع، والعروض التقديمية، والفيديو. يبني GAC011 ويبوّل موقعاً حقيقياً باستخدام HTML وCSS وJavaScript. يتعمق GAC017 خلف الكواليس، في برمجة الواجهة الخلفية، وقواعد البيانات، وSQL، ونظرة أولى لعلم البيانات.

لا يتم الإجابة هنا ورقياً. تُحكم على كل وحدة على أساس المنتجات التي تنتجها، وهي مجموعة من الشرائح، وموقع إلكتروني، وقاعدة بيانات تحتوي على عدة جداول، وتحليل لمجموعة بيانات حقيقية، لذا يتم العمل على الحاسوب وتقدم كملفات.

الوحدات الثلاث تراكمية بالمعنى الحرفي. الموقع الذي تصممه في GAC011 هو الشيء الذي يمنحه GAC017 واجهة خلفية وقاعدة بيانات، لذا فإن القصة القصصية الضعيفة في البداية تكلف وقتاً لاحقاً.

العرض التقديمي يُحسب بقدر الكود. كلا المخرجات التصميمية والمخرجات التواصلية محددة في الوحدات، وتُخصم درجات عن صفحة تعمل لا يمكن لأحد التنقل فيها.

يمكنك تشغيل تمارين HTML وCSS وJavaScript وSQL مباشرة في ملعب أكواد هذا الموقع، ثم نقل نفس التقنيات إلى مشروعك المُقيَّم الخاص بك.

Train all vocabulary · ⁨تدريب كل المفردات⁩
  • 1

    GAC005 Computing I: Introduction to Computing for Academic Study · ⁨GAC005 الحوسبة I: مقدمة في الحوسبة للدراسة الأكاديمية⁩

    1.1

    What this module is, and how it is marked · ⁨ما هي هذه الوحدة وكيفية تقييمها⁩

    English

    GAC005 is not a programming course. It is about using a computer to do academic work well: finding sources you can trust, writing with other people, running a small project, and presenting the result.

    Everything is assessed on what you produce. A typical set is a search and writing task, a group project 小组项目 with a presentation, a video 视频, and ongoing coursework 平时作业. There is no written examination, so the files you submit are the whole mark.

    • Work is judged on the artefact and on the process. Keep drafts and notes; a group project is marked partly on your contribution to it.
    • ⚠ Academic integrity 学术诚信 applies to media as much as to text. An image, a chart or a clip taken from the web needs a source, and a licence that allows the use.
    العربية

    GAC005 ليس course برمجة. بل是关于 استخدام الحاسوب للقيام بالأعمال الأكاديمية بشكل جيد: عرض النتيجة. وعرض النتيجة.

    يتم تقييم كل شيء بناءً على ما تنتجه. المجموعة النموذجية هي مهمة بحث وكتابة، مشروع جماعي يتضمن عرضًا تقديميًا، وفيديوًا، وأعمالاً مدرسية مستمرة. لا يوجد امتحان مكتوب، لذا فإن الملفات التي تقدمها تمثل الدرجة الكاملة.

    • يُقاس العمل بناءً على المنتج النهائي وعلى العملية. احتفظ بالمسودات والملاحظات؛ المشروع الجماعي يُدرج جزئيًا بناءً على مساهمتك فيه.
    • ⚠ ينطبق النزاهة الأكاديمية على الوسائط كما ينطبق على النصوص. الصورة أو الرسم البياني أو القطعة المأخوذة من الويب تحتاج إلى مصدر، ورخصة تسمح بالاستخدام.
    1.1

    Search literacy · ⁨محو الأمية البحثية⁩

    Syllabus · ⁨المنهج⁩
    English

    Unit 1 of 6 in GAC005 Computing I: Introduction to Computing for Academic Study (Level I). The module is taught over about 40 class hours plus 20 hours of independent study, and is assessed at the teaching centre and moderated by ACT — there is no external exam.

    Module purpose: On completion of this module, students should be able to confidently and ethically use information technologies for individual and collaborative formal writing; and use the Internet effectively for academic study. More specifically, students will be able to access, navigate and download information from the Internet in order to enhance academic research, writing and presentation skills.

    The module outcomes this unit works towards:

    Learning Objective GAC005.1: Understand, evaluate and discriminate between available and emerging technologies to use, store and protect information.

    Learning Objective GAC005.2: Use the Internet to research, interpret and interactively and ethically manage academic projects.

    العربية

    وحدة 1 من 6 في GAC005 الحاسوب I: مقدمة في الحاسوب للدراسة الأكاديمية (المستوى I). يُدرَّس الوحدة على مدار حوالي 40 ساعات دروس بالإضافة إلى 20 ساعات من الدراسة المستقلة، وتُقيَّم في مركز التدريس وتُعدّل بواسطة ACT — لا يوجد امتحان خارجي.

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

    مخرجات الوحدة التي تسهم فيها هذه الوحدة:

    هدف التعلم GAC005.1: فهم وتقييم والتمييز بين التقنيات المتاحة والمتطورة لاستخدامها وتخزين وحماية المعلومات.

    هدف التعلم GAC005.2: استخدام الإنترنت للبحث والتفسير وإدارة المشاريع الأكاديمية بشكل تفاعلي وأخلاقي.

    Source: Cambridge International syllabus · ⁨المصدر: منهج كامبريدج الدولي⁩

    English

    Anyone can find a page. The skill being assessed is finding a source you can defend.

    • Search with keywords 关键词, not sentences. Pick the nouns that must appear in a good answer and drop everything else.
    • Operators 运算符 narrow a search: quotation marks force an exact phrase, a minus sign excludes a word, and site: restricts results to one domain.
    • Judge a source before you use it. Authority 权威性 asks who wrote it and what they know; currency 时效性 asks how old it is; bias 偏见 asks what the author wants you to think.
    • A primary source 一手资料 is original material, such as the report of an experiment. A secondary source 二手资料 describes or interprets it, such as a news article about that report.
    • Search results are ranked, not verified — position on the page says nothing about accuracy.

    Worked example. The question is whether electric cars produce less carbon dioxide overall than petrol cars. A search for the sentence returns opinion pages. A search for the keywords lifecycle emissions electric vehicle comparison returns studies, and adding site:gov narrows it to government reports whose authors and methods are stated. The second search is not cleverer, it is more specific about what a usable answer looks like.

    العربية

    يمكن لأي شخص العثور على صفحة. المهارة التي يتم تقييمها هي العثور على مصدر يمكنك الدفاع عنه.

    • ابحث باستخدام كلمات مفتاحية، وليس جمل. اختر الأسماء التي يجب أن تظهر في إجابة جيدة وتجاهل كل ما تبقى.
    • المؤثرات (Operators) تضيق نطاق البحث: علامات التنصيص تفرض عبارة دقيقة، والعلامة السالبة تستبعد كلمة، وsite: يقيّد النتائج بنطاق واحد.
    • قيّم المصدر قبل استخدامه. السلطة تسأل من كتبه وما الذي يعرفه؛ الحداثة تسأل عن عمره؛ التحيز يسأل عما يريد المؤلف أن تفكر فيه. العملة تسأل عن عمرها؛ التحيز يسأل عما يريده الكاتب منك التفكير فيه.
    • المصدر الأولي هو مواد أصلية، مثل تقرير تجربة. المصدر الثانوي يصفه أو يفسره، مثل مقال صحفي حول ذلك التقرير. تقرير.
    • نتائج البحث مُرتبة، وليست مُتحققة — الموقع على الصفحة لا يقول شيئًا عن الدقة.

    مثال محلول. السؤال هو ما إذا كانت السيارات الكهربائية تنتج ثاني أكسيد الكربون بشكل إجمالي أقل من سيارات البنزين. البحث عن الجملة يعيد صفحات رأي. البحث عن الكلمات المفتاحية lifecycle emissions electric vehicle comparison يعيد الدراسات، وإضافة site:gov يضيق النطاق إلى تقارير حكومية تم فيها ذكر مؤلفيها وطرقهم. البحث الثاني ليس أذكى، بل أكثر تحديدًا فيما يبدو عليه الإجابة القابلة للاستخدام. البحث ليس أكثر ذكاءً، بل more specific about what a usable answer looks like.

    Vocabulary · ⁨مفردات⁩ Train · ⁨تدريب⁩
    English العربية
    group project/ɡruːp ˈprɒdʒekt/ مشروع جماعي
    video/ˈvɪdɪəʊ/ فيديو
    coursework/ˈkɔːsjuːɜːk/ أعمال الكورس
    Academic integrity/ˌækəˈdemɪk ɪnˈteɡrɪti/ النزاهة الأكاديمية
    keywords/ˈkiːwɜːdz/ الكلمات المفتاحية
    Operators/ˈɒpəreɪtəz/ المعاملات
    Authority/əˈθɒrɪti/ السلطة
    currency/ˈkʌrənsi/ العملة
    bias/ˈbaɪəs/ تحيزاً
    primary source/ˈpraɪməri sɔːs/ المصدر الأولي
    secondary source/ˈsekəndəri sɔːs/ المصدر الثانوي
    cloud document/klaʊd ˈdɒkjuːmənt/ وثيقة سحابية
    Version history/ˈvɜːʃn ˈhɪstəri/ تاريخ الإصدار
    Comments/ˈkɒments/ التعليقات
    suggestions/səˈdʒestʃnz/ اقتراحات
    structure/ˈstrʌktʃə/ الهيكل
    style/staɪl/ العنق
    scope/skəʊp/ نطاق
    Milestones/ˈmaɪlstəʊnz/ المحطات الرئيسية
    roles/rəʊlz/ أدوار
    team contract/tiːm ˈkɒntrækt/ عقد الفريق
    dependencies/dɪˈpendənsiz/ الاعتمادات
    message/ˈmesɪdʒ/ رسالة
    Bullet points/ˈbʊlɪt pɔɪnts/ نقاط
    Contrast/ˈkɒntræst/ التباين
    1.2

    Collaborative writing · ⁨الكتابة التعاونية⁩

    Syllabus · ⁨المنهج⁩
    English

    Unit 2 of 6 in GAC005 Computing I: Introduction to Computing for Academic Study (Level I). The module is taught over about 40 class hours plus 20 hours of independent study, and is assessed at the teaching centre and moderated by ACT — there is no external exam.

    The module outcomes this unit works towards:

    Learning Objective GAC005.3: Create, revise and publish academic documents using a word processing program.

    Learning Objective GAC005.5: Use open source platforms to collaboratively create and share academic documents.

    العربية

    وحدة 2 من 6 في GAC005 الحاسوب I: مقدمة في الحاسوب للدراسة الأكاديمية (المستوى I). يُدرَّس الوحدة على مدار حوالي 40 ساعات دروس بالإضافة إلى 20 ساعات من الدراسة المستقلة، وتُقيَّم في مركز التدريس وتُعدّل بواسطة ACT — لا يوجد امتحان خارجي.

    مخرجات الوحدة التي تسهم فيها هذه الوحدة:

    هدف التعلم GAC005.3: إنشاء المستندات الأكاديمية ومراجعتها ونشرها باستخدام برنامج معالجة النصوص.

    هدف التعلم GAC005.5: استخدام المنصات مفتوحة المصدر لإنشاء المستندات الأكاديمية ومشاركتها بشكل تعاوني.

    Source: Cambridge International syllabus · ⁨المصدر: منهج كامبريدج الدولي⁩

    English

    Writing together is a normal way to work, and the module assesses how you do it.

    • A cloud document 云端文档 holds one live copy that everyone edits, which removes the "final_v3_really_final" problem entirely.
    • Version history 版本历史 records who changed what and when. It protects you: your contribution is visible even when a file looks like one voice.
    • Comments 批注 propose a change without making it; suggestions 建议模式 make a change the owner can accept or reject. Use them instead of overwriting someone's paragraph.
    • Agree the structure 结构 before anyone writes. Splitting a document by section works; splitting it by sentence does not.
    • Keep one style 文体: decide on person, tense and spelling at the start, and give one person the final read.
    العربية

    الكتابة معًا طريقة عمل طبيعية، ويقيّم هذا الوحدة كيفية القيام بذلك.

    • وثيقة سحابية تحتفظ بنسخة واحدة حية يقوم الجميع بتحريرها، مما يلغي مشكلة "final_v3_really_final" تمامًا.
    • سجل الإصدارات يسجل من غيّر ماذا ومتى. إنه يحميك: مساهمتك مرئية حتى عندما يبدو الملف وكأنه صوت واحد. المساهمة مرئية even when a file looks like one voice.
    • التعليقات تقترح تغييرًا دون تطبيقه؛ الاقتراحات تطبق تغييرًا يمكن للمالك قبوله أو رفضه. استخدمها بدلاً من استبدال فقرة شخص ما. يمكن للمالك قبولها أو رفضها. استخدم them instead of overwriting someone's paragraph.
    • اتفق على الهيكل قبل أن يكتب أي شخص. تقسيم المستند حسب الأقسام يعمل؛ تقسيمه حسب الجمل لا يعمل. تقسيمها إلى جمل does not.
    • حافظ على نمط واحد: حدد الشخص والزمان والإملاء في البداية، وأعطي شخصًا واحدًا القراءة النهائية. الشخص القراءة النهائية.
    1.3

    Project management · ⁨إدارة المشروع⁩

    Syllabus · ⁨المنهج⁩
    English

    Unit 3 of 6 in GAC005 Computing I: Introduction to Computing for Academic Study (Level I). The module is taught over about 40 class hours plus 20 hours of independent study, and is assessed at the teaching centre and moderated by ACT — there is no external exam.

    The module outcomes this unit works towards:

    Learning Objective GAC005.2: Use the Internet to research, interpret and interactively and ethically manage academic projects.

    Learning Objective GAC005.5: Use open source platforms to collaboratively create and share academic documents.

    العربية

    وحدة 3 من 6 في GAC005 الحاسوب I: مقدمة في الحاسوب للدراسة الأكاديمية (المستوى I). يُدرَّس الوحدة على مدار حوالي 40 ساعات دروس بالإضافة إلى 20 ساعات من الدراسة المستقلة، وتُقيَّم في مركز التدريس وتُعدّل بواسطة ACT — لا يوجد امتحان خارجي.

    مخرجات الوحدة التي تسهم فيها هذه الوحدة:

    هدف التعلم GAC005.2: استخدام الإنترنت للبحث والتفسير وإدارة المشاريع الأكاديمية بشكل تفاعلي وأخلاقي.

    هدف التعلم GAC005.5: استخدام المنصات مفتوحة المصدر لإنشاء المستندات الأكاديمية ومشاركتها بشكل تعاوني.

    Source: Cambridge International syllabus · ⁨المصدر: منهج كامبريدج الدولي⁩

    English

    A group project fails on organisation far more often than on ability.

    • A scope 范围 statement says what the project will and will not do. Most overrun starts as an unwritten extra.
    • Milestones 里程碑 are checkpoints with dates. They convert "we have three weeks" into something you can be behind on early enough to fix.
    • Assign roles 分工 to people, not tasks to the group. A task owned by everyone is owned by nobody.
    • A team contract 团队协议 records how the group will meet, decide, and handle a member who does not deliver. Writing it while everyone is friendly is the point.
    • Track dependencies 依赖关系: the slide deck cannot be finished before the data is collected, so the data has the earlier deadline.

    Worked example. A four-person project to survey and present student transport habits, due in week 6. Working backwards: rehearse in week 6, build slides in week 5, analyse in week 4, collect responses in weeks 2 to 3, write the questions in week 1. The questions are the riskiest item because everything downstream depends on them, so they get reviewed by the whole group and nothing else in week 1 does.

    العربية

    يفشل المشروع الجماعي بسبب التنظيم في الغالب أكثر من الفشل بسبب القدرة.

    • بيان النطاق يحدد ما سيفعله المشروع وما لن يفعله. يبدأ معظم تجاوز الميزانية كإضافة غير مكتوبة. إضافة غير مكتوبة.
    • معالم رئيسية هي نقاط تفتيش مع تواريخ. إنها تحول "لدينا ثلاثة أسابيع" إلى شيء يمكنك التأخر فيه بما يكفي لإصلاح المشكلة مبكرًا. شيء يمكنك أن تكون behind on early enough to fix.
    • خصص أدوارًا للأفراد، وليس مهام للجماعة. المهمة التي يملكها الجميع لا يملكها أحد. أحد.
    • عقد الفريق يسجل كيف سيجتمع الجماعة، وكيف ستتخذ القرارات، وكيفية التعامل مع عضو لا يؤدي مهمته. الغرض من كتابتها بينما الجميع ودود هو التعمد.
    • تتبع التبعيات: لا يمكن إنهاء مجموعة الشرائح presentation قبل جمع البيانات، لذا فإن البيانات لها الموعد النهائي الأقدم. تم تجميعها، لذا فإن البيانات لها الموعد النهائي الأقدم.

    مثال محلول. مشروع من أربعة أشخاص لاستطلاع وعرض عادات النقل الطلابي، مستحق في الأسبوع 6. بالرجوع للخلف: التدرب في الأسبوع 6، بناء الشرائح في الأسبوع 5، التحليل في الأسبوع 4، جمع الردود في الأسابيع 2 إلى 3، كتابة الأسئلة في الأسبوع 1. الأسئلة هي العنصر الأكثر خطورة لأن كل ما يليه يعتمد عليها، لذلك يتم مراجعتها من قبل الكل مجموعة ولا شيء آخر في الأسبوع 1.

    1.4

    Creating effective presentations · ⁨إنشاء عروض تقديمية فعالة⁩

    Syllabus · ⁨المنهج⁩
    English

    Unit 4 of 6 in GAC005 Computing I: Introduction to Computing for Academic Study (Level I). The module is taught over about 40 class hours plus 20 hours of independent study, and is assessed at the teaching centre and moderated by ACT — there is no external exam.

    The module outcomes this unit works towards:

    Learning Objective GAC005.4: Create an academic oral presentation using a presentation software program.

    العربية

    الوحدة 4 من 6 في GAC005 الحاسوب I: مقدمة في الحاسوب للدراسة الأكاديمية (المستوى I). يُقدَّم هذا الوحدة خلال حوالي 40 ساعات دروس بالإضافة إلى 20 ساعات دراسة مستقلة، وتتم تقييمها في مركز التعليم ومراقبة من قِبل ACT — ولا يوجد امتحان خارجي.

    مخرجات الوحدة التي تسهم فيها هذه الوحدة:

    هدف التعلم GAC005.4: إنشاء عرض شفهي أكاديمي باستخدام برنامج عروض تقديمية.

    Source: Cambridge International syllabus · ⁨المصدر: منهج كامبريدج الدولي⁩

    English

    A presentation is judged on whether the audience understands, not on how much is on screen.

    • One message 信息 per slide. If a slide needs two sentences to summarise, it is two slides.
    • Slides support the speaker. Bullet points 要点 are prompts, not a script, and reading them aloud is the most common way to lose marks.
    • Contrast 对比度 and size decide whether the back row can read it: dark text on light, at least 24 point, and a sans-serif 无衬线 typeface.
    • Use a chart 图表 when the shape of the data is the point, and a table 表格 when exact values are. A chart needs axis labels and units, always.
    • Cite sources on the slide where the material appears, and keep a full reference list 参考文献列表 at the end.
    العربية

    يُقيّم العرض التقديمي بناءً على فهم الجمهور، وليس على كمية المحتوى المعروض على الشاشة.

    • رسالة واحدة لكل شريحة. إذا كانت الشريحة تحتاج إلى جملتين لتلخيصها، فهي شريحتان.
    • الشرائح تدعم المتحدث. النقاط الفرعية هي تنبيهات، وليست نصًا مقروءًا، وقراءتها بصوت عالٍ هي الطريقة الأكثر شيوعًا لفقد الدرجات. قراءة بصوت عالٍ هو الطريقة الأكثر شيوعًا لفقدان الدرجات.
    • التباين والحجم يحددان ما إذا كان الصف الخلفي يمكنه قراءتها: نص داكن على خلفية فاتحة، على أقل نقطة 24، وخط بدون زخرفة (sans-serif).
    • استخدم رسمًا بيانيًا عندما يكون شكل البيانات هو النقطة الأساسية، وجدولًا عندما تكون القيم الدقيقة هي الأساس. يحتاج الرسم البياني دائمًا إلى تسميات لمحاوره ووحداته. القيم التي تمثّلها. المخطط يحتاج إلى تسميات لمحاور ووحدات، دائمًا.
    • استشعر المصادر على الشريحة حيث يظهر المادة، واحتفظ بقائمة مراجع كاملة في النهاية. في النهاية.
    Vocabulary · ⁨مفردات⁩ Train · ⁨تدريب⁩
    English العربية
    sans-serif/sænz ˈserɪf/ خط غير مزخرف
    chart/tʃɑːt/ مخطط
    table/ˈteɪbl/ جدول
    reference list/ˈrefrəns lɪst/ قائمة المراجع
    aloud/əˈlaʊd/ بصوت عالٍ
    Signposting/ˈsaɪnpəʊstɪŋ/ توجيه الانتباه
    Eye contact/aɪ ˈkɒntækt/ التواصل البصري
    questions/ˈkwestʃnz/ أسئلة
    Animation/ˌænɪˈmeɪʃn/ رسوم متحركة
    storyboard/ˈstɔːribɔːd/ لوحة قصصية
    script/skrɪpt/ نص سيناريو
    Audio quality/ˈɔːdɪəʊ ˈkwɒlɪti/ جودة الصوت
    licensed/ˈlaɪsənst/ مرخص
    Export/ˈekspɔːt/ التصدير
    1.5

    Enhancing your presentation · ⁨تحسين عرضك التقديمي⁩

    Syllabus · ⁨المنهج⁩
    English

    Unit 5 of 6 in GAC005 Computing I: Introduction to Computing for Academic Study (Level I). The module is taught over about 40 class hours plus 20 hours of independent study, and is assessed at the teaching centre and moderated by ACT — there is no external exam.

    The module outcomes this unit works towards:

    Learning Objective GAC005.4: Create an academic oral presentation using a presentation software program.

    العربية

    الوحدة 5 من أصل 6 في GAC005 الحاسوب الأول: مقدمة في الحاسوب للدراسة الأكاديمية (المستوى الأول). تُدرس الوحدة لمدة 40 ساعة دراسية تقريبًا بالإضافة إلى 20 ساعة من الدراسة المستقلة، وتُقيّم في مركز التعليم وتخضع للمراقبة من قِبل ACT — لا يوجد امتحان خارجي.

    مخرجات الوحدة التي تسهم فيها هذه الوحدة:

    هدف التعلم GAC005.4: إنشاء عرض شفهي أكاديمي باستخدام برنامج عروض تقديمية.

    Source: Cambridge International syllabus · ⁨المصدر: منهج كامبريدج الدولي⁩

    English

    Once the content is right, delivery is what remains.

    • Rehearse aloud 出声, standing, with a timer. Reading silently hides every sentence you cannot actually say.
    • Signposting 提示语 tells the audience where they are: "first", "the reason for this", "to sum up". In a second language it does more work than any slide animation.
    • Eye contact 眼神交流 and pace matter more than vocabulary. Slower is almost always better.
    • Prepare for questions 提问 by listing the three you would least like to be asked, and answering them.
    • Animation 动画 has one legitimate use: revealing a complex diagram one part at a time. Everything else distracts.
    العربية

    بمجرد أن يكون المحتوى صحيحًا، يبقى الأداء هو ما يتبقى.

    • تدرب بصوت عالٍ، واقفًا، مع مؤقت. القراءة الصامتة تخفي كل جملة لا تستطيع قولها فعليًا. لا يمكنه حقًا قول ذلك.
    • التوجيه يخبر الجمهور أين هم: "أولاً"، "السبب في ذلك"، "لتلخيص". في لغة ثانية، يقوم بمزيد من الأعمال من أي تأثير متحرك في الشريحة. "لتلخيص". في لغة ثانية يقوم بمهام أكثر من أي تأثير حركي للشرائح.
    • التواصل البصري والسرعة أهم من المفردات. البطء أفضل تقريبًا دائمًا.
    • استعد لـ الأسئلة عن طريق سرد الثلاثة الأقل رغبة في طرحها، والإجابة عليها. الإجابة عليها.
    • التأثيرات المتحركة لها استخدام واحد شرعي: كشف مخطط معقد جزءًا تلو الآخر. كل شيء آخر يشتت الانتباه.
    1.6

    The making of a video · ⁨صناعة الفيديو⁩

    Syllabus · ⁨المنهج⁩
    English

    Unit 6 of 6 in GAC005 Computing I: Introduction to Computing for Academic Study (Level I). The module is taught over about 40 class hours plus 20 hours of independent study, and is assessed at the teaching centre and moderated by ACT — there is no external exam.

    The module outcomes this unit works towards:

    Learning Objective GAC005.1: Understand, evaluate and discriminate between available and emerging technologies to use, store and protect information.

    Learning Objective GAC005.4: Create an academic oral presentation using a presentation software program.

    العربية

    الوحدة 6 من أصل 6 في GAC005 الحاسوب الأول: مقدمة في الحاسوب للدراسة الأكاديمية (المستوى الأول). تُدرس الوحدة لمدة 40 ساعة دراسية تقريبًا بالإضافة إلى 20 ساعة من الدراسة المستقلة، وتُقيّم في مركز التعليم وتخضع للمراقبة من قِبل ACT — لا يوجد امتحان خارجي.

    مخرجات الوحدة التي تسهم فيها هذه الوحدة:

    هدف التعلم GAC005.1: فهم وتقييم والتمييز بين التقنيات المتاحة والمتطورة لاستخدامها وتخزين وحماية المعلومات.

    هدف التعلم GAC005.4: إنشاء عرض شفهي أكاديمي باستخدام برنامج عروض تقديمية.

    Source: Cambridge International syllabus · ⁨المصدر: منهج كامبريدج الدولي⁩

    English

    A short video is assessed like any other academic product: planned, sourced and edited.

    • A storyboard 分镜脚本 plans each shot before recording: what is on screen, what is said, how long it lasts. It is the difference between an hour of editing and five.
    • A script 脚本 keeps a two-minute video to two minutes. Speaking unscripted takes three times as long and says less.
    • Audio quality 音质 matters more than picture quality. A quiet room beats an expensive camera, every time.
    • Use licensed 授权 material only: images and music released under a licence that permits reuse, credited on screen or in the description.
    • Export 导出 to a common format at a sensible size, and check that it plays on a machine that is not yours before you submit it.

    Worked example. A two-minute explainer on plastic recycling. The storyboard has eight shots of about fifteen seconds. Shot 3 is a chart of what a city actually recycles, on screen for twelve seconds with one spoken sentence, credited to the source in the corner. Because the storyboard fixed the length first, the script was written to fit the time, rather than the video being cut to fit a script that was already too long.

    العربية

    يتم تقييم الفيديو القصير مثل أي منتج أكاديمي آخر: مخطط، ومصادر، ومحرر.

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

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

    Additional notes PDF

    Choose tools for the actual academic task

    Your group researches school transport. One member uses a phone. Another works offline. A third needs large text. The newest app may not suit them.

    These additional notes teach practical GAC005 skills. Keep the original handout beside them. Follow your centre's current task, required software and submission rules.

    A word processor 文字处理软件 helps you create and revise a formatted document. A shared editor can support joint writing. Presentation software organises visual support for a talk. Video software combines recorded sound and images. Choose tools by the task, rather than using one tool for everything.

    Compare access, formats, cost, privacy, offline use and helpful reading features. Test headings, tables and comments on the actual devices, including after conversion.

    For a new or emerging technology 新兴技术, first test a small, non-sensitive task. Check who runs it, what information it stores and what you can export. Keep a usable copy outside the tool. A fluent-looking automatic answer still needs source checking. Follow the centre's rules on permitted assistance and acknowledgement.

    Store, protect and recover your information

    Put related files in a clearly named project folder. Separate sources, working drafts and submission copies. Names such as transport_report_2026-10-02.odt are clearer than new_final_final.doc. Use the same naming system throughout the group.

    Access permission 访问权限 controls who can read or change information. Give editing access only to people who need it. A public link can reach people outside the group. Check the sharing list before sending a file. Store participant details separately from a report, under the centre's rules. Do not collect identifying information just because a form allows it.

    Use a strong, unique password and multi-factor authentication 多因素认证 where available. This uses more than one kind of evidence to confirm your identity. A password and a code from another device are one example. Do not share sign-in details to share a document. Verify an unexpected message before opening its sign-in link. Update supported software and lock a device when you leave it.

    Synchronisation 同步 keeps copies aligned. A backup 备份 gives a separate recovery copy. They are different: synchronisation may copy an accidental deletion too. Keep a separate, permitted backup and test that you can restore a harmless sample file. Version history may help recover changes, but its retention and detail depend on the service.

    Worked case. Mei deletes a paragraph, and the change reaches everyone's device. Repeatedly downloading the current document keeps the deletion. The group checks version history, restores the correct paragraph and verifies the result. If that history is unavailable, a separate earlier backup may help. Neither method excuses checking the final file.

    Create and revise an academic document

    Start with the centre's report structure. For this practice task, use a title, research question, method, findings, discussion and references. Create a short outline before adding paragraphs. Keep a source record while researching: author, title, date, location and the claim it supports.

    A paragraph style 段落样式 applies a named set of formatting choices. Use Heading 1 for main sections and Heading 2 for subsections. Use the normal text style for paragraphs. Large bold text alone may look like a heading without being recognised as one. Do not skip heading levels just to get a smaller font.

    For example, LibreOffice Writer offers paragraph styles. Place the cursor in a heading paragraph and apply its named heading style. Change the style when you want every heading of that level to change. Page styles control page layout, including margins, headers and footers. Menu names may differ by version or language; use the installed program's Help.

    Add a small table through the table tool. Give each column a clear heading and include units where needed. Enter data in cells, rather than aligning it with repeated spaces. Put a figure close to the text that explains it. Add a meaningful caption and its source where required. A table does not need a chart unless the chart helps explain the data.

    Use page breaks when a new section must start on a new page. Do not press Enter repeatedly to push text down. Add page numbers using the program's page-number field. If the brief needs a contents list, create it from heading styles and update it after editing.

    Revise meaning before appearance. Check whether each claim has evidence, whether the methods answer the question and whether limits are clear. Then check spelling, names, units and references. An automatic spelling suggestion can change a technical term incorrectly. Read the corrected sentence yourself.

    Collaborate on an open-source platform

    Open source 开源 means the software's source code is available under a licence allowing specified use, study and changes. It does not mean every hosted service is free, private or open to everyone. An online tool is not automatically open source.

    LibreOffice Writer is an open-source desktop word processor. It is useful for individual document work. For joint browser editing, a centre can provide a suitably configured Nextcloud service with an office editor. Nextcloud's documentation describes collaborative office editing and the required document-server integration. Use the editor actually enabled by your centre; do not assume any Nextcloud installation includes it.

    Practise with non-sensitive sample text. Each group member signs in with their own account. The owner creates one shared working document and gives the group suitable permissions. Agree an outline, roles and dates. Add a comment explaining a proposed change. Another member responds. Use a review or suggestion feature if the installed editor supports it; otherwise record proposals in comments.

    Review the content together before accepting changes. Check the current document, comments and available history. Keep a short decision record: what changed, why, who checked it and what remains unfinished. History helps show activity, but the group must still explain each member's actual work.

    If offline edits create two copies, do not silently choose the newest file. Compare the changed sections and merge the intended work. Confirm that no member's paragraph or source record disappeared. Then agree which shared copy is current.

    Export, check and share a submission copy

    Keep an editable file 可编辑文件 for future corrections. A PDF 便携式文档格式 is often useful for sharing a stable page layout. Exporting a PDF does not replace the editable source. Use the formats required by the centre.

    Check headings, font size, contrast, table headings and useful image descriptions. Run an accessibility check where available, then read the document yourself.

    Export a sample PDF and open that exported file. Check every page: missing text, broken characters, empty pages, clipped tables and correct page numbers. Search for an expected sentence to test that text is present. Ask a group member to open the submission copy on their device. A file that works only on your computer is not ready.

    Share the correct submission copy with the intended audience. Check access using the actual recipient's permitted account or the centre's approved procedure. Keep private drafts separate. Record the submitted filename and date. Correcting the source later does not change a PDF already sent.

    Practise a complete academic workflow

    Original practice brief. Prepare a short group report and a three-minute talk on school transport. Use approved existing information, or gather new responses only with the required permission. This practice brief is not an official assessment.

    1. Define the question and group you can study. Record sources and their limits.
    2. Test tools, headings, tables and shared comments. Set suitable permissions.
    3. Agree roles and dates. Draft a report with headings, evidence and references.
    4. Revise together and record decisions. Keep the editable file and test recovery.
    5. Build slides with clear messages. Explain evidence and limits aloud.
    6. Rehearse with a timer. If video is required, check shots, sound and media permissions.
    7. Inspect exports on another device. Submit the required files and preserve the group record.

    Finishing the notes is preparation, not evidence that you have completed these practical tasks. Keep the actual files and revision evidence required by your centre.

    Practice and explained answers

    Questions. 1. A phone-only member cannot edit the format. What should you test? 2. Why is synchronisation insufficient recovery protection? 3. Why use heading styles? 4. Does online editing prove open-source software? 5. Two offline drafts contain different new paragraphs. What should happen? 6. Does fixing the source change a PDF already sent? 7. What evidence shows a completed workflow?

    Explained answers. 1. Test editing, conversion and sharing on the actual device. 2. Deletions may spread; use a separate permitted backup and test recovery. 3. Named styles give recognised structure and consistent revision; they can support navigation and a contents list. 4. No; check the licence and source availability. 5. Compare and merge intended changes, then agree the current copy. The latest timestamp alone is insufficient. 6. No; export and check a corrected PDF, then follow the correction procedure. 7. Show the source record, editable report, revisions, access check, tested recovery copy, final exports and rehearsed presentation.

  • 2

    GAC011 Computing II: Web Development · ⁨GAC011 الحاسوب II: تطوير الويب⁩

    2.1

    What this module is, and how it is marked · ⁨ما هي هذه الوحدة وكيفية تقييمها⁩

    English

    GAC011 is where you build and publish a real website. Six units take you from a design on paper through HTML, CSS and JavaScript to a launched site and a plan for promoting it.

    Everything is assessed on what you produce: a storyboard 分镜脚本 and design, the site itself, and a social media strategy 社交媒体策略, plus coursework. There is no written exam.

    • Design counts as much as code. The module's outcomes name aesthetics, layout, navigation and usability alongside the scripting.
    • ⚠ The site you design here is the thing GAC017 gives a back end and a database. A weak plan now costs time in the next module.

    You can run every example in this module in the site's own code playground, and the HTML, CSS and JavaScript references there go deeper than these notes do.

    العربية

    GAC011 هو حيث تبني وتنشر موقع ويب حقيقي. ست وحدات تأخذك من التصميم الورقي عبر HTML وCSS وJavaScript إلى موقع مُطلق وخطة لترويج له.

    يتم تقييم كل شيء بناءً على ما تنتجه: مخطط قصصي وتصميم، الموقع نفسه، واستراتيجية وسائل التواصل الاجتماعي، بالإضافة إلى العمل المدرسي. لا يوجد امتحان كتابي.

    • التصميم مهم بقدر الكود. نتائج الوحدة تذكر الجمالية، والتخطيط، والتنقل وقابلية الاستخدام جنبًا إلى جنب مع البرمجة النصية.
    • ⚠ الموقع الذي تصممه هنا هو ما يمنحه GAC017 قاعدة بيانات ونظام خلفي. خطة ضعيفة الآن ستكلفك وقتًا في الوحدة التالية.

    يمكنك تشغيل كل مثال في هذه الوحدة في ملعب الأكواد الخاص بالموقع، وإشارات HTML وCSS وJavaScript الموجودة هناك أعمق من هذه الملاحظات.

    Vocabulary · ⁨مفردات⁩ Train · ⁨تدريب⁩
    English العربية
    storyboard/ˈstɔːribɔːd/ لوحة قصصية
    social media strategy/ˈsəʊʃl ˈmiːdiːə ˈstrætədʒi/ استراتيجية وسائل التواصل الاجتماعي
    wireframe/ˈwaɪəfreɪm/ الإطار السلكي
    Information architecture/ˌɪnfəˈmeɪʃn ˈɑːkɪtektʃə/ هندسة المعلومات
    Visual hierarchy/ˈvɪʒuːəl ˈhaɪərɑːki/ التسلسل الهرمي البصري
    HTML/ˌeɪtʃ tiː em ˈel/ HTML
    element/ˈelɪmənt/ عنصر
    attribute/ˈætrɪbjuːt/ سمة
    Semantic elements/səˈmæntɪk ˈelɪmənts/ العناصر الدلالية
    alt text/ɒlt tekst/ النص البديل
    CSS/ˌsiː es ˈes/ CSS
    selector/sɪˈlektə/ مُحدِّد
    declaration/ˌdekləˈreɪʃn/ إعلان
    box model/bɒks ˈmɒdl/ نموذج الصندوق
    Responsive design/rɪˈspɒnsɪv dɪˈzaɪn/ التصميم المتجاوب
    media query/ˈmiːdiːə ˈkwɪərɪ/ استعلام الوسائط
    DOM/dɒm/ DOM
    event/ɪˈvent/ مخرجات
    function/ˈfʌŋkʃn/ دالة
    Hosting/ˈhəʊstɪŋ/ استضافة الموقع
    domain name/dəˈmeɪn neɪm/ اسم النطاق
    Accessibility/ækˌsesəˈbɪlɪti/ إمكانية الوصول
    content plan/ˈkɒntent plæn/ خطة المحتوى
    Metrics/ˈmetrɪks/ المؤشرات
    2.1

    Designing a website · ⁨تصميم موقع ويب⁩

    Syllabus · ⁨المنهج⁩
    English

    Unit 1 of 6 in GAC011 Computing II: Web Development (Level II). The module is taught over about 40 class hours plus 20 hours of independent study, and is assessed at the teaching centre and moderated by ACT — there is no external exam.

    Module purpose: On completion of this module, students should be able to design and create a basic website by applying knowledge of website development languages. They will also start coding to create basic dynamic content in a website. Furthermore, they will create a strategy to promote their website with social media.

    The module outcomes this unit works towards:

    Learning Objective GAC011.1: Design effective websites using aesthetics and formal concepts of layout and organization to communicate effectively using visual components.

    Learning Objective GAC011.3: Incorporate best practices in navigation, usability, and written content to design websites that give users easy access to the information they seek.

    العربية

    الوحدة 1 من أصل 6 في GAC011 الحاسوب الثاني: تطوير الويب (المستوى الثاني). تُدرس الوحدة لمدة 40 ساعة دراسية تقريبًا بالإضافة إلى 20 ساعة من الدراسة المستقلة، وتُقيّم في مركز التعليم وتخضع للمراقبة من قِبل ACT — لا يوجد امتحان خارجي.

    غرض الوحدة: عند إتمام هذه الوحدة، يجب أن يكون الطلاب قادرين على تصميم وإنشاء موقع إلكتروني أساسي بتطبيق معرفتهم بلغات تطوير المواقع. كما سيبدأون في البرمجة لإنشاء محتوى ديناميكي بسيط في الموقع. علاوة على ذلك، سيقومون بوضع استراتيجية لترويج موقعهم الإلكتروني عبر وسائل التواصل الاجتماعي.

    مخرجات الوحدة التي تسهم فيها هذه الوحدة:

    هدف التعلم GAC011.1: تصميم مواقع إلكترونية فعالة باستخدام الجماليات والمفاهيم الرسمية للتخطيط والتنظيم للتواصل الفعال باستخدام العناصر المرئية.

    هدف التعلم GAC011.3: دمج أفضل الممارسات في التنقل وسهولة الاستخدام والمحتوى النصي لتصميم مواقع إلكترونية تمنح المستخدمين وصولاً سهلاً إلى المعلومات التي يبحثون عنها.

    Source: Cambridge International syllabus · ⁨المصدر: منهج كامبريدج الدولي⁩

    English
    • Start on paper. A wireframe 线框图 shows structure without colour, which is the only way to argue about structure.
    • Information architecture 信息架构 is what goes where: the pages, and the path a visitor takes between them.
    • Visual hierarchy 视觉层次 tells the eye what matters — through size, weight, spacing and contrast, not through decoration.
    • Design for the audience, and say who they are before you choose anything.
    العربية
    • ابدأ بالورق. الشبكة الهيكلية تُظهر البنية دون ألوان، وهو الطريقة الوحيدة لـ النقاش حول البنية.
    • هندسة المعلومات هي تحديد ما يذهب أين: الصفحات، والمسار الذي يتخذه الزائر بينها.
    • التسلسل البصري يخبر العين بما هو مهم — من خلال الحجم، والوزن، والمسافات، و التباين، وليس من خلال الزينة.
    • صمم للـجمهور، وحدد من هم قبل اختيار أي عنصر.
    2.2

    Creating a website using HTML · ⁨إنشاء موقع باستخدام HTML⁩

    Syllabus · ⁨المنهج⁩
    English

    Unit 2 of 6 in GAC011 Computing II: Web Development (Level II). The module is taught over about 40 class hours plus 20 hours of independent study, and is assessed at the teaching centre and moderated by ACT — there is no external exam.

    The module outcomes this unit works towards:

    Learning Objective GAC011.2: Create and publish a website using scripting languages to add interactive components.

    العربية

    الوحدة 2 من أصل 6 في GAC011 الحاسوب الثاني: تطوير الويب (المستوى الثاني). تُدرس الوحدة لمدة 40 ساعة دراسية تقريبًا بالإضافة إلى 20 ساعة من الدراسة المستقلة، وتُقيّم في مركز التعليم وتخضع للمراقبة من قِبل ACT — لا يوجد امتحان خارجي.

    مخرجات الوحدة التي تسهم فيها هذه الوحدة:

    هدف التعلم GAC011.2: إنشاء ونشر موقع إلكتروني باستخدام لغات البرمجة لإضافة مكونات تفاعلية.

    Source: Cambridge International syllabus · ⁨المصدر: منهج كامبريدج الدولي⁩

    English
    • HTML 超文本标记语言 marks up meaning, not appearance. A heading is <h1> because it is a heading.
    • An element 元素 has an opening tag, content and a closing tag; an attribute 属性 goes in the opening tag.
    • Semantic elements 语义化元素 — <header>, <nav>, <main>, <article>, <footer> — tell a browser, a search engine and a screen reader what a region is.
    • Every image needs alt text 替代文本. It is what a blind visitor hears and what a search engine reads.
    العربية
    • HTML يحدد المعنى، ليس المظهر. العنوان هو <h1> لأنه فعلاً عنوان. العنوان.
    • العنصر له وسم فتح، ومحتوى، ووسم إغلاق؛ الخاصية توضع داخل وسم الفتح.
    • العناصر الدلالية — <header>، <nav>، <main>، <article>، <footer> — تخبر متصفح، ومحرك بحث، وقارئ شاشة بما هو عليه هذا الجزء.
    • كل صورة تحتاج إلى نص بديل. إنه ما يسمعه الزائر الأعمى وما تقرأه محركات البحث. محركات البحث.
    2.3

    Using CSS to enhance your website · ⁨استخدام CSS لتحسين موقعك الإلكتروني⁩

    Syllabus · ⁨المنهج⁩
    English

    Unit 3 of 6 in GAC011 Computing II: Web Development (Level II). The module is taught over about 40 class hours plus 20 hours of independent study, and is assessed at the teaching centre and moderated by ACT — there is no external exam.

    The module outcomes this unit works towards:

    Learning Objective GAC011.1: Design effective websites using aesthetics and formal concepts of layout and organization to communicate effectively using visual components.

    Learning Objective GAC011.2: Create and publish a website using scripting languages to add interactive components.

    العربية

    الوحدة 3 من أصل 6 في GAC011 الحاسوب الثاني: تطوير الويب (المستوى الثاني). تُدرس الوحدة لمدة 40 ساعة دراسية تقريبًا بالإضافة إلى 20 ساعة من الدراسة المستقلة، وتُقيّم في مركز التعليم وتخضع للمراقبة من قِبل ACT — لا يوجد امتحان خارجي.

    مخرجات الوحدة التي تسهم فيها هذه الوحدة:

    هدف التعلم GAC011.1: تصميم مواقع إلكترونية فعالة باستخدام الجماليات والمفاهيم الرسمية للتخطيط والتنظيم للتواصل الفعال باستخدام العناصر المرئية.

    هدف التعلم GAC011.2: إنشاء ونشر موقع إلكتروني باستخدام لغات البرمجة لإضافة مكونات تفاعلية.

    Source: Cambridge International syllabus · ⁨المصدر: منهج كامبريدج الدولي⁩

    English
    • CSS 层叠样式表 controls appearance, and keeping it out of the HTML is the whole point of the separation.
    • A selector 选择器 chooses elements; a declaration 声明 sets a property to a value.
    • The box model 盒模型 explains layout: content, then padding, then border, then margin.
    • Responsive design 响应式设计 makes one page work on a phone and a laptop, usually with flexible widths and a media query 媒体查询.

    Worked example. A card that is too wide on a phone.

    The fix is not a fixed pixel width. Set max-width so the card never exceeds the screen, let it shrink below that, and add a media query only for the change that a smaller screen genuinely needs, such as stacking two columns into one.

    Designing the flexible case first, and treating the media query as the exception, is what "responsive" means.

    العربية
    • CSS يتحكم في المظهر، والاحتفاظ به منفصلًا عن HTML هو الغرض الأساسي من الفصل بينهما.
    • نموذج الصندوق يشرح التخطيط: المحتوى، ثم الحشو، ثم الإطار، ثم الهامش.
    • التصميم المتجاوب يجعل صفحة واحدة تعمل على هاتف وحاسوب محمول، عادةً باستخدام
    • التصميم المتجاوب يجعل صفحة واحدة تعمل على الهاتف واللابتوب، عادةً باستخدام مثال محلول. بطاقة عريضة جدًا على الهاتف.

    مثال محلول. بطاقة تكون عريضة جدًا على الهاتف.

    الحل ليس عرضًا ثابتًا بالبكسل. حدد max-width بحيث لا تتجاوز البطاقة حجم الشاشة، ودعها تصميم الحالة المرنة أولًا، واعتبار استعلام الوسائط كاستثناء، هو ما يعنيه "متجاوب".

    تصميم الحالة المرنة أولاً، مع اعتبار استعلام الوسائط كاستثناء، هو ما "التصميم المتجاوب" يعني.

    2.4

    Adding interactivity with JavaScript · ⁨إضافة التفاعلية باستخدام JavaScript⁩

    Syllabus · ⁨المنهج⁩
    English

    Unit 4 of 6 in GAC011 Computing II: Web Development (Level II). The module is taught over about 40 class hours plus 20 hours of independent study, and is assessed at the teaching centre and moderated by ACT — there is no external exam.

    The module outcomes this unit works towards:

    Learning Objective GAC011.2: Create and publish a website using scripting languages to add interactive components.

    العربية

    الوحدة 4 من أصل 6 في GAC011 الحاسوب الثاني: تطوير الويب (المستوى الثاني). تُدرس الوحدة لمدة 40 ساعة دراسية تقريبًا بالإضافة إلى 20 ساعة من الدراسة المستقلة، وتُقيّم في مركز التعليم وتخضع للمراقبة من قِبل ACT — لا يوجد امتحان خارجي.

    مخرجات الوحدة التي تسهم فيها هذه الوحدة:

    هدف التعلم GAC011.2: إنشاء ونشر موقع إلكتروني باستخدام لغات البرمجة لإضافة مكونات تفاعلية.

    Source: Cambridge International syllabus · ⁨المصدر: منهج كامبريدج الدولي⁩

    English
    • JavaScript runs in the browser and changes the page after it has loaded.
    • The DOM 文档对象模型 is the page as a tree of objects your code can read and change.
    • An event 事件 — a click, a submit, a key press — triggers a function 函数 you wrote.
    • Keep it small at this level: validate a form, toggle a menu, filter a list. A site that fails when JavaScript fails is a design error, not a coding one.
    العربية
    • الحدث — النقر، الإرسال، الضغط على مفتاح — يُفعّل دالة كتبتها أنت.
    • احتفظ به بسيطًا في هذا المستوى: تحقق من نموذج، غيّر قائمة، فلترة قائمة. موقع يفشل
    • حدث — مثل النقر، الإرسال، أو الضغط على مفتاح — يُفعّل دالة كتبتها أنت.
    • حافظ على البساطة في هذا المستوى: تحقق من صحة نموذج، قفل قائمة، أو فلتر قائمة. الموقع الذي يفشل عندما تفشل JavaScript هو خطأ في التصميم، وليس خطأ في البرمجة.
    2.5

    Launching your website · ⁨إطلاق موقعك الإلكتروني⁩

    Syllabus · ⁨المنهج⁩
    English

    Unit 5 of 6 in GAC011 Computing II: Web Development (Level II). The module is taught over about 40 class hours plus 20 hours of independent study, and is assessed at the teaching centre and moderated by ACT — there is no external exam.

    The module outcomes this unit works towards:

    Learning Objective GAC011.3: Incorporate best practices in navigation, usability, and written content to design websites that give users easy access to the information they seek.

    Learning Objective GAC011.4: Use the website to complement academic work conducted in other media.

    العربية

    الوحدة 5 من أصل 6 في GAC011 الحاسوب الثاني: تطوير الويب (المستوى الثاني). تُدرس الوحدة لمدة 40 ساعة دراسية تقريبًا بالإضافة إلى 20 ساعة من الدراسة المستقلة، وتُقيّم في مركز التعليم وتخضع للمراقبة من قِبل ACT — لا يوجد امتحان خارجي.

    مخرجات الوحدة التي تسهم فيها هذه الوحدة:

    هدف التعلم GAC011.3: دمج أفضل الممارسات في التنقل وسهولة الاستخدام والمحتوى النصي لتصميم مواقع إلكترونية تمنح المستخدمين وصولاً سهلاً إلى المعلومات التي يبحثون عنها.

    هدف التعلم GAC011.4: استخدام الموقع الإلكتروني لتكملة العمل الأكاديمي المنجز في وسائط أخرى.

    Source: Cambridge International syllabus · ⁨المصدر: منهج كامبريدج الدولي⁩

    English
    • Hosting 托管 puts your files on a server; a domain name 域名 points visitors at them.
    • Test before you launch: every link, on a phone, on a browser that is not yours.
    • Accessibility 无障碍 is not optional — contrast, alt text, keyboard navigation, and text that resizes.
    • ⚠ Check what you are allowed to publish. An image or a font on your site needs a licence that permits it, exactly as a quotation in an essay needs a citation.
    العربية
    • إمكانية الوصول ليست اختيارية — التباين، والنصوص البديلة، والتنقل بلوحة المفاتيح، والنصوص
    • اختبر قبل الإطلاق: تحقق من كل رابط، على هاتف، وعلى متصفح لا ينتمي إليك.
    • ⚠ تحقق مما هو مسموح لك بنشره. صورة أو خط في موقعك يحتاج ترخيص يسمح بذلك، تمامًا كما يتطلب الاقتباس في مقال مرجعًا.
    • ⚠ تحقق مما هو مسموح لك بنشره. الصورة أو الخط في موقعك يحتاج إلى ترخيص يسمح بذلك، تماماً كما يتطلب الاقتباس في مقال مرجعاً. يسمح بذلك، تماماً كما يتطلب الاقتباس في المقال مرجعاً.
    2.6

    Social media marketing · ⁨التسويق عبر وسائل التواصل الاجتماعي⁩

    Syllabus · ⁨المنهج⁩
    English

    Unit 6 of 6 in GAC011 Computing II: Web Development (Level II). The module is taught over about 40 class hours plus 20 hours of independent study, and is assessed at the teaching centre and moderated by ACT — there is no external exam.

    The module outcomes this unit works towards:

    Learning Objective GAC011.5: Use social media to promote or find a website.

    العربية

    الوحدة 6 من أصل 6 في GAC011 الحاسوب الثاني: تطوير الويب (المستوى الثاني). تُدرس الوحدة لمدة 40 ساعة دراسية تقريبًا بالإضافة إلى 20 ساعة من الدراسة المستقلة، وتُقيّم في مركز التعليم وتخضع للمراقبة من قِبل ACT — لا يوجد امتحان خارجي.

    مخرجات الوحدة التي تسهم فيها هذه الوحدة:

    هدف التعلم GAC011.5: استخدام وسائل التواصل الاجتماعي للترويج عن موقع إلكتروني أو العثور عليه.

    Source: Cambridge International syllabus · ⁨المصدر: منهج كامبريدج الدولي⁩

    English
    • Decide the audience and the objective before choosing a platform. "Be on social media" is not an objective.
    • A content plan 内容计划 says what you will post, how often, and who writes it.
    • Metrics 指标 must connect to the objective: reach, engagement, and click-through to your site are different things, and only one of them is traffic.
    • Measure, then change one thing. Changing everything at once teaches you nothing about which change worked.
    العربية
    • المؤشرات يجب أن ترتبط بالهدف: الوصول، والمشاركة، والنقرات نحو موقعك things مختلفة، وواحدة منها فقط هي حركة المرور.
    • خطة المحتوى تحدد ما ستنشره، ومتى، ومن يكتبه.
    • قِس، ثم غيّر شيئًا واحدًا. تغيير كل شيء في وقت واحد لا يعلمك أي التغيير نجح. الموقع وزيارة الموقع أمران مختلفان، وأحدهما فقط هو حركة المرور.
    • قِس، ثم غيّر شيئًا واحدًا. تغيير كل شيء في آن واحد لا يُعلّمك أي شيء عن يتواصل معها، ومشروع تحليل بيانات، والعمل المدرسي — عادةً
    Additional notes PDF

    A website should help its intended reader

    A school-transport report may contain detailed methods and tables. Its website can give classmates a short overview. The page should help them find the main result, inspect the method and reach the approved full report.

    These separate notes add practical GAC011 work. Preserve the original handout beside them. Follow your current centre brief for required tools, depth and submission evidence.

    Original practice brief. Build one readable page for classmates using invented transport counts. Add navigation, a table and a category filter. Plan how the page supports a report and a short talk. No real responses are collected. Local preview is practice; it is not public publication.

    Draw a wireframe with a title, introduction, section links, findings, method and footer. Give each area a clear purpose. Visitors should not have to guess whether a button changes the page or opens another document. Use meaningful text such as “Method and limits”, rather than “Click here”.

    Build a complete HTML page

    Character encoding 字符编码 tells the browser how to read the file's text. UTF-8 supports many writing systems. The viewport setting helps mobile browsers use the device width. A descriptive title helps people identify the page in a tab.

    Save the following complete example as transport.html. Open that file in a browser. It works without a library, account or network request. The built-in style block keeps this first exercise in one file. A later project can move those styles into a separate CSS file and link it from the head.

    <!doctype html>
    <html lang="en">
    <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>School transport: practice report</title>
    <style>
    :root { --page: #ffffff; --text: #172033; --line: #637083; --link: #164db2; }
    body.dark { --page: #080d17; --text: #e9eef7; --line: #8392a8; --link: #a8d2ff; }
    * { box-sizing: border-box; }
    body { margin: 0; background: var(--page); color: var(--text); font: 1.1rem/1.6 sans-serif; }
    header, main, footer { max-width: 48rem; margin: auto; padding: 1rem; }
    a { color: var(--link); }
    nav { display: flex; flex-wrap: wrap; gap: 1rem; }
    section { margin-block: 2rem; padding-block: 1rem; border-top: 1px solid var(--line); }
    button, select { font: inherit; padding: .4rem; background: var(--page); color: var(--text); border: 1px solid var(--line); }
    :focus-visible { outline: 3px solid var(--link); outline-offset: 3px; }
    table { width: 100%; border-collapse: collapse; }
    caption { text-align: left; margin-block: .5rem; }
    th, td { text-align: left; padding: .5rem; border-bottom: 1px solid var(--line); }
    [hidden] { display: none !important; }
    </style>
    </head>
    <body>
    <header>
    <h1>School transport</h1>
    <p>An original practice example. All counts are invented.</p>
    <nav aria-label="Report sections">
    <a href="#findings">Findings</a>
    <a href="#method">Method and limits</a>
    </nav>
    <div id="controls" hidden>
    <button id="theme" type="button">Use dark theme</button>
    <label for="mode">Show transport category</label>
    <select id="mode">
    <option value="all">All categories</option>
    <option value="walk">Walking</option>
    <option value="bus">Bus</option>
    <option value="cycle">Cycling</option>
    </select>
    </div>
    </header>
    <main>
    <section id="findings" aria-labelledby="findings-title">
    <h2 id="findings-title">Findings</h2>
    <p>In this invented group of 36 responses, bus travel has the largest count.</p>
    <table>
    <caption>Practice counts, not research findings</caption>
    <thead><tr><th scope="col">Main mode</th><th scope="col">Responses</th></tr></thead>
    <tbody>
    <tr data-mode="walk"><th scope="row">Walking</th><td>12</td></tr>
    <tr data-mode="bus"><th scope="row">Bus</th><td>18</td></tr>
    <tr data-mode="cycle"><th scope="row">Cycling</th><td>6</td></tr>
    </tbody>
    </table>
    <p id="status" role="status">3 transport categories shown.</p>
    </section>
    <section id="method" aria-labelledby="method-title">
    <h2 id="method-title">Method and limits</h2>
    <p>Each invented response has one main mode. The counts sum to 36.</p>
    <p>The table does not explain choices, travel distance or the whole school's habits.</p>
    <p>This page is a short companion to a report and oral presentation. An actual project should link its approved report and sources here.</p>
    </section>
    </main>
    <footer><p>GAC011 practice: no responses are collected or sent.</p></footer>
    <script>
    const controls = document.querySelector("#controls");
    const mode = document.querySelector("#mode");
    const rows = [...document.querySelectorAll("tbody tr")];
    const status = document.querySelector("#status");
    const theme = document.querySelector("#theme");
    mode.addEventListener("change", () => {
      let shown = 0;
      rows.forEach(row => {
        row.hidden = mode.value !== "all" && row.dataset.mode !== mode.value;
        if (!row.hidden) shown += 1;
      });
      status.textContent = `${shown} transport ${shown === 1 ? "category" : "categories"} shown.`;
    });
    theme.addEventListener("click", () => {
      const dark = document.body.classList.toggle("dark");
      theme.textContent = dark ? "Use light theme" : "Use dark theme";
    });
    controls.hidden = false;
    </script>
    </body>
    </html>
    

    The HTML provides readable content before JavaScript runs. The href="#method" link points to the element with id="method". IDs must be unique on the page. A wrong ID breaks that link even if the label looks correct.

    The table's caption states what its numbers mean. Column and row headings describe the cells. The invented values are 12, 18 and 6, giving 36 responses. Bus has the largest count. Those counts do not tell us why people choose a mode.

    Explain and adapt the CSS

    A CSS custom property 自定义属性 stores a reusable value, such as a colour. The example uses shared page, text, border and link colours. The dark class changes those values together. Text areas and controls use the same page colour in dark mode. Borders and space separate sections.

    The universal box-sizing rule makes specified sizes include padding and borders. The reading area grows with the window but stops at 48rem. The navigation can wrap when space is limited. A flexible width often solves the first layout problem without a media query.

    The :focus-visible outline helps keyboard users find the current control. Do not remove it just because it is visible. Links retain underlines. Table headings and sufficient contrast help readers understand the data. An actual image needs text suited to its purpose: meaningful information needs a useful description; a purely decorative image can use empty alt text.

    Adaptation. Change the page title and introduction for another approved academic topic. Keep a clear heading order. Try a narrow window and enlarged text. If you later add two columns, decide where they should stack and test a suitable media query. Do not add a fixed width that makes the phone scroll sideways.

    Trace the JavaScript interaction

    An event listener 事件监听器 runs code when its event occurs. The example listens for a changed selection. mode.value gives the selected value. Each row's data-mode attribute becomes row.dataset.mode in JavaScript.

    A row is hidden when a specific category is selected and the row does not match. Selecting all makes every row visible. The counter starts at zero for each change. It increases once for each visible category, not once per response. Therefore selecting Bus shows one category, not eighteen categories.

    Trace. Select Bus. Walking and Cycling become hidden. Bus remains visible and the status says “1 transport category shown.” Select All categories. The hidden condition is false for every row, so the status returns to three categories.

    The theme button adds or removes the dark class. Its label describes the next action. Updating textContent changes text; it does not treat that text as HTML. The status region can announce the changed count to assistive software. Check actual behaviour with the tools available at your centre.

    Progressive enhancement 渐进增强 means that useful basic content works before extra features are added. The example keeps interactive controls hidden until their listeners are attached. Without JavaScript, the full table, methods and section links still work. A filter changes the view, not the underlying counts or study limits.

    Check, publish and maintain the site

    Before any authorised launch, record results of practical checks. Open every link, use the keyboard, enlarge text and try phone-sized layouts. Check both themes and a second browser or device. Verify the complete content still works if the optional script is unavailable. Read errors rather than hiding them.

    Relative path 相对路径 means a file location described from another location. For an approved report saved beside your page as report.pdf, an HTML link can use href="report.pdf". Use a meaningful label and identify the PDF. Add the actual report only when you have it; do not leave a broken sample link. Check filenames and upper/lower case on the host.

    A static site 静态网站 can serve stored HTML, CSS, scripts and images. The browser can still run interactive JavaScript. A domain name 域名 is an address people use; hosting provides the service that delivers files. A domain alone does not upload your site.

    Use your centre's approved publishing process. Check media permission and remove private drafts or participant information. Upload the required files together. Open the actual public URL and verify paths, display and controls there. A successful local preview is not proof of a successful launch.

    Keep editable source files and a known working copy. When you revise, check the change and its affected links. Record the version and date. Correcting your local file does not update a hosted copy until the approved publishing process delivers it.

    Connect the website to academic work and promotion

    The website should complement your report and talk. Its overview gives a clear question, one useful result and the study's limits. The full report carries detailed evidence and references. A slide in the talk can show the page address or an approved QR code. Check that the link reaches the intended version. Do not claim that the practice counts are real findings.

    For promotion, define an audience and objective first. For example: help classmates find the approved report during project week. Plan a permitted post with a short accurate description, meaningful link text and a named owner. Follow centre rules and platform requirements. Planning a post does not show that promotion actually happened.

    Impressions 展示次数 count displays under the platform's definition. Reach usually refers to distinct accounts under its definition. Neither is automatically the number of people who read the report. Click-through rate 点击率 needs a stated numerator and denominator.

    Invented example. Post A receives 400 impressions and 20 link clicks. Post B receives 250 impressions and 25 link clicks. Using link clicks divided by impressions, A has $20/400=5\%$ and B has $25/250=10\%$. B has more link clicks despite fewer impressions.

    These numbers do not prove B's wording caused the difference. Timing, audience and repeated clicks may differ. Link clicks also do not prove the report loaded or was read. Choose a change, record its context and compare a measure that matches the objective. Keep unnecessary personal tracking out of the task.

    Practice and explained answers

    Questions. 1. Which element does the Method link reach? 2. What should the filter display for Cycling? 3. Does filtering change the original total of 36? 4. What remains usable without JavaScript? 5. Why is a domain purchase insufficient for launch? 6. Post C has 600 impressions and 24 link clicks. Find its rate. 7. Does B's higher rate prove its wording is better? 8. Name evidence of a completed website task.

    Explained answers. 1. The element whose ID is method; the fragment and ID must match. 2. Only Cycling's row, with six responses and one category shown. 3. No; it changes visible rows, not the original dataset. 4. The text, full table, method and section links; optional controls remain hidden. 5. Files still need approved hosting and delivery, then checks at the actual URL. 6. $24/600=4\%$. 7. No; other differences and measurement limits remain. 8. Show your plan, sources, working page, checks and required publishing, academic and promotion evidence.

  • 3

    GAC017 Computing III: Data Science and Web Apps · ⁨GAC017 الحاسوب III: علوم البيانات وتطبيقات الويب⁩

    3.1

    What this module is, and how it is marked · ⁨ما هي هذه الوحدة وكيفية تقييمها⁩

    English

    GAC017 is the Level III computing module: what sits behind a website. Six units cover back-end JavaScript, databases, SQL, connecting the two, and a first look at data science.

    Assessment is entirely practical — a database 数据库 you design and build, a web app 网络应用 that talks to it, a data analysis project 数据分析项目, and coursework — usually spread across most of the semester rather than concentrated at the end.

    • The work is judged on whether it runs and answers a question, not on how much code there is.
    • ⚠ Design the database before you write a query. Almost every problem later is a table problem wearing a query's clothes.

    Every SQL example here runs in the site's own code playground, and the SQL reference there is the fuller version of these notes.

    العربية

    GAC017 هو وحدة الحوسبة المستوى الثالث: ما يقع خلف موقع إلكتروني. ست وحدات تغطي الجانب الخلفي لجافاسكريبت، وقواعد البيانات، وSQL، والربط بينهما، ونظرة أولية على علوم البيانات.

    التقييم عملي بالكامل — قاعدة بيانات تصممها وتبنيها، وتطبيق ويب يتواصل معها، ومشروع تحليل بيانات، وأعمال الفصل الدراسي — عادةً منتشرة على طول معظم الفصل الدراسي بدلاً من تركيزها في نهايته.

    • يُحكم على العمل بناءً على ما إذا كان يعمل ويجيب عن سؤال، وليس على كمية الكود الموجودة فيه.
    • ⚠ صمم قاعدة البيانات قبل كتابة الاستعلام. كل مشكلة تقريباً لاحقاً هي مشكلة في الجداول. ترتدي ملابس استعلام.

    كل مثال SQL هنا يعمل في ملعب الكود الخاص بالموقع، المرجع لـ SQL هناك هو النسخة الأكثر شمولاً لهذه الملاحظات.

    Vocabulary · ⁨مفردات⁩ Train · ⁨تدريب⁩
    English العربية
    SQL/ˌes kjuː ˈel/ SQL
    3.1

    JavaScript for a web app's back end · ⁨جافا سكريبت للواجهة الخلفية لتطبيق ويب⁩

    Syllabus · ⁨المنهج⁩
    English

    Unit 1 of 6 in GAC017 Computing III: Data Science and Web Apps (Level III). The module is taught over about 40 class hours plus 20 hours of independent study, and is assessed at the teaching centre and moderated by ACT — there is no external exam.

    Module purpose: On completion of this module, students should be able to create a web app. Students will learn about back- end programming and how to create a dynamic website. They will be able to use SQL to analyze data from multiple tables in order to make informed decisions.

    The module outcomes this unit works towards:

    Learning Objective GAC017.1: Understand the basic components of a Web Application.

    العربية

    الوحدة 1 من أصل 6 في GAC017 الحاسوب الثالث: علوم البيانات وتطبيقات الويب (المستوى الثالث). تُدرس الوحدة لمدة 40 ساعة دراسية تقريبًا بالإضافة إلى 20 ساعة من الدراسة المستقلة، وتُقيّم في مركز التعليم وتخضع للمراقبة من قِبل ACT — لا يوجد امتحان خارجي.

    غرض الوحدة: عند إتمام هذه الوحدة، يجب أن يكون الطلاب قادرين على إنشاء تطبيق ويب. سيتعلمون عن برمجة الواجهة الخلفية وكيفية إنشاء موقع إلكتروني ديناميكي. كما سيكونون قادرين على استخدام SQL لتحليل البيانات من جداول متعددة من أجل اتخاذ قرارات مستنيرة.

    مخرجات الوحدة التي تسهم فيها هذه الوحدة:

    هدف التعلم GAC017.1: فهم المكونات الأساسية لتطبيق ويب.

    Source: Cambridge International syllabus · ⁨المصدر: منهج كامبريدج الدولي⁩

    English
    • The front end 前端 runs in the browser; the back end 后端 runs on a server and holds what the browser must not.
    • A server 服务器 receives a request 请求 and returns a response 响应. That loop is the whole architecture.
    • An API 应用程序接口 is the agreed shape of those requests and responses.
    • ⚠ Anything secret — a password, a key — belongs on the back end only. Code in a browser is readable by everyone who visits.
    العربية
    • الواجهة الأمامية تعمل في المتصفح؛ الواجهة الخلفية تعمل على خادم وتحفظ ما يجب ألا يراه المتصفح.
    • الخادم يستقبل طلباً ويعيد استجابة. هذا التكرار هو بنية النظام بأكملها.
    • API هو الشكل المتفق عليه لتلك الطلبات والاستجابات.
    • ⚠ أي شيء سري — كلمة مرور، مفتاح — ينتمي إلى الواجهة الخلفية فقط. الكود في المتصفح مرئي للجميع الذين يزورونه.
    Vocabulary · ⁨مفردات⁩ Train · ⁨تدريب⁩
    English العربية
    database/ˈdeɪtəbeɪs/ قاعدة بيانات
    web app/web æp/ تطبيق ويب
    data analysis project/ˈdeɪtə əˈnæləsɪs ˈprɒdʒekt/ مشروع تحليل البيانات
    front end/frʌnt end/ واجهة أمامية
    back end/bæk end/ واجهة خلفية
    server/ˈsɜːvə/ الخادم
    request/rɪˈkwest/ طلب
    response/rɪˈspɒns/ الاستجابة
    API/ˌeɪ piː ˈaɪ/ واجهة برمجة التطبيقات
    route/ruːt/ طريق
    Validate input/ˈvælɪdeɪt ˈɪnpʊt/ التحقق من صحة الإدخال
    SQL injection/ˌes kjuː ˈel ɪnˈdʒekʃn/ حقن SQL
    relational database/rɪˈleɪʃənl ˈdeɪtəbeɪs/ قاعدة بيانات علائقية
    tables/ˈteɪblz/ الجداول
    primary key/ˈpraɪməri kiː/ المفتاح الأساسي
    foreign key/ˈfɒrən kiː/ المفتاح الأجنبي
    Normalisation/ˌnɔːməlaɪˈzeɪʃn/ التعديل
    entities/ˈentɪtiz/ الكائنات
    3.2

    Back-end programming · ⁨البرمجة الخلفية⁩

    Syllabus · ⁨المنهج⁩
    English

    Unit 2 of 6 in GAC017 Computing III: Data Science and Web Apps (Level III). The module is taught over about 40 class hours plus 20 hours of independent study, and is assessed at the teaching centre and moderated by ACT — there is no external exam.

    The module outcomes this unit works towards:

    Learning Objective GAC017.2: Adapt a back-end application using scripting languages to interact with databases.

    العربية

    الوحدة 2 من أصل 6 في GAC017 الحاسوب الثالث: علوم البيانات وتطبيقات الويب (المستوى الثالث). تُدرس الوحدة لمدة 40 ساعة دراسية تقريبًا بالإضافة إلى 20 ساعة من الدراسة المستقلة، وتُقيّم في مركز التعليم وتخضع للمراقبة من قِبل ACT — لا يوجد امتحان خارجي.

    مخرجات الوحدة التي تسهم فيها هذه الوحدة:

    هدف التعلم GAC017.2: تعديل تطبيق خلفي باستخدام لغات البرمجة للتفاعل مع قواعد البيانات.

    Source: Cambridge International syllabus · ⁨المصدر: منهج كامبريدج الدولي⁩

    English
    • A route 路由 maps a URL to code that runs when that URL is requested.
    • Validate input 校验输入 on the server. Checking in the browser is a convenience for honest users, not a defence.
    • Never build a query by joining strings with user input. That is how SQL injection SQL 注入 happens, and it is the security failure this unit exists to prevent.
    • Return an honest status: 200 for success, 400 for a bad request, 404 for something that is not there.
    العربية
    • المسار يربط عنوان URL بكود يعمل عند طلب ذلك العنوان.
    • تحقق من المدخلات على الخادم. التحقق في المتصفح مجرد راحة للمستخدمين الصادقين، وليس دفاعاً.
    • لا تبني استعلاماً أبداً عن طريق دمج السلاسل النصية مع مدخلات المستخدم. هكذا يحدث إدراج SQL يحدث SQL، وهو الفشل الأمني الذي تم إنشاء هذه الوحدة لمنعهم منه.
    • أعد حالة صادقة: 200 للنجاح، 400 لطلب سيء، 404 لشيء غير موجود. غير موجود.
    3.3

    Introduction to databases · ⁨مقدمة في قواعد البيانات⁩

    Syllabus · ⁨المنهج⁩
    English

    Unit 3 of 6 in GAC017 Computing III: Data Science and Web Apps (Level III). The module is taught over about 40 class hours plus 20 hours of independent study, and is assessed at the teaching centre and moderated by ACT — there is no external exam.

    The module outcomes this unit works towards:

    Learning Objective GAC017.3: Create a database with multiple tables.

    العربية

    الوحدة 3 من أصل 6 في GAC017 الحاسوب الثالث: علوم البيانات وتطبيقات الويب (المستوى الثالث). تُدرس الوحدة لمدة 40 ساعة دراسية تقريبًا بالإضافة إلى 20 ساعة من الدراسة المستقلة، وتُقيّم في مركز التعليم وتخضع للمراقبة من قِبل ACT — لا يوجد امتحان خارجي.

    مخرجات الوحدة التي تسهم فيها هذه الوحدة:

    هدف التعلم GAC017.3: إنشاء قاعدة بيانات تحتوي على جداول متعددة.

    Source: Cambridge International syllabus · ⁨المصدر: منهج كامبريدج الدولي⁩

    English
    • A relational database 关系数据库 stores data in tables 表 of rows and columns.
    • A primary key 主键 identifies a row uniquely. A foreign key 外键 points at another table's primary key, and that pointer is the relationship.
    • Normalisation 规范化 removes duplicated data so one fact lives in one place.
    • Design by asking what the entities 实体 are, then what connects them.

    Worked example. A school wants to store students, courses and who takes what.

    Two tables cannot do it: a student takes many courses and a course has many students. The many-to-many needs a third table — enrolments — whose rows are (student, course) pairs.

    Recognising that this third table is required is the single most useful database idea in the module, and it is where most first designs go wrong.

    العربية
    • قاعدة البيانات العلاقية تخزن البيانات في جداول من صفوف وأعمدة.
    • المفتاح الأساسي يحدد صفًا بشكل فريد. المفتاح الأجنبي يشير إلى المفتاح الأساسي لجدول آخر، وهذا المؤشر هو العلاقة.
    • التطبيع يزيل البيانات المكررة بحيث يعيش حقيقة واحدة في مكان واحد.
    • صمم بسؤال ما هي الكائنات، ثم ما الذي يربطها.

    مثال محلول. تريد مدرسة تخزين الطلاب والدورات ومن يأخذ ماذا.

    لا يمكن لجداول أن تفعل ذلك: الطالب يأخذ دورات عديدة والدورة لها طلاب كثيرون. تحتاج العلاقة Many-to-Many إلى جدول ثالث — التسجيلات — whose rows are (student, course) pairs.

    إدراك أن هذا الجدول الثالث مطلوب هو فكرة قاعدة بيانات مفيدة وحيدة في الوحدة، وهو حيث تخطأ معظم التصاميم الأولى.

    3.4

    SQL for back-end programming · ⁨SQL للبرمجة الخلفية⁩

    Syllabus · ⁨المنهج⁩
    English

    Unit 4 of 6 in GAC017 Computing III: Data Science and Web Apps (Level III). The module is taught over about 40 class hours plus 20 hours of independent study, and is assessed at the teaching centre and moderated by ACT — there is no external exam.

    The module outcomes this unit works towards:

    Learning Objective GAC017.4: Analyze data using SQL in order to make decisions.

    العربية

    الوحدة 4 من أصل 6 في GAC017 الحاسوب الثالث: علوم البيانات وتطبيقات الويب (المستوى الثالث). تُدرس الوحدة لمدة 40 ساعة دراسية تقريبًا بالإضافة إلى 20 ساعة من الدراسة المستقلة، وتُقيّم في مركز التعليم وتخضع للمراقبة من قِبل ACT — لا يوجد امتحان خارجي.

    مخرجات الوحدة التي تسهم فيها هذه الوحدة:

    هدف التعلم GAC017.4: تحليل البيانات باستخدام SQL لاتخاذ القرارات.

    Source: Cambridge International syllabus · ⁨المصدر: منهج كامبريدج الدولي⁩

    English
    • SQL 结构化查询语言 asks a database questions. SELECT … FROM … WHERE … is the core.
    • JOIN 连接 combines rows from two tables on a matching key.
    • GROUP BY 分组 with COUNT, SUM or AVG answers "how many per…" questions.
    • ⚠ WHERE filters rows before grouping; HAVING filters groups after. Using the wrong one is the classic SQL error, and it usually returns a plausible wrong answer.

    Worked example. Which courses have more than 20 students?

    The count is a property of the group, so the filter is HAVING. Written with WHERE it does not run — and when a similar mistake does run, it silently answers a different question.

    العربية
    • SQL يطرح أسئلة على قاعدة بيانات. SELECT … FROM … WHERE … هو الأساس.
    • JOIN يدمج صفوفًا من جدولين على مفتاح متطابق.
    • GROUP BY مع COUNT، SUM أو AVG يجيب عن أسئلة
    • ⚠ WHERE يفلتر الصفوف قبل التجميع؛ HAVING يفلتر المجموعات بعد ذلك. استخدام الفلتر الخاطئ هو الخطأ الكلاسيكي في SQL، وعادة ما يعطي إجابة خاطئة تبدو معقولة.

    مثال محلول. أي الدورات تحتوي على أكثر من 20 طالب؟

    SELECT c.title, COUNT(*) AS students
    FROM enrolments e
    JOIN courses c ON c.id = e.course_id
    GROUP BY c.title
    HAVING COUNT(*) > 20;
    

    العدّ خاصية للمجموعة، لذا فإن الفلتر يجب أن يكون HAVING. إذا كُتب باستخدام WHERE فلن يعمل — وعندما يحدث خطأ مشابه ويعمل فعلاً، يجيب بصمت عن سؤال مختلف.

    Vocabulary · ⁨مفردات⁩ Train · ⁨تدريب⁩
    English العربية
    JOIN/dʒɔɪn/ JOIN
    GROUP BY/ɡruːp baɪ/ GROUP BY
    parameterised query/ˌpærəˈmetəraɪzd ˈkwɪərɪ/ استعلام معياري
    3.5

    Connecting JavaScript with SQL · ⁨الربط بين جافاسكريبت وSQL⁩

    Syllabus · ⁨المنهج⁩
    English

    Unit 5 of 6 in GAC017 Computing III: Data Science and Web Apps (Level III). The module is taught over about 40 class hours plus 20 hours of independent study, and is assessed at the teaching centre and moderated by ACT — there is no external exam.

    The module outcomes this unit works towards:

    Learning Objective GAC017.2: Adapt a back-end application using scripting languages to interact with databases.

    Learning Objective GAC017.4: Analyze data using SQL in order to make decisions.

    العربية

    الوحدة 5 من أصل 6 في GAC017 الحاسوب الثالث: علوم البيانات وتطبيقات الويب (المستوى الثالث). تُدرس الوحدة لمدة 40 ساعة دراسية تقريبًا بالإضافة إلى 20 ساعة من الدراسة المستقلة، وتُقيّم في مركز التعليم وتخضع للمراقبة من قِبل ACT — لا يوجد امتحان خارجي.

    مخرجات الوحدة التي تسهم فيها هذه الوحدة:

    هدف التعلم GAC017.2: تعديل تطبيق خلفي باستخدام لغات البرمجة للتفاعل مع قواعد البيانات.

    هدف التعلم GAC017.4: تحليل البيانات باستخدام SQL لاتخاذ القرارات.

    Source: Cambridge International syllabus · ⁨المصدر: منهج كامبريدج الدولي⁩

    English
    • The back end takes a request, runs a parameterised query 参数化查询, and returns the rows as data, usually JSON 数据交换格式.
    • Parameterised means the values travel separately from the query text. That is what makes injection impossible rather than unlikely.
    • Handle the empty case. A query that returns no rows is normal, and a page that breaks on it is not finished.
    العربية
    • يأخذ الجانب الخلفي الطلب، وينفذ استعلامًا مُعاملًا، ويعيد الصفوف كـ بيانات، عادةً بصيغة JSON.
    • يعني المُعامَل أن القيم تنتقل منفصلة عن نص الاستعلام. وهذا ما يجعل الإدخال غير ممكن بدلاً من مجرد مستبعد.
    • تعامل مع الحالة الفارغة. استعلام لا يُرجع أي صف أمر طبيعي، وصفحة تنهار عند encountering thereof غير مكتملة.
    Vocabulary · ⁨مفردات⁩ Train · ⁨تدريب⁩
    English العربية
    JSON/ˈdʒeɪsn/ JSON
    Data science/ˈdeɪtə ˈsaɪəns/ علوم البيانات
    Descriptive statistics/dɪˈskrɪptɪv stəˈtɪstɪks/ الإحصاء الوصفي
    visualisation/ˌvɪʒuːəlaɪˈzeɪʃn/ التصور البياني
    Correlation is not causation/ˌkɒrɪˈleɪʃn ɪz nɒt kɔːˈseɪʃn/ الارتباط لا يعني السببية
    3.6

    Data science · ⁨علوم البيانات⁩

    Syllabus · ⁨المنهج⁩
    English

    Unit 6 of 6 in GAC017 Computing III: Data Science and Web Apps (Level III). The module is taught over about 40 class hours plus 20 hours of independent study, and is assessed at the teaching centre and moderated by ACT — there is no external exam.

    The module outcomes this unit works towards:

    Learning Objective GAC017.5: Applying Data Science to other academic areas.

    العربية

    الوحدة 6 من أصل 6 في GAC017 الحوسبة III: علوم البيانات والتطبيقات الويب (المستوى الثالث). تُدرَّس الوحدة خلال حوالي 40 ساعة دراسية بالإضافة إلى 20 ساعة من الدراسة المستقلة، وتُقيَّم في مركز التدريس وتخضع لمراجعة ACT — لا يوجد امتحان خارجي.

    مخرجات الوحدة التي تسهم فيها هذه الوحدة:

    هدف التعلم GAC017.5: تطبيق علوم البيانات على مجالات أكاديمية أخرى.

    Source: Cambridge International syllabus · ⁨المصدر: منهج كامبريدج الدولي⁩

    English
    • Data science 数据科学 turns data into a decision, and most of the work is before the analysis: cleaning, joining, and checking what the data can support.
    • Descriptive statistics 描述性统计 summarise; a visualisation 可视化 shows shape; neither proves a cause.
    • Correlation is not causation 相关不等于因果 — the sentence every data project needs and most omit.
    • State the limitations of your dataset. A project that names what its data cannot show scores above one that quietly overclaims.
    العربية
    • علوم البيانات تحوّل البيانات إلى قرار، ومعظم العمل يتم قبل التحليل: التنظيف، والدمج، والتحقق مما يمكن للبيانات دعمه.
    • الإحصاء الوصفي يُلخّص؛ والتصور البصري يُظهر الشكل؛ ولا شيء منهما يثبت سببية.
    • الارتباط ليس سببية — الجملة التي يحتاجها كل مشروع بيانات ومعظم يتجاهلها.
    • اذكر قيود مجموعة البيانات الخاصة بك. المشروع الذي يحدد ما لا يمكن لبياناته إظهاره يحصل على درجة أعلى من مشروع يتكبر بصمت.
    Additional notes PDF

    Follow one request from browser to database

    A teacher asks which clubs have places left. A spreadsheet can answer once. A web app lets a reader ask again with a different filter.

    Our example has four students, four classes and five enrolments. All records are invented. It is a learning project, not a school booking service.

    The three parts have different jobs:

    Part Job in the example Runs where?
    Browser page Collect a minimum and show a table The reader's browser
    JavaScript server Check the request and run the query The local server
    SQLite database Store related records and calculate course totals Inside this server process

    An HTTP request 请求信息 asks for a resource. An HTTP response 响应信息 contains a status and content. The browser sends GET /api/courses?min=2. The server checks the number, then asks SQLite for course totals. It returns a JSON object 数据对象. The browser reads that object and creates table cells. The database does not send HTML to the browser. The browser does not run our server's SQL.

    Start the supplied three-file example with node server.mjs. Open the address it prints. Use Node.js 22.13 or newer with the built-in SQLite module available. Keep server.mjs, index.html and courses.sql together in your own working copy. No account or package download is needed. Stop your own server with Ctrl-C.

    Get the complete example files from the site's static teaching folder:

    • /static/teaching/gac_computing/database-app/server.mjs
    • /static/teaching/gac_computing/database-app/courses.sql
    • /static/teaching/gac_computing/database-app/index.html.txt
    • /static/teaching/gac_computing/database-app/README.txt

    Save the first two with their shown names. Save index.html.txt as index.html. The last file has the full run and adaptation instructions. Use these paths after the site's address. The page file is supplied as text for downloading. It must run through your local example server to reach the matching API.

    This example uses an in-memory database 内存数据库. Restarting creates the original records again. A file database could keep changes after restart. That needs a different storage choice.

    Design relationships before writing queries

    Each student has one row in students. Each class has one row in courses. An enrolment links a student to a class. A student may join several classes. A class may contain several students. This is a many-to-many relationship 多对多关系. The third table stores one student–class pair per row.

    Student 1 joins courses 10 and 20. Course 10 contains students 1, 2 and 3. The same student name need not be repeated in each enrolment row. To change Mei's name, change one student record. This avoids conflicting copies.

    The following two blocks form one complete script. Run them in order in a new empty practice database. Do not run it against an existing project database.

    PRAGMA foreign_keys = ON;
    CREATE TABLE students (
      id INTEGER PRIMARY KEY,
      name TEXT NOT NULL
    );
    CREATE TABLE courses (
      id INTEGER PRIMARY KEY,
      title TEXT NOT NULL,
      capacity INTEGER NOT NULL CHECK (capacity >= 0)
    );
    CREATE TABLE enrolments (
      student_id INTEGER NOT NULL REFERENCES students(id),
      course_id INTEGER NOT NULL REFERENCES courses(id),
      PRIMARY KEY (student_id, course_id)
    );
    

    The tables now exist. Add the fictional records, then query totals for each class.

    INSERT INTO students VALUES
      (1, 'Mei'), (2, 'Kai'), (3, 'Lin'), (4, 'Jia');
    INSERT INTO courses VALUES
      (10, 'Coding', 3), (20, 'Coding', 2),
      (30, 'Art', 2), (40, 'Music', 3);
    INSERT INTO enrolments VALUES
      (1, 10), (2, 10), (3, 10), (1, 20), (4, 30);
    SELECT c.id, c.title, c.capacity,
           COUNT(e.student_id) AS enrolled
    FROM courses c
    LEFT JOIN enrolments e ON c.id = e.course_id
    GROUP BY c.id, c.title, c.capacity
    ORDER BY enrolled DESC, c.id;
    

    A constraint 约束 rejects data that breaks a rule. NOT NULL requires a value. CHECK (capacity >= 0) rejects negative capacity. The paired primary key rejects a repeated enrolment, such as (1,10) twice. Either ID may appear in many pairs. The pair itself must be unique.

    Foreign keys reject missing students or classes when foreign-key checking is enabled. The script enables that checking explicitly. A foreign key does not create the missing row. These rules do not prevent every error. For example, capacity 3 does not itself limit enrolments to 3. A real booking operation would need a capacity check and safe handling of simultaneous bookings.

    Count classes without losing empty ones

    Courses 10 and 20 both have the title Coding. They are different classes. Group by the course ID as well as its title and capacity. Grouping only by title would merge their enrolments and answer the wrong question.

    LEFT JOIN keeps every course, including Music with no enrolments. The unmatched course has an empty enrolment side. COUNT(e.student_id) counts matched student IDs and gives zero for Music. COUNT(*) counts the joined row, including that unmatched row, and would give Music one.

    ID Course Capacity Enrolled Places left
    10 Coding 3 3 0
    20 Coding 2 1 1
    30 Art 2 1 1
    40 Music 3 0 3

    The browser calculates places left as capacity minus enrolled. There are five enrolments but only four students. Mei appears in two enrolment rows. Do not label five as the number of unique students.

    To keep classes with at least two enrolments, add this line after GROUP BY:

    HAVING COUNT(e.student_id) >= 2
    

    This is a query fragment, added to the complete query. It returns course 10 only. HAVING checks each group total. WHERE checks individual rows before totals are calculated. For example, WHERE c.id = 20 selects one class before grouping; it does not test its total.

    Validate and bind the backend input

    The route /api/courses accepts a minimum from 0 to 99. The browser number control helps users enter it. Direct requests can skip that control. The server therefore checks the input again.

    It rejects negative numbers, decimals, 100, repeated minimum parameters and text. Missing min means zero. A successful query with no courses is still a valid request.

    Request Status Meaning
    GET /api/courses?min=2 200 One course found
    GET /api/courses?min=4 200 Valid query; empty list
    GET /api/courses?min=-1 400 Invalid input
    GET /missing 404 Route does not exist
    POST /api/courses 405 This read-only route accepts GET

    A prepared statement 预编译语句 keeps the SQL structure separate from a value. The server prepares its total-by-course query with >= ?, then calls courses.all(minimum). The bound number fills the value position. It is not joined into the SQL text.

    Binding values protects this query from injection through that value. It does not prove that every route or operation is secure. SQL keywords and column names cannot be supplied as ordinary bound values. Keep the query structure fixed or choose it from permitted server-owned choices.

    The server sends public course totals only. Student names stay out of this response. Real records would also need access rules and permission to use them. An invented example needs no real student information.

    Handle loading, empty results and failures

    The browser uses fetch to request the data. It must check the response status. A completed network request may still return 400 or 500. The browser's response.ok distinguishes successful HTTP responses from those errors.

    The page clears old rows before loading. Otherwise a failed request could leave old results looking current. It displays a loading message and disables the load button during the request. It then shows the result, an empty message, or a failure message. The button becomes available again so the reader can retry.

    Each displayed value goes into textContent, not into HTML built from a data string. A course title becomes text inside a cell. It is not treated as page markup.

    The sample uses a request number to ignore an older response after a newer request starts. This protects the page from a late response replacing the newest result. It does not change database records or make bookings safe.

    Try minimum 0, 2 and 4 in that order. Expect four courses, one course and no courses. Then stop the server and try loading again. The page should explain the failure and allow a retry. Restart the server and load again. The original fictional dataset should return.

    Turn results into a supported academic decision

    Begin with a question: which classes currently have spare places? State your unit of analysis 分析单位: one class, identified by course ID. Check missing values, repeated enrolment pairs, valid IDs and non-negative capacities before analysis. Name the data date in a real report, because enrolments can change.

    The current answer is Coding 20, Art 30 and Music 40. Music has three spare places; the other two have one each. A teacher could first check whether those places are still available before announcing them.

    A bar chart could compare enrolled and capacity for each course ID. Keep the two Coding classes separate and label them with their IDs. Show zero enrolments for Music. Do not hide it because its bar is short.

    Explain the limitation 局限 of this decision. These records describe four invented classes at one time. They do not measure teaching quality, future demand or why students chose a class. More enrolments do not prove that a class caused better learning. Avoid using a descriptive count as evidence for a causal claim.

    A short report can use five parts: question, data and checks, method, result, limits and next action. Include the query or name the calculation so another reader can reproduce the result. Keep student and enrolment counts separate.

    Practise with changes and explain your answers

    1. Sketch the three tables. Which keys link them, and why is the third table needed?
    2. Predict minimum 1 and minimum 3 before running either request.
    3. Replace COUNT(e.student_id) with COUNT(*). Which original result becomes wrong, and why?
    4. Group only by title. What happens to the two Coding classes?
    5. Add course 50, Drama, with capacity 2 and no enrolments. Predict its total and free places.
    6. Add enrolment (2,20). What should minimum 2 now return?
    7. Try duplicate pair (1,10) and missing student pair (99,10). Explain each rejection.
    8. Why must the server check a minimum that the browser already checks?
    9. Explain why an empty array gets 200, while a negative minimum gets 400.
    10. Write a two-sentence recommendation and one limitation using the original data.

    Explained answers

    1. Student ID and course ID link the paired enrolment table to their parent tables. The third table represents many students in many classes without repeating names or course facts.
    2. Minimum 1 returns 10, 20 and 30. Minimum 3 returns 10 only. Both filters include equality.
    3. Music becomes one instead of zero. COUNT(*) counts the preserved unmatched course row.
    4. Coding totals combine to four. This describes a title group, not either individual class.
    5. Drama has zero enrolments and two places left. A left join keeps it at minimum 0.
    6. Coding 20 now has two enrolments. Minimum 2 returns IDs 10 and 20, with totals three and two.
    7. The paired primary key rejects the duplicate. The enabled foreign key rejects student 99, who does not exist.
    8. A caller can send a request without using the page. Browser checks cannot protect the server by themselves.
    9. No matching rows is a successful query. A negative minimum breaks the API's input rule.
    10. Check remaining places in Coding 20, Art 30 and Music 40 before offering them. Music has most spare places in this example. Invented totals cannot predict actual student demand.

Log in or create account · ⁨تسجيل الدخول أو إنشاء حساب⁩

IGCSE, A-Level & AP