返回分类视图

学习

分类 · 共 55 篇

学习 下的文章

软件分析与设计笔记 28:draw.io 作图手册:五张图的符号位置、落笔顺序与自检

软件分析与设计笔记 28:draw.io 作图手册:五张图的符号位置、落笔顺序与自检

不模拟软件界面,只讲清三件事:每个 UML 符号在 draw.io 里搜什么词、一张图该按什么顺序落笔、画完拿什么标准自查。覆盖用例图、活动图、顺序图、类图、界面草图五种图纸,末尾附「最容易画反的十二笔」总检表。

#应试#UML#绘图#学习笔记
软件分析与设计笔记 27:Paper 1 应试:从读案例到交卷的一次完整演算

软件分析与设计笔记 27:Paper 1 应试:从读案例到交卷的一次完整演算

拿一份完整的案例,从头到尾走一遍:怎么读案例列角色、怎么在四个小问之间分配时间、每一张图从哪一句话推出来、两张表怎么填、交卷前拿什么清单自查。附 C25 真题与样卷的题型分值对照。

#应试#软件分析#软件设计#学习笔记
软件分析与设计笔记 26:总结:把整条链路串起来

软件分析与设计笔记 26:总结:把整条链路串起来

系列收尾:从需求到代码的完整链路回顾、每一环的产出与验收方式、六条贯穿全系列的原则,以及一份可以直接拿去做项目自查的清单。

#软件工程#需求分析#软件设计#学习笔记
软件分析与设计笔记 25:代码重构:坏味道与手法

软件分析与设计笔记 25:代码重构:坏味道与手法

重构不改变外部行为、只改善内部结构:四种常见坏味道与对应手法、为什么动手之前必须先有测试、什么时候该重构,以及重构和前面那些设计模型是什么关系。

#重构#代码质量#软件设计#学习笔记
软件分析与设计笔记 24:设计原则:内聚、耦合与多态

软件分析与设计笔记 24:设计原则:内聚、耦合与多态

好设计怎么衡量:内聚与耦合分别在说什么、一次从「差设计」到「多态重设计」的完整对照、抽象类与接口的选择依据,以及复用为什么会从优势变成风险。

#软件设计#设计原则#面向对象#学习笔记
软件分析与设计笔记 23:设计建模:从对象模型到能实现的方案

软件分析与设计笔记 23:设计建模:从对象模型到能实现的方案

分析模型能用但还不能直接开工:对象模型怎么映射到关系模型、继承映射的三种方案怎么选、数据访问层与 Data Broker 解决什么问题,以及三层架构与 MVC 的分工。

#设计建模#数据库设计#软件架构#学习笔记
软件分析与设计笔记 22:分析建模:边界、实体与控制对象

软件分析与设计笔记 22:分析建模:边界、实体与控制对象

不经过分析直接写代码会踩什么坑、三种分析对象各管一段、怎么用顺序图完成一次用例实现,以及从顺序图导出类的属性、操作与关系的方法。

#分析建模#面向对象#UML#学习笔记
软件分析与设计笔记 21:UML:类图与顺序图

软件分析与设计笔记 21:UML:类图与顺序图

为什么需要一种共同的画法:类符号三格怎么画、五种关系的符号与设计含义、每种关系落到 Java 是什么写法,顺序图的三要素怎么摆;以及这三种最容易找不到的符号在 draw.io 里各搜什么词。

#UML#软件设计#面向对象#绘图#学习笔记
软件分析与设计笔记 20:面向对象概念:对象、关系与多态

软件分析与设计笔记 20:面向对象概念:对象、关系与多态

面向对象不是「用某个语言写代码」:对象与类的区别、封装真正在保护什么、五种关系(依赖、关联、聚合、组合、继承)各自何时用,以及多态为什么能减少条件判断。

#面向对象#软件设计#UML#学习笔记
软件分析与设计笔记 19:规范化与逻辑数据模型

软件分析与设计笔记 19:规范化与逻辑数据模型

一次改地址引发的数据不一致,讲清规范化的真正动机;UNF 到 3NF 每一步在解决什么问题,派生字段为什么不能存,优化为什么和规范化方向相反,以及逻辑数据模型在 3NF 之上补了什么。

#数据库设计#规范化#数据建模#学习笔记
软件分析与设计笔记 18:数据库分析:实体、关系与数据字典

软件分析与设计笔记 18:数据库分析:实体、关系与数据字典

为什么不能拿到需求就动手建表:实体与关系怎么判定、基数为什么必须由业务方确认、数据命名要遵守什么规则,以及数据字典四列里最容易被空着的那一列。

#数据库设计#数据建模#ERD#学习笔记
软件分析与设计笔记 17:用生成式 AI 做设计与开发:能用的场景与要防的坑

软件分析与设计笔记 17:用生成式 AI 做设计与开发:能用的场景与要防的坑

生成式 AI 在工作流里真正站得住的三个场景 —— 造示例数据、解释陌生代码、起草初稿;它为什么会复现社会偏见、为什么会编得像真的,以及哪些内容绝不能直接采用。

#生成式 AI#设计工具#工作流#学习笔记
软件分析与设计笔记 16:从 persona 到 URS:一份交付物的完整骨架

软件分析与设计笔记 16:从 persona 到 URS:一份交付物的完整骨架

把前面十几篇串成一份能交出去的东西:用户需求规格说明书的九个部分、每一章来自哪个环节、由谁确认,以及面向决策者的提案该讲清哪三件事。

#需求分析#交付物#需求文档#学习笔记
软件分析与设计笔记 15:非功能需求:把「快、稳、安全」变成数字

软件分析与设计笔记 15:非功能需求:把「快、稳、安全」变成数字

为什么「系统要快」不是一条需求:非功能需求怎么量化,决定性能的用户量、交易量、数据量三张表怎么估,安全需求要写清什么,以及可靠性的「不可用」该怎么定义。

#需求分析#非功能需求#系统性能#学习笔记
软件分析与设计笔记 14:软件测试:层级、方法与等价类划分

软件分析与设计笔记 14:软件测试:层级、方法与等价类划分

「我们测过了」这句话问题在哪:为什么静态评审和动态测试缺一不可,五个测试层级各自验证什么,白盒与黑盒的差别,以及用等价类划分和边界值把无限输入变成有限用例的方法。

#软件测试#质量保证#学习笔记
软件分析与设计笔记 13:需求获取:五种调查方法与一场访谈

软件分析与设计笔记 13:需求获取:五种调查方法与一场访谈

需求从哪里来:五种事实调查方法各自适合回答什么、代价是什么,访谈从准备到记录的全过程,问卷设计里最容易犯的错,以及访谈记录必须写下来的那几项信息。

#需求获取#用户访谈#需求分析#学习笔记
软件分析与设计笔记 12:前端设计:把流程变成屏幕

软件分析与设计笔记 12:前端设计:把流程变成屏幕

界面设计不是「画得好看」:从活动图走到屏幕的三步,CRUD 任务流怎么当检查表,界面必须回答的三个问题,信息架构与五种导航类型,视觉一致性与留白,以及移动端与 Web 端的差别。

#界面设计#交互设计#用户体验#学习笔记
软件分析与设计笔记 11:Agentic AI 与业务流程自动化

软件分析与设计笔记 11:Agentic AI 与业务流程自动化

AI agent 到底是什么:五项能力与四个核心组件,什么场景该用定时任务、什么该用程序、什么才值得用 agent,两种实现路径的差别,必须提前防住的四类失败模式,以及设计方法从提示词到编排的演进。

#AI Agent#流程自动化#软件设计#学习笔记
软件分析与设计笔记 10:精炼用例模型:include、extend 与泛化

软件分析与设计笔记 10:精炼用例模型:include、extend 与泛化

三种精炼用例关系的判断标准:include 什么时候用、它和 extend 的区别到底在哪、参与者泛化与用例泛化各解决什么问题,以及精炼到什么程度就该停手。

#需求分析#用例建模#UML#学习笔记
软件分析与设计笔记 09:功能需求(二):从流程到业务实体

软件分析与设计笔记 09:功能需求(二):从流程到业务实体

活动图画完之后,怎么从流程里筛出真正的业务实体:三条判断标准、哪些名词其实不该建实体、属性从哪里来,以及领域模型和后面的数据模型分别负责什么。

#需求分析#领域建模#软件设计#学习笔记
软件分析与设计笔记 08:功能需求(一):用例模型与活动图

软件分析与设计笔记 08:功能需求(一):用例模型与活动图

从用户故事到用例的翻译过程:什么才算「好」的参与者,系统边界怎么划,用例描述必须写清哪四件事,活动图怎么把分支、并行与泳道画清楚,以及这两个图在 draw.io 里各用哪个形状、最容易画错哪一笔。

#需求分析#用例建模#UML#绘图#学习笔记
软件分析与设计笔记 07:用户故事:把需求写成可验收的一句话

软件分析与设计笔记 07:用户故事:把需求写成可验收的一句话

用户故事的三段结构,怎么从用户画像和数据地图里把它提取出来,一条故事多大算合适、时序为什么也是需求的一部分,以及验收标准怎么写才算真的可验收。

#需求分析#用户故事#敏捷开发#学习笔记
软件分析与设计笔记 06:范围界定(数据侧):用数据校验你的判断

软件分析与设计笔记 06:范围界定(数据侧):用数据校验你的判断

访谈结论和数字对不上时该怎么办:分析的四个层次分别在回答什么问题、为什么不能跳级、数据准备与搜集怎么做成一张应用地图,以及数据最容易在哪几个地方骗你。

#需求分析#数据分析#需求获取#学习笔记
软件分析与设计笔记 05:范围界定(用户侧):用户画像与客户旅程图

软件分析与设计笔记 05:范围界定(用户侧):用户画像与客户旅程图

为什么「所有用户」是一个陷阱,项目边界该怎么划,用户画像要写哪五个要素、最容易写成什么废纸,客户旅程图怎么把阶段、想法和情绪画在同一张纸上,以及怎么从这两样东西一步步推到可验证的需求。

#需求分析#用户研究#用户画像#学习笔记
软件分析与设计笔记 04:接手陌生案例的第一步:三问与一张表

软件分析与设计笔记 04:接手陌生案例的第一步:三问与一张表

拿到一个完全陌生的业务案例,怎么从零开始不跑偏:只问 Who、What、Why 三个问题,把「问题—事实—假设—理由」记成一张四列表,说清为什么假设必须写明理由,以及带着问题进访谈为什么比空手去有效得多。

#需求分析#需求获取#业务分析#学习笔记
软件分析与设计笔记 03:Agile 与 Scrum:迭代、角色与产出物

软件分析与设计笔记 03:Agile 与 Scrum:迭代、角色与产出物

从「三周做完交付,客户说这不是我要的」讲起,说清瀑布式与迭代式的根本差别,Scrum 的三个角色和三种产出物,一个 sprint 里四次固定活动各自在解决什么问题,以及敏捷里最常见的几个误解。

#敏捷开发#Scrum#项目管理#学习笔记
软件分析与设计笔记 02:设计思维、用户驱动与数据驱动

软件分析与设计笔记 02:设计思维、用户驱动与数据驱动

从「客服要一个能一次看完所有排期的界面」这个翻车案例讲起,说清设计思维到底是什么、用户驱动与数据驱动各自能看见什么又看不见什么、为什么真正的落点是把两者合起来的 data-informed design,以及访谈中怎么问出有用的信息。

#设计思维#用户研究#需求分析#学习笔记
软件分析与设计笔记 01:课程地图与从需求到设计的主干

软件分析与设计笔记 01:课程地图与从需求到设计的主干

这一篇不写具体方法,先把整条链路铺开:软件分析与设计到底要解决什么问题,从需求到设计分成哪两段,中间有哪十几个环节,一份完整的交付物里应该有什么,以及后面 27 篇笔记怎么排、新人该按什么顺序读。

#软件工程#需求分析#软件设计#学习笔记
Spring 学习笔记 01:IoC、依赖注入与第一个 Spring Boot 应用

Spring 学习笔记 01:IoC、依赖注入与第一个 Spring Boot 应用

从「手写 new 出来的三层结构」的痛点讲起,说清 IoC 容器、Bean 与依赖注入是怎么回事,再用 Maven 与 Spring Initializr 跑起第一个能返回 JSON 的应用。

#Spring#Spring Boot#学习笔记
Spring 学习笔记 02:Spring Data JPA 基础——实体映射与 Repository

Spring 学习笔记 02:Spring Data JPA 基础——实体映射与 Repository

用 ORM 把类映射到表:@Entity、@Id、@GeneratedValue 怎么用,CrudRepository 三层接口怎么选,H2 与 MySQL 怎么配,以及 ddl-auto 到底该写哪个值。

#Spring#Spring Data JPA#学习笔记
Spring 学习笔记 03:JPA 查询——派生方法、JPQL 与分页排序

Spring 学习笔记 03:JPA 查询——派生方法、JPQL 与分页排序

Repository 自带的方法只够按主键查,这篇讲三种自己造查询的方式:方法名派生、@Query 写 JPQL、原生 SQL,以及 Pageable 分页排序和投影返回。

#Spring#Spring Data JPA#学习笔记
Spring 学习笔记 04:JPA 关联映射与仓储测试

Spring 学习笔记 04:JPA 关联映射与仓储测试

一对多、多对多怎么映射,谁负责维护外键,FetchType 与 CascadeType 该怎么选,顺带用 @DataJpaTest 与 AssertJ 把仓储层测起来。

#Spring#Spring Data JPA#测试#学习笔记
Spring 学习笔记 05:Spring MVC 与 Thymeleaf 入门

Spring 学习笔记 05:Spring MVC 与 Thymeleaf 入门

一次页面请求在 Spring MVC 里走了哪几步,@Controller 怎么把数据交给模板,@PathVariable 与 @RequestParam 怎么取参数,以及控制器为什么必须是无状态的。

#Spring#Spring MVC#Thymeleaf#学习笔记
Spring 学习笔记 06:表单绑定与服务端校验

Spring 学习笔记 06:表单绑定与服务端校验

把表单字段绑到对象上,用 Bean Validation 注解做服务端校验,把错误信息显示回用户刚填的那一页,再补上自定义校验注解与全局异常处理。

#Spring#Spring MVC#校验#学习笔记
Spring 学习笔记 07:Thymeleaf 片段复用与国际化

Spring 学习笔记 07:Thymeleaf 片段复用与国际化

用 th:fragment 与 th:insert/th:replace 把导航栏、页脚抽成片段,页面套用统一布局,再用 messages.properties 与 LocaleResolver 做中英文切换。

#Spring#Thymeleaf#学习笔记
Spring 学习笔记 08:HTTP Session 与会话状态管理

Spring 学习笔记 08:HTTP Session 与会话状态管理

HTTP 无状态带来的问题,Cookie 与 Session 怎么分工,Spring 里读写会话的几种方式,以及会话固定、超时、多实例共享这些必须想清楚的事。

#Spring#Session#学习笔记
Spring 学习笔记 09:拦截器 HandlerInterceptor

Spring 学习笔记 09:拦截器 HandlerInterceptor

登录检查、权限判断、请求耗时统计这类横切逻辑该放哪:HandlerInterceptor 的三个回调各在什么时机执行,怎么注册与排除路径,以及它和过滤器的分工。

#Spring#Spring MVC#学习笔记
Spring 学习笔记 10:Service 层与事务

Spring 学习笔记 10:Service 层与事务

一组数据库操作要么全成功要么全失败,靠 @Transactional 怎么做到;传播行为、隔离级别、回滚规则怎么选,以及自调用失效、乐观锁悲观锁这些实战里的坑。

#Spring#事务#学习笔记
Spring 学习笔记 11:REST API 基础——把 Service 暴露成接口

Spring 学习笔记 11:REST API 基础——把 Service 暴露成接口

同一套 Service 怎么同时服务页面和客户端:@RestController 的路由与方法语义、状态码怎么给、DTO 怎么定,以及 MockMvc 端到端和切片测试的两种写法与各自的坑。

#Spring#REST#学习笔记
Spring 学习笔记 12:REST 进阶——版本、更新、跨域与文档化

Spring 学习笔记 12:REST 进阶——版本、更新、跨域与文档化

接口能跑通之后要处理的几件事:URL 与响应结构怎么定、版本怎么演进、更新怎么做到可安全重试、CORS 怎么配、HATEOAS 与 Spring Data REST 该不该用。

#Spring#REST#学习笔记
Java 函数式编程笔记:Lambda、函数式接口与 Streams

Java 函数式编程笔记:Lambda、函数式接口与 Streams

学习 Java 函数式编程时的个人笔记:Lambda 表达式的五步简写与方法引用、常见函数式接口、Stream 流水线与惰性求值,以及创建流、中间操作、终止操作与收集器的用法。示例代码均为自写,运行结果来自本地实测。

#Java#函数式编程#Lambda#Stream#学习笔记
Java 泛型笔记:泛型方法、有界类型与泛型类

Java 泛型笔记:泛型方法、有界类型与泛型类

学习 Java 泛型时的个人笔记:从重复的重载方法与多态尝试讲起,再到泛型方法与类型推断、有界泛型类型、Comparable 与 Number 边界,以及泛型类在集合中的用法。示例代码均为自写,运行结果来自本地实测。

#Java#泛型#学习笔记
MySQL 学习笔记 04:数据操纵(增删改)

MySQL 学习笔记 04:数据操纵(增删改)

MySQL 学习笔记第四篇:INSERT 插入(含批量插入与 INSERT ... SELECT)、UPDATE 更新、DELETE 删除,以及各自的坑。

#SQL#MySQL#学习笔记
MySQL 学习笔记 05:DDL 概览

MySQL 学习笔记 05:DDL 概览

MySQL 学习笔记第五篇:数据定义语言概览——Schema、Table、View、Index、Constraints 这几类对象分别对应哪些 CREATE / ALTER / DROP 命令。

#SQL#MySQL#学习笔记
MySQL 学习笔记 06:CREATE TABLE 与数据类型

MySQL 学习笔记 06:CREATE TABLE 与数据类型

MySQL 学习笔记第六篇:CREATE TABLE 的完整语法、常用数据类型的选型建议,以及外键的两种定义方式。

#SQL#MySQL#学习笔记
MySQL 学习笔记 07:索引

MySQL 学习笔记 07:索引

MySQL 学习笔记第七篇:索引的作用与 B+ 树结构、单列与复合索引的创建、索引的代价与适用场景。

#SQL#MySQL#学习笔记
MySQL 学习笔记 08:DROP 与 ALTER

MySQL 学习笔记 08:DROP 与 ALTER

MySQL 学习笔记第八篇:DROP 删除数据库对象、ALTER 修改表结构,以及常见的坑。

#SQL#MySQL#学习笔记
MySQL 学习笔记 09:约束与数据完整性

MySQL 学习笔记 09:约束与数据完整性

MySQL 学习笔记第九篇:SQL 约束——NOT NULL、CHECK、PRIMARY KEY、FOREIGN KEY 等如何保证数据完整性,以及它们的对比。

#SQL#MySQL#学习笔记
MySQL 学习笔记 10:视图

MySQL 学习笔记 10:视图

MySQL 学习笔记第十篇:视图(Views)的定义与特性、和表的对比、创建与使用,以及可更新视图的限制。

#SQL#MySQL#学习笔记
MySQL 学习笔记 11:存储过程

MySQL 学习笔记 11:存储过程

MySQL 学习笔记第十一篇:存储过程(Stored Procedures)的概念、创建与调用、带参数的写法,以及优缺点。

#SQL#MySQL#学习笔记
MySQL 学习笔记 01:MySQL 基础知识

MySQL 学习笔记 01:MySQL 基础知识

MySQL 学习笔记第一篇:MySQL Server 与 Workbench 的安装,数据库与 DBMS 的基本概念,关系模型、ACID 事务、常见数据类型,以及后续的学习路线。

#SQL#MySQL#学习笔记
MySQL 学习笔记 02:SELECT 查询与过滤

MySQL 学习笔记 02:SELECT 查询与过滤

MySQL 学习笔记第二篇:SELECT 的基本语法与逻辑执行顺序,WHERE 过滤(比较、LIKE、IN、BETWEEN、NULL)、各种 JOIN、UNION 与子查询。

#SQL#MySQL#学习笔记
MySQL 学习笔记 03:聚合、分组与输出控制

MySQL 学习笔记 03:聚合、分组与输出控制

MySQL 学习笔记第三篇:COUNT/SUM/AVG 等聚合函数、GROUP BY 分组、HAVING 过滤、ORDER BY 与 LIMIT,以及一条 SELECT 的完整逻辑执行顺序。

#SQL#MySQL#学习笔记
Java 面向对象笔记:类、继承、多态与异常

Java 面向对象笔记:类、继承、多态与异常

学习 Java 面向对象编程时的个人笔记:类与对象、封装与访问修饰符、继承与多态、集合、抽象类与接口、异常处理。示例代码均为自写,运行结果来自本地实测。

#Java#面向对象#学习笔记
Java 基础语法笔记:从环境安装到方法与数组

Java 基础语法笔记:从环境安装到方法与数组

学习 Java 基础语法时的个人笔记:JDK 安装、输入输出、变量与运算符、条件与循环、字符串、数组与方法。示例代码均为自写,运行结果来自本地实测。

#Java#基础语法#学习笔记

© 2026 HuanYu Blog

记录技术,也记录思考