acando86
12/27/2018, 9:40 AMnull should not be used as a valid value IMO (not in the api response, not in json, not in code). null doesn't convey lot of information. if null is used to express something, chances are there are more explicit ways to encode that information semantically and in a more type-safe way (if option alone is not enough to express all the possible scenarios), instead of appending a meaning to the null value (for instance, ADTs etc). Close to the DB layer (in the code) it might make sense to store raw null values, but in between a db and the api response i would expect a number of mapping layers and business logic where relying on a specific meaning of null values is not necessary and maybe (IMO) not even advisable.rrader
12/27/2018, 10:01 AMnull is not a valid value, then how will be if on registration form, user can set his birthday, but this is not mandatory, what value should it has in json?tmg
12/27/2018, 11:38 AMtmg
12/27/2018, 11:39 AMrrader
12/27/2018, 11:48 AMnull, it has some meaning alreadytmg
12/27/2018, 11:59 AMrrader
12/27/2018, 12:10 PMpakoito
12/27/2018, 12:11 PMpakoito
12/27/2018, 12:12 PMpakoito
12/27/2018, 12:13 PMpakoito
12/27/2018, 12:13 PMpakoito
12/27/2018, 12:13 PMpakoito
12/27/2018, 12:14 PMrrader
12/27/2018, 12:16 PMpakoito
12/27/2018, 12:17 PMpakoito
12/27/2018, 12:18 PMrrader
12/27/2018, 12:18 PMpakoito
12/27/2018, 12:19 PMrrader
12/27/2018, 12:20 PMpakoito
12/27/2018, 12:20 PMpakoito
12/27/2018, 12:20 PMrrader
12/27/2018, 12:21 PMnull and undefinedpakoito
12/27/2018, 12:21 PMrrader
12/27/2018, 12:21 PMOptional and you can have Undefinedrrader
12/27/2018, 12:21 PMpakoito
12/27/2018, 12:22 PMpakoito
12/27/2018, 12:23 PMrrader
12/27/2018, 12:23 PMnull in java, but it is solved by a class Optionalpakoito
12/27/2018, 12:23 PMpakoito
12/27/2018, 12:24 PMpakoito
12/27/2018, 12:24 PMpakoito
12/27/2018, 12:24 PMpakoito
12/27/2018, 12:24 PMpakoito
12/27/2018, 12:25 PMpakoito
12/27/2018, 12:25 PMpakoito
12/27/2018, 12:25 PMsealed class OptionalValue<A> {
inline class Available(val value: A)
object Missing: Value<Nothing>
object Disabled: Value<Nothing>
}pakoito
12/27/2018, 12:25 PMrrader
12/27/2018, 12:26 PMOptional & Undefined that are explicitpakoito
12/27/2018, 12:27 PMpakoito
12/27/2018, 12:28 PM0 and ""pakoito
12/27/2018, 12:28 PMrrader
12/27/2018, 12:28 PMpakoito
12/27/2018, 12:28 PMpakoito
12/27/2018, 12:28 PMpakoito
12/27/2018, 12:28 PMrrader
12/27/2018, 12:29 PMpakoito
12/27/2018, 12:29 PMpakoito
12/27/2018, 12:29 PMpakoito
12/27/2018, 12:30 PMrrader
12/27/2018, 12:30 PMpakoito
12/27/2018, 12:30 PMnull even when it’s not supposed torrader
12/27/2018, 12:30 PMrrader
12/27/2018, 12:31 PMrrader
12/27/2018, 12:31 PMpakoito
12/27/2018, 12:31 PMpakoito
12/27/2018, 12:31 PMpakoito
12/27/2018, 12:32 PMpakoito
12/27/2018, 12:32 PMpakoito
12/27/2018, 12:32 PMpakoito
12/27/2018, 12:32 PMrrader
12/27/2018, 12:41 PMrrader
12/27/2018, 12:52 PMpakoito
12/27/2018, 12:55 PMpakoito
12/27/2018, 12:55 PMrrader
12/27/2018, 12:56 PMundefined value?pakoito
12/27/2018, 12:57 PMpakoito
12/27/2018, 12:57 PMpakoito
12/27/2018, 12:57 PMpakoito
12/27/2018, 12:57 PMrrader
12/27/2018, 12:59 PMpakoito
12/27/2018, 1:00 PMrrader
12/27/2018, 1:03 PM