zoukankan      html  css  js  c++  java
  • 写在最前

    这是我写的第一篇技术博文。在接下去有可能写第二篇第三篇的之前,我比较担忧的事情是我能在这上面坚持多久。为什么这么说呢?一来,担心琐碎的事情比较多;二来,不是每一件零散的事情都是值得记录的;三来,写博文对我而言是一件比较纠结的事情。暂时就说这么些吧。

    我目前是在一家主营科研技术对接的团队里负责主站API后台的开发。我们主站使用前后台分离的开发模式。前端使用AngularJS开发单页应用,后端使用Rails框架构建API服务,两端使用Restful风格的接口进行交互。我不想多说这种模式的好处,毕竟各种开发模式都有其优缺点,关键在于应用的场合。分离前后端开发的方式,在先期要多做一些工作,但顺手之后就会带来开发效率。我的系列博文主要介绍的就是我在项目当中使用Rails框架构建后台API服务的心得。

    下面是后台部分用到的主要技术

    Restful风格的API:

    关于Restful,我不必要做过多的阐述了。以后的很多东西,我都会不做过多的阐述。因为这些概念很普遍,很多人已经比我说的更好。我会在本篇文章的最后列出几则参考资料。我们使用Restful的理由很简单,它是某种形式的标准,接口设计风格一致,前后端可以分开开发。而且,Rails对它支持的很好。

    Ruby on Rails框架:

    对,我们后台就是用的它。我也不提它了。我想,在真正用Rails开发实际项目之前,花上一个月玩转Ruby是很有必要的。这是一门能够改变你开发思维,并且体会到开发乐趣的语言。

    MongoDB用于数据存储:

    一个面向文档的数据库,绝对比关系型数据库易于上手。

    Git用于代码管理:

    Git可以用于团队的代码管理。另外,擅用本地分支管理自己的开发进度尤为重要。

    那么,一个网站后台开发的关键的几个因素是什么?

    1. 一个清晰的后端提供API文档

    它长啥样?这没有个标准。但API文档很重要。前端人员不会看你的后台代码;他们只会看你提供的文档,文档里所说的才是他们所理解的一切。再简陋的文档(如txt的)都比没有的好。我们使用一款工具apidoc来从源码注释中生成API文档。

    我会在之后的博文里介绍我在设计API时的关键考虑。

    2. 真正好用的MVC框架

    我觉得Rails做到了。

    3. 即使是MongoDB,也要使用ORM映射

    不要认为MongoDB是无模式的数据库,就不需要刻意定义模式。我想说,在实际项目中,Model层的模式约束确实是必要的。不过,我竟一时想不起来这样做的好处来。

    我们使用的是Mongoid。

    4. 注重团队协作

    加强沟通,有效沟通。这恐怕是最重要的,即使是目前后端只有我一个开发人员的情况下。

    参考资料

    得学习Ruby

    Rails官方网站: http://rubyonrails.org/

    Rails中文指南: http://guides.ruby-china.org/index.html

    生成API文档的工具: http://apidocjs.com/

    Restful,有两篇阮一峰的博文:

        理解RESTful架构 [http://www.ruanyifeng.com/blog/2011/09/restful.html]
        RESTful API 设计指南 [http://www.ruanyifeng.com/blog/2014/05/restful_api.html]

    这两篇博文很流行;只是很流行而已,其他的我并不知道了。

    分享一个小笑话:

      正吃饭时,儿子忽然问当领导的爸爸:爸,为什么要先乘除后加减?老师讲了半天,我还是理解不了。 爸爸:这个就像上级文件规定,不理解没关系,只管执行就可以了。

    结束,谢谢阅读!

  • 相关阅读:
    5.装饰器生成器迭代器
    python-进程&线程
    模块(二)
    MYSQL数据库操作(一)
    python-网络编程-socket编程
    python-异常处理
    python-面向对象进阶
    python-模块
    python_面向对象编程
    生成器 迭代器,装饰器 ,软件开发规范
  • 原文地址:https://www.cnblogs.com/starstone/p/4654896.html
Copyright © 2011-2022 走看看