深入研究开源库和框架的源代码可能

Post Reply
rmamin
Posts: 1
Joined: Sun Dec 24, 2023 1:17 pm

深入研究开源库和框架的源代码可能

Post by rmamin » Sun Dec 24, 2023 1:39 pm

当您仍处于编程职业生涯的早期时,了他如何克服恐惧并开始使用源代码来提高他的知识和技能。他还使用 Redux 来演示如何分解库。
您还记得第一次深入研究经常使用的库或框架的源代码是什么时候吗?对我来说,那一刻是在三年前我作为前端开发人员的第一份工作中发生的。

我们刚刚重写了一个用于创建电子学习课程的内部遗 电报号码数据 留框架。在重写之初,我们花了时间研究许多不同的解决方案,包括 Mithril、Inferno、Angular、React、Aurelia、Vue 和 Polymer。由于我是一名初学者(我刚刚从新闻业转向网络开发),我记得我对每个框架的复杂性感到害怕,并且不了解每个框架是如何工作的。

当我开始更深入地研究我们选择的框架 Mithril 时,我的理解增长了。从那时起,我花了大量时间深入研究我每天在工作或自己的项目中使用的库的内部,这对我对 JavaScript 以及一般编程的了解有很大帮助。在这篇文章中,我将分享一些您可以使用您最喜欢的库或框架并将其用作教育工具的方法。

Image

读源代码的主要好处之一是您可以学到很多东西。当我第一次研究 Mithril 的代码库时,我对虚拟 DOM 是什么有一个模糊的概念。完成后,我了解到虚拟 DOM 是一种技术,涉及创建描述用户界面外观的对象树。然后使用 DOM API(例如documen 通过创建描述用户界面的未来状态的新树,然后将其与旧树中的对象进行比较来执行更新。

我在各种文章和教程中读到了所有这些内容,虽然它很有帮助,但能够在我们发布的应用程序的上下文中观察它的工作情况对我来说非常有启发。它还教会了我在比较不同框架时要问哪些问题。例如,我现在知道要问诸如“每个框架执行更新的方式如何影响性能和用户体验”之类的问题,而不是查看 GitHub 的星星?

另一个好处是增加您对良好应用程序架构的欣赏和理解。虽然大多数开源项目的存储库通常遵循相同的结构,但每个项目都存在差异。Mithril 的结构非常扁平,如果您熟悉它的 API,您可以对render、router和 等文件夹中的代码做出有根据的猜测request。另一方面,React 的结构反映了它的新架构。维护者将负责 UI 更新的模块 ( react-reconciler) 与负责渲染 DOM 元素的模块 ( react-dom) 分开。

这样做的好处之一是,开发人员现在可以更轻松地通过挂接到包中来编写自己的自定义渲染器react-reconciler。Parcel是我最近在研究的一个模块打包器,它也有一个packages像React这样的文件夹。关键模块已命名parcel-bundler,它包含负责创建捆绑包、启动热模块服务器和命令行工具的代码。



Post Reply
  • Who is online
  • In total there is 1 user online :: 0 registered, 0 hidden and 1 guest

    Most users ever online was 643 on Mon Apr 29, 2024 8:54 am

    Users browsing this forum: No registered users and 1 guest