cost 181 ms
在 class / 纯函数中注入服务 - Injecting service in the class / pure functions

我正在从事 Angular 项目(Angular 14+)并遵循原子设计原则(创建分钟级组件,如按钮、输入、切换等)。 大多数视图(列表、forms、标题)基于来自服务器的 JSON(说明组件的内容和位置)。 服务器还发送 function enums来执行特定功能。 例如,在按钮上单击导航到特定屏 ...

为什么使用 if 语句可能是反模式? - Why using if-statements can be antipattern?

我见过这样的短语“我不想让你理解为什么它没有 if 语句,但我想了解有时你可以以不同的方式看到问题并重写它以便特殊情况消失并且成为一个正常的情况”,由 Linus Torvalds 撰写。 你能解释一下他的意思吗? If语句有什么问题? ...

构建应用程序和反模式(分布式单体......) - Building app and Anti pattern (distributed monolith...)

我们目前正在开发一个应用程序,它将物联网数据存储在数据库中(像处理平均值等一样处理它),并通过 Rest API 使其可用。 我们的第一个当然是构建一个应用程序(良好的旧单体),它将获取数据(主要通过 MQTT 端点)并通过 rest API 使它们可用。 我们正在考虑微服务(我猜我们的用例会适合 ...

文件夹名称遮蔽 3rd-party package 名称或 Python 模块名称是反模式吗? - Is folder name shadowing 3rd-party package name or Python module name is an anti-pattern?

考虑以下(非常简化的)项目结构: “collections”子目录名称隐藏了 Python 的“collections”模块。 “validators”子目录名称隐藏了“validators”第 3 方 package 名称。 问题: 拥有与 Python 模块或 3rd-party 包同名的 ...

C# - 如何将新的依赖实例注入到在应用程序生命周期中实例化一次的 class? - C# - How to inject new instance of dependency to a class which get instantiated once in the app lifetime?

这是一个 class 在应用程序的整个生命周期中仅实例化一次 方法“DoOperation”操作将在应用程序生命周期内多次调用。 在“DoOperation”方法中,我使用“new”关键字实例化“SampleService”,我不想这样做,原因如下它打破了单一责任原则 (SRP),因为创建 Sam ...

信息专家模式是否与服务层模式相矛盾? - Does Information Expert pattern contradict Service Layer Pattern?

在阅读有关 GRASP 模式的信息时,我在 Information Expert 停下来,它指出类 state 的行为应该在同一个 class 内。 但这与我多年来使用的服务层模式完全相反。 服务具有域对象的 state 的行为。 这让我感到困惑我将不胜感激周到的回答。 ...

可选返回值的最佳实践 - Best practice for an optional return value

假设一个函数不能计算一个有效的返回值。 例如,字典查找可能无法找到键。 当函数返回一个值或不返回值时,这种情况的最佳实践是什么? 1. Return None :例如, dict.get()就是这种模式。 这种方法的缺点是客户端需要检查返回值是否为None并根据它做一些事情。 例如, def ...

最佳方式从一组对象中设计和生成唯一字符串以进行映射 - Best way design and generate unique strings from an array of objects for mapping

我要解决的问题是如何最好地从一组问题/答案字符串中生成唯一的字符串。 假设最终用户填写问卷并回答以下问题: 我需要生成一个代表这些问题和答案的字符串,然后将 map 生成到 templateId 以向其发送模板化消息。 我考虑过简单地运行一个 foreach 并将所有问题和响应添加在一起,但问题是如 ...

自我注射是一种好习惯吗? PHP 中的相同 class 注入编程模式 - Is self injection a good practice? Same class injection programming pattern in PHP

注入相同的 class 是一个好习惯吗? 在 PHPunit 测试期间,我多年来一直使用自注入来隔离方法: 要测试 calculate() 方法,我不能只调用它,因为它调用方法 getDiametr(),这取决于其他特征或 class。 而且我认为测试模拟的 class 是不好的做法。 所以我在我的 ...

“静态域助手类”是环境上下文反模式吗? - Is “static Domain helper class” Ambient Context Anti-Pattern?

正如 Steven van Deursen 和 Mark Seemann 在 Manning 的书“依赖注入原理、实践和模式”(我推荐为必读)中所定义的,有一种特定的反模式对我来说很有趣,那就是环境上下文反模式。 这里也有描述。 一般问题是,如果您在 static class 后面放置一些易失性 ...

从 EventEmitter 继承是反模式吗? - Is inheriting from the EventEmitter an antipattern?

如果您希望 class 支持事件,从 EventEmitter 继承似乎是一种常见的做法。 例如,谷歌为Puppeteer做这件事, WebSocket 模块做它, mongoose 做它,......仅举几例。 但这真的是好习惯吗? 我的意思是它看起来很干净,但从 OOP 的角度来看,它似乎是错 ...

使用 lombok builder 获取字段值 - Get value of field with lombok builder

是否可以检索由 lombok 生成的构建器上的字段值? 似乎 lombok 构建器不会为他们可以构建的字段公开 getter,因此在上面的代码中, builder.isSuccess()不存在。 是否有可能做到这一点,或者它是一种反模式? 另一种方法是从catch块返回,但 IMO 在一个方法中多次 ...

重构 Promise 代码以删除新 promise 构造函数中的 async/await - Refactoring Promise code to remove async/await in new promise constructor

我一直在阅读并看到在 promise 构造函数中使用 async/await 是一种反模式。 我在当前项目中有以下代码,我希望重构它,但不太确定我应该如何 go 来做这件事。 我尝试了以下方法,但在 finally 方法中出现错误 我正在将 jsstore 用于数据库https://jsstore ...

Promise 中的异步代码总是反模式吗? - Is async code in a Promise always an antipattern?

我从这个问题中看到,将Promise与async代码混合可能是一种反模式。 但是,这是否适用于所有情况? 我看不到避免在以下代码中组合它们的简单方法: 它是setInterval的替代方法,它在安排下一个调用之前等待调用完成但是,与递归setTimeout不同,它在尚不支持TCO 的浏览器中不构成 ...


 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM