您如何应对知识差距?
在尝试构建东西的过程中,偶尔遇到困难是很正常的。但是,如果我反复犯同样的错误,我就知道这是因为我对某个主题缺乏了解。
如果问题涉及特定框架或库,答案很可能就在文档、Stack Overflow 或教程中。然而,如果问题与语言内置特性或理论知识有关,就很难发现自己知识的盲点。公平地说,我经常在需要的时候偶然发现正确的信息。它通常隐藏在某个演讲、一篇优秀的文章或帖子中。
我所说的“问题”有两个真实案例:
1. 理解JS
当我开始大量使用异步 JavaScript 时,我预期的代码与实际运行结果并不总是相符。通常需要一些调整或变通方法才能解决问题。直到一位非常热心的 JavaScript 开发者建议我观看一个关于事件循环的演讲,我才意识到自己知识上的不足。我完全不了解 JavaScript 底层是如何处理异步操作的,也不明白为什么有些事情会出错。
如果你还没看过,而且又喜欢 JavaScript,那就去看看 Philip Roberts 的“What the heck is the event loop Anyway”(到底是什么鬼事件循环)。他讲的内容远不止异步编程,听完他的演讲后,你会明白很多 JavaScript 相关的专业术语。
2. 理解 Rust
我目前在理解 Rust 中的所有权和借用问题时遇到了一些困难,尽管这本书专门用一整章来讲解。这主要关系到代码使用的内存,以及你是尝试使用实际值、引用还是副本。
我在用 Rust 做事情的时候经常会遇到借用检查的问题。经过一些练习,我的情况有所好转,至少能理解自己卡在哪里了。我偶然发现了这篇文章,如果你也遇到所有权方面的问题,这篇文章应该会很有帮助。
文章已失效
平心而论,目前Rust中与内存相关的大部分内容对我来说都是个问题,因为我对这方面了解不多。我想,为了真正理解我正在做的事情,我至少需要对这方面有更深入的了解。
你如何发现自己的知识盲点?你有没有特别喜欢的学习理论知识并将其应用到实践中的方法?我很想听听其他开发者是如何应对这种情况的😄。
祝您编程愉快 :)
文章来源:https://dev.to/maniflames/how-do-you-approach-knowledge-gaps-44n4