Eson Wong's Blog

编程笔记,投资记录, 读书总结, 生活心得

0%

树莓派安装系统

树莓派安装系统,系统设置里开启摄像头,连接网络。

一键安装命令

在树莓派的终端里运行下面代码:

1
bash <(curl -sL https://download.esonwong.com/network-rc/install.sh)
阅读全文 »

object

1. 字面量

我们一般使用字面量的形式直接创建对象,但是这种创建方式对于创建大量相似对象的时候,会产生大量的重复代码。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
const cat1 = {
name: "cat1",
type: "cat",
run: function () {
console.log("小猫快跑");
},
};

const cat2 = {
name: "cat2",
type: "cat",
run: function () {
console.log("小猫快跑");
},
};

但 JavaScript 和一般的面向对象的语言不同,在 ES6 之前它没有类的概念。但是我们可以使用函数来进行模拟,从而产生出可复用的对象。

缺陷

  • 不能产生可服用的对象

2. 工厂模式

1
2
3
4
5
6
7
8
9
10
11
12
13
function createCat(name) {
const object = {
name: name,
type: "cat",
run: function () {
console.log("小猫快跑");
},
};
return object;
}

const cat1 = createCat("cat1");
const cat2 = createCat("cat2");

工厂模式的主要工作原理是用函数来封装创建对象的细节,从而通过调用函数来达到复用的目的。但是它有一个很大的问题就是创建出来的对象无法和某个类型联系起来,它只是简单的封装了复用代码,而没有建立起对象和类型间的关系。

阅读全文 »

babel class 转换

ES6 加入了 Class 的语法,Class 的大部分功能 ES5 都可以做到,我们可以把 class 看作是一个语法糖。本篇文章我们一步步来看看 Babel 是怎么把 class 转换成 ES5 语法的。

阅读全文 »

4G 网络 RC 遥控车03 - 无限距离远程遥控?

简介

本篇部分内容已过时,安装 Network RC 和使用内置穿透的教程见 Network RC - 制作教程

上篇[WiFi/4G/5G 网络遥控车制作教程]介绍了在局域网下控制遥控车,要实现远程控制,必须让遥控车在互联网上可以访问遥控车。

本教程教大家如何让遥控小车接入移动互联网实现 4G/5G 网络无限距离遥控。

阅读全文 »

WiFi/4G/5G 网络遥控车制作教程

简介

本篇部分内容已过时,安装 Network RC 和使用内置穿透的教程见 Network RC - 制作教程

本教程介绍使用树莓派和遥控车制作一台可以通过网络控制的遥控车。软件使用我开发的 network-rc

材料

  • 树莓派 3B+ (300 元)
  • 树莓派摄像头 (15 元) / ps3 摄像头 (40 远)
  • 移动电源 (60 元) / USB 输出降压模块 (?元)
  • 环奇 743A (286 元,某宝上找不到了, 3 线 PWM 信号的电调和舵机的车都可以)
  • 杜邦线(公对公 x1, 公对母 x4) (3 元)
  • 其它固定材料
阅读全文 »

HTTP 状态码

介绍

HTTP 状态码是指 HTTP 响应报文里状态行里的 Status-Code,用于指示特定 HTTP 响应的状态和类型。

HTTP 响应报文状态行由 HTTP-Version、Status-Code、Reason-Phrase 组成:

1
HTTP/1.1 200 OK
阅读全文 »

http 缓存

HTTP Header 中的缓存相关字段

HTTP 请求和响应都包含 header 和 body 两个部分, 缓存相关的字段存在于 header 当中。HTTP 响应 header 中包含 ExpiresCache-ControlLast-ModifiedEtag,请求 header 中包含 If-Modified-SinceIf-None-Match

阅读全文 »

坚持

我们很难坚持一件事情

我们总会高估自己短时间能达成目标,造成挫败感;且低估长时间可以达成的成就,失去信心。因此我们要正确的认识自己的能力,并用一些切实可行的方法来帮助我们坚持下去。

阅读全文 »