javascript - 编写硬核 javascript 应用程序的成功途径是什么?

标签 javascript design-patterns testing architecture

<分区>

我一直在涉猎 javascript,但直到去年左右才真正开始大量编写 javascript。我注意到的一件事是我的 javascript 开始变得如此复杂,以至于它的某些部分比服务器的应用程序代码更复杂(当然减去所有框架代码,例如 Spring 或 Hibernate)。

这让我意识到,如果你想编写一个复杂的 javascript 应用程序,就像你一直在服务器上编写复杂的 Web 应用程序一样,你必须开始考虑最佳实践、架构,以及如何构建你的文件,如何测试代码,使用什么抽象来创建更小、更可重用的组件,传递参数和发送消息的最佳方式是什么,我应该传递参数还是对象文字,以及所有方面的最佳实践。这些都不是 Javascript 本身提供或鼓励的,而且每个人似乎都有自己处理一切的方式。

当然,因为 Javascript 提供的 api 开箱即用,所以我经常花费无数时间研究什么是最适合这项工作的工具。诸如导入文件和依赖项,甚至是基本的集合库之类的设施,都不是该语言处理的事情。我们不要忘记 IDE 支持,即使在像 Idea 10.5 这样的东西中,实际上也很糟糕,并且由于其动态特性以及缺乏这些包和导入的硬绑定(bind),所以远不及 Java 那样丰富。

除了我真正喜欢并感到舒服的 jquery 之外,我仍然没有就“正确”的做事方式做出任何决定。这对我来说很奇怪。

每个人似乎也都有自己的编码惯用语 - 他们要么以纯函数式风格编写,要么尝试创建一个完整的经典编程模型然后使用它。人们的编码标准和习语因图书馆和人而异。所有这些使得了解什么是“正确”的事情来完成一项令人难以置信的任务。

更糟糕的是,似乎没有关于这类事情的书籍。好像没有人费心去解决它——这与我们在 Java 空间或许多其他空间中所拥有的完全相反。

通过精炼的方式为复杂的 Web 应用程序成功编写美观且健壮的 JavaScript 的正确/成功途径是什么?

最佳答案

我觉得在阅读了 Douglas Crockford 的 Javascript: The Good Parts 之后,我对 Javascript 的了解得到了扩展并变得更加完整。 .他确实阐明了语言中最困难和最重要的部分。

阅读它可以清楚地了解不同类型的继承:新古典主义、功能性、原型(prototype)。以及调用函数的不同方式:构造函数调用、应用调用、函数调用和方法调用。

我将从这里开始。

关于javascript - 编写硬核 javascript 应用程序的成功途径是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8260082/

相关文章:

unit-testing - 测试 RESTful 服务,是否还要检查数据层?

javascript - js/jquery 函数调用顺序未反射(reflect)在结果中

javascript - D3 库 Y 轴未标记

javascript - 通过 jQuery 隐藏第二个表行中的跨度

ios - 保存委托(delegate)变量的强本地副本的目的

Java - 并发/阻塞队列单元测试策略

javascript - 我尝试使用 Bootstrap 模式类制作弹出式注册表单,但弹出式窗口不起作用

swift - 在 VIPER 架构中在哪里以及如何执行转场?

具有最终用户提供的字段的类的 Java 构造函数

c++ - 如何测试只返回系统值的API?