摘要: socket简介 1、不同电脑上的进程之间如何通信 首要解决的问题是如何唯一标记一个进程,否则通信无从谈起! 在一台电脑可以通过进程号(PID)来唯一标识一个进程,但是在网络中这是行不通的。 其实TCP/IP协议族已经帮我们解决了这个问题,网络层的“IP地址”可以唯一表示网络中的主机,而传输层的”协 阅读全文
posted @ 2021-04-06 13:00 savagefoo 阅读(195) 评论(0) 推荐(0)
摘要: 伪代码 (英语:pseudocode),又称为 虚拟代码 ,是高层次描述算法的一种方法。它以编程语言的书写形式指明算法的职能,它是半形式化、不标准的语言。我们可以将整个算法运行过程的结构用接近自然语言的形式(这里可以使用任何一种作者熟悉的文字,例如中文、英文,重点是将程序的意思表达出来)描述出来。使 阅读全文
posted @ 2021-04-06 13:00 savagefoo 阅读(1962) 评论(0) 推荐(0)
摘要: 测试驱动开发,英文全称Test Driven Development,简称TDD,是一种不同于传统软件开发流程的新型的开发方法。它要求在编写某个功能的代码之前先编写测试代码,然后只编写使测试通过的功能代码,通过测试来推动整个开发的进行。这有助于编写简洁可用和高质量的代码,并加速开发过程。 例子: 盖 阅读全文
posted @ 2021-04-06 13:00 savagefoo 阅读(575) 评论(0) 推荐(0)
摘要: 1、面向对象思想的起源 艾伦·凯 Smalltalk语言之父 创造性地提出面向对象编程思想 提出Dynabook的概念 2003年获得图灵奖 计算机界的一位天才级人物 Alan.Kay 所有对事物的认识都始自于我们不愿盲目地接受这个世界 艾伦.C.凯 生平:家庭的熏陶 1940年,艾伦·凯出生在美国 阅读全文
posted @ 2021-04-06 13:00 savagefoo 阅读(347) 评论(0) 推荐(0)
摘要: 这篇文章讲述了上网时数据包转发的全过程,下面是电脑和网络设备连接简略图: 以PC1 ping PC3为例讲述数据包转发过程: 1、当PC1 ping PC3时,发现它们的IP不在同一网段,PC1就将数据包发送至网关(1.1.1.1/24),这时需要知道网关的MAC地址, PC1于是查找自身ARP缓存 阅读全文
posted @ 2021-04-06 12:59 savagefoo 阅读(1879) 评论(0) 推荐(0)
摘要: 十进制和二进制的转换表 IP地址分类 特殊IP地址 一些特殊的IP地址: IP地址127.0.0.1:本地回环(loopback)测试地址 广播地址:255.255.255.255 IP地址0.0.0.0:代表任何网络 节点号全为1:代表该网段的所有主机 私有IP地址 私有IP就是在本地局域网上的I 阅读全文
posted @ 2021-04-06 12:56 savagefoo 阅读(2314) 评论(0) 推荐(0)
摘要: 1 XPath Helper是什么 XPath Helper是一个谷歌浏览器插件,能在网页中用xpath语法定位元素 2 下载地址 谷歌应用商店 https://chrome.google.com/webstore/category/extensions 3 使用 3.1 方法一 长按 ,鼠标指向需 阅读全文
posted @ 2021-04-06 12:55 savagefoo 阅读(450) 评论(0) 推荐(0)
摘要: 什么是搜索引擎优化: SEO(Search Engine Optimization):汉译为搜索引擎优化。是一种方式:利用搜索引擎的规则提高网站在有关搜索引擎内的自然排名。目的是让其在行业内占据领先地位,获得品牌收益。很大程度上是网站经营者的一种商业行为,将自己或自己公司的排名前移。 详细请参考百度 阅读全文
posted @ 2021-04-06 12:55 savagefoo 阅读(588) 评论(0) 推荐(0)
摘要: 1、site: site:,用来搜索某个域名下的所有被搜索引擎收录的文件,适用于所有的搜索引擎。 另外,site命令还可以限制在某一网站内搜索,site语法把搜索范围局限在这些网站内,以提高搜索效率。 语法: 关键词 site: 网站(不需要输入http://) 例子: 服务器 site:hp.co 阅读全文
posted @ 2021-04-06 12:55 savagefoo 阅读(2113) 评论(0) 推荐(1)
摘要: 什么是Flask框架: Flask是一个轻量级的可定制框架,使用Python语言编写,较其他同类型框架更为灵活、轻便、安全且容易上手。它可以很好地结合MVC模式进行开发,开发人员分工合作,小型团队在短时间内就可以完成功能丰富的中小型网站或Web服务的实现。另外,Flask还有很强的定制性,用户可以根 阅读全文
posted @ 2021-04-06 12:55 savagefoo 阅读(247) 评论(0) 推荐(0)
摘要: ThinkPHP框架 ThinkPHP是一个快速、简单的基于MVC和面向对象的轻量级PHP开发框架,遵循Apache2开源协议发布,从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,尤其注重开发体验和易用性,并且拥有众多的原创功能和特性,为WEB应用开发提供了强有力的支持。 阅读全文
posted @ 2021-04-06 12:55 savagefoo 阅读(568) 评论(0) 推荐(0)
摘要: cmd和powershell是一个命令行程序,powershell是微软推出的功能更强大的shell,powershell可以比cmd做更多的事情。 powershell是基于.net的,只要你足够了解.net,你可以使用她做任何你想做的事情。 Windows PowerShell 是专为系统管理员 阅读全文
posted @ 2021-04-06 12:55 savagefoo 阅读(3221) 评论(0) 推荐(0)
摘要: 一、了解睡眠,休眠,关机,重启的定义 睡眠 :电脑保持开机状态,但耗电较少。应用会一直保持打开状态,这样子在唤醒电脑后,可以立即回复到离开时的状态。 休眠 :关闭电脑,但应用会一直保持打开状态。这样当打开电脑时,可以恢复到你离开时的状态。 关机 :关闭所有应用,然后关闭电脑。 重启 :关闭所有应用, 阅读全文
posted @ 2021-04-06 12:55 savagefoo 阅读(1764) 评论(0) 推荐(0)
摘要: 批处理,也称为批处理脚本,英文译为BATCH,批处理文件后缀BAT就取的前三个字母。它的构成没有固定格式,遵守以下这条:每一行可视为一个命令,每个命令里可以含多条子命令,从第一行开始执行,直到最后一行结束,它运行的平台是DOS。批处理有一个很鲜明的特点:使用方便、灵活,功能强大,自动化程度高。 因为 阅读全文
posted @ 2021-04-06 12:55 savagefoo 阅读(123) 评论(0) 推荐(0)
摘要: 1 翻译工具评测 这里抽取了主流翻译平台,百度翻译、有道翻译、谷歌翻译、必应翻译、金山翻译和沪江翻译,以下是翻译测试: 评测结果: 由于沪江翻译跟百度完全一样,故排除沪江。 金山相比百度、谷歌、必应和有道差很多,句子翻译生硬而且不准,故排除金山。 2 翻译项目 2.1 项目架构: 客户端 服务器, 阅读全文
posted @ 2021-04-06 12:55 savagefoo 阅读(126) 评论(0) 推荐(0)
摘要: var与let、const 一、var声明的变量会挂载在window上,而let和const声明的变量不会: 二、var声明变量存在变量提升,let和const不存在变量提升 javascript console.log(a); // undefined === a已声明还没赋值,默认得到undef 阅读全文
posted @ 2021-04-06 12:54 savagefoo 阅读(188) 评论(0) 推荐(0)
摘要: 浅拷贝和深拷贝 浅拷贝: 将原对象或原数组的引用直接赋给新对象,新数组,新对象/数组只是原对象的一个引用。浅拷贝是指拷贝一层,深层次对象级别就只拷贝引用;深拷贝是每一层的数据都会拷贝出来。简单来说就是浅拷贝的时候如果数据是基本数据类型,那么就如同直接赋值那样,会拷贝其本身; 深拷贝: 创建一个新的对 阅读全文
posted @ 2021-04-06 12:54 savagefoo 阅读(509) 评论(0) 推荐(0)
摘要: 1 什么是油猴脚本 油猴脚本是一个可以运行用Javascript写的脚本的管理器插件,可以指定在某些网站运行,将js脚本添加在某些网站上。 2 同步 2.1 注册一个微软账号。 2.2 打开oneDrive网站,登录网站。 2.3 打开 tampermonkey 的管理面板,点击设置。 2.5 找到 阅读全文
posted @ 2021-04-06 12:54 savagefoo 阅读(1507) 评论(0) 推荐(0)
摘要: 油猴Tampermonkey 一、介绍 Tampermonkey是一个浏览器插件,Tampermonkey通过加载第三方的脚本文件,改变页面中的CSS和JS元素,可以让整个网页大变样,也可以在网页中增加额外的功能。 Tampermonkey文档:https://www.tampermonkey.ne 阅读全文
posted @ 2021-04-06 12:54 savagefoo 阅读(1486) 评论(0) 推荐(0)
摘要: 返回固定页面的http服务器 返回用户需要的页面 web静态服务器 多进程 web静态服务器 多线程 阅读全文
posted @ 2021-04-06 12:54 savagefoo 阅读(109) 评论(0) 推荐(0)
摘要: 将css代码保存成文件,上传到博客园,然后在油猴脚本里面引用就可以生效。 阅读全文
posted @ 2021-04-06 12:54 savagefoo 阅读(99) 评论(0) 推荐(0)
摘要: 1 markdown 是什么 markdown是一种轻量级标记语言,创始人为约翰·格鲁伯(英语:John Gruber)。 2017年,GitHub发布了基于CommonMark的GitHub Flavored Markdown(GFM)的正式规范。除了表格、删除线、自动链接和任务列表被GitHub 阅读全文
posted @ 2021-04-06 12:54 savagefoo 阅读(204) 评论(0) 推荐(0)
摘要: Sign签名生成与校验 大家先思考一个问题: 你在写开放的API接口时是如何保证数据的安全性的? 先来看看有哪些安全性问题在开放的api接口中,我们通过http Post或者Get方式请求服务器的时候,会面临着许多的安全性问题,例如: 1. 请求来源(身份)是否合法? 2. 请求参数被篡改? 3. 阅读全文
posted @ 2021-04-06 12:54 savagefoo 阅读(4594) 评论(0) 推荐(0)
摘要: 什么是Fiddler? Fiddler是位于客户端和服务器端的HTTP代理,也是目前最常用的http抓包工具之一 。 它能够记录客户端和服务器之间的所有 HTTP请求,可以针对特定的HTTP请求,分析请求数据、设置断点、调试web应用、修改请求的数据,甚至可以修改服务器返回的数据,功能非常强大,是w 阅读全文
posted @ 2021-04-06 12:54 savagefoo 阅读(363) 评论(0) 推荐(0)
摘要: 手机端抓包配置 fiddler监听端口默认是 8888,你可以把它设置成任何你想要的端口。勾选上 “Allow remote computersto connect” ,允许远程设备连接。 为了减少干扰,可以去掉 “Act assystem proxy on startup” 。 首先查看电脑的 I 阅读全文
posted @ 2021-04-06 12:54 savagefoo 阅读(120) 评论(0) 推荐(0)
摘要: 1、 clientHeight,只读 clientHeight 可以用公式 CSS height + CSS padding 水平滚动条的高度 (如果存在) 来计算。 如图,这样一个div,它的clientHeight为95,计算:50(height)+30(padding top)+30(padd 阅读全文
posted @ 2021-04-06 12:53 savagefoo 阅读(238) 评论(0) 推荐(0)
摘要: Response.json()为啥返回一个promise? 自从基于promise的fetch api横空出世以后,AJAX也改名叫AJAJ了。处理http请求变得更简单了,但使用fetch的时候经常需要这样写: 其中第一个await很好理解,等待网络响应需要await一下,可是response对象 阅读全文
posted @ 2021-04-06 10:11 savagefoo 阅读(533) 评论(0) 推荐(0)
摘要: 在JavaScript中, ES6开始有rest参数 和 三个点扩展运算符 (spread运算符) 我们来看看他们各自的用处 1. rest参数 rest参数的形式为 ...变量名 用于获取函数调用时传入的参数. 顾名思义, rest参数表示的是除了明确指定的参数外,剩下的参数的集合, 它的类型是A 阅读全文
posted @ 2021-04-06 10:11 savagefoo 阅读(488) 评论(0) 推荐(0)