我读了 Addy Osmani (google engineer) Large-Scale JavaScript Application Architecture这本书,它描述了三种模式:mediator,Facade,module。没有在node上构建大型应用的经验,是否值得使用这个原理?或者node下有没有更适用的东西?也许是实施示例,或者是了解他们正在朝哪个方向移动的停靠点
我读了 Addy Osmani (google engineer) Large-Scale JavaScript Application Architecture这本书,它描述了三种模式:mediator,Facade,module。没有在node上构建大型应用的经验,是否值得使用这个原理?或者node下有没有更适用的东西?也许是实施示例,或者是了解他们正在朝哪个方向移动的停靠点
您列出的模式是编程鲸鱼,即使您没有读过这本书并且根本不知道这些名称,您仍然会在日常工作中使用它们。
门面的目的是隐藏逻辑,以及模块,它也提供一个公共接口。调解器允许您与许多其他对象一起工作,从而创建特定对象的幻觉。
要创建一个与时俱进的应用程序,您需要了解很多,也许
node不是掌握服务器部分的最佳选择,因为在我看来,这方面的信息仍然很少。为了以某种方式添加响应的细节,我将建议通过标签搜索和阅读此资源上的答案 -
mvc,mvp,solid,yagni,dry,kiss,reactive programming,domain driven design。这足以回答您的大部分问题。
为了让以上所有内容正确地在脑海中安定下来,您需要记住,一个设计得当的应用程序应该看起来像一个迂腐的时尚达人的衣橱,其中的元素不仅按属于类型排序,而且还取决于装备的必要性和重要性。
那么简单来说——
整个应用程序的初始化应该总是在一个地方进行。你应该忘记你正在编写代码并开始编写指令,下次打开它你可以看到所有的连接和依赖关系。
为所有依赖项创建一个单一的接收点。您可以使用相同的外观。重点是不要去想什么东西是从哪里来的。
不要混合逻辑,创建负责应用程序逻辑部分的对象。喜欢事件模型。
始终检查传输的数据并抛出异常以更快地找到问题区域。
对于可扩展的应用程序,最重要的是始终记住低耦合并及时进行分解——使用聚合。