- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
看来,如果我严格遵守单一职责原则,那么我可能必须添加公共(public) getter 以拆分可能会更改的功能。对我来说,这似乎违反了封装,因为它暴露了对象的内部结构。
例如,假设我有一个代表上传文件的类。在过去,我使用过类似 toHtml() 的方法来避免 getter 并保持封装:
public class UploadedFile() {
private String filename;
private String uri;
public String toHtml() {
return <html string>;
}
最佳答案
在这种情况下,filename
和 uri
将是您的 UploadedFile()
的属性类,保持隐藏是不合逻辑的,因此在我看来,为这些提供 setter/getter 根本不会违反封装。
如果您制作了 filename
,则会发生封装违规。和 uri
公共(public)字段并直接访问它们。
关于oop - 严格遵守单一职责原则是否违反封装?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6286275/
我刚刚开始 iOS 应用程序开发,到目前为止,这是一次很棒的体验。 Apple 文档很棒,但我有一些问题不是技术性的,只有有经验的人才能回答。 我有一堆 UIViewController 处理它们控制
我几天前开始学习 react-redux-immutable,但我仍然对构建我的应用程序感到困惑。我有 php(symfony/laravel MVC 背景),所以要理解一些 javascript 概
每次查看 SharpDX 代码并尝试遵循 DirectX 文档时,我都会遇到困难。有没有一个地方清楚地列出了每个编号的类映射到什么以及它们存在的原因? 我说的是这样的事情: D
我正在使用 Robospice 库 创建应用程序。这是处理互联网连接的绝佳选择,因为库的核心是基于 Android 服务的,所以我们的连接与 Activity 生命周期无关。 我们正在创建我们的请求并
我可能在这里分析过度了,但是根据我对 MVC 的阅读,似乎有很多关于如何做事情的观点。 是否有一个“最佳实践”网站或文档来定义 MVC 各个部分的职责? 请记住,我使用 EF/Repository&U
我是一名优秀的程序员,十分优秀!