考试内容:深度拆解六大模块核心考点
模块一:计算机基础(操作系统 + 组成原理 + 数据结构)
高频考点清单:
⚡ 操作系统:进程状态转换图(5 种状态)、死锁四个必要条件(互斥、占有且等待、不可抢占、循环等待)、银行家算法安全序列计算、虚拟内存页面置换算法(FIFO/LRU/OPT)
⚡ 组成原理:补码运算(-1 的补码为何是 11111111)、Cache 映射方式(直接/全相联/组相联)、指令流水线 CPI 计算
⚡ 数据结构:二叉树遍历(先序/中序→后序推导)、哈希表冲突解决(开放地址/链地址)、图的最短路径算法(Dijkstra vs Floyd)
真题示例(2023 下半年):
「某程序运行时出现“段错误”,最可能原因是?」
A. 变量未初始化
B. 数组下标越界访问
C. 除数为零
D. 浮点数溢出
→ 正确答案:B(内存非法访问)
模块二:软件工程(生命周期 + 需求分析 + UML)
核心模型对比表:
| 模型 | 适用场景 | 优势 | 局限性 |
|------|----------|------|--------|
| 瀑布模型 | 需求明确、变更少的项目 | 流程规范、文档完备 | 难以应对需求变更 |
| 迭代模型 | 需求逐步清晰的项目 | 早期交付可用版本 | 迭代边界需严格定义 |
| 敏捷模型 | 需求高频变化的互联网项目 | 响应变化快、客户参与深 | 对团队协作要求高 |
| 螺旋模型 | 高风险大型项目 | 风险驱动、渐进细化 | 管理成本高 |
易混淆点:
• UML 中,活动图强调“动作流程”,用于业务流程建模;序列图强调“对象间消息顺序”,用于交互建模
• 需求分析中,数据流图(DFD)关注“数据流动”,不体现控制流;状态转换图关注“对象状态变化”
模块三:数据库(关系模型 + SQL + 优化)
SQL 高频陷阱题:
「查询工资高于本部门平均工资的员工姓名」
❌ 错误写法:
SELECT name FROM emp WHERE salary > AVG(salary);
✅ 正确写法:
SELECT name FROM emp e1 WHERE salary > (SELECT AVG(salary) FROM emp e2 WHERE e1.dept_id = e2.dept_id);
索引失效场景(必考!):
• WHERE 子句中对字段使用函数(如 WHERE UPPER(name) = 'ZHANG')
• 使用 != 或 <> 导致索引失效
• 字符串字段未加引号(如 WHERE phone = 13800138000)
• 联合索引未遵循最左前缀原则(索引(a,b,c),查询条件 WHERE b=2)
模块四:网络技术(TCP/IP + HTTP + 安全)
协议关键参数速记表:
| 协议 | 端口号 | 特点 | 典型应用 |
|------|--------|------|----------|
| HTTP | 80 | 无状态、明文传输 | 浏览器访问 |
| HTTPS | 443 | SSL/TLS 加密 | 支付、登录 |
| FTP | 20(数据)/21(控制) | 传统文件传输 | 服务器文件上传 |
| SSH | 22 | 加密远程登录 | 管理服务器 |
| DNS | 53 | UDP 主、TCP 辅 | 域名解析 |
安全基础概念辨析:
• 病毒:自我复制,依附宿主;蠕虫:独立传播,利用漏洞
• DDoS:海量请求耗尽带宽;CC 攻击:模拟人类行为耗尽服务器资源
• SQL 注入:通过拼接 SQL 语句攻击;XSS:注入恶意脚本到页面执行
模块五:信息技术应用(开发流程 + 云服务 + 数据处理)
开发模型对比:
• 传统软件开发:需求→设计→编码→测试→部署(周期长、变更难)
• 云原生开发:微服务→容器化→CI/CD→可观测性(敏捷、弹性)
云服务三层模型(IaaS/PaaS/SaaS):
• IaaS:基础设施即服务(如阿里云 ECS、AWS EC2)→ 用户管理 OS 及应用
• PaaS:平台即服务(如阿里云函数计算、Heroku)→ 用户仅开发应用
• SaaS:软件即服务(如钉钉、企业微信)→ 用户直接使用软件
模块六:法律法规(著作权法 + 软件保护条例)
核心条款速记:
• 软件著作权自作品完成之日起产生,登记是自愿行为(但维权需登记证书)
• 合法复制品所有人可安装使用、备份、改造(需不侵权)
• 商业使用盗版软件,单位最高罚 50 万元,个人最高罚 20 万元