为什么想要开篇这么一个系列博客主题?

我想有很多小伙伴想要问我这个,其实主要有以下几个原因。

在粉丝面前丢脸了

之前写过几篇关于java分布式系统的一些坑,然后就有小伙伴挺崇拜的,认为老猫啥都会,甚至想找我做老师,比如:

上面这个回答,事后老猫想想回答的真是不谦虚,还真的是把自己当成哪门子大牛了,还回答有问题就来问,其实顶多也就是一起讨论一下。刚回答完,后面就被打脸了。

老猫真的不晓得什么是ceph,而且还是头一次听说,写到这里,可能很多小伙伴要喷我了,“lowB 这个都不晓得”。后来老猫去网上搜了一下,原来这是个分布式文件系统,底层是C++ /c开发的。这哥们是个C++程序员。还好哥们也没有嘲讽我,而是表明了他近期的意向。

原来哥们其实是想转型学习go,并且希望参与一个项目,其实说实在的,老猫也没怎么接触go,老猫的主要后端语言是java,关于go之前也就了解了一些皮毛。也不晓得当时怎么了,脑子一热,就说要搞个“go爬虫系统”和这个哥们分享。

这牛逼也算是吹出去了,接下来也得自己扛了,所以,这也是老猫想写这个系列博客的其中一个原因。

GO现在真的很火

另外的,其实go现在是真的很火,咱姑且先不去谈论现在学习go语言的人数趋势是什么,作为程序员,我相信很多小伙伴都关注了多多少少的一些公众号,这些公众号,动不动就是给你来个“XXX大厂全面转型GO”。然后就是关于GO的铺天盖地的广告培训。我想很多朋友都会看到这些,你说作为java后端或者其他后端开发人员,看到这种广告心里肯定多多少少会掀起波澜。

现在我们再来回过头来看看现有的go语言的趋势是不是真的如此。我们一起来看一下两个图

从以上图中,我们可以很明显地看到go语言的发展趋势这几年是真的很快,这是统计到19年的一个趋势,我们可以很明显地看到go从一门非主流语言已经发展成为了主流语言。

另外的,其实目前很多比较前沿的技术,也都在使用go语言,比如区块链技术,云计算等,大家比较熟悉的docker以及k8s其实就是用的go语言开发出来的。

那么为什么会选择用go语言来开发呢,老猫也去度娘了一下,简单地概括,主要是因为它开发快并且运行也快,并且能够相当容易地就支持多线程,它是一门真多其他语言的痛点进行设计出来的语言。它非常特别,没有“对象”,没有继承多态,没有泛型,没有try/catch。有接口,函数式编程,CSP并发模型(goroutine+channel)。(具体老猫也暂时还没体会,这是听说有这么牛逼,接下来的日子,老猫会慢慢和大家分享并体会)

接下来的计划

既然咱们要干,那么咱就好好和大家同步一下接下来的计划。距离2022年还有两个月左右的时间,咱们给自己定一个小目标,在2022年的元旦,咱们完成go语言的学习,并且完成一个真实的开源小项目。接下来,老猫会以一周一更到两更的形式,发布到公众号“程序员老猫”上,大家可以关注“程序员老猫”,来一起学习一起进步,并且更多地是过来督促一下老猫,如果你也在犹豫要不要学习go,你也坚持不下去,那么何不和老猫一起来打卡呢?一起进步的路上怎么能少掉屏幕前的你呢?“滴滴叭叭”,老猫号go快车快要发车了,还没有上车的小伙伴可以赶紧上车了。

跟着老猫来搞GO,系好安全带,准备发车!的更多相关文章

  1. 跟着老猫来搞GO,集跬步而致千里

    上次博客中,老猫已经和大家同步了如何搭建相关的GO语言的开发环境,相信在车上的小伙伴应该都已经搞定了环境了.那么本篇开始,我们就来熟悉GO语言的基础语法.本篇搞定之后,其实期待大家可以和老猫一样,能够 ...

  2. 跟着老猫来搞GO-容器(1)

    前期回顾 前面的一章主要和大家分享了GO语言的函数的定义,以及GO语言中的指针的简单用法,那么本章,老猫就和大家一起来学习一下GO语言中的容器. 数组 数组的定义 说到容器,大家有编程经验的肯定第一个 ...

  3. 跟着老猫来搞GO,基础进阶

    回顾一下上一篇博客,主要是和大家分享了GO语言的基础语法,其中包含变量定义,基本类型,条件语句,循环语句.那本篇呢就开始和大家同步一下GO语言基础的进阶. 函数的定义 上次其实在很多的DEMO中已经写 ...

  4. 跟着老猫来搞GO-内建容器Map

    前期回顾 在上面的文章中,老猫和大家分享了GO语言中比较重要的两种数据结构,一种是数组,另外一种是基于数组的slice.本篇文章想要继续和大家分享剩下的容器以及字符字符串的处理. MAP map的定义 ...

  5. 跟着老猫来搞GO,"面向对象"

    前言 之前和大家分享了容器以及相关的基础语法,以及函数,相信如果大家有接触过C++或者java的朋友都晓得面向对象,其实在GO语言中也存在面向对象,但是还是比较简单的,下面我们来看一下GO语言的&qu ...

  6. 跟着老猫一起来学GO,环境搭建

    老猫的GO学习系列博客已经正式发车了,相信大家以前学习一门编程语言的时候也有经验,咱们一般都是从环境开始,在此呢,大家也跟着老猫从最开始的搭建环境开始. GO语言的安装 首先呢,我们开始需要下载GO语 ...

  7. 我用Axure制作了一款火影小游戏 | PM老猫

    Axure不仅仅是一个原型工具,除了原型之外还可以用来制作一些静态网页,这点对于不懂代码或前端的同学来说挺实用.之前整理了一版<Axure函数自查表>,因为感觉内容太多又对前端样式及脚本感 ...

  8. JavaScript进阶篇 - -第1章 系好安全带

    第1章 系好安全带 html,body { font-size: 15px } body { font-family: Helvetica, "Hiragino Sans GB", ...

  9. 跟着老王学Python

    亲爱的朋友:     欢迎你!很高兴能在这里见到你,你能来到这里说明你真的很喜欢python,很想把python给学好!我觉的你很幸运,开始我学python的时候比较少资料,学起来也比较头疼,现在随着 ...

  10. 【vue】跟着老马学习vue-数据双向绑定

    学习了node.js教程,只能说是有了一定的了解,之前也了解了webpack和es6的核心内容,也看过vue2.0的官网教程,并结合视频看过项目,但是理解和运用仍然存在很多问题,接下来的一段时间,跟着 ...

随机推荐

  1. JavaScript高级程序设计笔记04 变量、作用域与内存

    变量.作用域与内存 变量 特定时间点一个特定值的名称. 分类 原始值:按值访问 复制:两个独立使用.互不干扰 引用值(由多个值构成的对象):按引用访问 操作对象时,实际上操作的是对该对象的引用(ref ...

  2. 使用 Hexo 搭建个人博客并部署到云服务器

    目录 1 整体流程 2. 本地环境准备 2.1 安装 Node.js 和 Git 2.2 安装 Hexo 3. 服务端环境准备 3.1 Nginx 环境配置 3.1.1 安装 Nginx 3.1.2 ...

  3. 明解Java第一章练习题答案

    @ 目录 练习1-1 练习1-2 练习1-3 <明解Java>书籍其他章节答案 练习1-1 如果没有表示程序语句末尾的分号,结果会怎么样呢?请编译程序进行确认. 答:编译器报错 练习1-2 ...

  4. 【UniApp】-uni-app-CompositionAPI应用生命周期和页面生命周期

    前言 好,经过上个章节的介绍完毕之后,了解了一下 uni-app-OptionAPI应用生命周期和页面生命周期 那么了解完了uni-app-OptionAPI应用生命周期和页面生命周期之后,这篇文章来 ...

  5. setup的执行时机

    setup是在beforeCreate之前执行的,也就是vue实例还未被创建,因为setup中并没有this指针 <script> export default { setup() { c ...

  6. MyBatis中获取参数值的两种方式:${} 和 #{},以及它们之间区别是什么?

    MyBatis中获取参数值的两种方式 ${}:的本质就是字符串拼接 #{}:的本质就是占位符赋值 ① 使用${}占位符,在字符串拼接的方式拼接sql,若为字符串类型或为日期类型的字段进行赋值时,需要手 ...

  7. TiDB故障处理之让人迷惑的Region is Unavailable

    背景 最近某集群扩容了一批物理机,其中 TiKV 节点有6台机器12个实例,同时调整了 label 设置增加了一层机柜级容灾.因为前期做了比较充分的准备工作,到了变更窗口只等着执行scale-out就 ...

  8. pytest框架中conftest.py的作用

    conftest.py 是 pytest 框架中的一个特殊文件.它允许你为测试提供自定义的配置和钩子函数.以下是 conftest.py 的主要作用: 提供全局配置:你可以在 conftest.py ...

  9. Vue学习笔记-介绍&双向绑定

  10. Napping - vulnhub - writeup

    Napping - vulnhub - writeup 信息收集 目标开放了22和80. root@kali ~ » arp-scan -I eth1 -l Interface: eth1, type ...