获得徽章 0
- 来新公司以后,不知不觉我竟成了来的最早,走的最晚的那个,仅仅想不负韶华,终有一天会成为你想成为的样子吧。
在北京的每一天,压力都很大,但依然要装作很坚强的样子,因为这座城市时刻都在淘汰弱者,想要成为王者,必然要为了荣耀而拼命努力。
人生如逆旅,我亦是行人!7365 - #论所有的数据[类型]都不应该为null NULL/Null/null/nil/undefine值的发明可能并不属于早期程序语言设计的失误,它可能仅仅为更好表达一个内存意义上的概念(未分配内存/空指针),但坏就坏在了它在后期程序语言和具体编程中被极大地滥用,以致无论在数据库还是应用程序,它都成了一个怪胎,带来各种各样的问题。可以大胆设想所有的数据[类型]都不应该为null,理由如下:无论静态或是动态类型语言,一个变量如果有用或被用到,它的类型最终会确认,而如果一个“有用”的变量必然存在类型,那么如果类型为string,那么表示string的值为空应为''或"",而不应该是Null,如果类型为number,那么表示number的空值可以近似的表示为0(0与任何与的运算都是符合它为空的预期,否则我们无法表达),也不应该为null,如果类型为timestamp,那么可以根据业务场景使用它的默认值为当前时间或者纪元始初时间。其他类型可依次类推。我已经在接下来的数据库设计上要求所有字段均不可为null(通过给予默认空值), 并且在应用程序中杜绝产生新的null值,期待一个没有null的美好世界。展开评论1