android开发慎用boolean型变量
来源:互联网 发布:添加字段sql 编辑:程序博客网 时间:2024/06/18 04:32
猴子之前比较喜欢使用boolean型变量,感觉用起来还是比较方便的。直到膝盖中了一箭。简单说一说boolean型变量的弊端。
首先,环境不兼容。猴子是搞android开发的,昨天加班的时候,后台的哥们把我拉到他们项目组里面去,这样方便我查看请求参数,当看到一个String类型变量的注释上说这个变量有两种取值“true”和“false”,我问他们:“这是什么鬼?”,答曰:“ios的boolean型变量不是true和false”。
其次,扩展性问题。boolean型变量只有两种取值,这就使得这个变量的扩展型受到极大的约束。以前做一个彩票的项目的时候,在详情里面有一个中奖状态的信息。我就和后台商量,这个给我返回一个boolean型变量吧。后台的哥们还挺乖。后来,我们产品经理大脑语言中枢神经突然抽搐,让我们把这个中奖状态改成,未开奖,未中奖,以中奖三种状态。boolean型变量的极差的的扩展性的劣势直接显现了出来。这个修改可是一个大工程。
更让人恶心的一个问题是,如果你在javabean中,定义一个boolean 型变量,isxxx的话,自动生成的get、set方法,会生成一个返回值为 boolean 类型的isxxx()方法,这个方法相当于其他类型的get方法,但是由于isxxx()这个方法,会自动生成一个只读的xxx字段,猴子的网络请求中,服务端是对所有字段做强校验的,接口中没有定义xxx字段,结果请求失败了。
最后,sqlite数据库也不支持boolean型变量,存储boolean型变量时需要做一个转换。这对抽象编程来说会增加其复杂性,当然无所不能的程序猴子是可以解决这个问题的,但是本猴子还是认为多一事不如少一事,尤其是前期开发时间比较紧张的时候。
effectivejava推荐,遇到boolean型变量的时候最好使用枚举代替。
- android开发慎用boolean型变量
- 慎用Boolean
- Android--慎用static静态变量
- Android--慎用static静态变量
- python中神奇的boolean型变量
- 慎用javascript数组变量
- 慎用为初始化变量
- 慎用Servlet成员变量
- 慎用局部静态变量
- 慎用英文变量名
- eclipse生成boolean型变量的getter是is开头
- eclipse生成boolean型变量的getter是is开头
- JavaScript中对非Boolean型变量进行if判断
- 慎用局部静态成员变量
- Android项目开发技巧–moveTaskToBack(boolean )方法的使用
- 慎用敏捷开发
- VC开发慎用ASSERT
- java变量/关键字/Boolean类型
- 易开发创始人潘俊勇:这些年我遇到的那些坑
- ThoughtWorks面试失败
- 20151018
- 黑马程序员——Java多态
- ReactiveCocoa基础篇
- android开发慎用boolean型变量
- MVC - File download action
- 黑马程序员——Java线程技术
- 关于C语言中Implicit declaration of function ‘XXXX’ is invalid in C99警告
- [LeetCode 293] Flip Game
- RAID基础知识总结
- Item 41:隐式接口与编译期多态 Effective C++笔记
- *LeetCode-Flip Game II
- STL排序详解