Beego 框架入门篇:Beego! 一个 Golang Web 框架

对于一个想要用 Golang 开发 Web 应用的技术人来说,掌握一个框架是必要的,因为这些工具可以让我们工作起来更加的有效率,也能提高自己在职场上的竞争力。我在这里对 Beego 框架抛砖引玉,看完这些系列课程之后,你可以达到熟练使用 Beego 框架的来编写 Web 应用。

学习一门框架,我大概会从以下几个维度先去了解值不值得学习。第一是作者的来历,够不够牛逼;第二是框架的使用公司和人群是不是多,官网是不是提供完整的文档,Github 上 star 和 fork 数是多少;第三进入官网看一下 quickstart 是否有介绍框架的基础架构。如果这些都还 ok 的话,就值得你去学会来解决工作中的问题。

Beego 框架的作者是 Asta 谢,Go 语言技术专家,目前就职于 Apple(就这一点,其实就值得我们去学习 Beego,我们技术人 Apple、Google 背景的同学真的很少),Gopher China 社区创始人,一直在致力于Go 语言在开源社区的推广,在自己常见的技术实战中编写了《Go Web 编程》这本书。是国内 Go 语言发展推动者之一,(七牛云许世伟也是)。既然花这么多精力来推广 Go 语言,官网的文档应该会写的非常不错!

Beego 官网地址是 http://beego.me,你可以在浏览器里面打开。并可以找到「开发文档」这个选项,点击进去,就是完整的文档了,我们接下来的学习旅程都少不了这个根基,用好这份文档,将会让你注意到更多细节:

Beego 开发文档

Github 仓库也是必不可少的:https://github.com/astaxie/beego,我们可以去看看 star 数量和 fork 数量。是的,就是这个框架稳居 Golang Web 框架第一,使用者遍及世界各地,各大互联网公司使用众多,如华为、京东、美团等:

Beego 知名用户

既然 Beego 这么火,那么 Beego 的架构是怎样的呢,我们必须在正式学习之前大致了解,以确定我们的学习方向是正确的。Beego 是一个典型的 MVC 结构的 Web 框架,看下图:

Beego MVC 架构

从图中可知,Beego 已经为我们实现了 MVC 模式的架构(关于 MVC 模式的简单介绍看这里),Controller 层接受参数,校验参数,Model 从 DB 获取数据,View 展示用 Model 取回来的数据。规划好这些概念之后,我们在搭建项目的时候代码目录规划会特别清晰,你会知道什么代码应该放到哪里,这是让人很舒服的一件事情(如果你也有过为项目目录设计而烦恼的经验的话,就能亲身体会了):

Beego 目录结构

最后,我想提醒大家的时,学习需要多动手,古人云:读万卷书,行万里路,让我们就此开启 Beego 的学习之旅!

package main

import "fmt"

func main() {
   fmt.Println("Hello Beego!")
}

附:Beego 系列教程学习路线图(初步规划)

Beego 学习路线图

声明:本系列教程整理自「Go 语言研习社」Beego 系列,作者小白。Go 语言研习社是一个为初学者提供的、研究和学习 Go 语言的优质社群,你可以微信扫码下面的二维码免费加入:

Go 语言研习社