The Go Programming Language
http://golang.org/
Go Playground
Go Projects
Revel Web Framework
sanbenweiyang

《Easy 搞定 Golang 设计模式》(学 Go 语言设计模式,如此简单)

  •  
  •   sanbenweiyang · Oct 8, 2022 · 3129 views
    This topic created in 1326 days ago, the information mentioned may be changed or developed.
    13 replies    2022-10-21 11:17:50 +08:00
    pastor
        1
    pastor  
       Oct 8, 2022   ❤️ 4
    求设计模式党和面向对象中毒党放过 golang ,不要把你们的魔爪伸过来,求求你们了

    阿里已经有一帮毒瘤 javaer 搞了一些 go 框架来毒害社区了,求求你们拿到 KPI 后就不要再继续这种行为了

    孩子们会中毒的!
    gaifanking
        2
    gaifanking  
       Oct 8, 2022
    用 go 了就别卷设计模式那一套了,Keep It Simple, Stupid
    wellsc
        3
    wellsc  
       Oct 8, 2022
    why
    bruce0hh
        4
    bruce0hh  
       Oct 8, 2022 via Android
    我是 java 转 go 的,但是写 go 是一堆烂代码,一股 java 味,所以我觉得特意学习 go 的设计模式,比如 functional options 这些还挺好的。别的学习写好 go 代码的途径还真不知道
    haolongsun
        5
    haolongsun  
       Oct 8, 2022
    用 go 还玩设计模式?这种有多远滚多远,毒害人
    LaoLeyuan
        6
    LaoLeyuan  
       Oct 8, 2022
    我是 go 新手,不太明白大家为什么这么反感这种课程,有人能够具体解释一下吗?
    zhangfeiwudi
        7
    zhangfeiwudi  
       Oct 8, 2022   ❤️ 1
    golang 我就用过选项模式,这个模式的确很好用。所以 golang 肯定是有设计模式的,不过应该和传统的 java 设计模式不太一样。 我感觉更多是学习一种思路和参考吧。不要局限于设计模式这个用法,更多的是明白为什么要这么用。如果带入 golang 是否有可行的地方。毕竟 golang 只有结构体 连类都没。而且还有 init 方法。
    nmap
        8
    nmap  
       Oct 8, 2022
    主要是各种 interface 和 struct 的组合吧?开源代码里面确实用的眼花缭乱
    sanbenweiyang
        9
    sanbenweiyang  
    OP
       Oct 9, 2022
    看到评论说 go 不需要设计模式,本来不想理的,但是看言语这么激进,想想还是得回复一下。 如果是因 go 的简洁而屏蔽设计模式,这太片面了。设计模式本是理论,是编程思想,是构建规模庞大的系统必备理论技能方法。和编程语言有何关系。 说 go 像 C 简单不需要设计模式的,可以百度搜“《 Linux kernel design patterns 》” 这篇文档,这是 Linux 内核 用 C 语言总结出来的设计模式,真正写内核 C 语言的,不用面向对象的思想如何去迭代系统和代码。 写个 demo 级别的项目当然不需要设计模式了。当你的系统足够复杂,你再试试。 设计模式是理论,只不过是通过什么语言去学习而已,他并没有绑定什么编程语言,就算算法和数学一样。
    gaifanking
        10
    gaifanking  
       Oct 12, 2022
    @sanbenweiyang 大家多是调侃吧。我最开始接触 java 开发,那时候还是 servlet 开发,就跟现在的 go 类似,用起来简单,效果也不错。后来随着 java 项目越来越大型化,出现了 struts spring hibernate 框架,再后面 struts 被干趴下,spring 一家独大,等等等等不一而云。设计模式的出现也是为了解决大型项目的可维护性和可扩展性。
    而 go 作为一种新型语言,适用于不同的场景:如果是单体开发,我觉得难免也会卷起来,各种设计模式、框架都会出现。可如果作为微服务,以至云原生开发就截然不同了,每个微服务的职责越来越小,甚至退化为“函数”的粒度,在这种场景就完全不需要那么多框架和设计模式了。
    bigpigB
        11
    bigpigB  
       Oct 19, 2022
    看到了一半,觉得作者的视频做的真好,讲的也好。
    我是 Go 初学者
    bigpigB
        12
    bigpigB  
       Oct 19, 2022
    不明白为什么有人这么反感这个,之前在看 k8s 代码的时候,有很多都是一知半解,大概知道这个代码里写的是什么,但不知道为什么这么设计
    后面看了博主的视频,才发现里面大量运用了设计模式,做了很多抽象化,节省了大量代码空间和提高性能
    所以说 Go 用不到设计模式,或者说是可以不用过量设计的,都是见仁见智吧
    haohu108123
        13
    haohu108123  
       Oct 21, 2022
    支持 支持
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3195 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 53ms · UTC 12:34 · PVG 20:34 · LAX 05:34 · JFK 08:34
    ♥ Do have faith in what you're doing.