• 【P000-011】重构交易费计算系统


    主界面基本功能都已实现,现在要添加转债页面及相关功能,原有的一些问题也暴露了出来,大约有两个,一个是界面类中控制操作其他类的代码太多,理论上界面类应该只负责操作页面和传递数据给控制类,另一个是各功能类的分类不合理。

    磨刀不误砍柴工,先重新理清下软件应有的结构,再按照这个结构来重构代码,该剥离的剥离,该合并的合并

    一、com.qiang.tradingfeecount界面操作类包
    两个类对应两个界面
    一)、CountActivity 主界面:
    1、通过交互界面获取路径及其他参数,将这些信息给AccessNI处理,获取AccessNI回传的Myhandler
    2、通过交互界面获取用户所输入买卖数据及佣税费参数,并调用ModeSelection分析计算,显示相应结果

    二)、ConverActivity 转债页面
    1、接收传入的转债价格信息(若有,未实现)
    2、计算转债转股所得及盈亏


    二、tradingfeecount 控制类包
    一个类ModeSelection
    一)、ModeSelection:
    操作从界面控制类CountActivity/ConverActivity 传入信息,调用CalTools处理或计算并返回


    三、com.qiang.dataprocessing 数据处理类包
    三个类CalTools、ChooseColor、StockInfAnaly
    一)、CalTools:
    操作从ModeSelection传入数据(以BigDecimal形式保证精度)

    二)、ChooseColor:
    通过传入数据给出显示颜色设置


    三)、StockInfAnaly:
    操作从CountActivity所获取股票信息,分割,组合并返回



    四、com.qiang.network网络功能包
    三个类
    一)、AccessNI:
    生成线程,操作从ModeSelection所获取参数(未实现,暂时在界面类直接传入),调用org.apache.http.* 将参数规范格式化并传出,再将网络返回值传给StreamTools,根据返回结果生成相应NIHandler回传给主线程

    二)、StreamTools:
    获取网络返回值并解析,调用ByteArrayOutputStream将之转为string(最大[1024]位)并返回

    三)、NIHandler:
    设定信息格式、内容

  • 相关阅读:
    python django day 1
    C# 日常
    C# NPOI使用
    SharpZipLib 压缩ZIP导出
    JSON劫持
    跨站请求伪造CSRF或XSRF
    跨站脚本XSS安全
    会话窃取
    Cookie
    Promise -ES6
  • 原文地址:https://www.cnblogs.com/Wille-zur-Macht/p/3784631.html
Copyright © 2020-2023  润新知