一个日牯子
Home
Tags
GitHub
Author
2020-09-02
SVG
HTML
PDF
入
门
1
N
e
t
t
y
(
1
)
:
介
绍
框
架
闲
话
编
程
C
o
n
t
e
n
t
s
入
门
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
核
心
概
念
基
本
原
理
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
2
与
、
是
一
个
高
性
能
的
异
步
事
件
驱
动
的
网
络
应
用
框
架
,
本
质
上
是
对
进
行
了
高
层
的
抽
象
,
使
得
可
以
轻
松
的
创
建
服
务
器
和
客
户
端
,
极
大
简
化
了
诸
如
和
套
接
字
的
操
作
。
入
门
核
心
概
念
中
的
一
些
核
心
概
念
:
C
h
a
n
n
e
l
对
应
到
E
v
e
n
t
L
o
o
p
用
来
控
制
流
、
多
线
程
处
理
以
及
并
发
C
h
a
n
n
e
l
F
u
t
u
r
e
用
来
实
现
异
步
通
知
E
C
H
O
s
e
r
v
e
r
最
简
单
的
例
子
是
构
建
一
个
,
发
过
来
什
么
同
样
返
回
什
么
。
首
先
需
要
实
现
一
个
,
定
义
如
何
处
理
消
息
:
p
u
b
l
i
c
c
l
a
s
s
E
c
h
o
S
e
r
v
e
r
H
a
n
d
l
e
r
e
x
t
e
n
d
s
C
h
a
n
n
e
l
I
n
b
o
u
n
d
H
a
n
d
l
e
r
A
d
a
p
t
e
r
{
@
O
v
e
r
r
i
d
e
p
u
b
l
i
c
v
o
i
d
c
h
a
n
n
e
l
R
e
a
d
(
C
h
a
n
n
e
l
H
a
n
d
l
e
r
C
o
n
t
e
x
t
c
t
x
,
O
b
j
e
c
t
m
s
g
)
t
h
r
o
w
s
E
x
c
e
p
t
i
o
n
{
/
/
h
a
n
d
l
e
r
需
要
去
释
放
m
s
g
对
象
(
引
用
计
数
)
/
/
这
里
不
用
去
手
动
r
e
l
e
a
s
e
m
s
g
,
因
为
w
r
i
t
e
A
n
d
F
l
u
s
h
里
面
已
经
处
理
了
c
t
x
.
w
r
i
t
e
A
n
d
F
l
u
s
h
(
m
s
g
)
;
}
@
O
v
e
r
r
i
d
e
p
u
b
l
i
c
v
o
i
d
e
x
c
e
p
t
i
o
n
C
a
u
g
h
t
(
C
h
a
n
n
e
l
H
a
n
d
l
e
r
C
o
n
t
e
x
t
c
t
x
,
T
h
r
o
w
a
b
l
e
c
a
u
s
e
)
t
h
r
o
w
s
E
x
c
e
p
t
i
o
n
{
c
a
u
s
e
.
p
r
i
n
t
S
t
a
c
k
T
r
a
c
e
(
)
;
c
t
x
.
c
l
o
s
e
(
)
;
}
}
然
后
利
用
S
e
r
v
i
c
e
B
o
o
t
S
t
r
a
p
来
启
动
p
u
b
l
i
c
c
l
a
s
s
E
c
h
o
S
e
r
v
e
r
{
p
r
i
v
a
t
e
f
i
n
a
l
i
n
t
p
o
r
t
;
基
本
原
理
2
p
u
b
l
i
c
E
c
h
o
S
e
r
v
e
r
(
i
n
t
p
o
r
t
)
{
t
h
i
s
.
p
o
r
t
=
p
o
r
t
;
}
p
u
b
l
i
c
v
o
i
d
r
u
n
(
)
t
h
r
o
w
s
I
n
t
e
r
r
u
p
t
e
d
E
x
c
e
p
t
i
o
n
{
E
v
e
n
t
L
o
o
p
G
r
o
u
p
b
o
s
s
G
r
o
u
p
=
n
e
w
N
i
o
E
v
e
n
t
L
o
o
p
G
r
o
u
p
(
)
;
E
v
e
n
t
L
o
o
p
G
r
o
u
p
w
o
r
k
e
r
G
r
o
u
p
=
n
e
w
N
i
o
E
v
e
n
t
L
o
o
p
G
r
o
u
p
(
)
;
t
r
y
{
S
e
r
v
e
r
B
o
o
t
s
t
r
a
p
b
o
o
t
s
t
r
a
p
=
n
e
w
S
e
r
v
e
r
B
o
o
t
s
t
r
a
p
(
)
;
b
o
o
t
s
t
r
a
p
.
g
r
o
u
p
(
b
o
s
s
G
r
o
u
p
,
w
o
r
k
e
r
G
r
o
u
p
)
.
c
h
a
n
n
e
l
(
N
i
o
S
e
r
v
e
r
S
o
c
k
e
t
C
h
a
n
n
e
l
.
c
l
a
s
s
)
.
c
h
i
l
d
H
a
n
d
l
e
r
(
n
e
w
C
h
a
n
n
e
l
I
n
i
t
i
a
l
i
z
e
r
<
S
o
c
k
e
t
C
h
a
n
n
e
l
>
(
)
{
@
O
v
e
r
r
i
d
e
p
r
o
t
e
c
t
e
d
v
o
i
d
i
n
i
t
C
h
a
n
n
e
l
(
S
o
c
k
e
t
C
h
a
n
n
e
l
c
h
)
t
h
r
o
w
s
E
x
c
e
p
t
i
o
n
{
c
h
.
p
i
p
e
l
i
n
e
(
)
.
a
d
d
L
a
s
t
(
n
e
w
E
c
h
o
S
e
r
v
e
r
H
a
n
d
l
e
r
(
)
)
;
}
}
)
.
o
p
t
i
o
n
(
C
h
a
n
n
e
l
O
p
t
i
o
n
.
S
O
_
B
A
C
K
L
O
G
,
1
2
8
)
.
c
h
i
l
d
O
p
t
i
o
n
(
C
h
a
n
n
e
l
O
p
t
i
o
n
.
S
O
_
K
E
E
P
A
L
I
V
E
,
t
r
u
e
)
;
C
h
a
n
n
e
l
F
u
t
u
r
e
f
=
b
o
o
t
s
t
r
a
p
.
b
i
n
d
(
p
o
r
t
)
.
s
y
n
c
(
)
;
f
.
c
h
a
n
n
e
l
(
)
.
c
l
o
s
e
F
u
t
u
r
e
(
)
.
s
y
n
c
(
)
;
}
f
i
n
a
l
l
y
{
w
o
r
k
e
r
G
r
o
u
p
.
s
h
u
t
d
o
w
n
G
r
a
c
e
f
u
l
l
y
(
)
;
b
o
s
s
G
r
o
u
p
.
s
h
u
t
d
o
w
n
G
r
a
c
e
f
u
l
l
y
(
)
;
}
}
p
u
b
l
i
c
s
t
a
t
i
c
v
o
i
d
m
a
i
n
(
S
t
r
i
n
g
[
]
a
r
g
s
)
t
h
r
o
w
s
I
n
t
e
r
r
u
p
t
e
d
E
x
c
e
p
t
i
o
n
{
n
e
w
E
c
h
o
S
e
r
v
e
r
(
9
9
9
9
)
.
r
u
n
(
)
;
}
}
基
本
原
理
E
v
e
n
t
L
o
o
p
与
S
e
r
v
e
r
C
h
a
n
n
e
l
、
C
h
a
n
n
e
l
其
运
行
原
理
如
图
:
左
边
只
有
一
个
,
代
表
服
务
器
上
监
听
某
个
端
口
的
套
接
字
,
所
以
实
际
上
也
只
需
要
一
个
就
可
以
了
右
边
代
表
建
立
的
客
户
端
连
接
,
每
一
个
连
接
都
对
应
到
一
个
,
当
有
很
多
个
连
接
的
时
候
,
这
些
连
接
是
会
共
享
其
中
的
的
。
C
h
a
n
n
e
l
P
i
p
e
l
i
n
e
每
次
建
立
连
接
的
时
候
,
都
会
调
用
C
h
a
n
n
e
l
I
n
i
t
i
a
l
i
z
e
r
,
这
个
类
负
责
安
装
一
些
自
定
义
的
C
h
a
n
n
e
l
H
a
n
d
l
e
r
到
C
h
a
n
n
e
l
P
i
p
e
l
i
n
e
中
。
实
际
上
的
程
序
可
能
对
应
到
多
个
入
站
基
本
原
理
3
和
出
站
的
,
它
们
的
执
行
顺
序
是
由
它
们
被
添
加
的
顺
序
所
决
定
的
,
类
似
这
样
:
C
h
a
n
n
e
l
H
a
n
d
l
e
r
又
有
很
多
的
类
型
,
比
如
:
编
码
器
和
解
码
器
例
如
B
y
t
e
T
o
M
e
s
s
a
g
e
D
e
c
o
d
e
r
、
P
r
o
t
o
b
u
f
E
n
c
o
d
e
r
等
S
i
m
p
l
e
C
h
a
n
n
e
l
I
n
b
o
u
n
d
H
a
n
d
l
e
r
<
T
>
,
用
来
处
理
简
单
的
逻
辑
比
如
收
到
消
息
后
完
成
业
务
逻
辑
,
只
需
要
实
现
其
中
的
v
o
i
d
c
h
a
n
n
e
l
R
e
a
d
0
(
C
h
a
n
n
e
l
H
a
n
d
l
e
r
C
o
n
t
e
x
t
c
t
x
,
I
m
s
g
)
方
法
即
可
B
o
o
t
s
t
r
a
p
前
面
使
用
S
e
r
v
e
r
B
o
o
t
s
t
r
a
p
类
来
启
动
了
服
务
器
上
的
监
听
,
如
果
是
客
户
端
程
序
可
以
使
用
B
o
o
t
s
t
r
a
p
类
来
完
成
。
一
个
比
较
明
显
的
区
别
就
是
,
客
户
端
程
序
只
需
要
一
个
E
v
e
n
t
L
o
o
p
G
r
o
u
p
而
服
务
端
通
常
会
需
要
两
个
。
HTML view coming soon.
Download PDF
for the full formatted version.