【发布时间】:2010-10-22 11:59:33
【问题描述】:
在编程过程中,我们会遇到大型 javascript 文件,这些文件是开源的并以面向对象的方式(如 JQuery)编写。
如果我们需要修改这些文件,我们必须对成员和流程有基本的了解。如果我们有多个文件,那么任务会更加困难。
我从哪里开始了解这个流程??
【问题讨论】:
标签: javascript
在编程过程中,我们会遇到大型 javascript 文件,这些文件是开源的并以面向对象的方式(如 JQuery)编写。
如果我们需要修改这些文件,我们必须对成员和流程有基本的了解。如果我们有多个文件,那么任务会更加困难。
我从哪里开始了解这个流程??
【问题讨论】:
标签: javascript
我会做两件事:
阅读。如果有文档文件,请阅读它们。如果有 cmets,请阅读那些。如果这些都对您没有帮助,请转到源代码并阅读。
当你谈论开源 Javascript 时,我假设你的意思是这个 JS 被收集到某种项目中;所有客户端 JS 都是开源的:P。在这种情况下,作者可能愿意告诉你他们的代码。在项目页面上找到他们的电子邮件,并要求他们为您提供代码的高级概述,以便您可以开始阅读并自己理解它。他们可能不愿意在整个过程中牵着你的手,但以此为起点可能会有所帮助。
【讨论】:
我同意 allyourcode 没有魔术。您必须阅读代码并阅读文档。如果文档不好,也许你应该考虑使用不同的框架。
【讨论】:
首先我认为你要了解JavaScript面向对象是如何工作的,JavaScript OO是Prototype-based,其中类是不存在的,行为重用是通过原型实现的。
我发现,对于那些一直在使用传统的基于类的面向对象语言(如 C++、C#、Java 等)的程序员来说,一开始很难理解这一点。
推荐文章:
【讨论】:
了解传统 OO 和 Javascript 的 Prototype 模型之间的区别是一个好的开始。 (Crockford 有一些 articless 为 Javascript 实现了传统的 OO 以对比行为。)
【讨论】:
我有一份
和
现在坐在我的桌子上。顺便说一句,这是 Douglas Crockford 认为好的仅有的两本 Javascript 书籍;)
他们会教你 Javascript 的工作原理,特别是它的对象模型与大多数(但不是全部)其他面向对象语言的不同之处。
除此之外,请查看所有the articles on Crockford's website,正如其他答案中已经提到的那样。
【讨论】: