读书笔记
文章平均质量分 73
weisman2
后端开发 | 等死咸鱼 |半故九万字,折枝花满衣
展开
-
【读书笔记】算法的乐趣
什么是算法《算法导论》:定义良好的计算过程,它取一个或一组值作为输入,并产生一个或一组值作为输出。《计算机程序设计艺术》:从一个步骤开始,按照既定的顺序执行完所有的步骤,最终结束(得到结果)-《数据结构与算法分析》:一系列的计算步骤,将输入数据转换成输出的结果。Knuth 总结了算法的四大特征确定性:算法的每个步骤都是明确的,对结果的预期也是确定的有穷性:算法步骤数量有限可行性:算法每一步都可以执行输入和输出:有输入和输出算法设计基础程序基本结构:顺序执行、循环执行、分支跳转原创 2021-06-13 19:39:11 · 392 阅读 · 0 评论 -
【脑补+发挥】GO最佳实践:可维护GO程序的指南
原文地址 https://dave.cheney.net/practical-go/presentations/qcon-china.html1.指导原则如果我要用任何编程语言讨论最佳实践,我需要一些方法来定义我的最佳含义。如果您昨天参加我的主题演讲,您会看到Go团队负责人Russ Cox的这段话:当您增加时间和其他程序员时,软件工程就是编程发生的事情。—罗斯·考克斯(Russ Cox)Russ在软件编程和软件工程之间做出了区分。前者是您自己编写的程序,后者是随着时间的推移许多人会使用的产品.原创 2021-06-13 00:11:41 · 292 阅读 · 0 评论 -
【读书笔记】代码大全
函数短小、命名、少参数只做一件事,switch抽象工厂做什么事、或者回答什么事对象得墨特尔:和朋友谈话,不和陌生人谈话过程、面向对象:新函数/新对象编程范式面向对象的编程单元是类或对象,面向过程的编程单元是函数,函数式编程的编程单元是无状态函数...原创 2021-06-12 22:46:25 · 75 阅读 · 0 评论 -
【读书笔记】Redis设计与实现(一 数据结构)
TL;DR数据结构重点难点跳表跳表/节点 结构体,查找复杂度节点的插入/删除hashset结构体动态扩缩容,key冲突overflow,动态refresh机制intset使用场景 ,结构体encoding更新ziplist使用场景,结构体连锁更新场景复杂度sdsstring,emstr结构体,扩容/缩容float/int-string转换object结构体编码转换,类型检查与命令多态,GC与对象共享跳表(skiplist)原创 2021-06-12 17:38:25 · 123 阅读 · 0 评论 -
【读书笔记】程序员修炼之道
投资知识资产,学语言,看书,多交流交流,写文档要考虑自己要说什么,列框架在写,像小说熵:不要容忍破窗户不要重复DRY:复用,学习他人正交性:MVC去耦合,分层职责清晰,单测引入其他的量可撤销性:接口不变,实现可变领域语言:项目可以嵌入高级语言的脚本,完成一些功能估算:选择合适单位,理解提问域的范围纯文本的威力:unix哲学,文本data保存最久shell:自动化,高效完成一些工作IDE:用好一个编译器的高级特性,加快开发进度源码控制(git):保证写的每一行代码,都源码控制,哪怕是小脚原创 2021-02-20 23:38:54 · 163 阅读 · 4 评论 -
【读书笔记】微服务架构设计模式
第一章 逃离单体地狱1.2.1 单体应用缺点就是微服务优点过度的复杂性代码提交到部署周期长难以扩展缺乏故障隔离难以迁移技术栈1.2.2 企业应用架构设计基础知识三层架构web应用程序设计使用面向对象设计开发业务逻辑关系型数据库:SQL和ACID事务的概念使用消息代理和REST API进行进程间通信安全,包括身份验证和访问授权1.3.1 通过本书,可以掌握知识什么时候使用微服务架构分布式数据管理的架构模式微服务架构应用的测试策略微服务架构应用的部署方式原创 2021-02-13 18:13:43 · 169 阅读 · 2 评论