学习Golang第8章
将学习语言思想放在脑海中也许是个不错的选择。
没有继承权
学习Go并将Redis+Postgres应用程序部署到Heroku | WEB EGG
http://leko.jp/archives/763
C++程序员专用的Go语言课程 – golang.jp
http://golang.jp/go_for_cpp_programmers
Go语言的陷阱和解决方案
http://www.yunabe.jp/docs/golang_pitfall.html
我认为继承在编程语言中并不是一个非常必要的功能。
不遵守像里斯科夫替换原则这样的基本原则(实际上很多人甚至不知道这个名字),我们经常看到仅仅为了在类之间共享一部分代码而使用继承的代码具有非常低的可读性。
Go的反模式- GolangRdyJp
http://golang.rdy.jp/2016/07/26/antiptn/
言語の設計思想などと説明したりしてて分かりやすい。
常见问题解答 – golang.jp
http://golang.jp/go_faq
公式の翻訳。この辺をちゃんと調べつつ読み込むと勉強にはなりそう。
我希望那些厌倦了工作语言的人尝试使用Go语言-《Starting Go语言》的作者解释了Go的强大之处:CodeZine(编程纯熟网)
我迷惘不已,不过比如在开始的阶段,我对Go语言的类型和运算符的行为进行了相当详细的描述。我发现年轻一代主要使用脚本语言如PHP和Ruby,对于这方面的知识相对欠缺。既然已经花时间学习新的语言,我希望他们能够复习一下关于类型和运算符的编程基础。
没有继承的JavaScript编程
我正在尝试使用PAC架构模式。明白了。但是,具体的细节我还不太清楚。
如果能很好地进行角色分工,是否意味着可以在PAC的单位内实现而不重复呢?
你是说通过IDE的支持,可以通过静态分析来实现依赖编码吗?
那么,Go语言在这方面解决了这些问题吗?
不使用JavaScript的继承编程风格 | 工程师日志
JavaScript不是基于原型的面向对象编程语言吗? | 工程师日志
Go的面向对象编程
哦,我明白了,就像在DDD中听到的一样,这是将细粒度的对象和结构体实现在一起的意思吗。
这很漂亮,但是会有困难吗?
(在概念上如何考虑对象之间的关系。)
(能在结构体中表示实体和值对象之类的东西吗。)
这和“停止继承,只使用trait”不同吗。
Go是一种面向对象的语言吗?
Go的设计故意不具备继承功能。但这并不意味着对象(结构体的值)之间没有关系。Go的开发者选择使用一种代替继承的机制来表示关系。对于初次使用Go的人来说,可能会觉得因此而使Go变得更难使用。但实际上,这是Go最出色特性之一,解决了长达十多年的关于继承的问题和争论。
当我们尝试将Golang作为面向对象的语言来使用时,会遇到的困难 – Qiita 的文章
如果对手已确定,则与接口或相关性无关。嵌入应仅被视为“可以无名访问的成员变量”的语法糖。
我认为这个在实际实施中看起来很好。
从入门Go到在Heroku上部署使用Redis和Postgres的应用程序 | WEB EGG
http://leko.jp/archives/763
Gin是用Go语言编写的HTTP Web框架。它具有类似Martini的API,但性能更好,速度可快达40倍。如果您需要极致的性能,不妨试试Gin这个框架。
https://github.com/gin-gonic/gin
与swagger的结合
听说有一个从docbook生成文档文件的软件包。
用于golang开发的各种工具 – Qiita
http://qiita.com/katsutomu/items/c72d0a7f9d95b7697ef8
yvasiyarov/swagger:Swagger客户端生成器
https://github.com/yvasiyarov/swagger
自愿地/apig:Golang RESTful API 服务器生成器
https://github.com/wantedly/apig
我的感受
其实速度是它的卖点,与LL略有不同的是,它的继承相对复杂。
如果花费足够的成本,可能可以构建得很牢固,但也可能会有一些麻烦之处。
大概就是这样。