问题标签 [modularity]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
434 浏览

php - 创建“完全”模块化的基于 ZF 的应用程序的最佳方法是什么?

在过去的一段时间里,我一直在开发一个基于 Zend 框架的网上商店应用程序,我们正在从头开始构建它。该应用程序已为多个客户成功设置,但我们在应用程序的可扩展性和模块化方面遇到了越来越多的问题。

许多客户在某些问题上需要很多不同的方法,通常需要自定义默认模块或扩展它们。我一直在网上寻找基于 Zend Framework 的代码,可以指导我这样做,到目前为止,Magento是我想出的唯一示例。尽管 Magento 似乎在提供可扩展性和模块化方面做得很好,但对于我当前的需求(或者看起来如此)来说,代码过于复杂和广泛。

在理想情况下,它将按如下方式工作:

  • 每个客户端都安装了“基本”应用程序
  • 模块、控制器、模型应该很容易被覆盖或扩展
  • 新模块应该很容易创建

是否有任何其他基于 Zend Framework 的应用程序或其他指针可以引导我朝着正确的方向前进?

提前致谢。

0 投票
4 回答
2409 浏览

modularity - 如何将系统分解为模块?

“模块化”的有效性取决于将系统划分为模块时使用的标准。

我想要的是,提出一些可用于将系统分解为模块的标准。

0 投票
7 回答
4188 浏览

java - 如何使桌面应用程序模块化?

如何使 Java 桌面应用程序模块化?模块应该如何分类?

0 投票
2 回答
256 浏览

haskell - 如何在 Haskell 中创建两个具有内部状态的相互生产者/消费者?

我有一个代理,它接受状态并返回动作,同时保持状态/动作对的效用的内部表示。我还有一个环境,可以采取行动并返回状态/奖励对。

我需要能够将代理设置为开始状态,然后不断地从代理 -(action)-> environment -(state, reward)-> agent -(action)->... 但是,内部状态(每次迭代都需要更新)需要保持私有(即在代理或环境中)。这意味着我不能简单地将环境调用为代理中的一个函数,使用状态和动作作为参数。

我有点像 Haskell noobie,所以我什至不确定这是否可能。

0 投票
3 回答
1432 浏览

php - 使用 Zend Framework 创建灵活的基础应用程序

我们正在开发一个利用 Zend 框架的电子商务平台。我们使用相同的代码库启动并运行了多个应用程序实例。配置设置用于区分不同的商店。

我们面临的挑战是,我们希望保持通用平台的现状,并对其进行扩展,而不是使用上述配置方法。通用平台(或基础应用程序)应包含通用控制器、模型和视图。特定于特定实例的自定义功能(控制器、模型和视图)应包含在单独的扩展中,并以插入核心平台的方式。通过这种方式,共享代码库保持干净且不会过于臃肿。

有没有人有这种方法的经验?周围有什么最佳实践吗?

任何指针都非常感谢!

0 投票
4 回答
1720 浏览

.net - 模块化产品的最佳 .NET 框架/方法?

寻找有关构建模块化 Web 应用程序的框架和方法的建议。

主要目标是尽量减少重新部署的需要,但有时重新部署也可以。

Java 的 OSGI 似乎是正确的想法,但我需要一个 .NET 实现。

http://www.osgi.org/Main/HomePage 模块化网络应用程序

ASP.NET MVC + 呢???

0 投票
7 回答
5817 浏览

java - 如何模块化(大型)Java 应用程序?

我手头有一个相当大的(几个 MLOC)应用程序,我想将其拆分为更易于维护的独立部分。目前该产品由大约 40 个 Eclipse 项目组成,其中许多项目具有相互依赖关系。仅此一项就使连续构建系统不可行,因为每次签入都必须进行大量重建。

是否有“最佳实践”方式

  • 识别可以立即分离的部件
  • 直观地记录相互依赖关系
  • 解开现有代码
  • 处理我们需要应用于库的“补丁”(目前通过将它们放在实际库之前的类路径中来处理)

如果有(免费/开放)工具来支持这一点,我将不胜感激。

尽管我对 Maven 没有任何经验,但它似乎强制进行了非常模块化的设计。我现在想知道这是否是可以迭代改造的东西,或者如果要使用它的项目必须从一开始就考虑到模块化的布局。

编辑 2009-07-10

我们正在使用Apache Ant/Ivy拆分一些核心模块。真正有用且设计精良的工具,不会像 maven 那样对您造成太大影响。

我在我的博客上写了一些更一般的细节和个人意见,说明我们为什么要这样做 - 太长了,不能在这里发布,可能不是每个人都感兴趣,所以请自行决定:www.danielschneller.com

0 投票
9 回答
256 浏览

programming-languages - 如何以减少完全返工可能性的方式实现代码

由于一个小的规格更改结果证明没有正确指定规格,我丢掉了一项工作。如果它在项目开始时就完成了,那么一开始就不需要大部分工作。

有哪些好的技巧/设计原则可以防止这些事情发生?

或者减少为了实现功能请求或在实现过程中进行设计更改所需的代码返工量?

0 投票
3 回答
289 浏览

c# - 如何定位 DLL 以进行组件间引用

我的 SAAS 公司有两个 C#.NET 产品,分别称为 Application Alpha 和 Application Beta。它们都引用了一些我们可以称之为 Core 的库。

目前,代码库是单一的,存储在单个 .NET 解决方案的单个 SVN 存储库中,我们正在尝试使其更加模块化/组件化。我们已将两个应用程序和核心库拆分为单独的存储库,但我们现在遇到了以下问题:

Alpha 和 Beta 必须引用 Core,但我们试图避免直接引用代码,因为那样我们实际上又回到了原点:您需要检查并共同定位所有存储库。那么我们应该如何在这些组件之间引用程序集呢?

每个组件都可以有一个目录,其中包含需要引用的其他组件的 DLL,存储在 SVN 中,但这意味着每次更新 Core 以将新的 DLL 推送到 Alpha 和 Beta 时都需要付出额外的努力。

或者我们可以将 DLL 存储在中央 SVN 位置(和/或 GAC 中),但这意味着每次更新 Core 以供其他人提取新的 DLL 时都要付出额外的努力。

我们忽略了第三种选择吗?

0 投票
4 回答
1745 浏览

asp.net-mvc - 在 MVC 中创建一个单独的模块,就像在 DotNetNuke 中一样

我刚刚开始关注 ASP.Net MVC,但在我们目前正在开发的网站上,我们使用 DotNetNuke,我实际上喜欢您可以创建新的“模块”并将它们插入您的网站的方式轻松(如果模块编码正确)。

使用 Asp.Net MVC 模式时你能做到这一点吗?您有一个同事创建一个新的 .dll,设计师可以将其插入网站而无需太多或任何代码隐藏交互?