当前位置: 首页 > news >正文

go web单体项目 学习总结

为什么学习go

博主的主语言是Java,目前的工作也是做Java web开发,有了Java的经验后就想着再学一门语言,其实有两个原因,第一是基于兴趣,也想和Java对比下到底有什么不同,在学习go的时候让我更加了解了Java的一些思想,学了go以后才知道Java目前的生态和框架目前就是最强的开发效率也是最高的,go相比之下确实有些简陋。第二是可以试试除了Java,还可不可以有其他的机会。

go学习心得

其实只要会了一门编程语言有了一定的经验后,再学习一门新的语言确实会快很多。在我之前发布的关于go的文章,其实也是自己坚持学习的动力和一些总结,首先我快速的学完go的基础语法,就开始了web单体应用的开发学习,之后就是go微服务的开发学习,以及go的一些中间件等等。和Java不一样(SpringBoot确实强大)的是go其实开发web应用并没有Java爽。比如集成go的swagger就很麻烦,但go的依赖管理比Java更加的方便。除此以外Go没有运行在虚拟机Jvm之上,但是有GC。Go可以直接打包linux windows mac的包,也可以构建成docker image等。大家熟悉的docker k8s  ollama 都是使用go开发的。

go-web单体项目(脚手架)

我的目录划分

1.base - 全局的配置、变量等

2.cmd - 项目启动时的初始化、以及退出时的操作

3.docs - go swag自动生成的在线文档

4.internal - web业务开发

5.router - 接口的总路由

技术栈

go+gin+mysql+swagger+redis+viper+zap

web业务

在线文档

http://www.lryc.cn/news/491315.html

相关文章:

  • Cocos游戏优化
  • wsl2的Ubuntu18.04安装ros和anaconda
  • 基于迅为RK3568开发板全国产平台,快速实现APP开机自启动技术分享
  • C++网络编程之多播
  • 不只是请求和响应:使用Fiddler抓包URL和Method全指南(中)
  • 学习threejs,使用设置normalMap法向量贴图创建更加细致的凹凸和褶皱
  • Hive构建日搜索引擎日志数据分析系统
  • Vue 3 defineModel: 简化组件的双向绑定
  • 【Flutter】搭建Flutter开发环境,安卓开发
  • Linux中的共享内存
  • SpringBoot中忽略实体类中的某个属性不返回给前端的方法
  • ubuntu 安装proxychains
  • pytorch四种单机多卡分布式训练方法
  • archlinux 触摸板手势配置
  • djinn:1 靶场学习小记
  • kafka消费者组和分区数之间的关系是怎样的?
  • 【go】查询某个依赖是否存在于这个代理
  • 如何从postman中导出所有集合Collection
  • 在 Spring Boot 中实现多种方式登录(用户名、手机号、邮箱等)的不正经指南
  • .NET平台用C#添加动作到PDF文档
  • 大数据治理:概念、框架与实践应用
  • Vue.observable 全解析:Observable 是什么及使用场景剖析
  • MySQL基础知识大总结
  • 池化技术、Commons Pool介绍
  • 下载并安装Visual Studio 2017过程
  • 菊风视频能力平台开发服务正式入驻华为云云商店,成为华为云联营联运合作伙伴
  • springboot整合kafka
  • Python深度学习框架:PyTorch、Keras、Scikit-learn、TensorFlow如何使用?学会轻松玩转AI!
  • 【Linux】安装cuda
  • 为什么DDoS防御很贵?