📚 Core Concepts in SQA Advanced Higher Computing Science | SQA 高级计算机科学核心知识点梳理
The SQA Advanced Higher Computing Science course builds on Higher knowledge and develops deeper understanding of computational thinking, software design, and computer systems. This article provides a structured overview of the key topics students must master, from software development methodologies to web technologies and database design. Each section pairs essential English explanation with a Chinese equivalent, helping bilingual learners consolidate their understanding.
SQA 高级计算机科学课程在 Higher 级别基础上深化计算思维、软件设计与计算机系统的理解。本文围绕学生必须掌握的核心主题,从软件开发方法学到网络技术与数据库设计,提供结构化的知识点梳理。每个要点均配有英文与中文的双语解释,帮助双语学习者巩固理解。
1. Software Development Process | 软件开发过程
The software development process follows a structured life cycle: analysis, design, implementation, testing, documentation, evaluation, and maintenance. In analysis, the problem is explored, and end‑user and functional requirements are gathered using interviews, observation, and document analysis. A requirements specification is then produced.
软件开发过程遵循结构化的生命周期:分析、设计、实现、测试、文档、评估和维护。在分析阶段,通过访谈、观察和文档分析收集最终用户需求与功能需求,并生成需求规格说明书。
Design involves creating a user interface mock‑up, identifying data structures, and refining the solution using algorithms such as pseudocode and flowcharts. The design may also include wireframes and structure diagrams to illustrate navigation or program flow.
设计阶段包括创建用户界面原型,识别所用数据结构,并使用伪代码、流程图等算法细化解决方案。设计中还可能包含线框图和结构图,以说明导航或程序流程。
Testing is carried out systematically. Test tables include normal data, boundary data, and exceptional data. Iterative testing during implementation (e.g. component testing) and final acceptance testing ensure the product meets the specification. Documentation includes the user guide and technical guide.
测试需要系统性地进行。测试表应包含正常数据、边界数据和异常数据。实现过程中的迭代测试(如组件测试)以及最终验收测试确保产品符合规格。文档包括用户指南和技术指南。
2. Programming Paradigms and OOP | 编程范式与面向对象编程
Two main paradigms are considered: procedural (imperative) and object‑oriented. Procedural programming structures code into procedures and functions that operate on data. Modularity is achieved through small, reusable routines. Parameters can be passed by value or by reference.
课程涉及两种主要编程范式:过程式(命令式)和面向对象。过程式编程将代码组织为对数据进行操作的过程和函数,通过小而可重用的例程实现模块化。参数可按值传递或按引用传递。
Object‑oriented programming (OOP) models real‑world entities using classes and objects. Encapsulation bundles data (attributes) and methods (behaviours) together, and data hiding limits direct access to an object’s internal state. Inheritance allows a subclass to extend a parent class, enabling code reuse. Polymorphism allows objects of different classes to be treated through a common interface, often using method overriding.
面向对象编程(OOP)使用类和对象对现实世界实体建模。封装将数据(属性)和方法(行为)捆绑在一起,数据隐藏限制对对象内部状态的直接访问。继承允许子类扩展父类,实现代码重用。多态性允许不同类的对象通过同一个接口处理,常通过方法重写实现。
Design patterns such as the factory method or singleton can be introduced. Students should apply OOP principles to solve real problems, often using languages such as Java, Python, or C#.
可以引入工厂方法或单例等设计模式。学生应运用 OOP 原则解决实际问题,通常使用 Java、Python 或 C# 等语言。
3. Data Structures: Stacks, Queues, and Linked Lists | 数据结构:栈、队列与链表
Static data structures such as arrays are fixed in size, while dynamic data structures like linked lists grow and shrink at runtime. A stack is a LIFO (Last In, First Out) structure with operations push (add) and pop (remove). It is used in backtracking algorithms, expression evaluation, and function call management.
数组等静态数据结构大小固定,而链表等动态数据结构可在运行时增长和收缩。栈是一种后进先出(LIFO)结构,具有入栈(push)和出栈(pop)操作。它可用于回溯算法、表达式求值和函数调用管理。
A queue is a FIFO (First In, First Out) structure with enqueue (add to rear) and dequeue (remove from front). Queues are used in scheduling and buffering. A priority queue allows elements with higher priority to be dequeued first, often implemented using a heap.
队列是一种先进先出(FIFO)结构,具有入队(enqueue,在队尾添加)和出队(dequeue,从队首移除)操作。队列用于调度和缓冲。优先队列允许优先级高的元素先出队,通常用堆实现。
Linked lists consist of nodes, each holding data and a pointer to the next node. Singly linked lists allow forward traversal; doubly linked lists also have a back pointer. Linked lists enable efficient insertion and deletion compared to arrays, but do not support random access.
链表由节点组成,每个节点包含数据和一个指向下一节点的指针。单链表只能单向遍历;双向链表还有指向前一节点的指针。相比数组,链表可高效插入和删除,但不支持随机访问。
4. Tree and Graph Data Structures | 树与图数据结构
A tree is a hierarchical structure with a root node and child nodes. Binary trees have at most two children per node. Binary search trees (BST) maintain order: left child < parent < right child. This allows O(log n) average‑case search, insert, and delete. Traversal algorithms include pre‑order, in‑order, and post‑order.
树是具有根节点和子节点的层次结构。二叉树每个节点最多有两个子节点。二叉搜索树(BST)保持有序:左子 < 父 < 右子,可实现平均 O(log n) 的搜索、插入和删除。遍历算法包括前序、中序和后序遍历。
A graph is a collection of vertices (nodes) connected by edges. Edges can be directed or undirected, weighted or unweighted. Graphs can be represented using an adjacency matrix or adjacency list. Common traversal algorithms are depth‑first search (DFS) using a stack, and breadth‑first search (BFS) using a queue.
图是由顶点(节点)通过边连接而成的集合。边可以是有向或无向、加权或非加权的。图可以用邻接矩阵或邻接表表示。常用遍历算法包括使用栈的深度优先搜索(DFS)和使用队列的广度优先搜索(BFS)。
Applications include shortest path (Dijkstra’s algorithm), minimum spanning tree (Prim’s or Kruskal’s), and network routing. These structures are essential for solving complex real‑world problems efficiently.
应用包括最短路径(Dijkstra 算法)、最小生成树(Prim 或 Kruskal 算法)和网络路由。这些结构对于高效解决复杂的实际问题至关重要。
5. Algorithms: Searching and Sorting | 算法:搜索与排序
Linear search examines each element in sequence from start to finish; it has O(n) time complexity. Binary search requires a sorted array and repeatedly divides the search interval in half, giving O(log n) complexity. Both algorithms illustrate the importance of choosing the right data structure.
线性搜索从头到尾顺序检查每个元素,时间复杂度为 O(n)。二分搜索要求数组已排序,并不断将搜索区间减半,时间复杂度为 O(log n)。这两个算法说明了选择正确数据结构的重要性。
Sorting algorithms include bubble sort, insertion sort, selection sort, merge sort, and quicksort. Bubble sort compares adjacent elements and swaps them if they are in the wrong order, O(n2) worst case. Merge sort is a divide‑and‑conquer algorithm with O(n log n) worst case, and is stable. Quicksort, also O(n log n) on average, can degrade to O(n2) if the pivot is poorly chosen.
排序算法包括冒泡排序、插入排序、选择排序、归并排序和快速排序。冒泡排序比较相邻元素并交换顺序错误的项,最坏情况为 O(n2)。归并排序是分治算法,最坏情况 O(n log n),且是稳定的。快速排序平均也是 O(n log n),但如果基准选择不当可能退化为 O(n2)。
Algorithm efficiency is analysed using Big O notation, considering time and space complexity. Practical trade‑offs between performance and memory usage must be understood for real‑world applications.
算法效率通过大 O 符号进行分析,需考虑时间复杂度和空间复杂度。对于实际应用,必须理解性能与内存使用之间的权衡。
6. Computer Architecture and CPU | 计算机体系结构与中央处理器
The CPU (Central Processing Unit) consists of the control unit (CU), arithmetic logic unit (ALU), and registers. The CU decodes and executes instructions, while the ALU performs arithmetic and logical operations. Registers such as the program counter (PC), memory address register (MAR), and memory data register (MDR) hold small amounts of data for fast access.
中央处理器(CPU)由控制单元(CU)、算术逻辑单元(ALU)和寄存器组成。CU 对指令进行解码和执行,ALU 执行算术和逻辑运算。程序计数器(PC)、内存地址寄存器(MAR)和内存数据寄存器(MDR)等寄存器保存少量数据以便快速访问。
The fetch‑execute cycle continually fetches instructions from memory, decodes them, and executes them. Increasing the clock speed, using multiple cores, and pipelining can improve performance. Parallel processing allows simultaneous execution of instructions, but it introduces challenges like data hazards.
取指—执行周期不断从内存中取指令、解码并执行。提高时钟速度、使用多核和流水线技术可以提升性能。并行处理允许指令同时执行,但会带来数据冒险等挑战。
Memory hierarchy includes cache (L1, L2, L3), RAM, and secondary storage. Cache memory sits between the CPU and main memory, storing frequently used data to reduce latency. Factors affecting system performance include addressable memory, word size, and bus width.
存储层次包括缓存(L1、L2、L3)、RAM 和二级存储。缓存位于 CPU 和主存之间,存储频繁使用的数据以减少延迟。影响系统性能的因素包括可寻址存储器大小、字长和总线宽度。
7. Operating Systems | 操作系统
An operating system (OS) manages hardware resources and provides a platform for applications. Key functions include memory management, process scheduling, file management, and input/output control. Memory management techniques such as paging and segmentation allow efficient use of RAM and enable virtual memory.
操作系统管理硬件资源并为应用程序提供平台。关键功能包括内存管理、进程调度、文件管理和输入/输出控制。分页和分段等内存管理技术可有效利用 RAM 并能实现虚拟内存。
Process scheduling decides which process gets CPU time. Scheduling algorithms include first‑come first‑served (FCFS), shortest job first, round robin, and priority‑based scheduling. Round robin uses a time slice to share the CPU fairly, but too small a quantum causes excessive context switching.
进程调度决定哪个进程获得 CPU 时间。调度算法包括先来先服务(FCFS)、最短作业优先、轮转调度和基于优先级的调度。轮转调度使用时间片公平共享 CPU,但量值过小会导致过多的上下文切换。
Multi‑user and multi‑tasking OSs support concurrent processing. The OS ensures security and isolation between processes, using memory protection and user accounts. Interrupts allow the OS to respond to events such as I/O completion or hardware signals.
多用户和多任务操作系统支持并发处理。操作系统通过内存保护和用户账户确保进程间的安全与隔离。中断使操作系统能响应 I/O 完成或硬件信号等事件。
8. Database Design and Normalisation | 数据库设计与规范化
A relational database organises data into tables (relations) linked by primary and foreign keys. An Entity‑Relationship Diagram (ERD) models entities, attributes, and relationships. Each entity becomes a table, and relationships are implemented through foreign keys or link tables for many‑to‑many connections.
关系数据库将数据组织为由主键和外键关联的表(关系)。实体关系图(ERD)对实体、属性和关系进行建模。每个实体转化为一张表,关系通过外键或链接表(针对多对多联系)实现。
Normalisation is the process of organising data to reduce redundancy and prevent update anomalies. The first normal form (1NF) eliminates repeating groups; second normal form (2NF) removes partial dependencies on a composite key; third normal form (3NF) removes transitive dependencies. Higher normal forms exist but are rarely required.
规范化是组织数据以减少冗余并防止更新异常的过程。第一范式(1NF)消除重复组;第二范式(2NF)消除对组合键的部分依赖;第三范式(3NF)消除传递依赖。存在更高范式但很少需要。
Denormalisation may be considered for performance reasons in read‑heavy systems, but it introduces data duplication. Database designers must balance normalisation principles with practical performance demands.
在读取频繁的系统中,出于性能原因可考虑去规范化,但这会引入数据冗余。数据库设计者必须在规范化原则与实际性能需求之间取得平衡。
9. SQL and Database Manipulation | SQL 与数据库操作
SQL (Structured Query Language) is used to define, manipulate, and query relational databases. Data Definition Language (DDL) commands such as CREATE, ALTER, and DROP define the schema. Data Manipulation Language (DML) includes SELECT, INSERT, UPDATE, and DELETE.
SQL(结构化查询语言)用于定义、操作和查询关系数据库。数据定义语言(DDL)命令如 CREATE、ALTER 和 DROP 用于定义模式。数据操纵语言(DML)包括 SELECT、INSERT、UPDATE 和 DELETE。
SELECT statements can filter data using WHERE, sort with ORDER BY, group with GROUP BY, and limit results with HAVING. Multiple tables can be joined using INNER JOIN, LEFT JOIN, RIGHT JOIN, and FULL OUTER JOIN. Aggregate functions (COUNT, SUM, AVG, MIN, MAX) operate on groups of rows.
SELECT 语句可使用 WHERE 过滤数据,用 ORDER BY 排序,用 GROUP BY 分组,并用 HAVING 限制结果。多表可通过 INNER JOIN、LEFT JOIN、RIGHT JOIN 和 FULL OUTER JOIN 进行连接。聚合函数(COUNT、SUM、AVG、MIN、MAX)对行组进行操作。
Subqueries and nested queries embed one SELECT inside another. Parameterised queries and prepared statements protect against SQL injection attacks, a critical security consideration.
子查询和嵌套查询将一个 SELECT 嵌入另一个 SELECT 中。参数化查询和预处理语句可防范 SQL 注入攻击,这是一项重要的安全考量。
10. Web Technologies: HTML, CSS, and JavaScript | 网络技术:HTML、CSS 与 JavaScript
HTML (HyperText Markup Language) provides the semantic structure of web pages using elements and tags. HTML5 introduced semantic elements like <header>, <nav>, <main>, and <footer>, improving accessibility and SEO. Forms use <input>, <select>, and <textarea> for user data collection.
HTML(超文本标记语言)使用元素和标签提供网页的语义结构。HTML5 引入了 <header>、<nav>、<main> 和 <footer> 等语义元素,提升了可访问性和搜索引擎优化。表单使用 <input>、<select> 和 <textarea> 收集用户数据。
CSS (Cascading Style Sheets) controls presentation and layout. Selectors target elements; properties such as color, font, margin, and padding style them. Responsive design uses media queries and flexible grids to adapt to different screen sizes. CSS pre‑processors like SASS can be used to extend functionality.
CSS(层叠样式表)控制表现和布局。选择器定位元素;color、font、margin、padding 等属性为其添加样式。响应式设计使用媒体查询和弹性网格适应不同屏幕尺寸。SASS 等 CSS 预处理器可扩展其功能。
JavaScript adds interactivity and dynamic behaviour. It can manipulate the DOM (Document Object Model), respond to events, and validate form data client‑side. Asynchronous JavaScript (AJAX, Fetch API) allows communication with servers without page reloads. Modern frameworks may be referenced but the focus is on core language features.
JavaScript 增加交互性和动态行为。它可以操作 DOM(文档对象模型)、响应事件并在客户端验证表单数据。异步 JavaScript(AJAX、Fetch API)无需重新加载页面即可与服务器通信。可提及现代框架,但重点在于核心语言特性。
11. Server-Side Scripting with PHP | 服务器端脚本 PHP
PHP is a server‑side scripting language widely used to generate dynamic web content. PHP code is embedded within HTML and processed by the web server before the page is sent to the client. Variables are prefixed with $, and data types are loosely typed.
PHP 是一种广泛用于生成动态 Web 内容的服务器端脚本语言。PHP 代码嵌入 HTML 中,由 Web 服务器处理后发送给客户端。变量以 $ 为前缀,数据类型是弱类型的。
Sessions and cookies maintain state across HTTP requests, which are inherently stateless. PHP can connect to databases using extensions like MySQLi or PDO, executing queries and fetching results. Prepared statements prevent SQL injection when handling user input.
会话和 Cookie 用于在本质无状态的 HTTP 请求之间保持状态。PHP 可使用 MySQLi 或 PDO 等扩展连接数据库,执行查询并获取结果。预处理语句在处理用户输入时可防止 SQL 注入。
File handling in PHP allows reading and writing server‑side files. Error handling is managed via try‑catch blocks and custom error handlers. Modern PHP applications often adopt the MVC (Model‑View‑Controller) pattern to separate concerns and improve maintainability.
PHP 的文件处理允许读写服务器端文件。错误处理通过 try‑catch 块和自定义错误处理程序进行管理。现代 PHP 应用通常采用 MVC(模型—视图—控制器)模式以分离关注点并提高可维护性。
12. Computer Security and Ethics | 计算机安全与伦理
Information security is based on the CIA triad: Confidentiality (data accessible only to authorised users), Integrity (data accuracy and protection from modification), and Availability (systems accessible when needed). Threats include malware (viruses, worms, ransomware), social engineering, and denial‑of‑service attacks.
信息安全基于 CIA 三元组:机密性(数据只对授权用户可访问)、完整性(数据准确性及防止篡改)和可用性(系统在需要时可访问)。威胁包括恶意软件(病毒、蠕虫、勒索软件)、社会工程和拒绝服务攻击。
Encryption protects data using symmetric (same key) and asymmetric (public/private key) algorithms. A firewall monitors and controls network traffic based on rules. Access controls include passwords, biometrics, and two‑factor authentication. Digital signatures and certificates ensure authenticity and integrity.
加密使用对称(同一密钥)和非对称(公钥/私钥)算法保护数据。防火墙根据规则监控和控制网络流量。访问控制包括密码、生物识别和双因素认证。数字签名和证书确保真实性和完整性。
Legal and ethical considerations include the Data Protection Act, Computer Misuse Act, and GDPR. Ethical issues surround data privacy, surveillance, and the digital divide. Computing professionals must consider the social and environmental impact of technology, and act with integrity.
法律与伦理考量包括《数据保护法》、《计算机滥用法》和 GDPR。伦理问题涉及数据隐私、监控和数字鸿沟。计算机专业人士必须考虑技术对社会和环境的影响,并以诚信行事。
Published by TutorHao | Computing Revision Series | aleveler.com
更多咨询请联系16621398022(同微信)
屏轩国际教育cambridge primary/secondary checkpoint, cat4, ukiset,ukcat,igcse,alevel,PAT,STEP,MAT, ibdp,ap,ssat,sat,sat2课程辅导,国外大学本科硕士研究生博士课程论文辅导Cancel reply