Forwarded from dnaugsuz
仔细想想,你会觉得这类言论完全是为了在交流中吸引注意力而发出的,他们本身没有逻辑可言
重要的不是项目本身怎么怎么样,而是话语权…… 不对,是会被怀疑动机是想引人注目
一般来说,近些年的人不太喜欢这类…… 类似今日头条和腾讯新闻的东西,它们会让别人感到冒犯
重要的不是项目本身怎么怎么样,而是
一般来说,近些年的人不太喜欢这类…… 类似今日头条和腾讯新闻的东西,它们会让别人感到冒犯
Forwarded from dnaugsuz
我们这些技术人员尤其讨厌这样的话,举个例子: 看大人们在饭局上谈论那些八卦新闻,言辞越说越过分,甚至开始添油加醋。
Forwarded from dnaugsuz
不仅不应该怪他们,还应该感谢他们保持了克制,没有赶尽杀绝,因为以后你完全可能遇到更严苛的群友。
dnaugsuz
就像今天看 @dsuse 之前你可能不知道 duangsuse 是一个没有自控力而且偶尔带点黄段子的废高三生。
我第一次知道自己的频道竟然真的有人看?! 🌝
dnaugsuz
我们这些技术人员尤其讨厌这样的话,举个例子: 看大人们在饭局上谈论那些八卦新闻,言辞越说越过分,甚至开始添油加醋。
This media is not supported in your browser
VIEW IN TELEGRAM
duangsuse::Echo
https://github.com/itorr/homo/blob/master/homo.js#L1 #JavaScript #code 核心代码,首先我们有一个类似这样的表,eval(xs[i]) == i : ["1", "2"] function divmod(a, b) { return [Math.trunc(a/b), a%b]; } function ordFinder(xs, cmp, is_descending = false) { const sorted = is_descending?…
This media is not supported in your browser
VIEW IN TELEGRAM
duangsuse 是什么时候开始这么自由的把流程和数据依赖利用各种闭包拆开 hack 的呢……
这么做的根本原因好像是为了让代码更好看、更有复用性吧
那又是从何时开始注重「好看的代码」了呢……
好像是从不断重写同一段逻辑开始的吧。
那可不可以把同一个算法,利用不同的语言、不同的框架、不同的建模方法和控制流/内存利用实现细节写很多遍呢……
这样的话又会变得奇怪了啊……
这么做的根本原因好像是为了让代码更好看、更有复用性吧
那又是从何时开始注重「好看的代码」了呢……
好像是从不断重写同一段逻辑开始的吧。
那可不可以把同一个算法,利用不同的语言、不同的框架、不同的建模方法和控制流/内存利用实现细节写很多遍呢……
这样的话又会变得奇怪了啊……
除非写 Lisp,我习惯的是让代码从直觉上易于理解。尽量采用语言本身特性,然后从结构角度抽象,尝试简化控制流或者重构,最后再考虑从其他的角度进行抽象。
duangsuse::Echo
除非写 Lisp,我习惯的是让代码从直觉上易于理解。尽量采用语言本身特性,然后从结构角度抽象,尝试简化控制流或者重构,最后再考虑从其他的角度进行抽象。
仅仅简化控制流是不够的,还要顾及数据流。算法虽然主要是「程序」,但它的目标是「数据」。
大佬说 OOP 的 message passing (to receiver) 不如 Haskell 复用性高,我只能说是仁者见仁。 Haskell 可以把数据和算法一起建模但它不像 OOP 有继承和封装,而我说的是“复用性”
大佬说 OOP 的 message passing (to receiver) 不如 Haskell 复用性高,我只能说是仁者见仁。 Haskell 可以把数据和算法一起建模但它不像 OOP 有继承和封装,而我说的是“复用性”
Forwarded from dnaugsuz
特别来给 Rachel 提建议。
首先, print("=== a ===") 可以抽提:
然后, context?.let {...} 可以换成
顺便引一个官方文档: Scope functions
首先, print("=== a ===") 可以抽提:
private fun title(text: String) = println("=== $text ===") 然后, context?.let {...} 可以换成
context?.run {
getSharedPreferences("emm").all.forEach { print("${it.key} ${it.value}") }
}
另外我建议在这种 block 嵌套的情况下使用 for (item in items) 而非 Iterable.forEach 。顺便引一个官方文档: Scope functions
Forwarded from Rachel 碎碎念 (IFTTT)
Kotlin 的语法糖写起来是真的舒服
虽然已经火星很多年
但是毕竟最近才重拾所以 pic.twitter.com/54mzUti90W— Rachel 呱 (@tangrui003) April 3, 2020
虽然已经火星很多年
但是毕竟最近才重拾所以 pic.twitter.com/54mzUti90W— Rachel 呱 (@tangrui003) April 3, 2020
Twitter
Rachel 呱
Kotlin 的语法糖写起来是真的舒服 虽然已经火星很多年 但是毕竟最近才重拾所以
#PL 晚上散步的时候忽然回想到部分绝句设计细节🤔
绝句亮点特性:
逗号表示法、中缀否定、记法、中缀链、人称文法
顺序:
事/回 (回重写、回交)
分支控制流:
若/判 (「判你」 是第二人称)
循环控制流:
重复/对 (「对…里的……」 是第三人称)
停下、略过
第二人称还包括 且/或链
第三人称还包括 中缀链
绝句的 label 定义,对 block 是 ,[] 对控制结构是 对[]
引用则是 [^]
值绑定模式:
常/变/量
只有 量 可以类型推导, 常/变 直接跟后面写类型。
真假 字
字节 短数 数 长数
短实 实
类/物/例
储物 例物 况物 标物
扩物 内物 抽象物
公开 族内 私下 内部
抽象/实现 开放/终定/覆写 记法
晚成
尾递归 断续
绝句亮点特性:
逗号表示法、中缀否定、记法、中缀链、人称文法
顺序:
事/回 (回重写、回交)
分支控制流:
若/判 (「判你」 是第二人称)
循环控制流:
重复/对 (「对…里的……」 是第三人称)
停下、略过
第二人称还包括 且/或链
第三人称还包括 中缀链
绝句的 label 定义,对 block 是 ,[] 对控制结构是 对[]
引用则是 [^]
值绑定模式:
常/变/量
只有 量 可以类型推导, 常/变 直接跟后面写类型。
真假 字
字节 短数 数 长数
短实 实
类/物/例
储物 例物 况物 标物
扩物 内物 抽象物
公开 族内 私下 内部
抽象/实现 开放/终定/覆写 记法
晚成
尾递归 断续