标记:封装

访问修饰符

面向对象的语言将程序划分为称为类的模块。每个类都包含特性,这些特性由数据(字段)和方法组成。(并不是所有的语言都使用这些术语,但他们也会这么做。)语言有各种各样的规则,规定其他类可以访问某个类的特性,这些规则通常基于应用于某个类的访问修饰符。

由马丁

2003年5月13日

阅读更多…

bliki

封装语言功能

设计的继承

在面向对象的圈子里,一个持续时间最长的争论是OpenInheritance和设计的继承。设计继承的原则可能最好的总结是乔什•布洛赫:“为了继承而设计和文档,否则禁止它”。使用这种方法时,您要注意决定可以继承哪些方法密封其他人来阻止他们被推翻。

由马丁

2006年10月6日

阅读更多…

bliki

封装API设计

嵌入的文件

最近我看到越来越多的JSON数据结构通过服务器。JSON文档可以通过使用AggregateOrientedDatabase或者一个序列化LOB在关系数据库中。JSON文档还可以直接提供给web浏览器,或用于将数据传输到服务器端页面渲染器。当JSON以这种方式使用时,我听到有人说使用面向对象语言会碍事,因为需要将JSON转换成对象,然后再次呈现——这是对编程工作的浪费。我同意浪费的观点,但我认为这不是对象的问题,而是无法理解封装的问题。

由马丁

2013年6月4

阅读更多…

bliki

noSQL封装合作对象设计

封装的集合

如果您了解了面向对象的设计,您很快就会了解封装数据的重要性。封装的最简单形式是使用访问器(获取和设置方法)或属性——如果您的语言支持的话。(有些人甚至在课堂上这样做SelfEncapsulation

由马丁

阅读更多…

bliki

封装

函数对象

在编程中,对象的基本概念是数据和行为的绑定。这在编写一组相关函数时提供了一个公共的数据上下文。它还提供了一个操作数据的接口,该接口允许对象控制对该数据的访问,从而使支持派生数据和防止数据的无效修改变得容易。许多语言提供显式语法来定义类,类充当对象的定义。但是如果您有一种具有一流函数和闭包的语言,那么您可以使用这些构造来创建使用Function As Object模式(最初由Eugene Wallingford描述)的对象。

由马丁

2017年2月13日

阅读更多…

bliki

封装语言功能合作对象设计

Getter去污剂

抽动你可以告诉他们的左手边的嘴当他们看到一个getter方法,有迅速把他们佷满意哭作为另一个getter是凿无情地从一个类中立即打击一个狂喜的感恩男子汉的getter去污剂的脚。

由马丁

2006年2月22日

阅读更多…

bliki

封装API设计合作对象设计

可以观察到的状态

人们说方法不会改变对象的可观察状态是什么意思?

由马丁

2006年1月5

阅读更多…

bliki

封装

开放的继承

这是与之相反的态度DesignedInheritance.开放式继承的倡导者并不指望不允许继承密封使用他们的类或做任何其他事情来阻止人们继承类。

页面对象

当您针对网页编写测试时,您需要引用该网页内的元素,以便单击链接并确定显示什么。但是,如果您编写的测试直接操作HTML元素,那么您的测试将很容易受到UI变化的影响。页面对象使用特定于应用程序的API包装HTML页面或片段,允许您在不深入HTML的情况下操作页面元素。

由马丁

2013年9月10日

阅读更多…

bliki

测试封装web开发

表示域数据分层

将信息丰富的程序模块化的最常见方法之一是将其划分为三个大的层:表示层(UI)、域逻辑层(即业务逻辑)和数据访问层。因此,您经常看到web应用程序被划分为了解处理HTTP请求和呈现HTML的web层、包含验证和计算的业务逻辑层和整理如何管理数据库或远程服务中的持久数据的数据访问层。

受保护的数据

它是好的OO设计有数据在我的类与受保护的AccessModifier吗?

由马丁

2003年5月14日

阅读更多…

bliki

封装语言功能

公共Csharp字段

当我第一次接触c#时,我从一开始就喜欢属性的概念。c++ /Java的getX和setX惯例在我看来总是很愚蠢,它写起来自然得多obj。X= other.X.提供带有get和set方法的属性将公共约定转化为该语言自然支持的特性。

由马丁

2004年2月4

阅读更多…

bliki

封装语言功能

发布接口

发布接口是我使用的术语(第一个188app彩票ios)来引用在定义它的代码基之外使用的类接口。因此,它在Java中意味着更多的公共,甚至在c#中甚至更多的非内部公共。我在IEEE软件的专栏中论证过这一点公开和公开的区别实际上比公开和私有的区别更重要。

密封

封闭一个方法或一个类可以防止子类重写它。

自我封装

数据封装是面向对象风格的中心原则。这意味着一个对象的字段不应该公开,相反,所有来自对象外部的访问应该通过访问方法(getter和setter)。有些语言允许公开访问字段,但我们通常告诫程序员不要这样做。Self-encapsulation更进一步,表明所有内部对数据字段的访问也应该通过访问器方法。只有访问器方法应该接触数据值本身。如果数据字段没有对外公开,这将意味着添加额外的私有访问器。

由马丁

2017年3月9日

阅读更多…

bliki

封装

软件组件

从我进入这个行业以来,将软件开发从辛苦地编写代188比分直播完整手机版码转变为通过简单的组件组装来构建强大的系统的理念一直是我的目标。它的目标有时是瞥见的,但从未真正实现——尽管许多技术都以工业再利用为诱饵。

告诉不该问

“告诉-不要-问”原则帮助人们记住面向对象是关于将数据与操作该数据的函数捆绑在一起的。它提醒我们,与其向对象请求数据并对数据进行操作,不如告诉对象该做什么。这鼓励将行为移动到与数据相关的对象中。

由马丁

2013年9月5日

阅读更多…

bliki

封装API设计合作对象设计

统一访问原则

模块提供的所有服务都应该通过统一的表示法可用,这不会泄露它们是通过存储还是通过计算实现的。

——Bertrand Meyer

伯特兰·梅耶在他那本极具影响力的书中提出了这一原则面向对象软件构造

这个原则的要点是,如果你有一个person对象,你问它的年龄,你应该使用相同的符号,无论年龄是对象的存储字段还是计算值。它实际上意味着这个人的客户端既不知道也不关心年龄是存储的还是计算的。


所有标签

API设计·敏捷·采用敏捷·分析模式·应用程序体系结构188比分直播网 坚持原创·应用程序集成·不好的事情·18bet体育·构建脚本·认证·协作·计算机历史·小组会议·会议·持续交付·新型冠状病毒肺炎·数据分析·数据库·设计·字典·分布式计算杂志·娱乐·多样性·文档·领域驱动设计·领域特定语言·国内·封装·企业架构188比分直播网 坚持原创·估计·事件的架构188比分直播网 坚持原创·进化型设计·经验报告·旁白的架构188比分直播网 坚持原创·极限编程·前端·小工具·ieeeSoftware·infodecks·网络文化·面试·语言功能·语言工作台·精益·传统康复·法律·指标·microservices·移动·noSQL·合作对象设计·解析器生成器·摄影·播客·受欢迎的·演讲技巧·隐私·过程理论·生产力·编程平台·编程风格·项目计划·招聘·188app彩票ios·188app彩票ios重构的边界·需求分析·ruby·安全·演讲视频·团队环境中·团队组织·技术债务·技术领导·测试类别·测试·金宝搏亚洲体育博彩·工具·旅行·uml·版本控制·web开发·web服务·网站·写作

2021·2020·2019·2018·2017·2016·2015·2014·2013·2012·2011·2010·2009·2008·2007·2006·2005·2004·2003·2002·2001·2000·1999·1998·1997·1996

所有的内容