「亲戚怎么叫」小程序开发心得:从0到108个家庭成员的查询覆盖
·8 min read
产品介绍
过年回家,总被各种亲戚的称呼搞晕。"这个叫什么?那个怎么称呼?"于是决定做一个小程序来解决这个问题。
核心功能:输入亲戚关系,秒懂怎么称呼。
产品设计
设计理念
遵循"工具型产品"的设计哲学:打开 → 输入 → 答案。
参考ChatGPT/DeepSeek/微信扫一扫的交互模式,不做成后台管理或知识库风格。
数据覆盖
- 108个家庭成员
- 140种查询组合
- 100%覆盖率
- 支持南北方叫法差异(比如"姥姥"vs"外婆")
UI设计原则
- 搜索框64px发光效果,输入联想
- 热门搜索、历史记录各限3个标签
- 结果页64px大字称谓 + 南北方叫法卡片
- 收藏功能和微动画增强体验
产品命名
讨厌"计算器""查询器"类名字,喜欢口语化对话式名字。
"亲戚怎么叫"这个名称直接、好记、有场景感。
技术实现
使用UniApp + Vue3开发,一套代码多端运行。
技术架构
前端:UniApp + Vue3
后端:云开发(云函数 + 数据库)
数据:JSON关系数据库
核心算法
关系解析算法:
- 将输入的关系链拆解为基本关系单元
- 递归查询关系数据库
- 合并南北方叫法差异
- 返回结构化结果
性能优化
- 输入防抖:减少不必要的查询
- 结果缓存:常用查询结果缓存
- 分包加载:主包控制在2MB以内
踩坑记录
- 个人账号限制:个人服务账号不支持某些高级插件,只能依赖输入法自带功能
- 数据覆盖:108个成员看似很多,但实际查询时要处理各种组合情况
- 性能优化:输入联想需要实时响应,做了防抖和缓存优化