宇宙湾

厚积薄发

一幅持续扩展的物联网思维导图

一幅持续扩展的物联网思维导图

(利用 MindNode™ 绘制而成)

更新记录

日期 更新
2020-12-20 初次发布,包含定义、行业、传感器、数据分析、安全、协议、机构、历史等内容
2020-12-21 扩充了 1982 年 ~ 2016 年之间关于物联网的大事件
2020-12-22 增加 eSIM 的应用场景
2020-12-25 增加边缘计算平台和物联网操作系统
2020-12-26 增加物联网设备数量统计信息
2020-12-28 增加全球移动通讯系统协会
阅读全文 »

开发人员用一种语言就能编写整个 Web 应用

 可以减少开发客户端和服务端时所需的语言切换(Clojure, ClojureScript 一样的道理)
 代码可以再客户端和服务端中共享(表单校验或游戏逻辑中使用同样的代码)

JSON 是目前非常流行的数据交换格式

 JSON 还是 JavaScript 原生的

有些 NoSQL 数据库中用的就是 JavaScript 语言

 MongoDB 的管理和查询语言都是 JavaScript
 CouchDB 的 Map/reduce 也是 JavaScript

JavaScript 是一门编译目标语言

 List of languages that compile to JS

Node 用的虚拟机(V8)会紧跟 ECMAScirpt 标准

 在 Node 中如果想用新的 JavaScript 语言特性,不用等到所有浏览器都支持

阅读全文 »

什么是 散列表?

 散列表(Hash Table,即哈希表)是根据键值(Key)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表

为什么要有 散列表?

可以提供快速的插入操作和查找操作

 不论哈希表中有多少数据,插入和删除(有时包括侧除)只需要接近常量的时间即 O(1) 的时间级
 实际上,这只需要几条机器指令
 哈希表运算得非常快,在计算机程序中,如果需要在一秒种内查找上千条记录通常使用哈希表(例如拼写检查器),而树的操作通常需要 O(N) 的时间级

编程实现相对容易

散列表工作机制

存储

 使用一个数组实现的无序符号表
 意味着,数组创建后,难于扩展(某些哈希表被基本填满时,性能下降得非常严重)
 要么预设足够的空间,要么定期将数据迁移到更大的哈希表

阅读全文 »

什么是 Golang?

Go™ is an open source programming language that makes it easy to build simple, reliable, and efficient software.

特性

类别

  • 静态语言
  • 编译型语言

优点

  • 语言层面支持并发
  • 无依赖,直译机器码
  • 内置 runtime,支持 GC
  • 可跨平台编译
  • 支持内嵌 C
  • 丰富的标准库
  • 学习曲线低

缺点

  • 接口是枚举类型
  • import 包不支持版本
  • goroutine 一旦启动,切换将不受程序控制

环境配置

安装

 根据操作系统,在 Download 页面下载对应的安装包,进行安装

MacOS

1
2
3
# 安装完成后,iTerm 中看到可以执行 go 命令了
$ which go
/usr/local/go/bin/go

Linux

1
2
$ wget https://dl.google.com/go/go1.14.4.linux-amd64.tar.gz
$ sudo tar -C /usr/local/ -xzvf go1.14.4.linux-amd64.tar.gz

配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# 环境变量
$ vim ~/.bashrc
export GOROOT=/usr/local/go
export PATH=$PATH:$GOROOT/bin

# 工作目录
# bin: 存放可执行文件
# pkg: 存放编译好的库文件
# src: 存放 go 的源文件
$ mkdir -p ~/code/gopath
$ vim ~/.bashrc
export GOROOT=/usr/local/go
export GOPATH=~/code/gopath
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin

$ source ~/.bashrc
阅读全文 »

Session 是什么?

 代表服务器与浏览器之间的一次会话过程,这个过程可以是连续的,也可以是时断时续的。而在 Web 开发语境下,则指一类用来在客户端与服务器之间保持状态的解决方案

多样的存在形式

1
javax.servlet.http.HttpSession
1
s = requests.session()
  • PHP
1
$_session
  • Hibernate
1
org.hibernate interface Session
  • WebLogic
1
Weblogic Server session
  • JSP
1
HttpSession
阅读全文 »