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业务

在线文档

相关推荐
JJJennie77721 分钟前
Gemini 3.7 Flash 上线,Google 想让 AI 多干活
开发语言·javascript·ecmascript
启雀AI30 分钟前
培训平台移动端离线学习方案设计与实现:视频缓存、断点续传与进度同步的工程实践
android·学习·缓存·音视频·企业lms
wuyk5551 小时前
Python 第三章:列表 List
服务器·开发语言·python
Evand J2 小时前
【MATLAB例程,车联网7】CACC网联车辆协同控制:ACC对比、V2X时延丢包与队列稳定性,附例程下载链接
开发语言·matlab·车联网
要努力点2 小时前
Python入门第六课
开发语言·python
Bruce_Liuxiaowei3 小时前
从零到可运行:基于 Vue3 + FastAPI + DeepSeek-V3 的 AI 英语单词学习系统全栈实战
人工智能·python·学习·fastapi·全栈·智能体
萧瑟余晖3 小时前
Java深入解析篇三十三之消息队列
java·开发语言
IT爱学堂3 小时前
尚硅谷Java+AI大模型应用开发革新版本 2025年3月
java·开发语言·人工智能
C++ 老炮儿的技术栈3 小时前
Qt5.9.1 Windows 完整开发环境搭建流程
开发语言·c++·windows·qt·编辑器·代码化
xcLeigh3 小时前
Go入门:无类型常量与类型常量的区别
服务器·开发语言·golang