• go语言有哪些web框架


    前言

    由于工作需要,这些年来也接触了不少的开发框架,Golang的开发框架比较多,不过基本都是Web”框架”为主。这里稍微打了个引号,因为大部分”框架”从设计和功能定位上来讲,充其量都只能算是一个组件,需要项目使用的话得自己四处再去找找其他的组件,或者自己造轮子。如果用于Web开发,这些”框架”的Web开发能力均已完备,无太大差别,且均是自标准库net/http.Server的二次封装。由于框架众多,这里笔者只选择了几个曾做过技术选型评估、较为熟悉,且目前比较流行和典型的Golang”框架”,从适用于业务项目开发框架的角度,做一个简单的横向比较,以便大家在项目框架选型时做个参考。

    评估指标

    由于头条对表格支持得不太好,因此这里通过截图的形式分享给大家。原本表格中带有相关的链接也发不出来,想了解详情的朋友请点击文章末尾的“了解更多”。
    在这里插入图片描述
    Golang框架选型比较: goframe, beego, iris和gin 评估指标1
    在这里插入图片描述
    Golang框架选型比较: goframe, beego, iris和gin 评估指标2

    横向比较

    以下部分对比参数涉及评分的部分,满分总共按照10分为标准。
    如果标记为”-“的部分,表示不支持或者需要引入第三方插件支持。
    以下特性如果官网提供文档则直接提供文档地址,找不到文档但是笔者知道有就会简单标注。

    在这里插入图片描述
    Golang框架选型比较: goframe, beego, iris和gin 横向比较1

    在这里插入图片描述
    Golang框架选型比较: goframe, beego, iris和gin 横向比较2

    在这里插入图片描述
    Golang框架选型比较: goframe, beego, iris和gin 横向比较3

    综合选择

    每个版本都有自己的优势和劣势,可以根据自己的实际业务和需求进行选择;

    版本名称版本说明版本地址
    GoFrame+Layui混编版采用GoFrame、Layui等框架研发https://gitee.com/easygoadmin/EasyGoAdmin_GoFrame_Layui
    Beego+Layui混编版采用Beego、Layui等框架研发https://gitee.com/easygoadmin/EasyGoAdmin_Beego_Layui
    Gin+Layui混编版采用Gin、Layui等框架研发https://gitee.com/easygoadmin/EasyGoAdmin_Gin_Layui
    Iris+Layui混编版采用Iris、Layui等框架研发https://gitee.com/easygoadmin/EasyGoAdmin_Iris_Layui
    Revel+Layui混编版采用Revel、Layui等框架研发https://gitee.com/easygoadmin/EasyGoAdmin_Revel_Layui
    Echo+Layui混编版采用Echo、Layui等框架研发https://gitee.com/easygoadmin/EasyGoAdmin_Echo_Layui
    GoFrame+EleVue前后端分离版采用GoFrame、Vue、ElementUI等框架研发前后端分离版本https://gitee.com/easygoadmin/EasyGoAdmin_GoFrame_EleVue
    Beego+EleVue前后端分离版采用Beego、Vue、ElementUI等框架研发前后端分离版本https://gitee.com/easygoadmin/EasyGoAdmin_Beego_EleVue
    Gin+EleVue前后端分离版采用Gin、Vue、ElementUI等框架研发前后端分离版本https://gitee.com/easygoadmin/EasyGoAdmin_Gin_EleVue
    Iris+EleVue前后端分离版采用Iris、Vue、ElementUI等框架研发前后端分离版本https://gitee.com/easygoadmin/EasyGoAdmin_Iris_EleVue
    Revel+EleVue前后端分离版采用Revel、Vue、ElementUI等框架研发前后端分离版本https://gitee.com/easygoadmin/EasyGoAdmin_Revel_EleVue
    Echo+EleVue前后端分离版采用Echo、Vue、ElementUI等框架研发前后端分离版本https://gitee.com/easygoadmin/EasyGoAdmin_Echo_EleVue
    GoFrame+AntdVue前后端分离版采用GoFrame、Vue、AntDesign等框架研发前后端分离版本https://gitee.com/easygoadmin/EasyGoAdmin_GoFrame_AntdVue
    Beego+AntdVue前后端分离版采用Beego、Vue、AntDesign等框架研发前后端分离版本https://gitee.com/easygoadmin/EasyGoAdmin_Beego_AntdVue
    Gin+AntdVue前后端分离版采用Gin、Vue、AntDesign等框架研发前后端分离版本https://gitee.com/easygoadmin/EasyGoAdmin_Gin_AntdVue
    Iris+AntdVue前后端分离版采用Iris、Vue、AntDesign等框架研发前后端分离版本https://gitee.com/easygoadmin/EasyGoAdmin_Iris_AntdVue
    Revel+AntdVue前后端分离版采用Revel、Vue、AntDesign等框架研发前后端分离版本https://gitee.com/easygoadmin/EasyGoAdmin_Revel_AntdVue
    Echo+AntdVue前后端分离版采用Echo、Vue、AntDesign等框架研发前后端分离版本https://gitee.com/easygoadmin/EasyGoAdmin_Echo_AntdVue
  • 相关阅读:
    「设计模式」六大原则之五:依赖倒置原则小结
    小程序中使用echarts的相关配置以及折线图案例(简单易懂)
    大一新生HTML期末作业个人介绍博客 使用html+css+javascript+jquery技术制作网页,含有动画,hover效果,含有表格布局
    TypeError: list indices must be integers or slices, not tuple 错误原因解决方法
    【C语言】联合union
    44、DeVRF
    神经网络文字识别系统,神经网络文字识别插件
    TestStand-从LabVIEW创建TestStand数据类型的簇
    电气专业发展到头了?
    实战笔记(1.宝塔面板密码忘记问题解决2.springboot项目ssl证书解决3.微信小程序上线过程(域名无法访问问题解决))
  • 原文地址:https://blog.csdn.net/weixin_50196917/article/details/125615511