【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:
设定信息格式、内容

【P000-011】重构交易费计算系统,布布扣,bubuko.com

时间: 2024-08-05 17:40:33

【P000-011】重构交易费计算系统的相关文章

【P000-009】交易费计算系统,1.3版

两个改进一.一些交易参数实现持久化,即(费率,其他费用等)退出自动保存,下次再开启程序时无需再次输入. Android单机数据持久化一般三种方法,1.文件流.2.(简易)数据库SQLite.3.使用SharedPreferences.Editor方法保存成xml文件,使用SharedPreference读取.选用第三种最方便 而Editor又有apply和commit两种保存方法,具体区别为:1. apply没有返回值而commit返回boolean表明修改是否提交成功2. apply是将修改数

【P000-008】交易费计算系统,1.1版

一些小完善,股票价格显示小数后两位,基金(和债券)价格显示小数后三位,这个在判断类型时加段话就行,然后就是根据现价涨.跌.平.停在右上显示不同颜色,很简单,TextView.setText之前判断涨跌再TextView.setTextColor,之前判断方法和设置文本是写在一起的,肯定不符合MVC,再把他扔到StockInfAnaly类里面,主界面只调用方法. 几个网盘都净网不能外联下APK这个链接 源码 [P000-008]交易费计算系统,1.1版,布布扣,bubuko.com

淘宝小号交易整理淘宝知识,为开网店做好准备哈

其实,个人创业者在创业初期所拥有的仅仅是一个梦想而已,或者说是一个起步的小摊子,还压根谈不上事业,别那么小气,至于分钱,没有舍哪有得,舍不得眼前的初始阶段的利润分享,那有更大的后期利润呢. 3.利润降低,薄利多销: 当然,这个团队无论有几个合作者,所持有的股份上可以做到大家平均,但在统一规划方面必须得确立一个主导者,不然就很容易出乱子,各人的资源不通过一个整体的框架进行调配整合,就是浪费,每个人的执行力若是没有集中在一个方向上,也是浪费,尤其是大家形成决议后,就必须确保集中所有的资源和力量,向一

《Nodejs开发加密货币》之二十一:交易

题外话:这篇文章,耗费了我大量精力,用UML表达javascript类及流程本来就不是什么容易的事情,用来描述加密货币交易这种验证逻辑非常多的代码更难,加之Nodejs的回调在这些代码里嵌套很深,所以如何把异步调用变成人类容易理解的顺序调用,也做了一番取舍,时间不知不觉就过了一星期. 所幸,赶在比特币减半的今天完成并发布这篇文章,也算在区块链火热的今天,<Nodejs开发加密货币>走到了一个关键节点:触及了加密货币的灵魂和腹地.动辄几千一枚的比特币等加密货币可能会消亡,但是背后的技术却蓬勃发展

比特币高频交易的策略分析

许多比特币的交易平台实行零交易费,并提供交易的API接口,为实现比特币的高频交易提供了有利条件. 如何进行比特币高频交易?下面提出一个简单的交易模型. 1.根据自己的资金实力,决定每次交易的最小单位,下面以一个比特币为交易单位,所以至少要有十个比特币的交易款. 2.每5分钟决定交易一次,决定是:不交易.买入一个.卖出一个. 3.统计5分钟的买卖盘,足够买卖一个比特币的最低卖出价和最高买入价. 4.首次交易时假设已经有五个比特币,和当前市价足够买五个以上的资金. 5.第一个5分钟后,必然发生一笔按

★★延吉二手房交易税费

延吉二手房交易税费 延吉市二手房普通住宅(非商业用房)过户费用如下: 1.契税看买方{买方承担} 税率为1%  :本次购买90平以下{购房者名下已有一套} 税率为1.5%  :本次购买90平以上.含90平{购房者名下没有房屋} 税率为2%  :本次购买90平以上{购房者名下已有一套} 税率为3%  :购房者名下已有2套(或2套以上).面积不限,房屋再购房 2.营业税及附加和个人所得税看卖方{卖方承担} 营业税及附加5.6% :房产证(房产地税所出具的契税发票)不到两年时间过户 个人所得税1%  

炒美股史考特(Scottrade)开户准备及如何获取免费交易(最新2017版)

最新美股史考特(Scottrade)开户及汇款攻略 (2017 年 6 月) 一   前言 二   开户流程 三    激活账户 四 转账汇款 五 小结 一 前言:为什么选择史考特(Scottrade) 1.  史考特在美国券商中排名前三,规模足够大,官网显示其有 500 多家分店,而且该公司是 FINRA 和 美国投资人保护公司(SIPC)成员,对每个投资帐户提供 50 万美金的保障(其中 10 万美金为现金),这样对于投资人的资金安全就有了保障. 2.  交易费相对很便宜,单项一次交易费 7

比特币创建交易源码分析

从事区块链的开发,不了解其底层核心技术是不够的.许多人在看了比特币白皮书之后仍然不清楚比特币是怎样实现的,因为比特币的源码设计精巧,有许多设计白皮书未曾提及,加上本身比特币的文档稀少,加大了新手理解的困难程度.尽管现在已经有许多介绍区块链的书和文章,却很少是从源码着手分析的.我通过半年时间对于区块链的学习,开始撰写一份比特币源码的教程.本教程深入浅出,通过分析最经典的区块链--比特币的C++客户端源码,让开发者用最短的时间上手区块链技术.了解比特币源码可帮助开发者更好了解区块链的工作原理并在应用

交易是如何被创建和打包的3

远程服务器连接不上了,趁着这机会,继续写. CreateTransaction(vecSend, wtxNew, reservekey, nFeeRequired, nChangePosRet,strError, NULL, true, fUsePrivateSend ? ONLY_DENOMINATED : ALL_COINS, fUseInstantSend)) 上面已经对这些参数进行了分析.我们直接进入看这个函数. CAmount nFeePay = fUseInstantSend ? C