基于业务的架构设计
基于业务的架构设计
前言
一,爱学习的程序员+业务专家才能做出健壮易维护的系统。
二,减少沟通成本的好方法是都用同样的词语。
三,任何词语都能找到不止一个上下文,脱离上下文任何一个词语都有歧义。
磨练自己从实际问题中获得的分析能力,抽象能力,使得自己可以快速理解业务和抽象出精炼的业务模型来简化讨论/设计/实现,这是一门无法去教也无法去学的艺术;也是程序员的核心竞争力之一。
把工作分成业务的和技术的,认为业务应该由PM策划全权负责,自己的职责只在技术范畴,不去考虑为什么要做,为什么做成这个样子,往往阻碍了成长(对于"算法/工程"之分也是如此)
对于任何工作“做出来就好”,而不去进一步思考是否可以简化,过度抽象了之后是否造成了理解障碍,也阻碍了抽象能力成长
抽象能力,大道至简。无用之用,方为大用。
19年7月,我第一次提出把策划用到的ID从int改为string,改为见文知义的字符串。
20年7月,这件事才落地成功。
困难点:固有意识很难改变,或者认为优先级低。
玩家数据
资产 | 非常重要 | 和RMB挂钩的 |
---|---|---|
物品 | 重要 | 可见的实体 |
属性集 | 一般 | 没有实体 |
线
关卡 任务 剧情 成就 签到
一条线串起来很多节点
前驱pre
A,B,C|2
表示 ABC完成了几个,可以触发本节点
后继next
A,B,C
表示完成本节点后,可以看到哪些节点
线与线之间跳转很方便
方便漏斗统计
关系链
点 | 单点 | 账号信息、用户信息、用户邮件、队伍信息 |
---|---|---|
线 | 点与点 | 好友、最近一起游戏的玩家 |
面 | 点组成群 | 队伍 |
提供数据结构、操作接口
玩家行为
分类
- 点击按钮
- 进入页面
- 退出页面
click事件统计次数。
enter事件、exit事件统计使用时长。
根据时间序列可以做漏斗路径分析。
根据操作序列做回放,方便看问题。