计算机程序设计哲学
计算机抽象模型
图灵机(Turing machine)
- 一台图灵机是一个七元组,M = {Q,Σ,Γ,δ,q0,qaccept,qreject},其中 Q,Σ,Γ 都是有限集合,且满足:
1、Q 是状态集合;
2、Σ 是输入字母表,其中不包含特殊的空白符;
3、Γ 是带字母表,其中 □∈Γ且Σ∈Γ ;
4、 δ:Q ×「 → Q × Γ × {L,R} 是转移函数,其中L,R 表示读写头是向左移还是向右移;
5、q0∈Q是起始状态;
6、qaccept是接受状态。
7、qreject是拒绝状态,且qreject≠qaccept。 - 对于任意一个图灵机,因为它的描述是有限的,因此我们总可以用某种方式将其编码为字符串。我们用 <M> 表示图灵机 M 的编码。我们可以构造出一个特殊的图灵机,它接受任意一个图灵机 M 的编码<M> ,然后模拟 M 的运作,这样的图灵机称为通用图灵机(Universal Turing Machine)。现代电子计算机其实就是这样一种通用图灵机的模拟,它能接受一段描述其他图灵机的程序,并运行程序实现该程序所描述的算法。
计算
系统状态
时间与空间
ThreadLocal
From Process to Thread, from Thread to Coroutine
HashMap
Queue
State
Lock
Data Structure & Algorithm
Map
From Tree to Graph
Recursion
- 调用自身
“计算机科学领域的任何问题都可以通过增加一个间接的中间层来解决”
Gateway
Service
Abstract and Model
Iass-Pass-Sass-Fass-Bass
AOP
DI
OS Architecture
“一切皆是映射”
FP
From Hardware to 01, From 01 to Assembly
Compiler
VM
Programming Language
Kotlin 开发者社区
国内第一Kotlin 开发者社区公众号,主要分享、交流 Kotlin 编程语言、Spring Boot、Android、React.js/Node.js、函数式编程、编程思想等相关主题。
越是喧嚣的世界,越需要宁静的思考。