你的位置:首页 > 软件开发 > ASP.net > 后端实现的主要考虑

后端实现的主要考虑

发布时间:2015-07-19 12:00:12
当api设计确定以后,剩下的工作就是实现了。我跳过架构和设计这两个环节,因为用了Rails框架之后,这两个环节的工作简而又简。加之项目本身在前期并不庞大,还不需要过多的设计。 首先介绍一下Rails框架的基本结构吧。Rails框架是一款用Ruby开发的后端MVC框架,由于我只 ...

当api设计确定以后,剩下的工作就是实现了。我跳过架构和设计这两个环节,因为用了Rails框架之后,这两个环节的工作简而又简。加之项目本身在前期并不庞大,还不需要过多的设计。

 

首先介绍一下Rails框架的基本结构吧。Rails框架是一款用Ruby开发的后端MVC框架,由于我只是开发API应用,其中的View层就被我无端地简化了。我的重点工作只剩下定义Model层和实现Controller层即可,最终是在Controller层返回JSON数据,没有显示地定义视图。一个Rails应用的目录结构如下:

 

  app/    - 应用主目录

    controllers/  - 控制器所在目录

    models/       - 模型所在目录

  config/ - 配置所在目录

    routes.rb     - 路由配置文件

    mongoid.rb - MongoDB数据库配置文件

 

其实还有其他的目录,只是我没说而已。Rails框架很自然地为你规定好项目的基本结构,我剩下的工作就是往里面填自己的代码。这一过程大体是:

1. 在app/models下面定义自己的Model(我之前说过,我用的是Mongoid为MongoDB数据库的collection定义模式)

2. 在app/controlles下面定义自己的Controller。这里面,Controller的任何方法都可以配置为API接口的处理方法。Controller的方法大致就是处理前端的API请求逻辑,有时不可避免地要调用Model层的一些东西。

3. 在routes.rb中配置API与Controller中的方法的映射关系。

 

不过,虽说是填代码,但还是要有很多要考虑的地方。

 

DRY:Don't Repeat Yourself

我把它视为首要的考虑。如果项目中存在重复代码,就可以看成存在设计缺陷。

 

一个典型的例子是这样的:我之前说过,我的API设计中存在分页(from,size),sort,include,with_total,just_total等控制,其中from,size,sort是Model查询时的控制参数,include,with_total, just_total是作为返回JSON数据时的控制参数。我的所有List接口,即形如GET /users这样的接口都是有这些控制参数的。这其中要进行如下处理:

1 from, size = 合适的值,用于分页2 sort = 将params[:sort]转化成能被Model识别的形式3 cond = 将params[:cond]转化为能被Model识别的形式4 users = User.where(cond).order(sort).limit(size).offset(from)5 includes = 将params[:include]转化为能够被as_json识别的形式6 list = 基本就是users.as_json(includes), 但还要处理with_total,just_total的情况7 render json: list

 

海外公司注册、海外银行开户、跨境平台代入驻、VAT、EPR等知识和在线办理:https://www.xlkjsw.com

原标题:后端实现的主要考虑

关键词:

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

可能感兴趣文章

我的浏览记录