跳至主要內容
代码的整洁之道阅读笔记

代码的整洁之道阅读笔记

第一章

整洁的目的是为了提高团队合作的效率以及缕清自己的编码思路、

第二章

作者强调注意命名,代码中的每一变量名,函数名,等等需要命名的场合,都需要注意: 首先要名副其实,直接通过命名知晓本意,其次做好区分,避免误导,要使用可搜索的名称(唯一性),这样能省去后面忘记时需要直接的理解代码的困难。

尽可能的使用IDE的环境去解决成员变量问题而不是将这个交给名称; 不要将所谓的联想法带到命名里去,要使用直达本意的词语; 类名使用名称去命名,而方法(函数)使用动词或者使用动词短语去命名; 尽量使用计算机科学的术语去命名;


Mr.Lexon大约 13 分钟program-bookprogram-book哲学编码规范
结合程序开发、控制论以及高等数学对问题求解的思考

结合程序开发、控制论以及高等数学对问题求解的思考

概要

工程就是对一切问题给出来一个符合实际的解决方案,一个问题代表一个问题域,一个问题域对应一个解域

问题与解

如何解决一个问题,这个是我们工程领域一个基本问题,既然要解决,就必然对问题一种分解,对问题的分解分两步:

  1. 基于问题描述的解释(问题语义分析)
  2. 基于实际条件对于问题的判断 例:我要做一个可以对外星人通话的App 使用方法一进行分解:外星人,通话,App。将这个问题的句子形式一个分解,得出以上关键词。 将分解出来的信息做一个思维上的扩散,首先: App:从这个关键字描述进一步的思考,得出这个是一个App软件,所以我必须使用可以开发App的编程语言进行开发(建立第一个问题解集合,此时的集合是全体可以开发App的编程语言) 通信:从这个关键字进一步思考得出,它需要通信功能,所以我可以使用一切可实现通信功能的编程做法(此时问题解集合在1的基础上添加了全体可实现通信功能的编程做法,对这两个集合求并集,得出进一步的问题解集合) 外星人:从这个关键字进一步思考出,他需要外星人和人类作为用户本身,所以,问题解集合又产生了一个。 接下来对问题初步分析之后进一步判断 首先对外星人和人的这个集合进行判断,则发现外星人这个目标不存在,那么对这个词语进行质疑,分两个维度:
  3. 这个外星人是不是外星人
  4. 这个外星人是不是指代某个现实上有的词语 若条件一成立,则整个分析中断且得出结论,这个问题无解,因为外星人不存在。若条件二成立,则让问题方提出新的解释或者从实际中寻找新的描述并再进行语义分析

Mr.Lexon大约 6 分钟philosophy哲学
go的设计思考

go的设计思考

go的设计思想是将抽象与实现分离,在实现的时候才将其注入,这样其实就具备了控制反转。看以下例子:

type Logger interface {
    Log(message string)
}

type ConsoleLogger struct{}

func (c ConsoleLogger) Log(message string) {
    fmt.Println(message)
}

func Process(logger Logger) {
    logger.Log("Processing data")
}

func main() {
    var logger Logger = ConsoleLogger{}
    Process(logger)
}

Mr.Lexon大约 1 分钟back-endback-endgolang哲学
中国哲学史

中国哲学史

P136页 彭蒙,田骈,慎到 这家的思想是:一切随缘,彻底的无为,这个与道家的无为而治有点接近,但是与道家的无为而治不同的是,他对于自己来说,更是随性,(道家对己是积极有为的) 以上理解偏差严重 三家思想均为法制天下,一切皆有法律所约束,法律至上原则,以上的论证皆有道而来,对于删除线的理解,应是: 也就是说,摒弃个人的聪明才智,听任万物自身的发展变化,一切以“道”作为评判是非的标准。在这里虽然论证的是所谓的“道”,但实质上说的却是法的特点,是为法寻找理论上的支持。 以抽象的"道"作为一切的评判标准。 至于书中提到的:


Mr.Lexon大约 3 分钟philosophy哲学中国哲学
中国哲学史1

中国哲学史1

#中国哲学 #哲学

哲学之内容

希腊三大论:宇宙论,人生论,知识论

可对应三观:人生观,价值观,世界观

后面衍生成:

宇宙 人生 知识
存在(自在和外在) 伦理学 政治学
历史 心理学 论理学(事物之道理)

Mr.Lexon小于 1 分钟philosophy哲学中国哲学