主流大软件的重构和减肥策略

王志勇 发表于 2021年04月01日 09:33

昨天聊到迅速臃肿的微信,现在安装文件已经增长到175MB。软件新安装时,会占用/data/data/com.tencent.mm目录1G多的空间。这个微信的安装文件,现在以每年30MB~50MB的速度在增长,所以明年会达到215MB,后年会达到255MB左右,以此类推……

过去腾讯曾经做出一个非常有远见的策略,大约在2006年推出了IM软件(好像后来又改名为TM),深受用户的欢迎。因为当时的主流新电脑CPU是在845平台下,连945平台还没有出,845平台运行QQ当时稍微有一点点卡。也许腾讯正是看到那时候还有很多用户的电脑、单位的电脑是845平台以下的配置(那时候的电脑很昂贵),所以推出了流畅版的QQ:IM。

恰好我的电脑运行QQ一直比较流畅,所以只是偶尔用一下IM。

当时的IM的设计思路,正是主流软件重构的思路。就是原有的主版本,保持不动,继续更新、发展用户。同时,从0编写一个新版本,与主版本同时在线运行。这个新版,和主版本调用相同的服务器数据端口。

这种重构策略,有多个好处:

一是不影响主版本的用户体验,喜欢主版本的用户,依然使用主版本;

二是新的重构版本,一定会惊人地流畅。因为现在的主流APP,也包括现在的很多网站平台,都是大团队协作,里面的无效的旧代码、模块,开发者都是不敢删除的,这造成了每个主流APP里都有80%以上,甚至90%以上的冗余代码(垃圾代码),还有很多影响手机速度的特效(这些应该尽量抛弃)。

三是当重构版本经过多年,也变臃肿了,这时可以再次从0重构,同时主版本依旧不动。

四是当主版本臃肿到一定程度,比如当微信主版本的安装包达到500MB以上(大约7年以后),这时候的重构版本已经发展很成熟了,由这个重构版本来替换掉主版本。

然后再重新发展一个新的重构版本,往复循环……

只有这样,才能彻底解决很多臃肿的APP。

重构新版本万一出现bug,一些功能不正常怎么办?
这很正常,总比使用那些越来越臃肿的主版本要好得多。
比如微信,我现在有一台手机还在用几年前的微信6.3.13,十分流畅,里面有好几个常用功能已经无法用,但基本功能正常。(这台手机一旦刷机,就不能登录微信6.3.13了。)

软件有些功能不能用,是正常现象。

APP的非良性循环
这些年,各平台为了争夺用户,全都开发了APP。甚至原来是web平台,也关闭了web平台,转向APP,例如闲鱼,前几年只有网页版。

绝大多数的APP的功能,都可以用电脑的浏览器实现。只要一个浏览器,就能解决一切问题。

试想,如果百度、百度贴吧、知乎、网易、天涯、水木年华、CCTV等等所有网站,以及各大论坛,这些原本用电脑浏览器,或者手机浏览器都能正常访问,如果每个网站都(非)要开发一个APP,对于开发者是资源浪费,对于用户也是一种残害

虽然大部分网站没有走这条开发APP的怪路,但是上述提到的百度、百度贴吧、知乎都已经开发了APP,同时也有手机版网页,但现在手机版网页在很多手机上已经不能正常显示,几乎已经无法用了。(例如百度网页,在安卓6.0以下的手机,搜索结果只显示一个,并提示需要安装百度APP;百度贴吧的手机网页版,在手机浏览器上的文字都是“马赛克”;知乎的手机网页版,只能正常显示几条回复,其余不显示;天涯的手机网页版,几秒钟后总是跳转到一个广告页,电脑网页版正常。)

由于现在APP的深度开发、过度开发,迫使用户需要不断更新手机硬件,手机已经成为易耗品,很多人的手机现在1~2年以内更换一次(来自一些贴吧上很多用户的回复)。

也有专业用户能坚持3~5年以上不换手机,但是已经比较卡了。
这些专业用户指的是爱折腾手机、或爱折腾电脑的人,多是男士;非专业用户多是女士。

拼手机硬件的时代
从2017年之后,各个APP都在迅速臃肿,使手机越来越卡,这种乱象主要发生在手机。

而PC软件就没有这种现象,现在使用10多年前的配置(2009年之后出的任意一台PC),运行现在的主流软件,电脑依然很流畅。电脑用久变慢了,只要重装系统即可恢复流畅。

在价格上,手机因为软件臃肿,CPU跟不上了,只有整机换,手机更换周期为2~4年才能跟得上现在的软件(手机APP)。电脑现在的硬件平台更换周期,可以在5~10年以上(大型主流游戏除外)。

这样算下来,手机上的硬件投资大约是电脑硬件投资的5~20倍以上。

电脑可以随便折腾。想升级平台了,更换CPU/主板即可,其它硬件都可以不动,或者最多再换个内存(DDR3换成DDR4)。也可以随时添加硬盘、内存。

因为这个规律,我不关注时下的最新款手机,有的用就行,因为那些其实就是热推的商品。

能用电脑,就尽量用电脑。因为电脑的功能,比手机强大太多太多,那是几十倍的差别。比如搜索引擎查询资料、淘宝购物,使用电脑比手机方便得多、快得多,因为手机只能开一个窗口,而且手机的屏幕小,可显示的内容少。

在硬件平台上,2009年最低端的电脑双核CPU,总体运行速度比现在的主流真八核CPU还要快很多。这可能是因为手机CPU是ARM架构,还有就是电脑CPU的主频比较高。价格方面,电脑CPU便宜很多。

现在的四核手机已经彻底无法运行最新版的微信,仅仅是切换普通的聊天窗口,或者扫描二维码,都需要多延迟10秒~5分钟。现在能运行最新版微信的手机,必须是真八核起步,安卓版本最低6.0

而几年前的经典高版本微信6.3.13,只要是安卓4.1或以上的任何手机,运行都十分流畅,当时的APK安装包是34MB。

淘汰下来的手机的作用
每台安卓手机其实就是一个平板电脑。只要不运行微信,还能比较流畅地运行现在80%~90%以上的APP(安装APK在80MB以内),很多不太常用的软件可以安装在这些手机里。

这些软件并不需要安装在密切使用的手机里。因为密切使用的手机里安装的软件太多的话,一是会卡;二是很多软件会自己跳出来,而且有提示音,打电话时这个提示音特别大声,影响听力。

现在的主流中端机
中等价位、高性能,推荐华为荣耀9X (麒麟810)、华为荣耀X10 (麒麟820,支持5G)。

绕了一大圈,还是回到华为。因为在同等价位里,华为的性能比较高,拍照效果一流。另外,作为国内最热门的品牌,至少这个品牌不会有偷发短信的现象。别的品牌我大多没有尝试过。

过去,已知的×派、×兴多个型号,有自动偷发短信的现象,发一条扣0.1元。

以前我一直用海信的品牌,但是已经没有优势了。同样的价位,现在华为比海信好很多。

至于华为Mate、Nova系列,是高端机。

其实荣耀畅玩系列已经够高端了,够用。近些年最经典的是2017年的中端机华为荣耀6X (麒麟655,真八核),后来出的荣耀8X、荣耀9X、荣耀X10的性能都远在荣耀6X之上。荣耀6X,现在还是很流畅,能流畅运行现在的最新版微信。

华为荣耀5C (麒麟650,真八核)的性能是荣耀6X的70%~80%左右,现在还能勉强流畅运行最新版微信,预计1年后就无法运行那时的最新版微信,但是如果手机上不再登录微信新帐号,那么手机还能一直用下去。

6条评论:
1   小城老李 2021-04-01 11:11
主要是工作生活都被这些软件捆住了,想不用都不行。
2   自由勇 2021-04-01 15:59
更新:
副标题:现在的主流中端机

中等价位、高性能,推荐华为荣耀9X (麒麟810)、华为荣耀X10 (麒麟820,支持5G)……

3   mouser 2021-04-01 20:55
国内手机普遍有ROM过早停止更新的问题
4   wys 2021-04-01 22:45
工作需要微信。不然我真不用微信。

自由勇 2021-04-02 06:54
是的,被动使用。

5   老张博客 2021-04-02 13:10
电脑上微信的缓存文件在C盘,结果搞了十几个G,必须要清理清理!现在真的是需要拼硬件的时代 了!

发表评论:
名字: (*必填)
博客: (可省)

正文:

  记住信息?

王志勇:1980-09-26 (41周岁)
程序设计,前端设计。

版权声明:本博客所有文章,均符合原创的定义,禁止转载,违者将必究;正确的方法是贴原文的标题和网址即可。

与此相关的链接
自由勇专栏

Blog存档 Archives

2021年01月(30)
2020年12月(19)
2020年11月(18)
2020年10月(15)
2020年09月(14)
2020年08月(14)
2020年07月(14)
2020年06月(16)
2020年05月(13)
2020年04月(18)
2020年03月(14)
2020年02月(15)
2020年01月(16)
2019年12月(11)
2019年11月(26)
2019年10月(25)
2019年09月(30)
2019年08月(10)
2019年07月(29)
2019年06月(30)
2019年05月(26)
2019年04月(30)
2019年03月(30)
2019年02月(30)
2019年01月(30)
2018年12月(30)
2018年11月(30)
2018年10月(30)
2018年09月(17)
2016年-2017年(9)
2014年06月-09月(10)
2013年 +

2012年 +
2011年 +
2010年 +
2009年 +
2008年 +
2007年 +
2006年 +
2005年09月(4)

Copyright © 2006-2021 auiou.com All rights reserved.
此Blog程序由王志勇编写