这本书是写什么的?

这是一本 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. 组件化开发3-cocoaPods私有库制作

    一.创建索引项目ZHMCSSpec 1-1 在代码托管网站上建立索引项目ZHMCSSpec(以这个名称为例) 1-2 在本地创建ZHMCSSpec,并与远程索引建立联系 pod repo add ZH ...

  2. Java之POI导出Excel(二):多个sheet

    相信在大部分的web项目中都会有导出导入Excel的需求,之前我也写过一篇导出单个sheet工作表的文章,没看过的小伙伴可以去看哈,链接也给大家放出来了:导出单个sheet 但是在我们日常的工作中,需 ...

  3. 改善C#程序的方法-1 操作字符串

    正确操作字符串 引言: 字符串是使用很频繁的一种数据类型. 如果使用不慎,则会为一次字符串操作所带来的额外性能开销而付出代价. 下面从这几个方面来探讨如何正确操作字符串: 1.确保尽量少的装箱,尽可能 ...

  4. 用户输入学号,如果是以aabcddef开头,并且后边是4位数字,前两位大于06小于等于当前年份。判断用户输入是否合法

    package seven_topic; import java.util.*; public class p_19_1 { public static void main(String[] args ...

  5. PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)详细教程

    摘要:Qt是常用的用户界面设计工具,而在Python中则使用PyQt这一工具包,它是Python编程语言和Qt库的成功融合.这篇博文通过图文详细介绍在PyCharm中如何完整优雅地安装配置PyQt5的 ...

  6. POJ3041 小行星 (二分图匹配模板)

    学了这么久连模板都没有写过,我来补个坑...... 将行看成集合X,列看成Y,障碍看成是X到Y的一条边. 消除次数最少,等价于最小点覆盖问题,最小点覆盖=最大匹配数,跑一遍匈牙利就行了 #includ ...

  7. redis bitmap数据结构之java对等操作

    在之前的文章中,我们有说过bitmap,bitmap在很多场景可以应用,比如黑白名单,快速判定,登录情况等等.总之,bitmap是以其高性能出名.其基本原理是一位存储一个标识,其他衍生知道咱就不说了, ...

  8. 如何在IDEA中自定义模板、快速生成完整的代码?

    文章目录 1.修改现有的模板 2.自定义模板 3.在代码中测试自定义模板 1.修改现有的模板 打开设置面板- settings 2.自定义模板 选择定义模板组 选择创建模板 define 代表应用的范 ...

  9. import cv2报错

    其实是没错的,不过有的python编译器对这个不太支持,把import cv2 改为import cv2.cv2 as cv2就行了.

  10. NAS数据存储之NFS搭建和使用

    NFS是主流异构平台的共享文件系统之一,能够支持在不同类型的系统之间通过网络进行文件共享,允许一个系统在网络上与他人共享目录和文件.NFS传输协议用于服务器和客户机之间的文件访问和共享通信,从而使客户 ...