欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

学习笔记整理

程序员文章站 2022-03-30 13:06:55
...

1、软件安装

好的工具能提高你的工作效率;收费的工具比免费的工具好;
好的工具需要你多花时间来研究他,工具越用越顺手。
工具:ColorPix、VSCode、Sublinetext3、Webstrom、Git Bash等
感受:对于新手来说,window环境是编程的第一大问题。耐心点。

<————————————————————————————————————————————>

2、命令行基础

2.1准备工作
注册一个github账号
下载、安装git

2.2简单配置
git config --global user.name "你的在github的英文名"
git config --global user.email "你注册github的邮箱"
git config --global push.default matching
git config --global core.quotepath false

2.3在本地使用

创建目录 mkdir git-demo

进入目录 cd git-demo 

     rm -rf  demo-1       删除目录;
    touch 1.txt              创建文件;
    mv 1.txt 2.txt          把 1.txt 重命名 2.txt 了

在目录内创建一个 .git 目录      git init

创建文件  touch index.html;

查看文件状态 git status -sb ;

将文件添加到「暂存区」git add;

可以一个一个地 add   git add index.html;

也可以一次性 add      git add .  (add后面有个小数点,英文的);

将你 add 过的内容「正式提交」到本地仓库(.git就是本地仓库),并添加一些注释信息,方便日后查阅  git commit -m "信息"

你可以一个一个地 commit:git commit index.html -m '添加index.html'

你也可以一次性 commit:    git commit . -m "添加了几个文件"

git push        将本地仓库上传到 GitHub

其它学习资料整理:

Git中文教程:https://progit.bootcss.com

阮一峰的Git 工作流程:http://www.ruanyifeng.com/blog/2015/12/git-workflow.html

阮一峰的常用 Git 命令清单:http://www.ruanyifeng.com/blog/2015/12/git-cheat-sheet.html

廖雪峰的Git教程:https://www.liaoxuefeng.com

liluxiang的Git使用本地仓库之基本操作:https://www.cnblogs.com/liluxiang/p/9474925.html

长不大的菜鸟手的把手教你使用Git:https://www.cnblogs.com/houdj/p/5881877.html

马蹄疾的这篇,和我一起嚼烂Git:https://juejin.im/post/5c33f49de51d45523070f7bb

<————————————————————————————————————————————>

3、HTTP相关

万维网的来历、http、html、URL;

DNS TCP/IP,HTTP,*https://zh.wikipedia.org/wiki/TCP/UDP端口列表

GET 与POST:

GET 与POST的区别:

以下为stackflow的两个回答

When should I use GET or POST method? What's the difference between them?

It's not a matter of security. The HTTP protocol defines GET-type requests as being idempotent, while POSTs may have side effects. In plain English, that means that GET is used for viewing something, without changing it, while POST is used for changing something. For example, a search page should use GET, while a form that changes your password should use POST.
Also, note that PHP confuses the concepts a bit. A POST request gets input from the query string and through the request body. A GET request just gets input from the query string. So a POST request is a superset of a GET request; you can use $_GET in a POST request, and it may even make sense to have parameters with the same name in $_POST and $_GET that mean different things.
For example, let's say you have a form for editing an article. The article-id may be in the query string (and, so, available through $_GET['id']), but let's say that you want to change the article-id. The new id may then be present in the request body ($_POST['id']). OK, perhaps that's not the best example, but I hope it illustrates the difference between the two

源链接 https://*.com/questions/504947/when-should-i-use-get-or-post-method-whats-the-difference-between-them

这不是安全问题。 HTTP协议将GET类型的请求定义为幂等,而POST可能有副作用。简单来说,这意味着GET用于查看内容而不更改内容,而POST则用于更改内容。例如,搜索页面应使用GET,而更改密码的表单应使用POST。
另请注意,PHP会混淆概念。 POST请求从查询字符串和请求主体获取输入。 GET请求只从查询字符串中获取输入。所以POST请求是GET请求的超集;你可以在POST请求中使用$ _GET,甚至可以在$ _POST和$ _GET中使用具有相同名称的参数来表示不同的事情。
例如,假设您有一个用于编辑文章的表单。 article-id可以在查询字符串中(因此,可以通过$ _GET ['id']获得),但是假设您要更改article-id。然后新的id可以出现在请求体中($ _POST ['id'])。好吧,也许这不是最好的例子,但我希望它能说明两者之间的区别。

What is the difference between POST and GET? [duplicate]

GET and POST are two different types of HTTP requests.
According to Wikipedia:
GET requests a representation of the specified resource. Note that GET should not be used for operations that cause side-effects, such as using it for taking actions in web applications. One reason for this is that GET may be used arbitrarily by robots or crawlers, which should not need to consider the side effects that a request should cause.
and
POST submits data to be processed (e.g., from an HTML form) to the identified resource. The data is included in the body of the request. This may result in the creation of a new resource or the updates of existing resources or both.
So essentially GET is used to retrieve remote data, and POST is used to insert/update remote data.
________________________________________
HTTP/1.1 specification (RFC 2616) section 9 Method Definitions contains more information on GETand POST as well as the other HTTP methods, if you are interested.
In addition to explaining the intended uses of each method, the spec also provides at least one practical reason for why GET should only be used to retrieve data:
Authors of services which use the HTTP protocol SHOULD NOT use GET based forms for the submission of sensitive data, because this will cause this data to be encoded in the Request-URI. Many existing servers, proxies, and user agents will log the request URI in some place where it might be visible to third parties. Servers can use POST-based form submission instead
________________________________________
Finally, an important consideration when using GET for AJAX requests is that some browsers - IE in particular - will cache the results of a GET request. So if you, for example, poll using the same GETrequest you will always get back the same results, even if the data you are querying is being updated server-side. One way to alleviate this problem is to make the URL unique for each request by appending a timestamp.

源链接 https://*.com/questions/3477333/what-is-the-difference-between-post-and-get

GET和POST是两种不同类型的HTTP请求。

根据*:

GET请求指定资源的表示。请注意,GET不应用于导致副作用的操作,例如使用它在Web应用程序中执行操作。其中一个原因是机器人或爬虫可以任意使用GET,这不应该考虑请求应该引起的副作用。和POST将要处理的数据(例如,从HTML表单)提交到所识别的资源。数据包含在请求正文中。这可能导致创建新资源或更新现有资源或两者。
因此,本质上GET用于检索远程数据,POST用于插入/更新远程数据。
________________________________________

HTTP / 1.1规范(RFC 2616)第9节方法定义包含有关GET和POST以及其他HTTP方法的更多信息,如果您感兴趣的话。
除了解释每种方法的预期用途之外,该规范还提供了至少一个实际原因,为什么GET应该仅用于检索数据:
使用HTTP协议的服务的作者不应该使用基于GET的表单来提交敏感数据,因为这会导致这些数据在Request-URI中编码。许多现有服务器,代理和用户代理会将请求URI记录在第三方可能看到的某个位置。服务器可以使用基于POST的表单提交
________________________________________

最后,使用GET进行AJAX请求时的一个重要考虑因素是某些浏览器(特别是IE)会缓存GET请求的结果。因此,如果您使用相同的GETrequest轮询,即使您正在查询的数据正在服务器端更新,您也将始终获得相同的结果。缓解此问题的一种方法是通过附加时间戳使每个请求的URL唯一。

99%的人都理解错了HTTP中GET与POST的区别 :
https://mp.weixin.qq.com/s?__biz=MzI3NzIzMzg3Mw==&mid=100000054&idx=1&sn=71f6c214f3833d9ca20b9f7dcd9d33e4#rd

此链接原文,可以看看,由于能力尚浅,暂保留意见。

扩展材料: HTTP/1.1协议*定义了八种方法(也叫“动作”)来以不同方式操作指定的资源:

GET:向指定的资源发出“显示”请求。使用GET方法应该只用在读取数据,而不应当被用于产生“副作用”的操作中,例如在网络应用程序中。其中一个原因是GET可能会被网络蜘蛛等随意访问。参见安全方法。

HEAD:与GET方法一样,都是向服务器发出指定资源的请求。只不过服务器将不传回资源的本文部分。它的好处在于,使用这个方法可以在不必传输全部内容的情况下,就可以获取其中“关于该资源的信息”(元信息或称元数据)。

POST:向指定资源提交数据,请求服务器进行处理(例如提交表单或者上传文件)。数据被包含在请求本文中。这个请求可能会创建新的资源或修改现有资源,或二者皆有。

PUT:向指定资源位置上传其最新内容。

DELETE:请求服务器删除Request-URI所标识的资源。

TRACE:回显服务器收到的请求,主要用于测试或诊断。

OPTIONS:这个方法可使服务器传回该资源所支持的所有HTTP请求方法。用'*'来代替资源名称,向Web服务器发送OPTIONS请求,可以测试服务器功能是否正常运作。

CONNECT:HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。通常用于SSL加密服务器的链接(经由非加密的HTTP代理服务器)。
安全方法[编辑]。对于GET和HEAD方法而言,除了进行获取资源信息外,这些请求不应当再有其他意义。也就是说,这些方法应当被认为是“安全的”。 客户端可能会使用其他“非安全”方法,例如POST,PUT及DELETE,应该以特殊的方式(通常是按钮而不是超链接)告知客户可能的后果(例如一个按钮控制的资金交易),或请求的操作可能是不安全的(例如某个文件将被上传或删除)。
但是,不能想当然地认为服务器在处理某个GET请求时不会产生任何副作用。事实上,很多动态资源会把这作为其特性。这里重要的区别在于用户并没有请求这一副作用,因此不应由用户为这些副作用承担责任。

副作用
假如在不考虑诸如错误或者过期等问题的情况下,若干次请求的副作用与单次请求相同或者根本没有副作用,那么这些请求方法就能够被视作“幂等(idempotence)”的。GET,HEAD,PUT和DELETE方法都有这样的幂等属性,同样由于根据协议,OPTIONS,TRACE都不应有副作用,因此也理所当然也是幂等的。

假如某个由若干个请求做成的请求序列产生的结果在重复执行这个请求序列或者其中任何一个或多个请求后仍没有发生变化,则这个请求序列便是“幂等”的。但是,可能出现若干个请求做成的请求序列是“非幂等”的,即使这个请求序列中所有执行的请求方法都是幂等的。例如,这个请求序列的结果依赖于某个会在下次执行这个序列的过程中被修改的变量。

*链接 https://zh.wikipedia.org/wiki/超文本传输协议

状态码:

具有代表性的 HTTP 状态码: https://juejin.im/post/5a276865f265da432c23b8d2

HTTP CAT 喵星人给你解释状态码 https://http.cat

  1. TCP 和 UDP 的区别是什么

答:TCP 可靠、面向连接、相对 UDP 较慢;UDP 不可靠,不面向连接、相对 TCP 较快。

  1. TCP 的三次握手指的是什么

答:每次建立连接前,客户端和服务端之前都要先进行三次对话才开始正式传输内容,三次对话大概是这样的:
1. 客户端:我要连接你了,可以吗
2. 服务端:嗯,我准备好了,连接我吧
3. 客户端:那我连接你咯。
4. 开始后面步骤

如果你想更了解 TCP 可以可以买一本《TCP/IP 详解(卷一)》(共三卷,先只买一卷即可)。