前言
该篇文章是本人第一篇记录读书笔记的文章,在之后读的书中,如果有必要也会持续地记录下去,以此来复盘自己的学习历程。 该书是通过网上某博主的推荐所看,主要介绍计算机相关的基础知识,内容简单,图文结合,通俗易懂,比较适合小白阅读。本人花了几天通读了下本书,既复习了以前所学的知识,也拓宽了自己的视野,对计算机整体的生态有了新的理解,下面简单复盘一下所学内容及感想。缺点是内容比较浅,仅适用于小白初步了解这个领域。
第1-6章
这几章读的比较快,前三章主要讲硬件相关的知识,由于考研考的408,所以学过计算机组成原理这门课,因此硬件相关的一些知识还有些印象,再加上硬件知识对我找工作也没有太大的关联,因此我选择快速略读。 第四章讲程序的执行过程,从硬件的层面来讲解程序的执行过程。 第五章讲算法,第六章讲数据结构,包括数组链表队列栈… 这一块内容较为熟悉,因此快速略读。
第7章-面向对象编程
这一章主要讲一种很重要的思想,即面向对象编程(oop)。由于前阵子刚学完c++基础知识,因此这部分知识还算很好看懂,简单的说,就是将关注点聚焦于对象本身,这个对象可以是人、动物… 其构成要素包括对象的属性、对象的操作…在对象的基础上进行编程,这样子有利于在实际开发中的代码复用及维护,大大提高编程效率。oop的主要编程技巧有封装,继承,多态。 这几个概念需要在实际案例中体会才能更好的理解。 还阐述了oop的7种观点。 类与对象的区别就是:类是对象的定义,而对象是类的实例。
第8章-数据库
8.1 数据库基本概念
卡片型数据库:存储一条数据好比将一整张名片的信息记录到文件中,无法存储两条有关联的卡片,因为如果其中一张卡片信息发生改变,那么另一张卡片也得跟着修改,非常麻烦。故卡片型数据库一般适用于小规模的数据库。
关系型数据库:顾名思义就是解决卡片型数据库存在的问题,其将数据拆分到多张表中,并在表间建立联系的方式。
8.2 数据库系统构成要素
1、数据库应用系统:为了便于操作数据库而编写的程序。
2、DBMS:即数据库管理系统,常见的有SQL server、oracle等,其能作为中介间接地读写数据文件,还具有一致并且安全存储数据的功能。
3、数据文件:存储了我们的数据文件。
小型系统(独立型系统):三个要素部署在一台计算机上。
中型系统(文件共享型系统):数据文件部署在一台计算机上,其被部署了dbms和应用程序的多台计算机共享。
大型系统(客户端/服务器型系统):数据文件和DBMS被部署在一台或多台计算机上,用户从另外一些部署着应用程序的计算机访问。
如果将客户端和服务器用互联网连接起来,就形成了web系统。
8.3 构建数据库
8.4 通过拆表和整理数据实现规范化
为了减少重复录入数据,在设计关系型数据库时,通常会实现规范化,即将一张大表拆分成多个小表再在小表之间建立关系。
8.5 用主键和外键在表间建立关系
主键:唯一的标识出表中的一条记录,如顾客表中的顾客id。
外键:对当前表中添加其他表中的主键,对当前表来说就是外键。
8.6 索引
索引和键容易混淆,但是完全不同。索引是为了提高数据检索效率的一种内部机制。
8.7 设计用户界面
8.8 SQL语句
为了对数据库进行crud操作,用户需要从应用程序向DBMS发送命令,这里的命令就是SQL语句。
8.9 事务控制
事务:由若干条SQL语句构成,表示一系列对数据库的操作的集合。
第9章 TCP-IP网络
9.1 基本概念
集线器:负责将各计算机的网线连接在一起的集线设备。
路由器:负责将网络与互联网连接起来的设备。
输入ipconfig /all 可以查看自己的mac地址和ip地址
MAC地址前3对字符表示制造厂商,后三对字符表示产品的编号。
ipconfig得到的ip地址为私网ip地址,百度上查到的ip地址为公网ip地址。
9.2 DHCP服务器
DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)就是一个不需要账号密码登录的、自动给内网机器分配IP地址等信息的协议。
这两个选项会使计算机从DHCP服务器自动获取ip地址和子网掩码,并配置他们。
9.3 路由器及路由过程
9.4 DNS
9.5 ARP协议
第10章 加密数据
对称密钥加密技术(秘密密钥加密技术):加密和解密的过程中使用相同的密钥。 这种加密方式有个弱点:发送者必须提前给接收者发送密钥,非常麻烦。
公开密钥加密技术:常见的有RSA算法。每个人都有属于自己的公钥和私钥,公钥可以公开,而私钥只有自己知道。发送数据时使用接受方的公钥进行加密,接收方在接受时使用自己的私钥进行解密。