永远的MVC
MVC 是对软件软件系统三个基础部分的描述, 就好像冯·诺伊曼结构 或者哈佛结构对计算机体系结构的定义. MVC 是客观存在的, 是事实.
总之只要你写代码, 无论你怎么写, 她都存在.
对于一个运算表达式:
a := b + c
又或者对于一个函数:
func Foo(b,c interface{})(a interface{}){
// 函数主体, 完成的就是控制了
}
- a 就是 view
- “+” 就是 controller
- b,c 就是model
MVC 就在那里.
常见的做法
软件开发者通常会这么做来, 显示使用 MVC.
- 类型声明, 包含
Controller
这个词 - 文件名, 包含
Controller
这个词 - 目录名, 包含
Controller
这个词
都是好方法. 这增强了代码可读性.
当然如果目录名已经用了Controller
了, 目录之下的文件或者类型声明是否有必要再加上 Controller
, 语言不同, 习惯不同, 并没有定式. Go 语言一向提倡 能省则省
.
目录规划
依据 MVC 那么比较具有可读性的目录看起来是这个样子
├───conf
├───controllers
├───models
└───views
├───login
└───signup
这同样增强了代码可读性.
随项目的进行会新增或者调整目录, 需要就随时改动. 不要担心目录结构的改变和已有代码不兼容.
如果不能迅速调整解决问题. 那说明代码写的不够好.
还有很多目录这里没有规划, 不必担心. 随时用随时调整.