程序设计及软件工程(选学
看懂软件从需求到维护的全周期,掌握设计原则背后的工程边界与失效判断
按 空格/→ 演示下一步
全部页面点击任意一页,跳回舞台从这页播放
程序设计及软件工程(选学
看懂软件从需求到维护的全周期,掌握设计原则背后的工程边界与失效判断
程序设计方法与风格
接手别人项目最头疼的常不是逻辑看不懂,而是「这代码怎么写的这么别扭」——命名随意、嵌套五层、一个函数八百行。背后其实是两件事:方法没选对,还是风格没养成。
方法对应文体(论文/小说),风格对应笔法(用词/句式/节奏)
面向对象的程序设计
上节谈了程序设计方法与风格——结构化、模块化、自顶向下。但程序膨胀到几十万行后,数据和函数散落各处,改一处要追十几个调用。OO 把数据与对它的操作绑成一个整体,改变组织单位。
图纸规定车的属性与方法,每台实车就是一个对象;改一处图纸,所有新车跟着变——这就是改类
软件工程基本概念
你写一个 100 行的程序,一个人随性发挥没问题。可当代码涨到 10 万行、十几人协作、还要用上五年——光靠「风格」就远远不够,需要把开发过程当成工程来管。这就是软件工程。
设计图/施工队/监理/验收,对应需求/开发团队/测试/维护
结构化设计方法
前面讲软件工程时说过,大型软件要"可控"。结构化设计就是那个年代给出的答案:把庞大系统像切蛋糕一样层层分解,每切一刀都有讲究。
CEO对应系统总目标,部门→子系统,团队→模块;每层只看直接下属,下层细节对上层透明
结构化分析方法
结构化分析方法:定义、要点与典型应用
软件测试
前几页讲了怎么分析、怎么设计,程序写完了,但能直接上线吗?不行——还要过一道关:软件测试。
零件=单元;装配=集成;整车路测=系统;用户试驾=验收
二级C考点解析之程序设计
代码写出来是给机器执行的,但维护时是给人读的。二级C常考'程序设计方法与风格',核心是结构化三大基本结构和良好的编码习惯。
菜谱逻辑决定能不能做出来,命名/注释/排版决定新手能不能照着做对
二级C考点解析之面向对象
上页我们梳理了程序设计方法与风格,知道结构化程序设计把任务拆成函数执行。面向对象则换了思路——把'数据'和'操作数据的方法'打包成一个整体。考试考的就是这套思路的关键词。
图纸就是'类',每台出厂手机就是一个'对象'
本节要点
- ✓方法选择看规模:小型用结构化,大型用面向对象
- ✓软件工程核心是分而治之:分析→设计→测试各管一段
- ✓结构化分析回答做什么,设计回答怎么做
- ✓面向对象的三大特性,本质都为了应对需求变化
- ✓二级C侧重概念辨析和代码阅读,非大型项目开发
课后思考
先合上书自己想一想,再点开参考答案对照思路。
参考答案黑盒关注输入输出功能,不看内部代码;白盒基于内部逻辑设计用例。功能正确不代表所有路径都被覆盖,所以两者互补,缺一不可。
参考答案看场景。流程固定、数据驱动选结构化;业务多变、需扩展选面向对象。也可先用结构化梳理流程,再识别对象过渡到OO。
参考答案微服务把'模块'推到进程/容器级别,独立部署更强。但跨服务耦合(接口契约、数据一致性)更复杂,原则仍适用,只是粒度变了。