Note_码农翻身

  1. 计算机原理
    1. 线程
    2. TCP/IP
    3. CPU
    4. 进程
    5. 磁盘
    6. 数据库
    7. socket
    8. 编译
  2. java发展历史
  3. Web发展历史
  4. 小结
  5. 技术感悟

image-20190710235737581

这几天看了本书,《码农翻身》 做个笔记总结下

先来个总评 ,很不错的入门书,趣味性比较强, 涉及知识范围比较广

主要有以下几个议题:

  • 计算机原理
  • java发展历史
  • web发展历史
  • 其他(代码管理、JavaScript)

计算机原理

线程

线程状态 就绪 运行 等待

锁 获取顺序从大到小

TCP/IP

三次握手建立链接

窗口协议控制速率

确认传达、重传机制

CPU

寄存器 程序计数器

程序都是由顺序、分支、循环组成的

缓存 L1 L2 L3 局部性原理

流水线

进程

冯诺依曼 提出了存储程序->专用计算机 到 通用计算机

运算器 控制器 存储器 输入设备 输出设备

内存

内存分配算法

地址重定位

​ 静态重定位(移动程序,需要重定位)

​ 动态重定向

​ 记录每个程序的起始地址,寄存器(基址寄存器)

​ 记录程序内存长度寄存器 防止越界 (两个寄存器封装为MMU 内存管理单元,完成地址的转换)

分时系统 CPU时间分片

分块装入内存(页框 Page Frame)

虚拟内存(分页Page)

分段(代码段,数据段,堆栈段)+分页

线程

共享进程的所有资源 地址空间、全局变量、文件源

磁盘

文件

文件存放

​ 索引

​ 间接块

​ 日志文件系统 防止系统奔溃

管理空闲块

​ 位图

文件系统

数据库

逻辑层 (查询语句解析、查询执行引擎、缓冲区管理、授权管理、事务管理)->文件的封装

socket

Socket抽象层 封装 TCP UDP和用户线程直接的连接

编译

源程序->词法分析->语法分析->语义分析->中间代码生成->代码优化->代码生成->目标程序

对二进制书的所有位取反,然后加一 补码

在计算机内部,是使用补码来表示二进制的.如果是一个正数,补码就是它本身

如果是一个附属,则需要把除符号位之外的二进制数执行取反加1的操作

java发展历史

持久化

​ 序列化到磁盘

​ 数据库 JDBC接口

​ EJB ->轻量级O/R框架 Hibernate 、iBatis、Sping JdbcTemplate

​ EJB3.0

JDBC

简单工厂

数据驱动

工厂方法

分布式

JSP

MVC

消息队列JMS

动态代理

注解

泛型

日志系统

​ SLF4J API抽象层 LogBack

​ 适配层

​ Log4j、JDK logging

Web发展历史

web起源

https

​ 对称加密 公钥

​ 非对称加密 RSA

​ 对称加密+非对称加密 (效率低)

​ 中间人劫持

​ 证书

授权

​ sso

​ token

从SOA到微服务

HTTP Server

1.0

2.0 多进程

3.0 select模型

4.0 epoll模型

小结

虽然覆盖的知识很广,但其实这些知识点比较零散,而且都比较浅显,都需要深入了解,只能说适合作为一本入门书籍 或者知识大纲用来查漏补缺

技术感悟

最近思考了很多,为思故我在, 偶尔需要给自己点空闲时间思考, 自己到底想要什么,自己经历的问题是不是问题

偶然看到一篇总结的很好的文章, 分享一下

1. 一个人走得快,一群人走得远

2. 当你不舒服,难受或陷于困境时,应该停下来思考

3. 学习能力与思维模式是一个人的核心竞争力

3.1 首先承认自己的不足

​ Stay foolish, stay hungry.

我们要承认一个基本的逻辑事实是: 任何事情不是天生就能精通,要通过训练才能达到优秀的程度。很多事物的判断能力,要是逐步建立的。只有意识到自己的不足,才能觉悟,去学习进步。

网上看到一张图《how to draw a horse》深有感触:

image-20190711000446974

这个漫画显示的哲理:有时最后一步,你要付出非常多的努力。任何高水平的技术或思维模式,都需要付出努力,并非生而得来。

3.2 掌握优秀的学习方法:

如何证明一个人有比较优秀的学习能力?学习做到目到,口到,心到。

3.3 掌握搜索信息的有效方式

如何提升获取的信息质量,这里有一些建议:

  • 精确定位问题

  • 梳理出关键字与概念

  • “全网”搜索

  • 分析研究

  • 实践&结论&假设

3.4 具备优秀的批判性思维模型

在《批判性思维工具》一书中,对思维的水平分了三个层次:较差、中等、最佳水平的思考(如下图1)。当前很多同学可能在多数问题上都处于较差水平层次,很多认知来自直觉或者自我视角。最佳水平的思考要做到三点:全局、公正、客观。

文章来源:https://mp.weixin.qq.com/s/LxW4j7JOOrEGYWylP2j9Mg


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 951488791@qq.com

文章标题:Note_码农翻身

字数:1.3k

本文作者:zhengyumin

发布时间:2019-07-10, 22:18:56

最后更新:2019-08-12, 10:40:13

原始链接:http://zyumin.github.io/2019/07/10/Note-%E7%A0%81%E5%86%9C%E7%BF%BB%E8%BA%AB/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。