问题标签 [decouple]
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.
c# - C# 松散耦合
我无法用英语解释我的问题。所以让我展示一下我的情况。
现在我有另一个子项目。我需要在那里使用服务类。所以我希望使服务类独立于用户类。
我怎么做?
我只有以下解决方案。有什么绝妙的办法吗?
java - 从 3rd 方库中解耦
我正在使用第三方 HTTP 客户端进行 GET、POST 调用。我不想将我的代码绑定到这个库。所以我决定创建一个名为 HttpClient 的接口和一个名为 HttpClientImpl 的实现。
接口中的方法之一是:
从接口返回的 Response 对象是来自第三方库的对象。所以这在技术上不会将我的代码与第三方库分离。
解耦自己的最佳方法是什么?我应该创建自己的响应对象来包装第三方库的响应吗?
php - 加入 2 个应用程序的 Codeigniter 符号链接
我目前有 2 个具有不同用途的 Codeigniter 应用程序 CI1 和 CI2。
CI1 - 前端(包含视图和控制器。控制器通过 REST 调用 CI2) CI2 - 后端(包含控制器和模型。执行业务逻辑。通过 REST 接收输入)
我一直在试图找出这是否是一个好的设置。我听说另一种方法是设置符号链接来加入它们。我这样做的原因是因为我想解耦我的应用程序,并且想知道如果我 CI1 位于 Web 服务器上而 CI2 位于应用程序服务器上它将如何工作。
我希望有人可以帮助我。谢谢
c# - .NET:订阅事件,解耦。国际奥委会?
我正在用 .NET/C# 编写一个接收项目更新的服务。当一个项目更新时,我想做几个动作,未来还会有更多动作。我想通过一些 commen 模式将事件与事件分离。我的大脑说国际奥委会,但我很难找到我想要的东西。基本上我在想的是让控制器接收更新的项目,通过配置来订阅事件并调用它们。当然,存在一些轻量级、快速且易于使用的框架,它仍然是最新的。你会推荐什么,为什么?(强调易于使用和快速)。
django - Heroku - 将其声明为 envvar 或定义默认值
我正在尝试在本地运行我的 Heroku 应用程序并按照此处的说明进行操作。
当我尝试运行以下命令时:
我有这个错误:
SECRET_KEY 已在 Heroku 上声明为配置变量。
我已经联系了 Heroku,但仍然没有回复,所以也许这里的某个人可以在他们面前找到解决此错误的方法。
我想使用与 web 相同的版本在本地运行此应用程序,因此添加SECRET_KEY
对settings.py
我来说不是一条路线。
我settings.py
的配置是这样的:
architecture - 如何将与数据库关联的一个后端服务解耦为两个独立的服务?
我有一个大的 MySQL 数据库 D_Big,里面有一堆数据。我还有一个服务 S1,它带有从这个数据库读取或写入的 API。例如,一个 API 可能会从数据库中获取一些东西。另一个可能会向数据库写入一行。等等
我还有一个小型辅助数据库 D_Small,S1(并且只有 S1)正在读取和写入该数据库。我想不理会小型辅助数据库,但我想更改从大型 MySQL 数据库 D_Big 访问数据的方式。
我想让它访问大型 MySQL 数据库的唯一方法是通过 API 调用第二个服务 S2,它也可以访问大型数据库。当 S1 想要 D_big 中的数据时,它必须调用 S2 中的 API,这将返回 D_Big 中的数据。因此,我想删除 S1 对 D_Big 的直接依赖。
有什么好的方法可以做到这一点?有哪些提示/建议?最直接的方法似乎是将 S1 中直接访问 D_Big 的每个 API 调用替换为 S2 中相应 API 的 API,该 API 只执行与 S1 直接执行的数据库访问完全相同的数据库访问。例如,假设我们在 S1 中有这些 API:
API_1 从 D_Big 中的 table1 返回列 [foo, bar, baz]
API_2 将值 foo 写入 D_Big 中的 table2
API_3 从 D_Big 中的 table3 返回列 *
我只是将这些替换为:
S1 中的 API_1 调用 S2 中的相应 API,该 API 从 D_Big 中的 table1 返回列 [foo, bar, baz]
S1 中的 API_2 调用 S2 中相应的 API,API_2 将值 foo 写入 D_Big 中的 table2
S1 中的 API_3 调用 S2 中的相应 API,其中 API_3 从 D_Big 中的 table3 返回列 *
但是,理想映射不是一对一的情况呢?就像您应该组合 API 时一样(例如,S1 中的一个 API 调用 S2 中的两个不同 API 以获取所需的数据,或者 S1 中的两个不同 API 调用 S2 中的相同 API 但具有不同的参数)?
您如何制作一个良好的接口,将两个服务与过去的共享数据源 (D_Big) 分离?假设 S1 和 S2 都使用基于 Java/XML/Spring 的系统通过 API 调用传输数据。