学习 Java OCP 17 考试让我们明白了我们将多少脑力工作转移到了我们的 IDE 上。人类记忆与数据存储无关。这对创造力至关重要。 我的最后一个 Java 认证是 2010 年的 SCJP 6,所以当OCP 17出来时,我认为是时候复习一下了。我每天都会在我最聪明的时候留出一个小时,也就是在咖啡之后和早餐之前。稍后我会分享我的个人学习技巧,但如果我先通过考试更可信。所以,我找到了另一个话题来分散我的学习注意力。这是现代 IDE 和 Stack Overflow 等资源对我们大脑的影响。一旦你深入研究了 900 多页的OCP 学习指南,你就会痛苦地想起它们让我们变得懒惰,甚至可能有点愚蠢。 诚然,如果我在过去十年中更密切地了解最新技术,那么需要消化的事实数量就不会那么庞大。添加了几个新功能,我充其量只是知道它们的存在。在使用Java十五年之后,您倾向于依赖久经考验的方法,当然没有任何借口。这是不磨锯的典型例子,真让我感到羞耻。 你不知道如何从心里获得一个预定的线程池执行器是可以原谅的,但这也是我们很容易忘记的更基本的东西。我们的IDE太有帮助了。经验并不重要。长时间接触而不倾向于(或不需要)吸收相当于零学习。我不能告诉你我妈妈的手机号码,尽管每当我在我的收藏夹中点击它时它都会盯着我的脸。我没有必要也不想记住它。因此,我花时间让 OCP 主题慢慢沉入其中,以每天一个小时的速度进行。在这些会议期间,我有一个抽认卡应用程序可以方便地向我未来的自己提问,还有一个 IntelliJ 窗口可以玩弄书中的代码。 其中一些发现错误的片段是真正的脑筋急转弯。在你找到答案之前,不要将它们复制并粘贴到 IDE 中,因为 IDE 会比你更胜一筹。任何无法编译的东西都会被标记并很好地解释,以及各种不良习惯、代码异味和可能的运行时错误。编写糟糕的代码变得越来越不可能——只是开玩笑。但是我们被宠坏了,难以置信。每个新的IntelliJ版本都让我们不再需要独立思考;还是应该剥夺这种需要? 现代 IDE 处理大量代码库的能力,否则这些代码库将无法管理,这是一种福气。与坐在 Caterpillar 怪物的控制后面相比,这几乎相当于用手铲挖洞的心理等价物,但我们不要扩展类比。当然,最好将缓慢、艰巨和繁重的劳动机械化。我们喜欢的大多数 IDE 功能都是省力的,而不是增强创造力的。然而,以这种方式节省的一个小时并不会自动转化为更多的创造力。 编写代码行(更不用说设计架构)仍然是一种创造性的行为,需要 IDE 无法帮助您的判断和直觉。它可以使用类/方法大小、耦合和圈复杂度等指标来发出危险信号,但它不会阻止你制作一碗粘稠的意大利面。怎么样?在没有索引搜索的情况下导航一个巨大的存储库不仅很痛苦,而且也是不可能的。您可以从任何地方跳转到任何地方,这很棒,但是如果具有良好的隔离性和松散耦合,您就不需要这样做了。只能(几乎)通过蛮力搜索管理的糟糕代码无权存在。正是因为IDE 非常善于在大海捞针中找到众所周知的针,所以会产生很多糟糕的代码。 一些经验丰富的开发人员对 OCP 的实用性嗤之以鼻,因为它不测试您的设计敏锐度,只测试您作为人类编译器解决牵强的难题的技能。我不同意。挑选教育代码示例可以使您的头脑更加敏锐。OCP 不会把你变成一个人类编译器,就像小学写作和算术把我们的孩子变成小的拼写检查器或算盘一样。这只是你应该知道的基本知识。没有人希望您将优化的合并排序算法转储到白板上,但是如果没有自动完成或实时错误突出显示,您也不应该完全一无所知。 你卸载到机器上的脑力工作越繁琐,这些脑力技能就越萎缩。你能只用一张纸质地图在伦敦市中心/巴黎/阿姆斯特丹找到自己的路吗?我不能了,我对此并不高兴。当你失去对死记硬背的兴趣时,你就会失去吸收新事实的能力,而且失去的不仅仅是数据点。直觉和判断从你积累和巩固的知识中成长和成熟,但前提是你给它时间坚持下去。掌握一门外语就是一个很好的例子。根据你的能力和动机,你可以在几个月内进行简单的对话,但要对语言细微差别有近乎原生的直觉,需要多年的努力。曝光是不够的。 在字典中查找一个单词的缓慢、笨拙的麻烦使得它优于 Siri 查询:你会更加努力地记住它,因为第二次或第三次查找它很烦人。当我在 1990 年开始攻读英语学位时,我不相信数字设备会大大提高我的词汇量或流利程度,那时我们只有书本。哲学家米兰达·兰伯特(Miranda Lambert ) 认为,当一切都交给你时,它的价值与投入的时间一样多。 人体是一种节能装置。它不喜欢花费不必要的努力,无论是身体上的还是精神上的。顺便说一句,大脑和二头肌燃烧相同的卡路里。是的,记住常用 Docker 命令的选项是枯燥的,但是你必须总是依赖谷歌而不是你自己的大脑,这是否如此艰巨?这也是自相矛盾的,因为渴望在困难且不太有用的事情(如竞争性记忆)上表现出色,也是一种非常人性化的特征。如果我们这个物种的趋势只是为了节约能源,我们就不会执行阿波罗任务。 通用人工智能仍然没有让你的工作变得多余,但做好准备不会有什么坏处。不要轻易屈服于机器的诱惑。乔治·奥威尔早在 1937 年就警告过我们: 然而,只要铁路存在,人们就必须乘火车旅行——或者乘汽车或飞机。我在这里,离伦敦四十英里。当我想去伦敦的时候,为什么不把行李装在骡子上,然后步行出发两天呢?因为,每十分钟就有一辆绿线巴士从我身边呼啸而过,这样的旅程将是令人无法忍受的厌烦。[..] 没有人愿意以比必要的更繁琐的方式做任何事情。 -The Road to Wigan Pier 谢谢大家阅读,喜欢的朋友请关注,评论,点赞。转发,带你了解最新技术趋势。