互相嵌套的结构体难以理解

来源:15-5 Engine 与 Parser

至心无梦

2020-07-22

type Request struct {
	Url        string
	ParserFunc func([]byte) ParseResult
}

type ParseResult struct {
	Requests []Request
	Items    []interface{}
}

上面这两个结构体我无法理解它的设计思路,请问老师,需要哪些前置知识才能设计出这样的结构体?
写回答

2回答

ccmouse

2020-07-28

其实不用去管是不是嵌套。一个request经过parser处理,会生成一个结果。什么结果呢,这个结果有很多新的request和我们需要保存的数据,也就是item组成。这样的话,设计出上述结构也是很自然的。

在实现上,ParserFunc是一个函数类型,描述了parser是一个可以产生ParserResult的函数。而Request本身只是包含了这个函数,而不是包含了一个ParserResult。

1
3
至心无梦
回复
ccmouse
好的,谢谢指点!
2020-07-28
共3条回复

raynbinghan

2020-07-27

需要天赋, 我也没有 

0
0

Google资深工程师深度讲解Go语言 由浅入深掌握Go语言

语法+分布式爬虫实战 为转型工程师量身打造

5995 学习 · 1908 问题

查看课程