导航

    蓝鲸ROS机器人论坛

    • 注册
    • 登录
    • 搜索
    • 版块
    • 话题
    • 热门
    ROS交流群
    ROS Group
    产品服务
    Product Service
    开源代码库
    Github
    官网
    Official website
    技术交流
    Technological exchanges
    激光雷达
    LIDAR
    ROS教程
    ROS Tourials
    深度学习
    Deep Learning
    机器视觉
    Computer Vision

    API的基本开发原则

    技术交流
    1
    1
    3001
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • weijiz
      weijiz 最后由 编辑

      在开发软件的过程中经常要自己去开发API。一般来说只要写出的程序能够满足需求就行了。但是随着开发项目的增加也逐渐发现,API必须要遵守某些特定的原则才行。否则就会产生问题隐患。

      1. 原子操作
        这个是最基本的原则,然而我最近才意识到。所有API完成的操作必须是原子操作。所谓原子操作就是整个操作不能被分成更小的操作。操作要么成功要么失败。不会出现在一半的状态。如果操作失败那么被操作对象就应该保持和操作前的状态一样。为什么要如此呢?这个原因是显而易见的。比如我们要通过一个API把A盒子放到B盒子里面,再把B盒子放到C盒子里面。如果在把A盒子放入B盒子成功之后,去放C盒子的时候发现C盒子已经满了。不太好的API的做法就是直接返回操作失败的状态,不进行还原操作。这时候就会出现A盒子在B盒子之中,但是又没放在C盒子里的状态。这种状态是程序设计之外的。假如再进行其他操作,会对整个系统产生什么影响都是无法预测的。所以原子操作是一个基本原则。
      2. RESTFUL
        这是WEB API的一种设计风格。感觉按照这种风格设计的API结构要更清晰。具体的内容可以参照网上的很多文章。
      1 条回复 最后回复 回复 引用 0
      • 1 / 1
      • First post
        Last post
      Copyright © 2015-2023 BlueWhale community