远方的朋友版本大全

今天想聊聊我折腾“远方的朋友”这个项目的全过程,一开始就是脑子一热。

为啥要搞这个版本大全?

上周清理硬盘,发现我存了十几个叫“远方的朋友”的文件夹,每个里面代码长得都不一样。有Python写的命令行版,有安卓的apk,还有个用Flask凑合出来的网页版。我自己都记不清哪个版本改了什么功能。

干脆一跺脚,把散落在电脑各个角落的版本全翻出来,挨个打开看。结果越看越头大——有的版本连运行环境都配不起来了,还有的依赖库早就停更了。

动手整理的过程

我先建了个总目录,按时间顺序排版本:

  • v0.1:最原始的单文件脚本,只能发文本消息
  • v0.5:加了图片传输,结果总卡死
  • v1.0:重写了一遍网络模块,终于不丢包了

每个版本文件夹里,我塞了三个东西:可执行文件(如果能跑的话)、源码压缩包、还有一份手写的更新说明.txt。有些老版本实在跑不起来,我就截几张代码截图凑数。

遇到的坑

最头疼的是v2.3那个安卓版本。当年用Eclipse开发的,现在Android Studio根本打不开。折腾半天只好把虚拟机调到安卓4.4,才勉强装上apk。界面丑得没眼看,但发送语音的功能居然还能用。

还有那个网页版,当初图省事直接硬编码了IP地址。现在路由器早换了好几茬,打开页面全是连接错误。只能注释掉网络功能,留个静态页面当标本。

折腾成啥样

现在整个合集打包完大概3个G,光解压就要等老半天。最早的那个版本甚至还在用Python 2.7,现在看简直像出土文物。不过翻这些旧代码还挺有意思的,能看见自己当年怎么踩坑——比如v1.2非要自己造轮子写加密,结果还不如直接用现成的库。

要是有人想参考这种项目演进,我的建议就一句话:早点写文档,别学我堆成一锅粥。现在每次打开这个大全文件夹,都得先泡杯茶做好心理准备。