首页 > 其他分享 >GO框架心得

GO框架心得

时间:2023-09-04 21:32:52浏览次数:32  
标签:大而全 语言 框架 go 开发 GO Go 心得

对于有其它语言开发经验的来说对框架并不陌生,框架是整个或部分系统的可重用设计,表现为一组抽象构件及构件实力间交互的方法,框架是可被应用开发者定制的应用骨架。

简单理解:框架就相当于建房子时,应用梁、柱子、承重墙等做起来的钢筋混凝土结构框架,是一种半成品,里面的功能可以根据自己的需求来实现。


go语言里大部分框架都是这样,使用时都是像一个包一样,不会约束你的文件结构,你想怎么建文件结构就怎么建。

go语言常见的web框架大致可以分为两个流派:

  • 一个是大而全的,如Beego、Revel等;

这类框架的特点是按MVC的方式去构建,如果要开发单体服务,或者需要渲染页面的服务,是比较好的选择;

  • 另一个是小而美的,如Gin等;


在日常开发中如何选择一款适合的框架,首先要考虑当前所处的技术环境是怎样的,如果你所处的技术环境还在单体服务,那就选择大而全的框架,如果你的技术环境已经开始往微服务发展了,最好是选择小而美的框架。

推荐几款常用的框架以及个人感受:

  • Beego:一个Go语言开源的,高性能的MVC框架,功能齐全,但是在orm和route上限制比较大。 规模比较小的站点足够使用,适合从其他语言转过来的开发者(有mvc开发经验)入门。
  • Gin: 一个Go语言写的HTTP Web框架。它提供了Martini风格的API并有更好的性能。简单灵活,个人开发api的首选。


标签:大而全,语言,框架,go,开发,GO,Go,心得
From: https://blog.51cto.com/u_15638932/7359231

相关文章

  • Go Switch
    switch语句使用switch语句来选择要执行的多个代码块中的一个。在Go中的switch语句类似于C、C++、Java、JavaScript和PHP中的switch语句。不同之处在于它只执行匹配的case,因此不需要使用break语句。单一case的switch语法switch表达式{casex://代码块casey://代......
  • go并发编程系列七:开学季抢票返程
    背景:学校开学,3位同学要买票回校上课了,就有了这样一个购票程序,当然,实际情况复杂的多,本文仅供参考。packagemainimport("fmt""sync")typeTrainstruct{stationmap[string]intmusync.Mutex}funcNewTrain()*Train{return&Train{station:......
  • 前端微应用框架(qiankun)调研
    一、安装1、主应用安装qiankun(子应用只做代码配置,无需任何安装)yarnaddqiankun#或者npmiqiankun-S 二、关键参数介绍1、主应用注册微应用import{registerMicroApps,start,setDefaultMountApp,  loadMicroApp  }from'qiankun';registerMicroApps(apps,......
  • go init
       https://blog.csdn.net/upstream480/article/details/128994361    init执行顺序          参考:https://blog.csdn.net/upstream480/article/details/128994361......
  • 【抽奖】重磅!Cloud Ace 荣获三项 2023 年 Google Cloud 年度合作伙伴大奖
    【CloudAce是GoogleCloud全球战略合作伙伴,在亚太地区、欧洲、南北美洲和非洲拥有二十多个办公室。CloudAce在谷歌专业领域认证及专业知识目前排名全球第一位,并连续多次获得GoogleCloud各类奖项。作为谷歌云托管服务商,我们提供谷歌云、谷歌地图、谷歌办公套件、谷歌云认证......
  • avue表单组件后台拖拉拽框架avue-form-design在移动端vant框架与uniapp框架下的动态渲
    avue表单组件后台拖拉拽框架avue-form-design:https://github.com/sscfaith/avue-form-designavue表单组件后台拖拉拽框架avue-form-design在移动端vant框架与uniapp框架下的动态渲染转换适配待补充......
  • 从壹开始前后端开发【.Net6+Vue3】(二)前端框架
    项目名称:KeepGoing(继续前进)介绍工作后,学习的脚步一直停停走走,希望可以以此项目为基础,可以不断的迫使自己不断的学习以及成长将以Girvs框架为基础,从壹开始二次开发一个前后端管理框架在这过程中一步步去学习使用到的技术点,也同时会将在此过程中遇到的问题进行分享项目地址......
  • csgo如何显示帧数(含代码示例)
    CSGO可以通过控制台命令来显示帧数,代码如下:打开CSGO游戏,按下“~”键打开控制台;CSGO可以通过控制台命令来显示帧数,代码如下:1.打开CSGO游戏,按下“~”键打开控制台;2.在控制台输入“cl_showfps1”,即可开启帧数显示;3.若要关闭帧数显示,只需在控制台输入“cl_showfps0”即可。......
  • Golang Gorm 一对多查询 preload预加载
    预加载示例GORM允许使用 Preload通过多个SQL中来直接加载关系,例如:typeUserstruct{gorm.ModelUsernamestringOrders[]Order}typeOrderstruct{gorm.ModelUserIDuintPricefloat64}//查找user时预加载相关Orderdb.Preload("Orders").Fin......
  • go实现ping
     ping是一个经常被用来检查主机间连通性的工具,它基于ICMP协议实现,基本原理很简单:本机给远程机器发送ICMP报文,远程主机接收到ICMP报文后便会回复一个类似的ICMP报文;当本机接收到回复后变认为远程主机是可连接的,否则便认为这个主机是不可达的.为了了解go......