基本技术名词
# 产品经理技术词典:200个必懂的技术概念(全场景白话版)
本文用"快递"、"餐厅"、"租房"、"银行"等生活场景,帮你理解技术团队每天挂在嘴边的概念。不求精通,但求听懂。
# 一、前端技术:用户看得见的世界
# 核心三件套
HTML - 网页的骨架
- 生活比喻:房子的钢筋混凝土结构
- 产品场景:决定页面上有什么元素(按钮、图片、文字)
CSS - 网页的皮肤和妆容
- 生活比喻:房子的装修风格、颜色、布局
- 产品场景:决定元素长什么样(颜色、大小、位置、动画)
JavaScript - 网页的行为和大脑
- 生活比喻:房子的电路、开关、智能家居
- 产品场景:让页面能交互(点击、滑动、数据请求)
# 页面渲染相关
DOM(文档对象模型) - 网页的"家族树"
- 生活比喻:家谱(谁是谁的爹,谁是谁的儿)
- 产品场景:JS通过操作这棵树来改页面内容
Virtual DOM(虚拟DOM) - 虚拟家族树
- 生活比喻:先在草稿纸上改,确认后再誊写到正式家谱
- 产品场景:React/Vue用来提升性能的技术,减少直接操作真实DOM
CSSOM - CSS的对象树
- 生活比喻:装修手册的目录结构
- 产品场景:浏览器解析CSS后生成的树,和DOM结合才能显示页面
Render Tree(渲染树) - 渲染树
- 生活比喻:结合家谱和装修手册后的施工图纸
- 产品场景:浏览器真正用来画页面的依据
Reflow(重排) - 重排
- 生活比喻:改动承重墙,需要重新计算房子结构
- 产品场景:改元素尺寸、位置,会导致页面重新布局,性能开销大
Repaint(重绘) - 重绘
- 生活比喻:只是重新刷漆,不动结构
- 产品场景:改颜色、背景,不影响布局,开销较小
SSR(服务端渲染) - 服务端渲染
- 生活比喻:在工厂把菜做好再端上来(首屏快)
- 产品场景:服务器生成完整HTML,首屏加载快,SEO友好
CSR(客户端渲染) - 客户端渲染
- 生活比喻:只送食材和菜谱,用户在厨房自己做(首屏慢但交互好)
- 产品场景:单页应用常用,首屏慢但后续交互流畅
# 浏览器存储
Cookie - 浏览器里的"身份证"
- 生活比喻:会所会员卡(每次去都带,能存信息少)
- 产品场景:登录状态、追踪用户,但只能存4KB
LocalStorage - 本地仓库
- 生活比喻:家里的储物柜(长期保存,容量大)
- 产品场景:存用户设置、草稿,5-10MB,永久保存
SessionStorage - 临时仓库
- 生活比喻:超市存包柜(关页面就清空)
- 产品场景:临时表单数据,页面关闭即消失
IndexedDB - 浏览器里的数据库
- 生活比喻:家里的档案室(存结构化数据)
- 产品场景:离线应用、存大量数据(如邮件客户端)
# 前端框架与工程化
React - Facebook的UI库
- 生活比喻:乐高积木(组件化搭建)
- 产品场景:大型应用,生态丰富,灵活
Vue - 渐进式框架
- 生活比喻:宜家家具(容易上手,文档友好)
- 产品场景:中小型项目,国内流行,双向绑定
Angular - Google的重型框架
- 生活比喻:精装修房(全套解决方案)
- 产品场景:企业级应用,功能齐全但重
TypeScript - 带类型检查的JS
- 生活比喻:在JS基础上加了"说明书"和"质检员"
- 产品场景:减少bug,提升代码可维护性,大厂标配
Webpack - 打包工具
- 生活比喻:搬家公司的打包整理服务
- 产品场景:把多个文件打包成浏览器能识别的文件,处理依赖
Vite - 快速构建工具
- 生活比喻:闪送(比Webpack快很多)
- 产品场景:开发环境启动快,热更新快
Babel - 翻译器
- 生活比喻:把方言翻译成普通话
- 产品场景:把新版JS语法翻译成老浏览器能懂的语法
NPM/Yarn - 包管理器
- 生活比喻:App Store(下载代码库)
- 产品场景:管理项目依赖的第三方代码包
# 移动端适配与交互
Viewport(视口) - 可视窗口
- 生活比喻:望远镜的视野范围
- 产品场景:手机网页适配的关键,控制页面缩放
DPR(设备像素比) - 设备像素比
- 生活比喻:近视眼看世界 vs 正常眼看世界
- 产品场景:iPhone是2x或3x,图片需要@2x/@3x才清晰
Flexbox(弹性布局) - 弹性布局
- 生活比喻:弹簧床(能伸能缩)
- 产品场景:现代网页布局标配,自适应屏幕
Grid(网格布局) - 网格布局
- 生活比喻:围棋棋盘(二维布局)
- 产品场景:复杂的行列对齐布局
Media Query(媒体查询) - 媒体查询
- 生活比喻:智能窗帘(根据光线自动调节)
- 产品场景:响应式设计的核心,判断屏幕大小应用不同样式
Touch Event(触摸事件) - 触摸事件
- 生活比喻:手指在屏幕上的动作(按、滑、捏)
- 产品场景:区别于鼠标点击,处理手势操作
H5 - HTML5
- 生活比喻:手机网页的增强版
- 产品场景:能在微信里打开的网页,支持音频、视频、动画
PWA(渐进式Web应用) - 渐进式Web应用
- 生活比喻:像App一样的网页
- 产品场景:可离线、可添加到桌面,像原生App体验
# 二、网络通信:数据的快递之旅
# 基础网络概念
IP地址 - 互联网上的门牌号
- 生活比喻:你家的地址(192.168.x.x是小区内部地址)
- 产品场景:定位设备,公网IP唯一
Port(端口) - 门牌号后的房间号
- 生活比喻:写字楼里的房间号(80是前台,443是保险柜)
- 产品场景:区分同一设备上的不同服务
DNS(域名解析系统) - 域名解析系统
- 生活比喻:电话簿(域名→IP地址的翻译官)
- 产品场景:输入baidu.com变成119.75.217.56
DHCP - 自动分配IP
- 生活比喻:酒店前台自动给房卡
- 产品场景:手机连WiFi自动获得IP地址
MAC地址 - 设备身份证
- 生活比喻:人的指纹(全球唯一,烧录在网卡)
- 产品场景:局域网内识别设备,物理地址
Gateway(网关) - 小区大门
- 生活比喻:连接小区内部和外部的出口
- 产品场景:数据出内网的必经之路
Subnet Mask(子网掩码) - 邮编范围
- 生活比喻:划分小区内部楼栋的规则
- 产品场景:判断两个IP是否在同一个局域网
# 协议与传输
HTTP(超文本传输协议) - 超文本传输协议
- 生活比喻:寄明信片(明文,不安全)
- 产品场景:网页浏览的基础协议
HTTPS - 加密的HTTP
- 生活比喻:寄保险箱(TLS/SSL加密)
- 产品场景:现代网站标配,防止窃听
TCP - 可靠的传输
- 生活比喻:打电话(确认对方接听,没听清重说)
- 产品场景:网页、文件传输,可靠但慢
UDP - 快速的传输
- 生活比喻:喊喇叭(不管听没听到,一直喊)
- 产品场景:视频通话、游戏,快但可能丢包
WebSocket - 双向高速公路
- 生活比喻:打电话(接通后随时说话)
- 产品场景:实时聊天、股票行情,服务器可主动推数据
HTTP/2 - 高速公路多车道
- 生活比喻:从单车道变成多车道,还能并行
- 产品场景:多路复用,头部压缩,速度提升
QUIC/HTTP3 - 基于UDP的可靠传输
- 生活比喻:快递专线(更快,减少绕路)
- 产品场景:腾讯、Google在用,减少延迟
OSI七层模型 - 网络通信的七层分工
- 生活比喻:快递公司的组织架构(从打包到运输)
- 产品场景:物理层→数据链路层→网络层→传输层→会话层→表示层→应用层
# 网络架构与安全
CDN(内容分发网络) - 内容分发网络
- 生活比喻:把商品提前放到各地仓库
- 产品场景:加速静态资源加载,抗攻击
Load Balance(负载均衡) - 流量调度员
- 生活比喻:多窗口排队,哪个窗口人少去哪个
- 产品场景:分发请求到多台服务器,防止单台过载
Nginx - 高性能Web服务器
- 生活比喻:优秀的迎宾员(能接待很多人)
- 产品场景:反向代理、负载均衡、静态资源服务
Apache - 老牌Web服务器
- 生活比喻:传统的迎宾员(功能全但稍慢)
- 产品场景:历史悠久的Web服务器
Reverse Proxy(反向代理) - 中介保镖
- 生活比喻:前台代收快递,再转给老板(隐藏内部)
- 产品场景:隐藏真实服务器IP,统一入口
Forward Proxy(正向代理) - 代购
- 生活比喻:你让代购帮你买东西(隐藏你自己)
- 产品场景:VPN、翻墙工具的原理
VPN(虚拟专用网络) - 虚拟专用网络
- 生活比喻:加密隧道(穿越封锁的安全通道)
- 产品场景:远程办公、访问内网、翻墙
Firewall(防火墙) - 安检门
- 生活比喻:检查进出的人,拦下可疑分子
- 产品场景:过滤非法请求,端口管控
WAF(Web应用防火墙) - Web应用防火墙
- 生活比喻:专门针对网页攻击的保安
- 产品场景:防SQL注入、XSS等Web攻击
# 接口与认证
API(应用程序接口) - 应用程序接口
- 生活比喻:餐厅的菜单(告诉你有什么菜,怎么点)
- 产品场景:前后端交互的契约
RESTful - 一种API设计风格
- 生活比喻:用标准动作(GET/POST/PUT/DELETE)操作资源
- 产品场景:资源导向,无状态,目前最流行
GraphQL - 查询语言
- 生活比喻:自助餐(你要什么自己夹,不多不少)
- 产品场景:前端决定返回什么字段,避免过度获取
RPC(远程过程调用) - 远程过程调用
- 生活比喻:像调用本地函数一样调用远程服务
- 产品场景:微服务内部通信常用(gRPC/Dubbo)
JSON - 数据格式
- 生活比喻:结构化的纸条(易读易解析)
- 产品场景:现代Web API的主流数据格式
XML - 标记语言
- 生活比喻:老式表格(标签多,较重)
- 产品场景:传统SOAP接口使用,现在较少
Protobuf - 二进制序列化
- 生活比喻:压缩电报(体积小,解析快)
- 产品场景:gRPC使用,适合内部服务通信
OAuth2 - 授权框架
- 生活比喻:酒店房卡(你授权我给第三方临时权限)
- 产品场景:微信登录、QQ登录,不暴露密码
JWT(JSON Web Token) - JSON Web Token
- 生活比喻:带信息的门票(里面写了你是谁,有有效期)
- 产品场景:无状态认证,适合分布式系统
SSO(单点登录) - 单点登录
- 生活比喻:一卡通(刷一次卡,多个系统通行)
- 产品场景:企业内多个系统只需登录一次
Session(会话) - 会话
- 生活比喻:服务器端的记忆(账本)
- 产品场景:服务器保存的用户状态
Token(令牌) - 令牌
- 生活比喻:演唱会门票(证明你有权限)
- 产品场景:状态认证的凭证,比Cookie更灵活
WebHook - 回调机制
- 生活比喻:快递到了自动发短信通知你
- 产品场景:事件驱动,服务端主动通知客户端
CORS(跨域资源共享) - 跨域资源共享
- 生活比喻:跨国通行证
- 产品场景:解决浏览器跨域限制
# 三、后端与数据库:服务器的大脑
# 服务器与部署
Server(服务器) - 服务器
- 生活比喻:24小时营业的餐厅后厨
- 产品场景:提供计算和存储服务的机器
Client(客户端) - 客户端
- 生活比喻:点餐的顾客
- 产品场景:手机App、浏览器
Linux - 操作系统
- 生活比喻:服务器的地基
- 产品场景:主流服务器系统,稳定高效
Windows Server - 微软服务器系统
- 生活比喻:带图形界面的地基
- 产品场景:企业内网常用,易上手
Docker - 容器技术
- 生活比喻:集装箱(打包应用和依赖)
- 产品场景:一次打包,到处运行,环境一致
Kubernetes(K8s) - 容器编排
- 生活比喻:港口调度系统(管理成千上万个集装箱)
- 产品场景:自动化部署、扩缩容、管理容器
CI/CD - 持续集成/持续部署
- 生活比喻:自动化流水线(自动质检、自动上架)
- 产品场景:自动化测试、自动发布,DevOps核心
Jenkins - CI/CD工具
- 生活比喻:流水线控制器
- 产品场景:自动化构建、测试、部署
Git - 版本控制
- 生活比喻:时光机(保存代码的每个历史版本)
- 产品场景:代码管理,协作开发
GitHub/GitLab - 代码托管平台
- 生活比喻:代码的银行保险库
- 产品场景:存放代码,团队协作
DevOps - 开发运维一体化
- 生活比喻:厨师和服务员不分家,一起做菜品交付
- 产品场景:打破开发和运维的墙,快速交付
# 架构模式
Monolith(单体架构) - 单体架构
- 生活比喻:大杂烩(所有菜在一个锅里煮)
- 产品场景:初期简单,后期臃肿,改动风险大
Microservices(微服务) - 微服务
- 生活比喻:分工明确的厨房(炒菜、面点、凉菜分开)
- 产品场景:独立部署,技术栈灵活,但复杂度高
SOA(面向服务架构) - 面向服务架构
- 生活比喻:餐厅联盟(各店独立但统一标准)
- 产品场景:较早期的服务化架构,偏重ESB
Serverless(无服务器) - 无服务器
- 生活比喻:按量付费的共享厨房(不用时不用交钱)
- 产品场景:FaaS/BaaS,按需运行,成本低
FaaS(函数即服务) - 函数即服务
- 生活比喻:只做一道菜的厨师(用完即走)
- 产品场景:AWS Lambda,阿里云函数计算
BaaS(后端即服务) - 后端即服务
- 生活比喻:中央厨房提供半成品
- 产品场景:第三方提供数据库、认证等基础服务
中台 - 能力复用平台
- 生活比喻:中央厨房(统一供应各门店)
- 产品场景:业务中台、数据中台,避免重复造轮子
SaaS(软件即服务) - 软件即服务
- 生活比喻:外卖平台(直接点菜不用做饭)
- 产品场景:直接使用软件,如钉钉、Salesforce
PaaS(平台即服务) - 平台即服务
- 生活比喻:提供厨房设备和食材(你自己做菜)
- 产品场景:提供开发平台,如Heroku、Google App Engine
IaaS(基础设施即服务) - 基础设施即服务
- 生活比喻:提供空房间和水电气
- 产品场景:提供服务器、存储、网络,如AWS EC2
云原生(Cloud Native) - 云原生
- 生活比喻:为云设计的应用架构
- 产品场景:容器化、微服务、DevOps、持续交付
# 数据库家族
MySQL - 关系型数据库
- 生活比喻:Excel表格(结构化,有关联)
- 产品场景:最流行,适合事务性数据
PostgreSQL - 高级关系型数据库
- 生活比喻:功能更强的Excel
- 产品场景:支持JSON、GIS等高级特性
Oracle - 企业级数据库
- 生活比喻:银行级保险柜(贵但稳)
- 产品场景:金融、电信行业常用
SQL Server - 微软数据库
- 生活比喻:Office套件里的数据库
- 产品场景:微软生态常用
MongoDB - 文档数据库
- 生活比喻:灵活的档案袋(JSON格式,无固定表结构)
- 产品场景:适合非结构化数据,快速迭代
Redis - 内存数据库
- 生活比喻:收银台的小黑板(快,但断电即失)
- 产品场景:缓存、会话、排行榜、计数器
Memcached - 内存缓存
- 生活比喻:临时便签纸
- 产品场景:纯缓存,比Redis简单
Elasticsearch - 搜索引擎
- 生活比喻:图书馆的索引卡片
- 产品场景:全文搜索、日志分析、大数据分析
ClickHouse - 列式数据库
- 生活比喻:统计报表专用本
- 产品场景:OLAP,分析型数据,查询极快
TiDB - 分布式数据库
- 生活比喻:可以无限扩展的档案室
- 产品场景:国产,水平扩展,兼容MySQL
NoSQL - 非关系型数据库
- 生活比喻:不拘泥于表格的存储方式
- 产品场景:MongoDB、Redis等统称,灵活但一致性弱
NewSQL - 新型关系数据库
- 生活比喻:既有SQL的严谨,又能水平扩展
- 产品场景:如TiDB、CockroachDB
# 数据库核心概念
SQL(结构化查询语言) - 结构化查询语言
- 生活比喻:跟数据库对话的普通话
- 产品场景:查增删改数据的语言
Table(表) - 表
- 生活比喻:Excel的Sheet
- 产品场景:存储数据的二维结构
Row/Record(行/记录) - 行/记录
- 生活比喻:表格里的一行
- 产品场景:一条数据
Column/Field(列/字段) - 列/字段
- 生活比喻:表格里的一列
- 产品场景:数据的属性(如姓名、年龄)
Primary Key(主键) - 主键
- 生活比喻:身份证号(唯一标识一条记录)
- 产品场景:不可重复,不能为NULL
Foreign Key(外键) - 外键
- 生活比喻:户口本上的亲属关系
- 产品场景:表与表之间的关联
Index(索引) - 索引
- 生活比喻:书的目录
- 产品场景:加速查询,但会增加写入开销
Transaction(事务) - 事务
- 生活比喻:要么全做,要么全不做的"原子操作"
- 产品场景:ACID特性,保证数据一致性
ACID - 事务四特性
- 生活比喻:原子性、一致性、隔离性、持久性
- 产品场景:银行转账必须满足的特性
Lock(锁) - 锁
- 生活比喻:厕所门锁(防止多人同时用)
- 产品场景:并发控制,防止数据冲突
Deadlock(死锁) - 死锁
- 生活比喻:两人面对面过桥,互不相让
- 产品场景:互相等待对方释放资源,程序卡死
Sharding(分片) - 分片
- 生活比喻:把大书拆成多卷
- 产品场景:水平拆分,解决单表数据量过大
Partition(分区) - 分区
- 生活比喻:抽屉里的隔板
- 产品场景:单表内部分区,提升查询效率
Replication(复制) - 复制
- 生活比喻:影印备份
- 产品场景:主从复制,读写分离,数据备份
Master-Slave(主从架构) - 主从架构
- 生活比喻:主厨和帮厨(主写从读)
- 产品场景:读写分离,提升读性能
ORM(对象关系映射) - 对象关系映射
- 生活比喻:翻译官(把代码对象翻译成SQL)
- 产品场景:不用写SQL,直接操作对象
Connection Pool(连接池) - 连接池
- 生活比喻:数据库连接复用池
- 产品场景:避免频繁创建连接,提升性能
# 四、性能与并发:高并发的艺术
# 缓存策略
Cache(缓存) - 缓存
- 生活比喻:短期的记忆(不用每次都查字典)
- 产品场景:减少数据库压力,提升速度
Cache Hit(缓存命中) - 缓存命中
- 生活比喻:书就在手边,不用去图书馆
- 产品场景:直接读缓存,速度快
Cache Miss(缓存未命中) - 缓存未命中
- 生活比喻:书不在手边,必须去图书馆
- 产品场景:缓存没有,需要查数据库
Cache Penetration(缓存穿透) - 缓存穿透
- 生活比喻:查不存在的数据(每次都透传到底层)
- 产品场景:攻击者查不存在的ID,压垮数据库
Cache Breakdown(缓存击穿) - 缓存击穿
- 生活比喻:热门书突然过期,所有人同时去图书馆
- 产品场景:热点数据过期,瞬间大量请求到DB
Cache Avalanche(缓存雪崩) - 缓存雪崩
- 生活比喻:图书馆突然关门(大量缓存同时过期)
- 产品场景:大面积缓存失效,数据库崩溃
Hot Key(热键) - 热键
- 生活比喻:被疯抢的限量版商品
- 产品场景:访问量极高的单个缓存Key
Big Key(大键) - 大键
- 生活比喻:占用整个货车的超大件货物
- 产品场景:体积过大的缓存Value,影响性能
# 并发与线程
Concurrency(并发) - 并发
- 生活比喻:多任务交替进行(看起来同时)
- 产品场景:单核CPU快速切换任务
Parallel(并行) - 并行
- 生活比喻:多任务真正同时进行
- 产品场景:多核CPU同时处理
Thread(线程) - 线程
- 生活比喻:厨房里的一个厨师
- 产品场景:程序执行的最小单位
Process(进程) - 进程
- 生活比喻:一个完整的厨房(独立空间)
- 产品场景:资源分配的基本单位,进程间隔离
Thread Pool(线程池) - 线程池
- 生活比喻:待命的厨师团队(不用现招现辞)
- 产品场景:复用线程,减少创建销毁开销
Race Condition(竞态条件) - 竞态条件
- 生活比喻:两人同时抢最后一碗饭
- 产品场景:多个线程竞争资源,结果不确定
Mutex(互斥锁) - 互斥锁
- 生活比喻:厕所的锁(一次只能一个人)
- 产品场景:保证资源同一时间只被一个线程访问
Semaphore(信号量) - 信号量
- 生活比喻:停车场的车位计数(允许多个,但有上限)
- 产品场景:控制并发访问数量
Atomic(原子操作) - 原子操作
- 生活比喻:不可中断的基本动作(如原子笔写字)
- 产品场景:不可分割的操作,线程安全
CAS(比较并交换) - 比较并交换
- 生活比喻:"如果还是原来的值,就换成新值"
- 产品场景:无锁并发算法
# 限流与熔断
Rate Limit(限流) - 限流
- 生活比喻:地铁限流(排队进站)
- 产品场景:控制请求速率,保护系统
Circuit Breaker(熔断) - 熔断
- 生活比喻:保险丝(过载自动断开)
- 产品场景:服务故障时快速失败,防止雪崩
Degradation(降级) - 降级
- 生活比喻:春运时取消卧铺,只保留硬座
- 产品场景:舍车保帅,关闭非核心功能
Bulkhead(舱壁隔离) - 舱壁隔离
- 生活比喻:轮船的水密舱(一个舱进水不影响其他)
- 产品场景:隔离故障,限制影响范围
Throttling(节流) - 节流
- 生活比喻:水龙头调小水流
- 产品场景:主动降低处理速度
# 分布式系统
Distributed System(分布式系统) - 分布式系统
- 生活比喻:多店连锁(不是一家店扛所有)
- 产品场景:多台机器协作完成任务
Service Mesh(服务网格) - 服务网格
- 生活比喻:服务员之间的对讲机系统
- 产品场景:处理服务间通信的基础设施层
API Gateway(API网关) - API网关
- 生活比喻:大厦前台(统一入口,处理安检)
- 产品场景:统一认证、限流、路由、日志
Service Registry(服务注册中心) - 服务注册中心
- 生活比喻:通讯录(记录所有服务地址)
- 产品场景:Eureka、Nacos、Consul
CAP定理 - CAP理论
- 生活比喻:一致性、可用性、分区容错性,三者只能取其二
- 产品场景:分布式系统的根本限制
BASE理论 - 基本可用+软状态+最终一致性
- 生活比喻:快递可能延迟,但最终会到
- 产品场景:牺牲强一致性,追求高可用
Consistency(一致性) - 一致性
- 生活比喻:所有人看到的数据都一样
- 产品场景:强一致性 vs 最终一致性
Consensus(共识算法) - 共识算法
- 生活比喻:多人达成一致的投票机制
- 产品场景:Raft、Paxos,保证分布式一致性
Distributed Lock(分布式锁) - 分布式锁
- 生活比喻:跨店的排他权(全局互斥)
- 产品场景:Redis或Zookeeper实现的锁
Idempotency(幂等性) - 幂等性
- 生活比喻:按一次电梯按钮和按十次效果一样
- 产品场景:防止重复处理(如重复支付)
Snowflake(雪花算法) - 雪花算法
- 生活比喻:分布式ID生成器
- 产品场景:Twitter开源,生成全局唯一ID
# 五、安全与风控:守护数据的护城河
# 常见攻击手段
SQL Injection(SQL注入) - SQL注入
- 生活比喻:把恶意代码混进查询语句
- 产品场景:上文已述
XSS(跨站脚本攻击) - 跨站脚本攻击
- 生活比喻:在公告栏贴带病毒的告示
- 产品场景:上文已述,分存储型、反射型、DOM型
CSRF(跨站请求伪造) - 跨站请求伪造
- 生活比喻:假冒你的签名去办事
- 产品场景:上文已述
DDoS(分布式拒绝服务) - 分布式拒绝服务
- 生活比喻:雇一群人挤爆小店(不消费只占位)
- 产品场景:上文已述
CC Attack(挑战黑洞攻击) - 挑战黑洞攻击
- 生活比喻:雇人不断问服务员复杂问题
- 产品场景:消耗应用层资源
MITM(中间人攻击) - 中间人攻击
- 生活比喻:快递被半路拦截拆封
- 产品场景:劫持通信,窃取或篡改数据
Replay Attack(重放攻击) - 重放攻击
- 生活比喻:把已经用过的门票再次使用
- 产品场景:拦截请求重复发送
Brute Force(暴力破解) - 暴力破解
- 生活比喻:一个个试密码
- 产品场景:用字典穷举密码
Dictionary Attack(字典攻击) - 字典攻击
- 生活比喻:用常见密码本试
- 产品场景:比暴力破解智能一点
Social Engineering(社工攻击) - 社工攻击
- 生活比喻:骗你说出密码
- 产品场景:人性漏洞,最难防
Phishing(钓鱼攻击) - 钓鱼攻击
- 生活比喻:伪造官网骗你输入账号密码
- 产品场景:仿冒网站、邮件
0day(零日漏洞) - 零日漏洞
- 生活比喻:没人知道的锁匠技巧
- 产品场景:未被公开的漏洞,最危险
Backdoor(后门) - 后门
- 生活比喻:预留的秘密通道
- 产品场景:绕过正常认证机制
# 安全防护
Encryption(加密) - 加密
- 生活比喻:把明文变成密文
- 产品场景:保护数据机密性
Symmetric(对称加密) - 对称加密
- 生活比喻:一把钥匙开一把锁(加解密同钥匙)
- 产品场景:AES,速度快,适合大数据
Asymmetric(非对称加密) - 非对称加密
- 生活比喻:公钥锁门,私钥开门(RSA)
- 产品场景:HTTPS握手、数字签名
Hash(哈希) - 哈希
- 生活比喻:指纹生成(单向,无法反推)
- 产品场景:MD5/SHA,密码存储、文件校验
Salt(盐值) - 盐值
- 生活比喻:密码里加的随机调料
- 产品场景:防止彩虹表攻击
Digital Signature(数字签名) - 数字签名
- 生活比喻:盖章+防伪标识
- 产品场景:验证身份和数据完整性
Certificate(数字证书) - 数字证书
- 生活比喻:身份证(CA机构颁发)
- 产品场景:证明公钥属于谁
CA(证书颁发机构) - 证书颁发机构
- 生活比喻:公安局(发身份证的权威机构)
- 产品场景:受信任的第三方
SSL/TLS - 传输层安全协议
- 生活比喻:HTTPS的S就是它
- 产品场景:加密传输通道
Honeypot(蜜罐) - 蜜罐
- 生活比喻:假的目标吸引攻击者
- 产品场景:诱捕黑客,分析攻击手段
Penetration Test(渗透测试) - 渗透测试
- 生活比喻:请专业小偷来测试安防
- 产品场景:主动发现漏洞
Code Review(代码审计) - 代码审计
- 生活比喻:检查代码里的安全隐患
- 产品场景:开发阶段发现安全问题
Least Privilege(最小权限原则) - 最小权限原则
- 生活比喻:只给必要的权限
- 产品场景:防止权限滥用
2FA/MFA(双因素/多因素认证) - 双因素/多因素认证
- 生活比喻:密码+手机验证码
- 产品场景:增加安全层级
# 六、移动与客户端:掌上的世界
# 移动开发
iOS - 苹果操作系统
- 生活比喻:iPhone的系统
- 产品场景:封闭但体验一致,审核严格
Android - 安卓系统
- 生活比喻:开源的手机系统
- 产品场景:碎片化严重,但自由度高
Kotlin - 安卓官方语言
- 生活比喻:Java的现代化升级版
- 产品场景:谷歌推荐,简洁安全
Swift - 苹果官方语言
- 生活比喻:Objective-C的替代品
- 产品场景:现代、快速、安全
Objective-C - 老牌iOS语言
- 生活比喻:iOS的"古英语"
- 产品场景:历史遗留,新项目少用
Java - 安卓传统语言
- 生活比喻:老牌面向对象语言
- 产品场景:安卓开发基础
JNI(Java本地接口) - Java本地接口
- 生活比喻:Java和C++的翻译官
- 产品场景:调用底层C/C++代码
Flutter - Google跨平台框架
- 生活比喻:自己画UI(不依赖原生组件)
- 产品场景:Dart语言,性能接近原生
React Native - Facebook跨平台
- 生活比喻:用JS写,渲染原生组件
- 产品场景:一套代码,iOS/Android通用
Uni-app - 国产跨平台
- 生活比喻:Vue语法,多端编译
- 产品场景:一套代码,小程序+App+H5
Hybrid(混合开发) - 混合开发
- 生活比喻:原生壳+网页内容
- 产品场景:上文已述
Native(原生开发) - 原生开发
- 生活比喻:纯血统开发
- 产品场景:性能最好,体验最佳
WebView - 网页视图
- 生活比喻:App里的浏览器组件
- 产品场景:加载H5页面,有性能损耗
# App生命周期与分发
App Store - 苹果应用商店
- 生活比喻:iOS唯一官方渠道
- 产品场景:审核严,抽成30%
Google Play - 谷歌应用商店
- 生活比喻:安卓官方商店
- 产品场景:国内无法直接使用
APK - 安卓安装包
- 生活比喻:Android Package
- 产品场景:安卓应用的文件格式
IPA - iOS安装包
- 生活比喻:iOS App Store Package
- 产品场景:iOS应用的文件格式
签名 - 数字签名
- 生活比喻:证明App是谁开发的
- 产品场景:防止篡改,安装验证
Provisioning Profile(配置文件) - 配置文件
- 生活比喻:iOS的准生证
- 产品场景:包含证书和设备ID,开发必备
OTA(空中下载) - 空中下载
- 生活比喻:不用连电脑,直接下载安装
- 产品场景:Over-The-Air
热更新 - 热修复
- 生活比喻:不重新安装,修bug
- 产品场景:动态下发代码,iOS限制严
Code Push - 微软热更新方案
- 生活比喻:热更新服务
- 产品场景:用于React Native等
JSPatch - iOS热修复方案
- 生活比喻:用JS修复OC代码
- 产品场景:曾被广泛使用,现被苹果禁止
Root(安卓提权) - 安卓提权
- 生活比喻:获得安卓最高权限
- 产品场景:类似iOS越狱,风险高
Jailbreak(iOS越狱) - iOS越狱
- 生活比喻:突破iOS限制
- 产品场景:可装非官方应用,风险极高
A/B Testing(AB测试) - AB测试
- 生活比喻:对照实验(哪版更好)
- 产品场景:分流用户,数据驱动决策
Channel Package(渠道包) - 渠道包
- 生活比喻:不同应用市场的定制包
- 产品场景:统计各渠道下载量
Attribution(归因分析) - 归因分析
- 生活比喻:功劳算谁的
- 产品场景:用户从哪个渠道来
Funnel Analysis(漏斗分析) - 漏斗分析
- 生活比喻:看每一步流失多少人
- 产品场景:注册流程、购买流程优化
Retention(留存率) - 留存率
- 生活比喻:几天后还在用的比例
- 产品场景:次日留存、7日留存、30日留存
DAU/MAU(日活/月活) - 日活/月活
- 生活比喻:每天/每月活跃用户数
- 产品场景:核心指标
Crash Rate(崩溃率) - 崩溃率
- 生活比喻:App崩溃的频率
- 产品场景:稳定性指标
ANR(应用无响应) - 应用无响应
- 生活比喻:Android Not Responding
- 产品场景:安卓主线程卡死
OOM(内存溢出) - 内存溢出
- 生活比喻:Out Of Memory
- 产品场景:内存不足导致崩溃
# 七、数据与AI:智能时代
# 数据基础
Big Data(大数据) - 大数据
- 生活比喻:数据量大到Excel打不开
- 产品场景:海量的、高增长的数据集合
Data Mining(数据挖掘) - 数据挖掘
- 生活比喻:从沙子里淘金
- 产品场景:发现数据中的模式和规律
ETL(抽取转换加载) - 抽取转换加载
- 生活比喻:数据搬运+清洗
- 产品场景:从各数据源整合到数据仓库
Data Warehouse(数据仓库) - 数据仓库
- 生活比喻:大型图书馆(存历史数据)
- 产品场景:面向主题,集成,相对稳定
Data Lake(数据湖) - 数据湖
- 生活比喻:原始数据的蓄水池
- 产品场景:存原始格式数据,灵活但难管理
Data Mart(数据集市) - 数据集市
- 生活比喻:部门级小图书馆
- 产品场景:面向特定业务,如销售数据集市
BI(商业智能) - 商业智能
- 生活比喻:数据可视化+分析
- 产品场景:报表、仪表盘、决策支持
OLTP(在线事务处理) - 在线事务处理
- 生活比喻:收银台(处理当前交易)
- 产品场景:面向日常操作,高并发短事务
OLAP(在线分析处理) - 在线分析处理
- 生活比喻:财务分析室(查历史做统计)
- 产品场景:面向分析,复杂查询
Metrics(指标) - 指标
- 生活比喻:体温、血压等数据
- 产品场景:PV、UV、转化率等
Dimensions(维度) - 维度
- 生活比喻:观察角度
- 产品场景:时间、地域、设备、渠道
Session(会话) - 会话
- 生活比喻:一次访问周期
- 产品场景:从打开到关闭,或30分钟无操作
UV(独立访客) - 独立访客
- 生活比喻:去重后的用户数
- 产品场景:Unique Visitor
PV(页面浏览量) - 页面浏览量
- 生活比喻:页面被看的次数
- 产品场景:Page View
Conversion Rate(转化率) - 转化率
- 生活比喻:从看到买的人占比
- 产品场景:核心运营指标
Bounce Rate(跳出率) - 跳出率
- 生活比喻:看一眼就走的人占比
- 产品场景:内容吸引力指标
KPI(关键绩效指标) - 关键绩效指标
- 生活比喻:考核标准
- 产品场景:量化目标
埋点 - 事件追踪
- 生活比喻:在关键位置装摄像头
- 产品场景:记录用户行为数据
Log(日志) - 日志
- 生活比喻:系统日记
- 产品场景:记录运行状态,排错用
# 人工智能
AI(人工智能) - 人工智能
- 生活比喻:机器模拟人类智能
- 产品场景:大范畴
ML(机器学习) - 机器学习
- 生活比喻:从数据中学习规律
- 产品场景:上文已述
DL(深度学习) - 深度学习
- 生活比喻:多层神经网络学习
- 产品场景:神经网络的进阶
Neural Network(神经网络) - 神经网络
- 生活比喻:模拟大脑神经元连接
- 产品场景:上文已述
CNN(卷积神经网络) - 卷积神经网络
- 生活比喻:擅长看图像的网络
- 产品场景:图像识别、人脸识别
RNN(循环神经网络) - 循环神经网络
- 生活比喻:擅长记序列的网络
- 产品场景:适合文本、时间序列
LSTM(长短期记忆网络) - 长短期记忆网络
- 生活比喻:RNN的增强版(记忆力更好)
- 产品场景:长文本处理
Transformer - 变形金刚架构
- 生活比喻:注意力机制,并行计算
- 产品场景:GPT、BERT的基础架构
BERT - 谷歌预训练模型
- 生活比喻:理解上下文的双向编码器
- 产品场景:NLP里程碑
GPT(生成式预训练模型) - 生成式预训练模型
- 生活比喻:生成文本的模型
- 产品场景:ChatGPT的基础
LLM(大语言模型) - 大语言模型
- 生活比喻:参数量巨大的语言模型
- 产品场景:如GPT-4、Claude
AIGC(AI生成内容) - AI生成内容
- 生活比喻:AI画画、写文章、做视频
- 产品场景:生成式AI
Prompt(提示词) - 提示词
- 生活比喻:给AI的指令
- 产品场景:怎么问AI才能得到好答案
Fine-tuning(微调) - 微调
- 生活比喻:在预训练模型上专项训练
- 产品场景:让通用模型适应特定任务
RAG(检索增强生成) - 检索增强生成
- 生活比喻:先查资料再回答
- 产品场景:结合知识库,减少幻觉
Hallucination(幻觉) - 幻觉
- 生活比喻:AI一本正经胡说八道
- 产品场景:生成错误信息
NLP(自然语言处理) - 自然语言处理
- 生活比喻:让机器理解人话
- 产品场景:文本分析、翻译、摘要
CV(计算机视觉) - 计算机视觉
- 生活比喻:让机器看懂图像
- 产品场景:人脸识别、OCR、自动驾驶
OCR(光学字符识别) - 光学字符识别
- 生活比喻:图片文字提取
- 产品场景:身份证识别、发票识别
ASR(语音识别) - 语音识别
- 生活比喻:语音转文字
- 产品场景:输入法、智能音箱
TTS(语音合成) - 语音合成
- 生活比喻:文字转语音
- 产品场景:导航、朗读
Recommendation(推荐算法) - 推荐算法
- 生活比喻:猜你喜欢
- 产品场景:上文已述
Collaborative Filtering(协同过滤) - 协同过滤
- 生活比喻:相似的人喜欢相似的东西
- 产品场景:推荐算法的一种
Content-Based(基于内容) - 基于内容
- 生活比喻:物品本身的相似性
- 产品场景:推荐算法的一种
Clustering(聚类) - 聚类
- 生活比喻:自动分组(无监督)
- 产品场景:用户分群
Classification(分类) - 分类
- 生活比喻:贴标签(监督学习)
- 产品场景:垃圾邮件识别
Regression(回归) - 回归
- 生活比喻:预测数值
- 产品场景:房价预测
Overfitting(过拟合) - 过拟合
- 生活比喻:死记硬背,不会变通
- 产品场景:在训练集表现好,新数据差
Underfitting(欠拟合) - 欠拟合
- 生活比喻:学得太浅,理解不够
- 产品场景:模型太简单
Training Set(训练集) - 训练集
- 生活比喻:学习资料
- 产品场景:用来训练模型的数据
Test Set(测试集) - 测试集
- 生活比喻:考试卷
- 产品场景:评估模型效果
Validation Set(验证集) - 验证集
- 生活比喻:模拟考试
- 产品场景:调参用,避免过拟合
Feature(特征) - 特征
- 生活比喻:数据的属性
- 产品场景:预测房价时的面积、地段等
Label(标签) - 标签
- 生活比喻:标准答案
- 产品场景:训练集中的已知结果
Model(模型) - 模型
- 生活比喻:学到的规律
- 产品场景:训练的结果,用于预测
Inference(推理) - 推理
- 生活比喻:用模型做预测
- 产品场景:实际应用阶段
Vector(向量) - 向量
- 生活比喻:数据的数学表示
- 产品场景:文字、图片转成数字数组
Embedding(嵌入) - 嵌入
- 生活比喻:把东西映射到向量空间
- 产品场景:Word2Vec,语义向量
Vector DB(向量数据库) - 向量数据库
- 生活比喻:存向量的专用库
- 产品场景:相似度搜索、RAG
Reinforcement Learning(强化学习) - 强化学习
- 生活比喻:试错学习(打游戏)
- 产品场景:AlphaGo,通过奖惩学习
Supervised Learning(监督学习) - 监督学习
- 生活比喻:有老师教(有标准答案)
- 产品场景:分类、回归
Unsupervised Learning(无监督学习) - 无监督学习
- 生活比喻:自学(无标准答案)
- 产品场景:聚类、降维
Semi-supervised(半监督学习) - 半监督学习
- 生活比喻:少量标注+大量未标注
- 产品场景:降低成本
Transfer Learning(迁移学习) - 迁移学习
- 生活比喻:举一反三
- 产品场景:用一个领域的知识解决另一个领域
# 八、测试与运维:质量的守门员
# 测试类型
Unit Test(单元测试) - 单元测试
- 生活比喻:测试单个零件
- 产品场景:测试最小功能单元
Integration Test(集成测试) - 集成测试
- 生活比喻:测试组装好的部件
- 产品场景:测试模块间交互
E2E Test(端到端测试) - 端到端测试
- 生活比喻:全流程试驾
- 产品场景:模拟用户完整操作
Regression Test(回归测试) - 回归测试
- 生活比喻:修好后确保没坏别处
- 产品场景:改代码后重新测试
Smoke Test(冒烟测试) - 冒烟测试
- 生活比喻:开机看看冒不冒烟(最基本的检查)
- 产品场景:验证基本功能可用
Load Test(负载测试) - 负载测试
- 生活比喻:测试能扛多少人
- 产品场景:测试正常负载下的表现
Stress Test(压力测试) - 压力测试
- 生活比喻:测试极限承载力
- 产品场景:测试极限情况下的表现
Chaos Test(混沌测试) - 混沌测试
- 生活比喻:故意搞破坏看系统能不能活
- 产品场景:Netflix的猴子军团
A/B Test(AB测试) - AB测试
- 生活比喻:对比两个版本
- 产品场景:上文已述
Mock - 模拟
- 生活比喻:用假数据代替真服务
- 产品场景:测试时模拟依赖服务
Stub - 桩
- 生活比喻:假的接口实现
- 产品场景:测试中占位用
TDD(测试驱动开发) - 测试驱动开发
- 生活比喻:先写测试再写代码
- 产品场景:红绿重构循环
# 运维与监控
SLA(服务等级协议) - 服务等级协议
- 生活比喻:服务质量承诺(如99.99%可用)
- 产品场景:达不到要赔钱
SRE(站点可靠性工程) - 站点可靠性工程
- 生活比喻:专门保证网站不挂的工程师
- 产品场景:Google提出的运维理念
Monitoring(监控) - 监控
- 生活比喻:体检(量体温、血压)
- 产品场景:系统指标采集
Alerting(告警) - 告警
- 生活比喻:体温过高就报警
- 产品场景:异常通知
Logging(日志) - 日志
- 生活比喻:日记
- 产品场景:记录详细行为
Tracing(追踪) - 追踪
- 生活比喻:监控摄像头跟踪
- 产品场景:请求链路追踪(Jaeger、Zipkin)
Metrics(指标) - 指标
- 生活比喻:统计数据
- 产品场景:QPS、延迟、错误率
APM(应用性能监控) - 应用性能监控
- 生活比喻:应用体检中心
- 产品场景:New Relic、听云、SkyWalking
ELK(日志分析栈) - 日志分析栈
- 生活比喻:Elasticsearch+Logstash+Kibana
- 产品场景:日志收集分析可视化
Prometheus - 监控系统
- 生活比喻:云原生监控神器
- 产品场景:时序数据库+告警
Grafana - 可视化仪表盘
- 生活比喻:数据展示大屏
- 产品场景:配合Prometheus等使用
PagerDuty - 告警响应
- 生活比喻:急救中心调度
- 产品场景:告警分级、值班轮转
On-Call - 值班
- 生活比喻:医生夜班
- 产品场景:7x24小时待命
Rollback(回滚) - 回滚
- 生活比喻:时光倒流(回到上一版本)
- 产品场景:发布失败后的救命稻草
Blue-Green Deploy(蓝绿部署) - 蓝绿部署
- 生活比喻:准备两套环境,瞬间切换
- 产品场景:零停机发布
Canary Deploy(金丝雀发布) - 金丝雀发布
- 生活比喻:先放一只金丝雀进矿井(先给1%用户)
- 产品场景:灰度发布,风险可控
Feature Toggle(功能开关) - 功能开关
- 生活比喻:远程控制开关
- 产品场景:随时开启/关闭功能
Dark Launch(暗启动) - 暗启动
- 生活比喻:后台偷偷运行新功能(对用户不可见)
- 产品场景:测试新功能负载
Shadow Traffic(流量复制) - 流量复制
- 生活比喻:把真实流量复制一份给新版本
- 产品场景:线上压力测试
# 九、产品与设计的桥梁
# 设计相关
UI(用户界面) - 用户界面
- 生活比喻:界面长什么样(视觉)
- 产品场景:按钮、颜色、字体
UX(用户体验) - 用户体验
- 生活比喻:用起来爽不爽(感觉)
- 产品场景:流程、交互、情感
GUI(图形用户界面) - 图形用户界面
- 生活比喻:有图有按钮的界面
- 产品场景:区别于命令行
CLI(命令行界面) - 命令行界面
- 生活比喻:输指令的黑白界面
- 产品场景:程序员常用
Responsive(响应式) - 响应式
- 生活比喻:自适应不同屏幕
- 产品场景:一套代码,手机电脑都能看
Adaptive(自适应) - 自适应
- 生活比喻:为不同设备准备不同方案
- 产品场景:针对性优化
Mobile First(移动优先) - 移动优先
- 生活比喻:先设计手机版
- 产品场景:优先小屏幕体验
Skeleton Screen(骨架屏) - 骨架屏
- 生活比喻:加载时的灰色占位块
- 产品场景:减少等待焦虑
Lazy Loading(懒加载) - 懒加载
- 生活比喻:滚动到位置再加载
- 产品场景:图片、列表优化
Infinite Scroll(无限滚动) - 无限滚动
- 生活比喻:到底自动加载更多
- 产品场景:信息流常见
Pagination(分页) - 分页
- 生活比喻:分几页显示
- 产品场景:传统列表
Breadcrumb(面包屑) - 面包屑
- 生活比喻:显示当前位置的路径
- 产品场景:首页>分类>商品
Modal(模态框) - 模态框
- 生活比喻:弹窗(必须处理才能继续)
- 产品场景:警告、确认操作
Toast(轻提示) - 轻提示
- 生活比喻:短暂出现的提示条
- 产品场景:操作成功提示
Tooltip(工具提示) - 工具提示
- 生活比喻:鼠标悬停的小提示
- 产品场景:解释图标含义
Dropdown(下拉菜单) - 下拉菜单
- 生活比喻:点击展开选项
- 产品场景:省空间
Hamburger Menu(汉堡菜单) - 汉堡菜单
- 生活比喻:三条横线的导航
- 产品场景:移动端常用
FAB(浮动操作按钮) - 浮动操作按钮
- 生活比喻:右下角的圆形加号
- 产品场景:Material Design
Card(卡片) - 卡片
- 生活比喻:信息容器
- 产品场景:内容组织方式
Grid(栅格) - 栅格
- 生活比喻:对齐系统
- 产品场景:12列布局等
Whitespace(留白) - 留白
- 生活比喻:空白区域
- 产品场景:设计呼吸感
Typography(排版) - 排版
- 生活比喻:文字的设计
- 产品场景:字体、行高、字重
Color Palette(色板) - 色板
- 生活比喻:配色方案
- 产品场景:主色、辅助色、中性色
Iconography(图标设计) - 图标设计
- 生活比喻:图标系统
- 产品场景:一致性、识别性
Design System(设计系统) - 设计系统
- 生活比喻:设计规范大全
- 产品场景:Ant Design、Material Design
Style Guide(样式指南) - 样式指南
- 生活比喻:视觉规范手册
- 产品场景:颜色、字体、组件规范
Component(组件) - 组件
- 生活比喻:可复用的UI单元
- 产品场景:按钮、输入框
Pattern(模式) - 模式
- 生活比喻:常见交互方案
- 产品场景:登录、注册、支付流程
User Flow(用户流程) - 用户流程
- 生活比喻:用户完成任务的步骤图
- 产品场景:流程图
Wireframe(线框图) - 线框图
- 生活比喻:草图(低保真)
- 产品场景:快速验证想法
Mockup - mockup
- 生活比喻:视觉稿(高保真)
- 产品场景:接近真实效果
Prototype(原型) - 原型
- 生活比喻:可点击的演示
- 产品场景:模拟交互,用于测试
Figma - 设计工具
- 生活比喻:在线协作设计神器
- 产品场景:云端、实时协作
Sketch - 设计工具
- 生活比喻:Mac端UI设计软件
- 产品场景:曾统治UI设计
Axure - 原型工具
- 生活比喻:画线框图和交互
- 产品场景:产品经理常用
Photoshop - 图像处理
- 生活比喻:修图神器
- 产品场景:位图处理
Illustrator - 矢量设计
- 生活比喻:画Logo、图标
- 产品场景:矢量图
Zeplin - 设计交付
- 生活比喻:设计师给开发的交付工具
- 产品场景:标注、切图
JIRA - 项目管理
- 生活比喻:敏捷开发管理
- 产品场景:需求、Bug追踪
Confluence - 知识库
- 生活比喻:团队文档中心
- 产品场景:Wiki、PRD文档
Trello - 看板工具
- 生活比喻:简单的任务看板
- 产品场景:轻量项目管理
Asana - 任务管理
- 生活比喻:团队协作任务
- 产品场景:任务分配追踪
Notion - 全能工具
- 生活比喻:文档+数据库+看板
- 产品场景:All-in-one
Miro - 在线白板
- 生活比喻:远程协作白板
- 产品场景:脑暴、流程图
XMind - 思维导图
- 生活比喻:整理思路
- 产品场景:脑图工具
# 十、沟通必备:技术团队的"黑话"
# 开发流程
Agile(敏捷开发) - 敏捷开发
- 生活比喻:小步快跑,快速迭代
- 产品场景:区别于瀑布流
Scrum - 敏捷框架
- 生活比喻:两周一个冲刺
- 产品场景:每日站会、冲刺计划
Sprint(冲刺) - 冲刺
- 生活比喻:固定周期的开发阶段
- 产品场景:通常1-4周
Daily Stand-up(每日站会) - 每日站会
- 生活比喻:站着开的短会(15分钟)
- 产品场景:昨天干了啥,今天干啥,遇到啥问题
Backlog(需求池) - 需求池
- 生活比喻:待办事项列表
- 产品场景:所有需求的集合
Grooming(需求梳理) - 需求梳理
- 生活比喻:细化需求
- 产品场景:评估工作量、澄清需求
Estimation(估点) - 估点
- 生活比喻:估算工作量
- 产品场景:故事点、人天
Story Point(故事点) - 故事点
- 生活比喻:相对复杂度单位
- 产品场景:斐波那契数列(1,2,3,5,8)
Velocity(速率) - 速率
- 生活比喻:团队产能
- 产品场景:每个Sprint完成的故事点
Burn-down Chart(燃尽图) - 燃尽图
- 生活比喻:剩余工作量趋势
- 产品场景:看能否按时完成
Retrospective(回顾会) - 回顾会
- 生活比喻:复盘会议
- 产品场景:总结好坏,持续改进
Demo(演示) - 演示
- 生活比喻:展示成果
- 产品场景:Sprint结束给利益相关者看
MVP(最小可行产品) - 最小可行产品
- 生活比喻:最核心的功能版本
- 产品场景:快速验证市场
POC(概念验证) - 概念验证
- 生活比喻:技术可行性验证
- 产品场景:证明能做
Beta - 测试版
- 生活比喻:公测版本
- 产品场景:让用户试用
RC(候选版) - 候选版
- 生活比喻:Release Candidate
- 产品场景:准备发布的版本
GA(正式发布) - 正式发布
- 生活比喻:General Availability
- 产品场景:正式版
Hotfix(热修复) - 热修复
- 生活比喻:紧急修复
- 产品场景:线上严重Bug
Patch(补丁) - 补丁
- 生活比喻:小修复
- 产品场景:更新包
Refactor(重构) - 重构
- 生活比喻:整理代码(不改功能)
- 产品场景:提高代码质量
Tech Debt(技术债务) - 技术债务
- 生活比喻:欠下的代码债
- 产品场景:先凑合实现,以后还债
Spike(技术调研) - 技术调研
- 生活比喻:专门花时间研究
- 产品场景:探索未知技术
Blocker(阻塞项) - 阻塞项
- 生活比喻:阻碍进度的问题
- 产品场景:优先级最高
Dependency(依赖) - 依赖
- 生活比喻:前提条件
- 产品场景:A功能依赖B功能
Scope Creep(范围蔓延) - 范围蔓延
- 生活比喻:需求越来越多
- 产品场景:要控制,防止延期
Gold Plating(镀金) - 镀金
- 生活比喻:过度设计
- 产品场景:做不必要的功能
Code Freeze(代码冻结) - 代码冻结
- 生活比喻:不再接受新代码
- 产品场景:发布前的稳定期
# 常见术语
Bug(缺陷) - 缺陷
- 生活比喻:程序错误
- 产品场景:需要修复
Feature(功能) - 功能
- 生活比喻:新需求
- 产品场景:产品特性
Crash(崩溃) - 崩溃
- 生活比喻:App闪退
- 产品场景:严重问题
Hang(卡死) - 卡死
- 生活比喻:无响应
- 产品场景:需要杀进程
Glitch(小故障) - 小故障
- 生活比喻:轻微异常
- 产品场景:一闪而过的问题
Workaround(临时方案) - 临时方案
- 生活比喻:绕过问题的办法
- 产品场景:先凑合用
Edge Case(边界情况) - 边界情况
- 生活比喻:极端场景
- 产品场景:要考虑异常情况
Corner Case(角落案例) - 角落案例
- 生活比喻:罕见场景
- 产品场景:比Edge Case更少见
Heisenbug(海森堡Bug) - 海森堡Bug
- 生活比喻:测不出来,不测就出现的Bug
- 产品场景:难以复现
Bohrbug(波尔Bug) - 波尔Bug
- 生活比喻:稳定复现的Bug
- 产品场景:好修
Mandelbug(曼德尔Bug) - 曼德尔Bug
- 生活比喻:复杂到难以修复的Bug
- 产品场景:混沌Bug
Schroedinbug(薛定谔Bug) - 薛定谔Bug
- 生活比喻:有人看就不出问题的Bug
- 产品场景:观察就消失
Legacy Code(遗留代码) - 遗留代码
- 生活比喻:祖传代码
- 产品场景:不敢动的旧代码
Spaghetti Code(意大利面条代码) - 意大利面条代码
- 生活比喻:一团乱麻的代码
- 产品场景:难以维护
Hard Code(硬编码) - 硬编码
- 生活比喻:写死的值
- 产品场景:应该做成配置
Magic Number(魔法数字) - 魔法数字
- 生活比喻:莫名其妙的常数
- 产品场景:要有含义的常量名
Code Smell(代码异味) - 代码异味
- 生活比喻:感觉不对的设计
- 产品场景:潜在问题
Design Pattern(设计模式) - 设计模式
- 生活比喻:最佳实践套路
- 产品场景:单例、工厂、观察者等
DRY(不要重复自己) - 不要重复自己
- 生活比喻:Don't Repeat Yourself
- 产品场景:代码复用原则
KISS(保持简单) - 保持简单
- 生活比喻:Keep It Simple, Stupid
- 产品场景:简单原则
YAGNI(你不需要它) - 你不需要它
- 生活比喻:You Ain't Gonna Need It
- 产品场景:不要过度设计
RTFM(读手册) - 读手册
- 生活比喻:Read The Manual
- 产品场景:自己先查文档
TL;DR(太长不看) - 太长不看
- 生活比喻:Too Long; Didn't Read
- 产品场景:求总结
LGTM(看起来不错) - 看起来不错
- 生活比喻:Looks Good To Me
- 产品场景:代码审查通过
WIP(进行中) - 进行中
- 生活比喻:Work In Progress
- 产品场景:还没做完
PTAL(请看一下) - 请看一下
- 生活比喻:Please Take A Look
- 产品场景:求审查
AFAIK(据我所知) - 据我所知
- 生活比喻:As Far As I Know
- 产品场景:不确定
IMO/IMHO(在我看来) - 在我看来
- 生活比喻:In My (Humble) Opinion
- 产品场景:个人观点
FYI(供参考) - 供参考
- 生活比喻:For Your Information
- 产品场景:知会一声
ASAP(尽快) - 尽快
- 生活比喻:As Soon As Possible
- 产品场景:紧急
EOD(今天结束) - 今天结束
- 生活比喻:End Of Day
- 产品场景:今天下班前
COB(下班) - 下班
- 生活比喻:Close Of Business
- 产品场景:同EOD
ETA(预计时间) - 预计时间
- 生活比喻:Estimated Time of Arrival
- 产品场景:什么时候能好
# 附录:产品经理的技术思维框架
# 当你听到开发说"不行"时,可能是以下原因:
"这个需求改动太大"
- 实际含义:耦合度高,牵一发而动全身
- 你的应对:问:能否分阶段?先解耦?
"需要重构"
- 实际含义:代码债太多,现在难以下手
- 你的应对:给时间还债,或接受技术债
"并发量撑不住"
- 实际含义:架构设计时没考虑高并发
- 你的应对:评估真实流量,做限流或扩容
"数据库性能瓶颈"
- 实际含义:查询慢,可能是缺索引或该分表了
- 你的应对:问:加索引?上缓存?还是读写分离?
"第三方接口不稳定"
- 实际含义:依赖的外部服务有问题
- 你的应对:做降级方案,或换供应商
"前端渲染压力大"
- 实际含义:页面太复杂,DOM操作多
- 你的应对:考虑分页、懒加载、虚拟列表
"这个技术方案太重"
- 实际含义:杀鸡用牛刀,成本不划算
- 你的应对:问:有没有轻量级方案?MVP怎么做?
# 技术可行性自检清单
在提需求前,先问自己:
性能相关:
- 这个页面需要加载多少数据?(是否要做分页/懒加载)
- 这个功能会有多少人同时使用?(是否需要限流)
- 图片/视频资源多大?(是否需要CDN/压缩)
安全相关:
- 是否涉及敏感数据?(是否需要加密传输)
- 是否需要防刷/防爬虫?(是否需要验证码/频率限制)
- 权限如何控制?(谁能看,谁能改)
兼容性相关:
- 需要支持哪些浏览器/机型?(IE11?Android 5.0?)
- 是否需要离线使用?(是否需要PWA/本地存储)
数据相关:
- 数据从哪里来?(数据库?第三方API?爬虫?)
- 数据实时性要求多高?(实时?准实时?可容忍延迟?)
- 历史数据如何处理?(归档?删除?冷热分离?)