阅读:3151回复:0
Golang周报第四期:泛型、领域驱动、人脉、grpc第一期链接: Golang周报第一期:gorm2、微服务优势、云原生、好程序员 第二期链接: Golang周报第二期:端口扫描、json瓶颈、slice修改、微服务课程升级 第三期链接 Golang周报第三期:版本升级、共享内存、狮子和老虎谁厉害 一 关于泛型 根据最新的草案,也许未来Go的泛型是这样: func Print[T any](s []T "T any") { … } 对,也许可能用的是中括号。和其他语言使用<>有区别。 默默的等待中。泛型还是很有必要的。不过目测大家使用的goland又要升级一波了哦 另外,有条件的同学可以到 https://go2goplay.golang.org/ 去体验 (不要问 “怎么个有条件法”,你懂的) 二、关于golang写的web服务器 有吗? 有,看这个https://github.com/caddyserver/caddy 大约是去年我们在项目里用过一次,体验还是非常不错的。支持赤裸裸的web发布、反代、网关、负载均衡和ingress controller。 试一试不会怀孕的 三、有人说彻底搞懂Go需要学汇编? 从技术角度是的。从业务角度呢?答:可以不用这么彻底,聊点别的吧~~~(~_~) 开发GO的程序员应该是食物链顶端的程序员了,连汇编都是自己搞了一套。 go的汇编基于plan9,也是一种伪汇编,所谓的伪汇编:它并不对应某种真实的硬件架构。也是利用这种伪汇编为目标硬件生成具体的机器指令。这就是为何Go有这么好的移植性的原因。 四、前两天在 头条里 聊到了点“程序员积累人脉“那些事 这种话题我知道很招黑。因为始终会有一些双标党,一边喷击程序员应该只搞技术,不应该入世,甚至应该不食人间烟火。一边自己在那。。。。(你懂的) 作为我个人还是那句话:除非你天赋特别高,高到只需要技术就能行走天下。否则技术、人脉和社会, 都是 我们程序员 生活的一部分,别站着说话不腰疼。 五、又是招黑话题:GO为什么会如此火爆 不谈语言好坏,没啥好谈。Go火爆是有特殊原因的,我举个栗子: 之前我们自己项目做过一个测试,相同的功能+相同的硬件环境。用java写的程序,默认(注意用词)情况下承受的压测数据不如Golang。而且耗费的资源比较多。 当然,后面我们找来了某java老手进行各种优化包括JVM的调优。 事实上发现,经过疯狂优化后 Java的压测数据是快于Go的(耗费的资源依然比Go多)。 以上不是在说谁好(再讨论这个我死你面前)。 就一个词:成本。 你品你细品~~~~。 另外,还有个"天时"-----那就是现在进入了云原生时代。那么 Go 的一些特性使它相对容易成为“云原生语言”。 (注意,其他语言也能,但是没这么“容易”) 六、关于Go和领域驱动(DDD) GO其实不是纯面向对象语言,因此在写DDD的过程中还是有些不丝滑的感觉。 因此我在自己的gin脚手架上做了个简化和阉割版的讲解,目前刚开始更新,免费的。看戳这里 http://b.jtthink.com/read.php?tid=571 七、关于grpc工具 之前课程里也演示过grpc-gateway,可以把grpc映射成http api的方式发布出去。这个不再赘述,其实还有一个 是 命令行工具 譬如有些后台服务我们直接做成了grpc服务,那么除了用http api发布出去。假设我们是给系统管理用的,不需要http。只需要命令行操作就行了,有啥办法呢?。 于是 可以用gRPCurl 地址戳这里: https://github.com/fullstorydev/grpcurl |
|
|