开源Web应用程序中良好的JavaScript代码示例

Jul*_*era 38 javascript open-source design-patterns

我正在努力寻找一种编写优秀JavaScript代码的方法,这些代码效率很高,被其他开发人员广泛接受并且不是很难看.

直到最近,我使用的只是文字对象和jQuery的一些内容,但在阅读了Douglas Crockford的"JavaScript:The Good Parts"后,我现在完全意识到JavaScript比AJAX,DOM修改和简单动画更多.

问题是JavaScript似乎没有太多标准化.可用的OOP /继承模式的数量超过了我.我并不习惯每个框架/库都提供自己的继承.我也不想对这些事情做出错误的决定,因为这意味着在出现一些问题时重写所有代码.

所以我正在寻找的是现有的开源Web应用程序,如果可能的话,在客户端使用JavaScript,以查看实际项目中使用的模式.我想看看Web应用程序的代码,而不是框架或库.我不介意,如果这些网络应用程序是基于某个框架(如果它是Dojo或RequireJS,它会更好,因为我正在使用它们;)

小智 7

我总是向那些对此类事情感兴趣的人推荐的是:坚持你的团队所做的事情.如果它们camelCase用于方法,则使用它.如果它们snake_case用于变量,那么就这样做.如果你的团队喜欢空格而不喜欢; 使用它们.

永远不要进入一个标准化风格改变事物的固定团队,因为它看起来更好,除非它导致严重的问题.

如果你不是在一个团队工作,而你对使用编码风格感兴趣; 然后使用您最常使用的库的样式.

组织方面,Closure是最好的...但对我来说,感觉就像我在阅读JAVA而不是javascript.去搞清楚.

  • 首先,我不是在团队中工作.你所说的是非常真实的,但与我的问题没什么关系.我没有命名约定的问题.我不确定如何在JS中构建我的代码,包括对象/类和文件. (3认同)

小智 5

是的.有一些JavaScript大师已经写了很多关于如何编写JavaScript,关于基于Java的原型OOP,甚至关于应该如何进行缩进和命名变量.

但是,如果您正在寻找一个大型JavaScript实现作为示例,我会寻找HTML5游戏实现.实际上保证你会发现一个足够大,写得很好的例子,而不是缩小.


bab*_*her 4

如果您对 JavaScript 标准感兴趣,我会查看commonJS。他们对于如何完成 JavaScript 有很多好主意。

BravoJS是一个很好的浏览器模块实现。

至于示例,评论中提到了 jQuery 的源代码。jQuery 做得很好,但我也会查看Narwhal JS以获取应该如何完成事情的示例。

这是一本很好的免费设计模式书籍,我发现它很有帮助:《Essential JavaScript And jQuery Design Patterns》

你不会找到一种解决方案来解决你的问题,这就是 JavaScript 的设计方式。我建议尝试一下。我发现道格拉斯·克罗克福德有很多很棒的想法,但这并不意味着你必须严格遵循他的想法。