过年之前,这代码还写得完么?

每次过年都会觉得很忙碌,因为要打扫卫生、买年货、买礼品、走亲访友(亲情互怼)、做各种各样的食物等等等等。到了酒桌上,又要不得不跟不怎么熟的长辈们推杯换盏、说些有的没的客套话(尽管大家都觉得有点做作,不过这么多年也都习惯了吧)。倒不是说这样就不好,可是每次过年都如此,而且在这个过程中我也实在体会不到有多快乐,便开始怀疑过年的意义了。

和同学聊起,他们似乎也有同样的感受。不过他们也同样表示:“过年“不就是这个样子吗?

年长的朋友则告诉我,我还年轻,还体会不到过年团圆对家人的意义。

Anyway,总之今年我只打算”平稳地“过年了————尽可能地排除一切不必须地活动(除夕夜还是要和家人一起过的,春晚也不得不看),让新年的假期像周末一样安静地度过。读读书、写写代码、看看电影、打打游戏,听上去有点无聊,可是过年不也一样吗。既然过年也没什么好期待的,那就继续做我该做的事吧。

 


 

一件小事

最近在做一个 Android 小项目,需要大量地使用碎片(Fragment)。整个 APP 就只有 3 个 Activity,所以需要经常涉及到碎片之间的跳转(替换)。而多个碎片的嵌套使用是通过栈结构来管理的。大家都知道,对碎片进行操作,最常用的两个工具就是 FragmentManage 和 FragmentTransaction ,与入栈和出栈相关的操作一般都是这样使用的:

过年之前,这代码还写得完么?

基本用法

 

然而我一同学在管理碎片出栈时,用的居然是模拟返回键 的方法:

过年之前,这代码还写得完么?

同学的做法

每一个碎片都如此!

理论上说这种办法也不是不行,但是在处理多碎片嵌套跳转时相当不灵活,代码量大而且不易于维护。然而这都不重要,重要的是在我问他为什么要这样做时,他是这么回答的:

我忘了还有这么个方法(指popBackStack)

时间彷佛在那一瞬间定格了,萦绕在我心头的疑云烟消云散。这无懈可击的理由竟使我哑口无言。。。。。。

然后?你问我然后?

然后我们当然把模拟返回都改成了弹栈(虽然本质差不多)。。。这让我想起了高三时老师曾说过的一句话:基础不牢,地动山摇。没有足够的知识/经验储备,这就容易走弯路。我们学习和训练的意义不就在于尽可能的收集资料,然后在遇到问题时寻找一套快速的解决方案么?

其实就是一件小事,也许是我有点小题大做了。但这至少提醒我,”记得住的资料“才是学习的成果。就像我们写公众号或者博客,都是用输出的方式来使自己储存的资料重现,这都是为了能够长期地记忆资料。写一篇文章的确会花费一些时间,而且能记录地知识也很有限。相比之下,如果这些时间用来摄取新的知识,我会直观上认为”学到的“新知识会比复习的旧知识要“多”。看上去写文章很不划算,但事实上,我们学习时阅读到的资料究竟有多少最后能转化成”知识“呢?这本身是个很难衡量的问题,不应该通过简单地对比就轻视看上去”少“的知识。这或许就是”少就是多“的意义吧。

回想一下过去,我总是过多地关注”学习“这个行为,而忽视了学习的内涵,想想都觉得可惜,但我觉得不晚。

 

2019 年,我会继续学习,继续输出,也期待大家的关注~

感谢你能读到这里!

 



我是DuTel,定期分享编程资料和学习心得(后台回复“资料”即可获取)

过年之前,这代码还写得完么?