Skip to content
qiunet edited this page Jul 13, 2024 · 20 revisions

由来

​DuoDuo的开端是我从业6年后, 偶发的想法. 要把过去踩过的坑, 淌过的雷, 用一种更好的方式避免. 按照以往的做法, 新开的项目, Copy前一个项目的代码修修改改. 这样的问题是你的基础代码如果有问题, 基本以前项目也会需要同步修改. 但是很多时候, 新项目的bug, 老项目早改了, 只是没有通知到新的项目来. 这么几次问题后, 就萌生了基础代码模块统一发布的想法!

​最开始的想法是把工具类给统一一个Jar包, 可以各个项目引用, 项目命名为QiunetUtils. 17年时候, 又新起了数据缓存相关(QiunetData)以及网络层的Http和WebSocket (FlashHandler). 三个项目的管理以及以后可能更多让我想把这些当成模块处理. 但是总的项目的名字却怎么都不好取. 叫十全十美? 又或者 TotalProject? 恰逢我人生大事. 在这个过程中, 我媳妇的姨侄女对我自来熟, 在我融入她家庭中起到了神一般的助攻. 就决定用她小名多多来做工程名了(参考MariaDb 这些用自己女儿名字), 也寓意DuoDuo项目的内容越多越好, 多多益善.

​代码规避了很多可能在开发出现中的坑点. 然后尽量弱化了配置需求, 使用约定. 会在使用的过程慢慢完善成为一套可以做游戏和App开发的工具模块汇总. Duoduo的原则是 理解后,融入自己的代码中. 所以有问题时候,能够在第一时间反应过来问题出在哪. ​

名词解释

  • Do Data Object 持久化对象(阿里规范) 负责跟数据库交互的对象
  • Bo Business Object 业务对象(阿里规范), 给业务提供支持的对象
  • DataSupport 操作数据的类, 会自动搞定异步更新等问题
  • Service 处理业务的一些公用方法
  • Handler 处理请求的逻辑类. 一个请求一个handler
  • BehaviorBuilder 一个模块的行为组织
  • Action 测试行为动作
  • Cfg 配置文件
  • Req Request 请求
  • Rsp Rsponse 响应
  • Push 推送

协议支持

支持一个端口上启动多协议的监听!

是否支持 Tcp Kcp WebSocket Http
Protobuf
Json x x x

使用先从 开发准备 开始!

系统架构图

系统架构图

项目架构图

项目架构图

Clone this wiki locally