用gorm+gin实现一个博客 快速入门go 后端求职新方向

Go在互联网新贵包括技术型创业公司的渗透率非常高,比如字节、滴滴、小红书、Bilibili或者其他科技型创业公司都是主要开发语言。

今天给大家带来一个超值的Go实战项目: go博客系统

这个项目使用Go语言的标准库和模板引擎开发,代码简洁易懂,特别适合Go语言初学者,能快速入门Go 后端开发。

Go的简洁和高性能、严谨的语法非常适合后端编程,如果做go后端编程,最常见的2个库:gingorm 是必须的。

  • gin 是go最热门的框架🔥, 达到了惊人的78.7k的Star
  • gorm 是国人大牛(Jinzhu)开发的 gorm 库,同样高达36.8K的Star

Go后端开发,这两个库就好比Java的Springboot+Mybaits的地位,做go后端编程必掌握的技术

项目介绍

实现一个轻量级的个人博客系统,包含以下核心功能:

  • 提供一个管理后台,能支持文章的发布、编辑、删除
  • 博客有文章评论系统,内容采用Markdown渲染
  • 服务端渲染,支持golang内置的模版引擎,生成SEO优化的HTML内容
  • 用传统的HTTP表单提交实现数据的提交,不需要学习Javascript就可以实现完整功能

用到技术栈:

  • 后端:Go标准库,Gin, Gorm, 没有任何多余的框架依赖,无需微服务架构和前后端分离,回归到最简单的Web开发技术栈
  • 模板引擎:html/template,文章内容采用Markdown格式,在服务器上渲染成HTML
  • 数据库:SQLite, 不需要复杂的MySQL就可以运行
  • 前端样式:TailwindCSS,不需要写一行CSS就可以实现精美的UI效果

项目亮点

🏆 博客基于Golang, gin, gorm 实现,整体代码不到1000行

  • 🎉 没有使用前端框架,前端页面使用纯HTML和CSS,不需要前后端分离
  • 👍 82%的代码覆盖率,简单好理解的单元测试入门教程
  • 📚 数据库支持sqlite和MySQL,单机就可以部署,也可以直接部署到生产环境上
  • 🎁 不需要写SQL, 用orm完成所有的工作
  • ✍️ 支持Markdown编辑
  • 🔥 支持评论
  • 📖 支持分页
  • 🔧 自带一个管理后台
  • 🚀 代码简单,适合新手学习,gin路由、模版、表单、认证一次性学会

项目的结构

给大家看看代码的截图,就几个文件就可以实现完整的功能:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

我们也有详细的讲解文档,每个功能模块都做了详细的讲解,确保新手不迷路

在这里插入图片描述
除此之外,我们也补全了单元测试,达到82.5%的代码覆盖率

在这里插入图片描述

学习收获

这个不到1000行代码,特别适合学后端开发,Go最大的特点就是简单,你甚至需要自己写一个main的入口函数,并且需要自己启动一个HTTP服务器,通过这种几乎原始但简单的方式,你能掌控每个环节,不会让程序运行一行多余的代码:

  • 如何启动一个Go程序,启动一个HTTP服务器,并且设置路由
  • 如何配置HTTP路由,实现不同的Method分配到调用函数,并且通过中间件的实现扩展
  • 学会go的模板引擎,实现自定义的模版函数
  • 数据库的基础操作,用gorm不写一行SQL做到CRUD
  • 如何实现HTTP的提交表单
  • 如何实现用户的认证,5行代码就可以实现权限管理
  • 不需要CSS知识,如何学会做美观的UI,简直是后端开发人员的救星框架:TailwindCSS

项目展示:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

课程大纲

  1. 项目介绍: 讲解一个博客系统的设计要点
  2. 文章管理功能开发: 设计文章系统,基于Markdown实现文章的编辑
  3. 评论功能开发: 评论的设计,包括如何提交表单数据
  4. 后台管理功能开发: 实现管理员后台,方便做文章、评论的管理
  5. 项目部署和启动: 如何讲自己的代码发布到线上,支持MySQL,更专业的服务发布上线

真正的学会吃透这个课程

所有的实战项目,如果你只看是只能看懂,唯一吃透的方式就在在课程的基础上继续深入做功能开发

实践是学习编程的唯一方式!

我也留了一些实践作业,自己动手实现功能,真正的把课程吃透,遇到问题可以群和老师沟通:

  1. 实现复杂路由,实现sitemap.xml自动化生成
  2. 实现用户系统,支持多用户
  3. 实现前后端分离,提示操作体验
  4. 实现单元测试,提升开发效率
  5. 实现高级编辑器,支持图片上传

适合人群

  • GO语言的初学者
  • 学习Go语法后想快速搭建项目的开发者
  • 想快速开发个人博客系统的开发者

学习交流

入职啦公众号,里面有详细的介绍

如果你现在正在学习Go语言,或者需要一个实战项目可以快速入门,再者想要一个个人的博客系统,这个项目是非常适合你的选择。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值