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

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

在粉丝面前丢脸了

之前写过几篇关于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. SNN_STDP

    STDP 是一种时间不对称的Hebbian学习形式,由突触前和突触后神经元的脉冲时间的时间相关性引起的.是一种双向Hebbian学习法则. 突触权重变化\(\Delta w\)依赖于突触前脉冲的到达和 ...

  2. NewsCenter

    打开界面有一个搜索框 抓包查看是post形式提交的数据包 这时候试试sql注入,万能密码直接全都显示,那就说明存在sql注入漏洞 这里试试用sqlmap自动注入试试(POST类型的sql注入第一次尝试 ...

  3. 神经网络入门篇:详解向量化实现的解释(Justification for vectorized implementation)

    向量化实现的解释 先对几个样本计算一下前向传播,看看有什么规律: 公式1.16: \(z^{[1](1)} = W^{[1]}x^{(1)} + b^{[1]}\) \(z^{[1](2)} = W^ ...

  4. Util应用框架基础(七) - 缓存

    本节介绍Util应用框架如何操作缓存. 概述 缓存是提升性能的关键手段之一. 除了提升性能,缓存对系统健壮性和安全性也有影响. 不同类型的系统对缓存的依赖程度不同. 对于后台管理系统,由于是给管理人员 ...

  5. UIPath动态操作控制

    如果放弃太早,你永远都不知道自己会错过什么. 一.浏览器 打开浏览器:OpenBrowser: 关闭浏览器:Close Tab.Close Application.Kill Process: 二. 鼠 ...

  6. iOS APP包分析工具

    介绍 分享一款用于分析iOSipa包的脚本工具,使用此工具可以自动扫描发现可修复的包体积问题,同时可以生成包体积数据用于查看.这块工具我们团队内部已经使用很长一段时间,希望可以帮助到更多的开发同学更加 ...

  7. .net下功能强大的HTML解析库HtmlAgilityPack,数据抓取必备

    HtmlAgilityPack是一个.NET平台下的HTML解析库,它可以将HTML文本转换为DOM文档对象,方便我们对HTML文本进行操作和分析.HtmlAgilityPack支持XPath语法,可 ...

  8. .NET开源的处理分布式事务的解决方案

    前言 在分布式系统中,由于各个系统服务之间的独立性和网络通信的不确定性,要确保跨系统的事务操作的最终一致性是一项重大的挑战.今天给大家推荐一个.NET开源的处理分布式事务的解决方案基于 .NET St ...

  9. 利用 Excel 对学生的成绩进行分析管理

    利用 Excel 对学生的成绩进行分析和管理是一种常见且有效的方法.以下是一些步骤和技巧,以帮助您实施这一过程: 1. 数据输入:将学生成绩数据输入到 Excel 中的一个工作表中.每个学生可以有一行 ...

  10. 从ClickHouse通往MySQL的几条道路

    一.应用背景简介 ClickHouse 是 Yandex(俄罗斯最大的搜索引擎)开源的一个用于实时数据分析的基于列存储的数据库,其处理数据的速度比传统方法快 100-1000 倍.ClickHouse ...