股票场内基金交易,没时间盯盘?

   
使用优财助手电脑客户端记录下您的股票买入卖出数据,能帮您时刻盯盘,会根据您记录的未售出买入价计算上涨或下跌幅度,及时弹框通知您。想知道如何使用?快点击左方视频观看了解吧~~下载地址:http://youcaizhushou.com

前言

本文起因是团队在确定 Android 实体类变量的访问修饰符(private | public)时,存在不同的建议。
原因如下文,结果在最后:

WHY YOU SHOULDN’T USE GETTERS AND SETTERS ON ANDROID

也就是在 Android 手机中,调用 getter/setter 方法会比直接访问变量耗费更多的性能。

而在 Android Developers 的 Performance Tips 中是这么说的:

Avoid Internal Getters/Setters

However, this is a bad idea on Android. Virtual method calls are expensive, much more so than instance field lookups. It’s reasonable to follow common object-oriented programming practices and have getters and setters in the public interface, but within a class you should always access fields directly.

Note that if you’re using ProGuard, you can have the best of both worlds because ProGuard can inline accessors for you.

Google 的意思呢就是,对外提供 getter/setter,对内直接访问。使用 proguard 可以兼具性能和规范。

测试工具

手机

三星SM-G9006W 高通 骁龙801,2.5GHz,2GB

代码

使用原文中的 DeltaExample 进行测试,部分代码如下:

访问速度测试结果

原文结果

Low-end device (Samsung i5500):

  • BenchmarkGetSet: average of 1635,164792 nanoseconds per task;
  • BenchmarkPojo: average of 782,650153 nanoseconds per task.

High-end device (LG Nexus 4):

  • BenchmarkGetSet: average of 72.501145 nanoseconds per task;
  • BenchmarkPojo: average of 46.659301 nanoseconds per task.

不混淆的 private 变量

测试结果如下图,可直接看最后一项,Task 平均执行时间

不混淆的 public 变量

直接访问变量:

直接混淆后的 private 变量

开启混淆:

发现并没有性能提升,原因是较新的 Android SDK 默认关闭了优化:

Android Proguard does not inline

直接混淆后的 public 变量

与混淆前速度相同

优化混淆后的 private 变量

optimize 之后,速度与 public 直接访问变量一致

优化混淆后的 public 变量

与混淆前和直接混淆速度相同,此处就不多放图片了

总结

  1. 随手机性能上升,两者访问速度都有明显提高
  2. public 直接访问变量的速度比 getter/setter 快约 1.5 倍
  3. 使用 proguard-android-optimize.txt 进行混淆后,两者访问速度相同
   

想获得去掉 5 元限制的证券账户吗?

证券交易股票基金的佣金,不足 5 元会按照 5 元收取。比如交易 1000 元的股票,按照普遍的证券佣金手续费率万 2.5,其交易佣金为 0.25 元,小于 5 元,实际会收取佣金 5 元,买卖两次需要支付 10 元佣金成本,1% 的利润就这样没了。

如果您想去掉最低交易佣金 5 元限制,使用微信扫描左边小程序二维码,访问微信小程序「优财助手」,点击底部菜单「福利」,阅读文章「通过优财开证券账户无最低交易佣金 5 元限制」,按照文章步骤操作即可获得免 5 元证券账户,股票基金交易手续费率万 2.5。

请注意,一定要按照文章描述严格操作,如错误开户是无法获得免 5 元证券账户的。

发表评论

电子邮件地址不会被公开。 必填项已用*标注