写一个玩具

写一个玩具

核心理念

  1. 以对话的形式
  2. 用摇签的交互方式
  3. 通过信息掮客赚心里按摩的钱

模型设计

用例图

@startuml
left to right direction
skinparam packageStyle rectangle

actor "求问人" as Seeker
actor "解签人" as Interpreter
rectangle "系统" as System {
  usecase "摇晃手机模拟摇卦" as UseCase1
  usecase "向解签人求问卦象" as UseCase2
  usecase "解签人回答并提供咨询" as UseCase3
}

Seeker --> UseCase1
Seeker --> UseCase2
Interpreter --> UseCase3

@enduml

类图

@startuml
interface Role {
  +interpretation(): String
  +shake(): Yao
}

class Account {
  -name: String
  -role: Role
}

class Interpreter implements Role {
  +interpretation(): String
}

class Seeker implements Role {
  +shake(): Yao
}

class DivinationCup {
  +shake(): Yao
}

class Yao {
  -value: Boolean
}

class Hexagram {
  -yas: Yao[6]
  -interpretation: String
  +getSession(theme: String, account: Account): Session
}

class Session {
  -hexagram: Hexagram
  -interpretationRecord: InterpretationRecord
  -theme: String
  -sender: Account
  -receiver: Account
  +sendToInterpreter(): void
}

class InterpretationRecord {
  -interpreterComments: String
  -question: String
  -theme: String
}

Account --> Role : has
Seeker --> DivinationCup : uses
Hexagram --> Yao : contains
Hexagram --> Session : creates
Session --> InterpretationRecord : records

@enduml


非核心业务需求描述

  1. 使用一套代码支持多种类型程序(小程序、APP、H5等)
  2. 使用相同的业务账户
  3. 将收费项目移到可控代码处

技术选型

业务前端

  1. 目前Taro+Taro-ui
  2. 微信小程序
  3. 原生APP

可控代码后端

  1. 选用Java/Go均可