准备写个Golang开发的教程
进入golang的开发已经差不多两年了,最近打算写个Golang的教程。目的是让有开发基础,没接触过Golang的人能够愉快高效地写出Golang项目。
1
记得17年底时候,有个特别小的项目,准备试试用Golang来写,哪段时间也不太忙,项目也比较小,还用Lua写了一遍作为兜底方案。其实对一个写过几年代码的人来说,查查Go的文档,写一个Go的项目并不是多难的事,使用Golang写这个项目并没有花费多大的事,应该在两周左右。当时是第一次写由于不知道一些公用第三方的库,有些功能上就显得非常费劲。比如,我想记日志,后来都是通过Golang写的文件,不知道有个特别好用并且高效的 uber-go/zap的日志库。测试环境调试的时候每次都是go build之后在运行build生成的二进制可执行文件,不知道有热加载工具 gin。放到生产环境之后,不知道有supervisor这样的进程管理软件监控 go的可执行文件。然后也不知道使用Nginx代理到 go程序的端口上,Redis连接数据库连接不知道使用连接池,等等。特别多的这种流程和软件使用上的问题,最终,这个项目使用兜底方案lua的版本。所以最近有了写个使用教程的打算,给新的写golang的童靴有个参考。
2
这个教程计划是不会花时间介绍Golang的语法和基础,市面上随便一个教程都有,搜索引擎也很容易查到。主要还是想介绍Golang开发所使用的工具,所依赖的软件,还有项目开发中所使用的第三方的类库。让刚进入golang开发的人知道有XXX软件使用解决什么问题,该怎么使用软件,怎么使用类库,怎么部署golang项目,提高开发效率。第三方好用的软件和类库的推荐和使用。主要是这个方向。
准备写个Golang开发的教程的更多相关文章
- 如何加速golang写业务的开发速度
如何加速golang写业务的开发速度 不要忌讳panic golang写业务代码经常会被吐槽,写业务太慢了,其中最大的吐槽点就是,处理各种error太麻烦了.一个项目中,会有30%或者更多的是在处理e ...
- Windows下visual studio code搭建golang开发环境
Windows下visual studio code搭建golang开发环境 序幕 其实环境搭建没什么难的,但是遇到一些问题,主要是有些网站资源访问不了(如:golang.org),导致一些包无法安装 ...
- Linux下配置Golang开发环境
前几天无意间看到了微信推送的golang开发的消息,看到golang那么牛逼,突然心血来潮想学习一下go.工欲善其事必先利其器,想做go开发,必须先配置好go的开发环境(就像开发Java先安装配置jd ...
- 用golang开发系统软件的一些细节
用golang开发系统软件的一些细节 作者:张富春(ahfuzhang),转载时请注明作者和引用链接,谢谢! cnblogs博客 zhihu Github 公众号:一本正经的瞎扯 (本文的pdf版本) ...
- C#微信公众号开发系列教程二(新手接入指南)
http://www.cnblogs.com/zskbll/p/4093954.html 此系列前面已经更新了两篇博文了,都是微信开发的前期准备工作,现在切入正题,本篇讲解新手接入的步骤与方法,大神可 ...
- 微信公众号开发系列教程一(调试环境部署续:vs远程调试)
http://www.cnblogs.com/zskbll/p/4080328.html 目录 C#微信公众号开发系列教程一(调试环境部署) C#微信公众号开发系列教程一(调试环境部署续:vs远程调试 ...
- 专为设计师而写的GitHub快速入门教程
专为设计师而写的GitHub快速入门教程 来源: 伯乐在线 作者:Kevin Li 原文出处: Kevin Li 在互联网行业工作的想必都多多少少听说过GitHub的大名,除了是最大的开源项目 ...
- C#微信公众号开发系列教程六(被动回复与上传下载多媒体文件)
微信公众号开发系列教程一(调试环境部署) 微信公众号开发系列教程一(调试环境部署续:vs远程调试) C#微信公众号开发系列教程二(新手接入指南) C#微信公众号开发系列教程三(消息体签名及加解密) C ...
- C#微信公众号开发系列教程五(接收事件推送与消息排重)
微信公众号开发系列教程一(调试环境部署) 微信公众号开发系列教程一(调试环境部署续:vs远程调试) C#微信公众号开发系列教程二(新手接入指南) C#微信公众号开发系列教程三(消息体签名及加解密) C ...
随机推荐
- 优化Unity游戏项目的脚本(上)
本文将由捷克独立游戏工作室Lonely Vertex的开发工程师Ondřej Kofroň,分享C#脚本的一系列优化方法,并提供改进Unity游戏性能的最佳实践. 在开发游戏时,我们遇到了游戏过程中偶 ...
- receipt
receipt - 必应词典 美[riˈsiːt]英[rɪ'siːt] n.收据:收入:接受:字据 v.开收据 网络收到:收条:发票 变形复数:receipts: 搭配give receipt:sig ...
- C# MVC Ajax上传多个图片,可预览,可重复上传等
//上传文件 function UploadFile(el) { var dataValue = $(el).attr("data-id"); var ele = dataValu ...
- could not find 'gopls
安装go tools 安装以上后用vim打开go代码,使用函数跳转时会出现: E718: Funcref requiredvim-go: could not find 'gopls'. Run :Go ...
- MWC飞控增加声纳定高的方法(转)
源: MWC飞控增加声纳定高的方法
- Docs-.NET-C#-指南-语言参考-关键字-内置类型-值类型:整型数值类型
ylbtech-Docs-.NET-C#-指南-语言参考-关键字-内置类型-值类型:整型数值类型 1.返回顶部 1. 整型数值类型(C# 参考) 2019/10/22 “整型数值类型”是“简单类型”的 ...
- [原][bigemap][globalmapper]通过bigemap下载全球30米DEM高程数据(手动下载)(下载全球高精度dom卫片、影像、等高线、矢量路网、POI、行政边界)
本文研究了bigemap下载高程数据的方式,但是严重不推荐使用这总手动方式,bigemap这个软件一次只能下载100M以内的高程数据,即使花钱,也不给你提供批量下载dem的方式!也有些其他更好的软件, ...
- Python不带参数的类装饰器
# -*- coding: utf-8 -*- # author:baoshan # 不带参数的类装饰器 # 类装饰器的实现,必须实现__call__和__init__两个内置函数. # __init ...
- OHEM(online hard example mining)
最早由RGB在论文<Training Region-based Object Detectors with Online Hard Example Mining>中提出,用于fast-rc ...
- replicationController 使用
[root@lab2 nginx-harbor]# cat http-test.yaml apiVersion: v1 kind: ReplicationController metadata: na ...