您的位置:首页 > 编程语言

平时对编程的思考小计

2016-08-31 00:00 381 查看
何其荣幸 站在天才的肩膀上看世界 学习这些精妙卓绝的东西

世界观

你对世界的思考方式会融入你的代码

抽象的能力,任何行业都能讲抽象 程序员一个最重要的能力就是抽象能力

程序员要是向往美 品味高 写出的程序就美而精确

整个软件的组织架构 抽象交流 都能现实社会看到缩影

思维的跳脱 高层的看世界 理解世界是如何运行的

编程要抽象 归一

大道至简

目的 方法:永远牢记目的,一件事情你知道为什么要做他,你也就知道如何去做了. 一些OO的基本准则什么的 死背下来记不住,但是你如果记得你的目标是什么,比如要高并发?要解耦?,你清楚你的目标那你不管用OO FP 甚至过程式 都能达到你想要的目的,就是手段不一样了而已.所以也不用唯OO 也不用标榜什么FP java php 也都无所谓了 也不用强调XXX是最好的语言了

方法论

All your objects want to grow up to be actors.

GOTO是邪恶的,因为我们会问:"我怎么样获得这个执行过程的入口点" 而可变性留给我们的问题则是:"我怎样得到这个状态"

先思考通信。它必须是任何分布式应用架构的一部分。Ad-hoc通信会带来可靠性的问题。而Actor模式和队列则是好的范例。

概要设计很有用,但是不要盲目相信它。服务器总是以跟客户端不同的速度发生变化,Duffy以Internet为例说明了即便如此也可以工作的很好。

安全很重要,但是很难做到。安全性的缺乏可能会导致资源竞争、死锁或者未定义行为的出现。Duffy认为,更好的安全形式是做好隔离。如果无法做到,你需要做到不可改变。如果这也做不到,你需要采用标准同步机制。

在设计时为失败做好准备,因为总会有错误发生的。Duffy认为,我们的设计应该考虑可复制和重启能力,还说明了,故障恢复对于一个可靠的并发系统来说是必需的。

结构应该反映因果关系。一连串的事件引发的某个行为在并发系统里可能是非常复杂的。有相关上下文可以简化对这些事件和行为的跟踪。

编码结构采用并发模式,以使其更容易理解系统。两个很有用的模式是Fork-JoinPipeline。Fork-Join本身也有一些流水线的意思在里面.

少说,多用声明和响应式编程。声明和响应模式善于把难题交给编译器和框架来处理。Serverless是这个想法在只有一个事件和一个动作时的特殊实例。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息