无关技术的思考

不要再沉迷于框架

在程序猿的世界中,总是有层出不穷的框架.追逐框架的人,像是戴上脚镣在奔跑,因为总是有新的框架出来,而你总是要在每一个框架出来的时候,去了解那些细枝末节的设计,你不是掌握了框架,而是框架困住了你.

但是你可能要发问了,不学习框架那要学习些什么呢?学习底层的东西,就像学习数学,你最先学习的是那些原理,而不是先背住今天晚上作业习题的答案.你永远记不住所有习题的答案,就算你记住了今天晚上之前所有题目的答案,明天总是有新的题目要出来,而这题你可能又不会了.于是乎,你开始焦虑了,不停做题做题,但是你却舍不得停下来去推敲那些为数不多的原理.

那些可怜的现实

相信每个程序猿都是有所追求的,至少来说你总是希望你的工资是会涨的.你还是会有对知识的渴求,但是你的敌人却无处不在,时间不够、技术不够成熟、写代码的时候太急躁了,昨天晚上没有睡好,而今天你花了一大半的时间在解决bug,然后又重新写了一堆bug.当你铺了一天界面或是写了一天的增删改查之后,你可能顶多去写了下日报或是提交了一次commit.你很少会花时间去思考,而正是这些思考去决定了你的不同.

如何走出困境

总结与思考,但是可能你的工作范围都是那些毫无新意的东西,那你怎么能够总结出东西呢,看源代码,看代码时你学习的更是一种思路.但是看代码其实也是很痛苦的,尤其是明明都是一种语言写的东西,这个框架的代码你却愣是没有看懂.在我刚开始学习Android开发的时候,就有一种不知所以的无知,认为那些总是问Java问题的人,根本不懂Android,现在想想自己才是那无知的人.我似乎到现在还是不能说自己基础特别扎实,Java 核心技术卷1,2、Java编程思想、Java并发编程实战,如果没有翻烂揉碎吃进肚子里的话,又谈何基础扎实呢.不懂核心原理,就想要去拿屠龙刀,就算侥幸能够拾起来,最终稍有不慎,也会引来杀身之祸.

但计算机科学,对比其他学科来说,本质上还是一门实践科学,你不可能说去看完一本书就一口就吃成了技术专家了,代码还是要一行行写出来的,知行合一拿来形容这个学习过程特别贴切.

当你写下一行代码的时候,你清楚地知道背后到底发生了什么,出了问题,你的知识体系能够很好地指导你去解决问题.再不济,你能够去很好地去问问题,去搜索问题,面向StackOverflow编程也未尝不可.但是,你总不能一直去搜索,因为很多的时候,问题的答案就藏在代码的细节里.

在路上

总有你不懂的知识,我们永远在路上,抓住核心不变的东西,以不变应万变,Java都出到15了,但是并发编程的大部分内容还是Java5那时候的东西.苦苦钻研日新月异的新技术没有错,但是如果浮于表面去调用那么几个API的话,还不如回到你的房间,拿出那本积了很多灰的Java编程思想,让头脑的自行车动起来.