Introductory books for complete beginners.

polaris · · 387 次点击    
这是一个分享于 的资源,其中的信息可能已经有所发展或是发生改变。
<p>I had a non productive evening last night. I have been reading a <a href="https://www.golang-book.com/books/intro" rel="nofollow">book</a> on Go and it assumed that I had previous knowledge in programming.</p> <p>I, however, was okay with this since I have done a bit of python before. I also took a comp101 course a long time ago with <a href="https://processing.org/" rel="nofollow">Processing</a>. I read up until pointers on the book I linked before and then it became too hard to follow, specially with channels, interfaces etc. I actually had to study what pointers and closures are from various online sources instead of the book. (I still don&#39;t fully understand how returning functions work because of the lack of exercise). So I have been searching a good golang book that&#39;s a bit more verbose and explains what those are. So far I have came across books that are either</p> <ol> <li><p><a href="https://www.golang-book.com/books/intro" rel="nofollow">too short</a>: does not discuss the topic at hand at all, only describes how to perform certain things in Go (instead of describing what those certain things at first)</p></li> <li><p><a href="https://www.amazon.com/Way-Go-Thorough-Introduction-Programming/dp/1469769166" rel="nofollow">too verbose</a>, while it doesn&#39;t really describe what the topic is, the book goes into the deepest detail of Golang itself.</p></li> </ol> <p>I guess my option is to learn C or Java first although I was really fascinated with Golang <del>or give up on Golang</del>. What are your tips?</p> <p>You may be tempted to say things like </p> <blockquote> <p>&#34;Oh, Go is not a beginners language&#34;</p> </blockquote> <p>I beg to disagree, what makes C, C++, Java, Python, Javascript etc a beginners language? A good introductory book? Am I wrong to choose my favourite language? How did people learn those languages when there was no introductory books?</p> <blockquote> <p>&#34;Why are you choosing go over [x]&#34;</p> </blockquote> <p>I like the philosophy described <a href="https://golang.org/doc/faq#What_is_the_purpose_of_the_project" rel="nofollow">here</a></p> <blockquote> <p>&#34;How new are you&#34;</p> </blockquote> <p>Very. I understand what what basic things like conditional statements are. But I don&#39;t know what Channels, Interfaces, Closures and Lambdas, Methods, hashes etc are.</p> <p><strong>TLDR:</strong> What&#39;s a good Golang book to read for complete novice programmer? (First &#34;big boy&#34; language)</p> <hr/>**评论:**<br/><br/>scottjbarr: <pre><p>Have a look at The Little Go Book. It sounds like it would suit what you&#39;re looking for. <a href="http://openmymind.net/The-Little-Go-Book/" rel="nofollow">http://openmymind.net/The-Little-Go-Book/</a></p> <p>Also, take a look at the Go by Example website <a href="https://gobyexample.com/" rel="nofollow">https://gobyexample.com/</a></p> <p>IMHO, Go is a great language to get started with as it is quite a &#34;small&#34; language.</p> <p>I suggest that you don&#39;t worry too much about Channels and advanced topics until you can read and write simpler Go programs. The concurrency model that Go provides is amazing, but get through more basic concepts first.</p></pre>bruce3434: <pre><blockquote> <p>Go by Example website</p> </blockquote> <p>That website was very helpful as I was looking through topics. Thanks for your book suggestion. I will look into it.</p></pre>snippet2: <pre><p>Davy is great. <a href="https://dave.cheney.net/resources-for-new-go-programmers" rel="nofollow">https://dave.cheney.net/resources-for-new-go-programmers</a></p> <p>Todd is awesome too. <a href="https://youtu.be/c7XMV2HM6IQ" rel="nofollow">https://youtu.be/c7XMV2HM6IQ</a></p> <p><a href="https://mobile.twitter.com/todd_mcleod?lang=en" rel="nofollow">https://mobile.twitter.com/todd_mcleod?lang=en</a></p> <p>Newstack is great <a href="http://thenewstack.io/make-a-restful-json-api-go/" rel="nofollow">http://thenewstack.io/make-a-restful-json-api-go/</a></p> <p>Books on it. <a href="https://github.com/dariubs/GoBooks" rel="nofollow">https://github.com/dariubs/GoBooks</a></p> <p>Nice resource on structs and interfaces <a href="https://www.golang-book.com/books/intro/9" rel="nofollow">https://www.golang-book.com/books/intro/9</a></p> <p>Just golang news <a href="https://golangnews.com" rel="nofollow">https://golangnews.com</a></p> <p>I see you are a Linux guy. May I suggest the new Ubuntu budgie? <a href="https://budgie-remix.org" rel="nofollow">https://budgie-remix.org</a></p></pre>bruce3434: <pre><p>I tried budgie in my Arch install couple of years ago and I could have sworn ubuntu budgie was not a thing last December.</p> <p>I&#39;ll give it a try on my spare partition, I&#39;m currently on Ubuntu GNOME LTS. </p></pre>schoenobates: <pre><p>Hey <a href="/u/bruce3434" rel="nofollow">/u/bruce3434</a> - welcome aboard :)</p> <p>I would recommend the following for beginners that have some experience with another language:</p> <p>1) <a href="http://www.gopl.io/" rel="nofollow">http://www.gopl.io/</a> - this is a <em>great</em> reference gives you everything, nuts, bolts, kitchen sink and the house. It&#39;s worth keeping this on the side to dip into 2) The go tour <a href="https://tour.golang.org" rel="nofollow">https://tour.golang.org</a> - I really would start here first 3) As <a href="/u/scottjbarr" rel="nofollow">/u/scottjbarr</a> already pointed out, <a href="https://gobyexample.com/" rel="nofollow">https://gobyexample.com/</a> just super handy</p> <p>Of course, always post to reddit and we can help as well :)</p> <p>HTH!</p></pre>bruce3434: <pre><blockquote> <p><a href="https://tour.golang.org" rel="nofollow">https://tour.golang.org</a></p> </blockquote> <p>Thanks <a href="/u/schoenobates" rel="nofollow">/u/schoenobates</a>. It seems we have a nice community here.</p></pre>

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

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