可以先直接使用go自带的http server 框架,这个框架涵盖了绝大多数的功能,比如request response 的基本封装,简单的路由管理,文件上传处理。
专注于为中小企业提供成都网站设计、做网站服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业乌达免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了成百上千家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
如果发现Go 自带的框架解决不了问题,可以引入相应的第三方组件,比如ORM可以采用中国人写的gorm 比如web 的session 管理可以使用gorilla/session
当然你也可以直接上大一统的框架比如你提到的beego 还有大名鼎鼎的martini 。不过不推荐,因为这样的大框架和Go 语言本身的模块设计有冲突。
实际开发建议用vscode 加Go 插件来做IDE,基本包含了其他成熟IDE的所有功能,而且还自带强大的debug 功能。其他IDE debug 用起来非常麻烦比如idea 和liteIDE。题主也可以自己试下。
适合。框架足够成熟了 A Survey of 5 Go Web Frameworks
小型项目你甚至不用框架,用net/http http - The Go Programming Language
常用库也成熟了 Top - Go Search
golang的web后端即使不concurrent也比php,ruby,python快很多很多
golang里用concurrent真的非常方便,非常非常快,超大web项目golang scale成本低
如果你想,golang的部署可以比php更方便,使用go get和http.ServeAndListen()可以不用nginx和apache
对于文件改动重新编译其实并不是大问题,看pilu/fresh · GitHub,其实你自己写shell脚本(也可以直接用go写,因为它本身就是系统语言)监控文件系统改动然后自动重新build,即使是C/C++的项目这也不是大问题,人们不用C/C++写web是因为它们不是写web app的最佳选择
golang写的代码编译通过后,要比scripting language鲁棒,因为go compiler强制一些最佳实践
所以如果你熟悉go或者愿意投资时间,这是一种很值得用的语言,如果你不熟悉而且项目周期很紧,还是建议你用自己最熟悉的语言,学go本身需要花时间的。
我最近一个web项目是用Gorilla写的,也是边学边做 Gorilla, the golang web toolkit;这个Go by Example 挺有用。
不会成为web主流
go是设计初衷来做系统应用和取代C++的....
目前主要用传统编译型语言编译成机器码的形式...
和web开发的跨平台标准化等特性有距离...
会成为很方便系统应用开发、客户端开发的语言...
通过beego快速创建一个Restful风格API项目及API文档自动化:
Go 语言构建 RESTful Web 服务:
Golang中使用 JWT认证来 保障Restful JSON API的安全(英文):
polaris: 一个用go实现的支持restful的web框架:
关于RESTFUL API 安全认证方式的一些总结:
有没有人用golang实现过restful框架的实例:
Micro 一个用Go语言实现的微服务框架:
基于微服务库的可插拔RPC go-micro:
golang适合做web开发吗?:
a-survey-of-5-go-web-frameworks:
Ozzo Framework:
avelino/awesome-go:
Beego Framework:
golang其实不适合做web开发:
Go语言现有Web开发框架:
使用Golang快速构建WEB应用:
Martini 极好的 Go WEB 框架:
golang 有哪些比较稳定的 web 开发框架?:
1、服务器编程:以前你如果使用C或者C++做的那些事情,用Go来做很合适,例如处理日志、数据打包、虚拟机处理、文件系统等。
2、分布式系统、数据库代理器、中间件:例如Etcd。
3、网络编程:这一块目前应用最广,包括Web应用、API应用、下载应用,而且Go内置的net/http包基本上把我们平常用到的网络功能都实现了。
4、开发云平台:目前国外很多云平台在采用Go开发,我们所熟知的七牛云、华为云等等都有使用Go进行开发并且开源的成型的产品。
5、区块链:目前有一种说法,技术从业人员把Go语言称作为区块链行业的开发语言。如果大家学习区块链技术的话,就会发现现在有很多很多的区块链的系统和应用都是采用Go进行开发的,比如ehtereum是目前知名度最大的公链,再比如fabric是目前最知名的联盟链,两者都有go语言的版本,且go-ehtereum还是以太坊官方推荐的版本。
自1.0版发布以来,go语言引起了众多开发者的关注,并得到了广泛的应用。go语言简单、高效、并发的特点吸引了许多传统的语言开发人员,其数量也在不断增加。
使用 Go 语言开发的开源项目非常多。早期的 Go 语言开源项目只是通过 Go 语言与传统项目进行C语言库绑定实现,例如 Qt、Sqlite 等。
后期的很多项目都使用 Go 语言进行重新原生实现,这个过程相对于其他语言要简单一些,这也促成了大量使用 Go 语言原生开发项目的出现。