code review过程中,看到这样的代码:
Pair<String, String> getFooAndBar() {
...
}
恶魔说,弄个Pair来表达FooAndBar不太容易理解,要不干脆弄个类把foo和bar封装起来,返回出来吧。
天使:“同意”。
下一版代码:
class FooAndBar {
private final String foo;
private final String bar;
FooAndBar(String foo, String bar) {...}
public String getFoo() {
return foo;
}
public String getBar() {
return bar;
}
}
嗯。恶魔不爽了。这个FooAndBar纯粹就是为了从函数里面返回几个有逻辑关系的值的组合。它不是public,也没有工具要用java bean api来读它,有必要一本正经地搞getFoo(), getBar()吗?直接就两个foo,bar field,简单点不好?
天使:”反正就是IDE点几下,又不费事。“
恶魔:”可是,它占行数啊。我看着没用的代码眼晕啊“
天使:”getter可以控制只读“
恶魔:”不是有final呢嘛?“
天使:”用方法可以implement interface“
恶魔:”可是这里没有interface啊。就是一个纯值对象“
天使:”可以在getter()里面封装其它的逻辑,直接操作field没有这个灵活性“
恶魔:”搜索整个代码库,几乎95%的情况下,getter/setter都是简单的get/set。有必要为这个旷世罕见的灵活性增加复杂度么?“
天使:”getter是标准。sun推荐的。大家都这么干的“
恶魔:(音乐起,微笑)”紧张的生活会造成心跳加快,内分泌失调,皮肤老化,头发枯黄。所以当可以get日和set日的时候,让我们放开身心,勇敢地被日以及日吧!“
分享到:
相关推荐
getaddrinfo.c 内部代码 getaddrinfo.c 内部代码 getaddrinfo.c 内部代码 getaddrinfo.c 内部代码
getPdf.pdf
获取图像坐标数据-getdata.m getdata.m 获取datacursor 这个程序通过选菜单栏的tool里的datacursor,再alt 左击可以选定多个坐标点,点击保存按钮可以保存数据,点击绘图可以绘制这几个点
多种注入中转 cookie put get... 中转生成器
GetData.dll 版本:0.2 作者:kernzhang 测试结果:在SQL server2k测试通过、在postgre上测试通过 ,有网友在oracle上测试通过(但未认证) 本程序采用了ODBC3版本编写,原则上适合于任何一个关系型数据库
Filename.....: Get.Smart.1965.S01E30.The.Last.One.In.Is.A.Rotten.Spy.avi Filesize.....: 183,820,288 bytes Runtime......: 25:25.762 (36582 frames) Video Codec..: XviD 1.1.2 Final (B-VOP//) Video Bit...
可以从文献中的曲线图上取得曲线的坐标值,从而再现曲线。很好用的
用于提升用户等级,获得管理员权限,是的完全操控肉鸡
Get cookies.txt插件 + WeTab-最佳新标签页增强插件 两个插件,浏览器特别好用
一款将文献中的图表曲线转化为数据的软件,通过建立坐标轴,手动点选所需的数据点,软件自动生成数据点的坐标数据
Advanced GET — 波浪分析工具 综观全世界股市的庄家无论是调研分析或操盘技术都是精益求精,甚至标准到令人目瞪口呆的地步,他们作为市场主力使用Advanced GET高级数学模型客观智能数浪,严格按照有关的技术和设定...
获取项目路径js方法,配置地图时有用到。获取项目路径js方法,配置地图时有用到。
ASP图片验证码,用于验证提交表单的合法性。验证码以图片的形式输出显示。
GetData图形数字化仪是对图形和图形进行数字化的程序。当没有数据值时,通常需要从图中获取原始的(x,y)数据,例如从扫描的科学图中。GetData图形数字化仪允许在这种情况下很容易地获得数字。
managepackages添加uipath.script.activities选择injectjsscript导入geturl选择即可使用,可用messagebox测试使用检测效果。
挖掘机1.1.rar挖掘机1.1.rar挖掘机1.1.rar挖掘机1.1.rar挖掘机1.1.rar挖掘机1.1.rar
getPDF.jsp.pdf
可以得到apk的签名信息、HashCode,支持拖放。
使用python语言http.client编写简单的网页访问