Resources for deeper understand of Go

blov · · 484 次点击    
这是一个分享于 的资源,其中的信息可能已经有所发展或是发生改变。
<p>Hello,</p> <p>I&#39;ve been programming in Go for some time now (less than a year) and I&#39;m looking for resources to extend my knowledge.</p> <p>I&#39;ve gone through official tour, read Effective Go on the official page and worked through the book &#34;Introducing Go&#34; by Caleb Doxsey and few other shorter ones.</p> <p>I was thinking of getting this book: <a href="https://www.amazon.com/Programming-Language-Addison-Wesley-Professional-Computing/dp/0134190440">https://www.amazon.com/Programming-Language-Addison-Wesley-Professional-Computing/dp/0134190440</a></p> <p>What do you think of it and are there any other resources / books that you would recommend ?</p> <p>Thanks</p> <hr/>**评论:**<br/><br/>peterbourgon: <pre><p><a href="http://appliedgo.net">http://appliedgo.net</a></p></pre>ChristophBerger: <pre><pre><code>(*^_^*) </code></pre></pre>eikenberry: <pre><p>Nice flow-based programming articles. FBP is one of my favorite styles for Go programming.</p></pre>ChristophBerger: <pre><p>When I wrote these articles, I had no idea how popular the topic is. I just stumbled upon FBP and thought, hey, FBP and CSP (represented in Go as &#34;goroutines and channels&#34;) seem to be a perfect fit!</p></pre>ssimunic: <pre><p>Awesome, thanks for sharing and thanks to <a href="/u/ChristophBerger" rel="nofollow">/u/ChristophBerger</a> for making it!</p></pre>ChristophBerger: <pre><p>Thank you! Comments like this one make me want to write a new post every other day :-) </p></pre>jabberlope: <pre><p>that looks like a great feed. thanks <a href="/u/peterbourgon" rel="nofollow">/u/peterbourgon</a> </p></pre>Keshenka: <pre><p>This really is a great resource. I hadn&#39;t heard of the site before. Thanks for the link! And thank you, <a href="/u/ChristophBerger" rel="nofollow">/u/ChristophBerger</a>!</p></pre>ChristophBerger: <pre><p>Thanks, I hope you&#39;ll enjoy the articles!</p></pre>NeverUse-YouPromised: <pre><p>&#34;The Go Programming Language&#34; by Alan A. A. Donovan and Brian Kernighan, while not the most advanced, is thorough. It covers all aspects of the language and includes challenging exercises. I own a copy and it&#39;s fun reading.</p></pre>nwss00: <pre><p>I own it too. It&#39;s awesome.</p> <p>It teaches Go fundamentals so thoroughly that once you fully grasp them, you&#39;ll be ready for tougher Go challenges thrown you way.</p></pre>ChristophBerger: <pre><p>Blogs I subscribed to (not all of them are pure Go blogs but those who aren&#39;t still contain a fair amount of Go articles):</p> <ul> <li>The <a href="https://blog.golang.org/">golang.org blog</a> is a must-read of course, </li> <li>and so is <a href="https://dave.cheney.net/">Dave Cheney&#39;s blog</a>. </li> </ul> <p>Then there are also:</p> <ul> <li><a href="https://www.calhoun.io/">Jon Calhoun&#39;s blog</a> - a mix of Go basics, algorithms, and database/SQL topics</li> <li><a href="https://scene-si.org/">Tit Petric&#39;s blog</a> - a blend of Go and DevOps articles</li> <li><a href="https://divan.github.io/">Divan&#39;s blog</a>, - from experiences with Go code to high-level observations</li> <li><a href="http://www.tapirgames.com/blog/">The Tapirgames blog</a> - very intense focus on the language itself. (Note: The articles list on that page ends at Aug 2016, but the blog is alive, and updates are posted in <code>/r/golang</code>. Tip search this subreddit for <code>url:tapirgames</code>.)</li> <li><a href="https://blog.gopheracademy.com/">Gopheracademy</a> - famous for its &#34;Advent series&#34; each December</li> <li><a href="https://jacobmartins.com/">Jacob Martins&#39; blog</a> - code-heavy, from-the-trenches articles</li> </ul> <p>and there are certainly more blogs out there that I failed to list here.</p></pre>ewanvalentine: <pre><p>If you&#39;re feeling incredibly brave, you can attempt to go through Tony Hoare&#39;s original work on go style concurrency: <a href="http://www.usingcsp.com/cspbook.pdf">http://www.usingcsp.com/cspbook.pdf</a></p> <p>Admittedly, I was out of my depths as far in as the introduction. So... good luck! </p></pre>flatMapds: <pre><blockquote> <p>flow-based programming I finished it a while ago before you say it no I don&#39;t have an advanced degree I never even went to college. </p> </blockquote></pre>flatMapds: <pre><p>There is no advanced Go in of itself, if you want to know everything about the language read the spec it&#39;s like 50 pages. </p> <p>As for looking for good best practices, and learning what you can do with Go, look into design patterns, FBP is a good one, look into General Data Flow Programming outside of go, <a href="https://github.com/tmrts/go-patterns" rel="nofollow">https://github.com/tmrts/go-patterns</a>. </p> <p>The other thing is reading source of good projects, <a href="https://github.com/libp2p/go-libp2p/tree/master/p2p" rel="nofollow">https://github.com/libp2p/go-libp2p/tree/master/p2p</a>, <a href="https://github.com/tendermint/tendermint" rel="nofollow">https://github.com/tendermint/tendermint</a> are my ideal ones but if you&#39;re not into distributed systems don&#39;t bother with either and just look at the design patterns and play around.</p></pre>perry369: <pre><p>Read the official slides, <a href="https://talks.golang.org/" rel="nofollow">https://talks.golang.org/</a></p></pre>guncha: <pre><p>The thing with Go is that there aren&#39;t really many more advanced concepts after Effective Go. This is by design. If you want to learn how Go works, I recommend the Go blog. The one about how slices are implemented was fairly memorable. Other than that, the compiler is written in Go so you can go straight to the source. It&#39;s not documented very well, but it shouldn&#39;t be hard to follow.</p></pre>comrade-jim: <pre><p>Read the Go source code. </p></pre>

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

484 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传