【Beego】(一)Beego介绍与环境搭建

一、Beego框架概述

 

        官网:Homepage - beego: simple & powerful Go app framework

 

        Beego 是一个快速开发 Go 应用的 HTTP 框架,他可以用来快速开发 API、Web 及后端服务等各种应用,是一个 RESTful 的框架,主要设计灵感来源于 tornado、sinatra 和 flask 这三个框架,但是结合了 Go 本身的一些特性(interface、struct 嵌入等)而设计的一个框架。

 

        Beego是用Go语言开发的高效的HTTP框架,可以用来快速开发APl、Web应用及后端服务等各种应用。Beego是一个RESTful的框架,主要设计灵感来源于Tornado、Sinatra和Flask这3个框架。它还结合了Go语言自身的一些特性(接口、结构体嵌入等)。

 

二、Beego架构


        Beego是基于多个独立模块构建的,是一个高度解耦的框架。最初在设计Beego时就考虑到了功能模块化,用户即使不适用Beego的HTTP逻辑,也可以独立使用这些模块(例如可以使用cache模块来处理缓存逻辑,使用日志模块来记录操作信息,使用config模块来解析各种格式
的文件)。

e74cef0b0cd9467d9cdd5c26c4c21b4d.png

 

        Beego 是基于八大独立的模块构建的,是一个高度解耦的框架。当初设计 beego 的时候就是考虑功能模块化,用户即使不使用 beego 的 HTTP 逻辑,也依旧可以使用这些独立模块,例如:你可以使用 cache 模块来做你的缓存逻辑;使用日志模块来记录你的操作信息;使用 config 模块来解析你各种格式的文件。所以 beego 不仅可以用于 HTTP 类的应用开发,在你的 socket 游戏开发中也是很有用的模块,这也是 beego 为什么受欢迎的一个原因。大家如果玩过乐高的话,应该知道很多高级的东西都是一块一块的积木搭建出来的,而设计 beego 的时候,这些模块就是积木,高级机器人就是 beego。至于这些模块的功能以及如何使用会在后面的文档逐一介绍。

 

三、Beego的执行逻辑

 

af5c518e10ef49479ef68cf0684ef8d9.png

 

执行逻辑可以拆分为以下几段:

main文件监听启动端口接收请求。
请求经过路由和参数过滤功能被转发给绑定URL的控制器处理。
控制器(Controller)调用Model、Session管理、日志处理、缓存处理模块,以及辅助工具包进行相应的业务处理。其中,模型(Modl)通过ORM直接操作数据库。
业务处理完成,返回响应或视图(View)给请求方。

 

四、项目代码结构

在实际的项目中,可能有增减或改动。

beego
- conf   #配置文件目录
	- app.conf #配置文件
- controllers #控制器目录
	- default.go #默认控制器文件
- main.go #入口
- models #模型目录
- routers #路由目录
	- router.go #路由文件
- static #静态文件目录
	- css # css文件目录
	- img #图片文件目录
	- js #js文件目录
- tests #测试文件目录
	- default_test.go #默认测试文件
- views #视图目录
	- index.tpl #默认视图文件

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

forest_long

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值