• 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
  • 相关阅读:
    一面高频vue面试题
    2021年的一封情书:指针
    人工智能安全-2-非平衡数据处理(2)
    Qt创建线程(使用moveToThread方法创建子线程)
    9.16 Day53---登录服务器
    02_面向对象高级_继承
    2023-8-20 CVTE视源股份后端开发实习一面
    性能压测工具 —— wrk
    Spring Boot 加载本地 JAR 包的技术实践
    SQL Server 数据库变成单个用户怎么办
  • 原文地址:https://blog.csdn.net/weixin_50196917/article/details/125615511