这本书是写什么的?

这是一本 Go 语言快速入门手册,目标读者是有任一编程语言基础,希望以最快的时间 (比如一个周末) 入门 Go 语言。

这本书应该怎么读?

书中几乎没有较长篇幅的理论知识,更多的是 示例驱动开发,鼓励读者通过快速实践加深基础理解,加快学习速度。

全书按照章节顺序阅读即可,其中一些需要前置知识的小节都会有备注信息。

这本书有什么特别的?

在学习 Go 语言的初期,笔者几乎阅读了网络上所有人气较高的 Go 入门书籍Go 入门教程,但是这些资料或多或少存在以下问题:

  • 内容存在过多的概念描述,代码缺失严重
  • 示例代码碎片化,对初学者不友好
  • 章节编排不合理,开篇就讲各种配置、环境变量等
  • 低级错误,如错别字,代码 Bug

当然,这些 问题 是因人而异的,上面所说只是笔者的一家之言,欢迎拍砖。

本书尽可能地规避以上问题,努力使读者达到 最少量代码理解更多概念。 笔者在梳理和编排内容的过程中,尽可能地将 Go 知识点 全面覆盖,但是由于时间问题,可能忽略了一些语法、技术点的细节, 这是本书目前的不足之处。如果读者遇到问题,可以联系笔者随时指出。

为什么要写这本书?

这本书并非专门编写,而是笔者在整理笔记的过程中突发奇想:

为什么不将碎片笔记提炼总结, 输出为系统性的体系知识内容呢?

这样不仅提高了自身的写作能力,同时可以体验分享知识的感觉,

能够认识新朋友,一起交流,共同进步

关于分享这件事情

笔者分享的动力和勇气,主要受到了这两本书的影响。《Anything You Want》 里面的一句话:

你觉得非常普通的东西,在别人看起来可能非常厉害!

让笔者对分享有了非常强烈的兴趣和动力。 而另外一本《Show Your Work》,

则给了笔者非常大的勇气开始行动,正如书中所说:

你不需要是个天才,才有资格分享知识。

最后想说的话

写作的过程无疑是极具挑战性的,所有理论概念和示例代码,要站在读者的视角,在尽可能准确的前提下,清晰地表达出来。不过也正因为如此,笔者才真正体会到 费曼学习法 的高效之处。书的内容是对自己知识体系的整理成果,是经过思考后形成的结构化框架,最后分享给读者所获得的认同、交流、批评,更是额外的收获。

扩展阅读

  1. Show Your Work
  2. Anything You Want

联系我

Go 快速入门指南 - 序言的更多相关文章

  1. AngularJS快速入门指南20:快速参考

    thead>tr>th, table.reference>tbody>tr>th, table.reference>tfoot>tr>th, table ...

  2. AngularJS快速入门指南19:示例代码

    本文给出的大部分示例都可以直接运行,通过点击运行按钮来查看结果,同时支持在线编辑代码. <div ng-app=""> <p>Name: <input ...

  3. AngularJS快速入门指南18:Application

    是时候创建一个真正的AngularJS单页面应用程序了(SPA). 一个AngularJS应用程序示例 你已经了解了足够多的内容来创建第一个AngularJS应用程序: My Note Save Cl ...

  4. AngularJS快速入门指南17:Includes

    使用AngularJS,你可以在HTML中包含其它的HTML文件. 在HTML中包含其它HTML文件? 当前的HTML文档还不支持该功能.不过W3C建议在后续的HTML版本中增加HTML import ...

  5. AngularJS快速入门指南16:Bootstrap

    thead>tr>th, table.reference>tbody>tr>th, table.reference>tfoot>tr>th, table ...

  6. AngularJS快速入门指南15:API

    thead>tr>th, table.reference>tbody>tr>th, table.reference>tfoot>tr>th, table ...

  7. AngularJS快速入门指南14:数据验证

    thead>tr>th, table.reference>tbody>tr>th, table.reference>tfoot>tr>th, table ...

  8. AngularJS快速入门指南13:表单

    一个AngularJS表单是一组输入型控件的集合. HTML控件 HTML输入型标签标包括: input标签 select标签 button标签 textarea标签 HTML表单 HTML表单将各种 ...

  9. AngularJS快速入门指南12:模块

    AngularJS模块定义了一个application. 模块是一个application中不同部分的容器. application中的所有控制器都应该属于一个模块. 带有一个控制器的模块 下面这个a ...

  10. AngularJS快速入门指南11:事件

    AngularJS拥有自己的HTML事件指令. ng-click指令 ng-click指令定义了AngularJS的click事件. <div ng-app="" ng-co ...

随机推荐

  1. 在Linux/redhat中安装amazon-ssm-agent及注意事项

    操作系统:Red Hat Enterprise Linux Server release 7.9 (Maipo) 首先说明一下SSM是什么.引用官网的说明: AWS Systems Manager A ...

  2. 代码随想录第八天 |344.反转字符串 、541. 反转字符串II、剑指Offer 05.替换空格 、151.翻转字符串里的单词 、剑指Offer58-II.左旋转字符串

    第一题344.反转字符串 编写一个函数,其作用是将输入的字符串反转过来.输入字符串以字符数组 s 的形式给出. 不要给另外的数组分配额外的空间,你必须原地修改输入数组.使用 O(1) 的额外空间解决这 ...

  3. Docker Private Registry

    Docker Private Registry 目录 Docker Private Registry Docker Registry Docker Private Registry 使用docker- ...

  4. BigDecimal的运算——加减乘除

    BigDecimal的运算--加减乘除 1.初始化(尽量用字符串的形式初始化) BigDecimal num12 = new BigDecimal("0.005"); BigDec ...

  5. 集训队互测2016Unknown(UOJ191)

    题目链接 前面部分和lzz的题解是一样的. 首先将输入点(x,y)变为(-y,x)然后,只需找一个向量与(-y,x)的点积最大,即找一个向量在(-y,x)上的投影最长.此时所有的点都是在x轴上方的,容 ...

  6. 同一台电脑安装两个不同版本的mysql。简单暴力有效

    1.先找到mysql的安装地址.找到my.ini 2.修改端口号(mysql默认端口是3306)我这里修改为3307 3.打开服务.找到刚刚修改的mysql版本 4.重新启动该服务(我已经安装了mys ...

  7. token字段,请务加在请求地址的头部header

    如下图所示,你必须在请求的头部加上 token参数,主要原因有两个.第一点,这个是登录标志,因为接口访问用不了cookie,所以只能通过这个header请求标志判断用户是否已经登录.第二点,系统有时候 ...

  8. 网页头部的声明应该是用 lang="zh" 还是 lang="zh-CN"?

    网页头部的声明应该是用 lang="zh" 还是 lang="zh-CN"? 遇到问题 不知道大家有没有留意到一个问题,就是使用 VsCode 新建的 html ...

  9. 8.gitlab服务器搭建(基于centos7)

    gitlab服务硬件要求 建议服务器最低配置:2核 2G以上内存(不包含2GB,2GB内存运行的时候内存直接爆掉) 官网给出的推荐配置:4核 4GB内存 支持500个用户,8核 8GB内存 支持100 ...

  10. iOS- 最全的真机测试教程

      想要上架的同学请看:<iOS-最全的App上架教程> 因为最近更新了Xcode 8 ,证书的创建都大同小异,只是在Xcode 8中的设置有一些变化,我就在下面补充,如有什么疑问,请联系 ...