【重构纪实】棋牌游戏JS客户端使用TS重构纪实

背景:

出海棋牌游戏,游戏已进入运营阶段,由于集中开发阶段工期紧、需求没有落定,造成代码质量差,目前要针对此问题对该项目JS代码使用TS进行重构。

本文非教学、非经验分享,仅仅用于记录各阶段的真实想法和感受,希望和大家一起探讨、提升。

一、

准备慢慢着手去做,因为CCC现在的版本可以JS和TS混用,所以打算逐步使用TS代替JS。

目前,希望在重构的过程中能做到以下几点:

1. 原有,功能模块解耦

2. 团在一起的功能,拆解为细小的功能模块

絮叨:

消息机制:之前在项目中大量使用了CCC的消息机制,即Canvas接收消息并处理,这样做的好处是在代码中的任何地方都能够方便地调用其他类的方法,在项目中大量使用的经验仅限于:某AVG游戏及其配套编辑器项目、几个棋牌类游戏。现在隐隐感觉这种方式可能只是看上去很美,简单分析一下,欢迎点评:

优点:针对大量需要同时监听某个状态或变量的逻辑,可以同时触发;无需管理拥有该方法的对象,可随时随地发消息,不用考虑接收者的状态。

缺点:破坏代码美观;优点基本上只能针对无序和相对独立的功能模块;实际操作过程中无法跟进代码,只能通过全局搜索找到相关调用和监听。

总结:感觉真正合适的情况很少,可能还没遇到合适的项目吧。现在打算抛弃消息监听的方法,在本次棋牌游戏客户端重构中,全部使用直接调用方法的方式,这样做一下看看感觉。

你可能感兴趣的:(游戏,java,python,设计模式,面试)