我试图通过研究各种公共代码来理解各种编码架构。其中之一是mime/multipartGo 团队的实施。
下面的片段是我所看到的。https://cs.opensource.google/go/go/+/refs/tags/go1.19.3:src/mime/multipart/formdata.go;l=156
func (r *Reader) ReadForm(maxMemory int64) (*Form, error) {
return r.readForm(maxMemory)
}
func (r *Reader) readForm(maxMemory int64) (_ *Form, err error) {
form := &Form{make(map[string][]string), make(map[string][]*FileHeader)}
defer func() {
if err != nil {
form.RemoveAll()
}
}()
// Reserve an additional 10 MB for non-file parts.
maxValueBy
...more code here
我已经通读了一些关于 SOLID、DRY、公共/私人关系的内容,所以我不能说我知道很多最佳实践/常见策略。
看看上面的内容,在我看来它是一个将私有函数公开的函数。
我唯一想到的是它纯粹是为了文档?但在我的脑海里没有什么具体的。
所以我在这里很难理解的是这样做的好处是什么?
感谢大家花时间阅读本文。非常感谢任何评论/阅读建议。
一只斗牛犬
相关分类