精华内容
下载资源
问答
  • API 接口 设计文档 模板

    千次下载 热门讨论 2014-05-28 11:52:14
    API 接口 设计文档 模板,保存日后使用。
  • c# http接口设计及调用demo

    热门讨论 2015-12-03 20:34:25
    实际项目往往以json或xml格式传输数据,本demo直接传输数据。先用vs运行接口程序,或发布到iis即可;再运行接口调用程序,调用地址以实际为准。
  • 接口设计文档模板

    万次阅读 2020-05-18 12:57:44
    后端接口设计文档,个人认为需要告知接口调用者的内容 博客地址:芒果橙的个人博客 【http://mangocheng.com】 接口设计说明-xx系统 修改记录 本次修改记录,每次更新后删除,只显示当次内容 日期:2020-05-01~...

    前言

    后端接口设计文档,个人认为需要告知接口调用者的内容
    博客地址:芒果橙的个人博客 【http://mangocheng.com】


    接口设计说明-xx系统

    修改记录

    本次修改记录,每次更新后删除,只显示当次内容

    日期:2020-05-01~2020-05-06

    1. 新增权限模块第3章节内容

    接口清单

    序号模块说明
    1权限模块主要包含用户的权限功能接口

    一、权限模块

    序号接口说明
    1searchAuthority获取当前登录用的权限

    预定义

    • 参数类型未标明,默认皆为字符串

    1. 获取用户权限

    1)功能说明

    获取当前登录用的权限,菜单加功能

    2)接口说明

    • 请求方式:GET
    • 请求地址:http://ip:port/authority/searchAuthority
    • 请求参数: 无

    3)请求参数

    • 示例
    http://10.254.11.82:7013/authority/searchAuthority
    

    4)响应参数

    参数名类型说明
    dataMap权限对象
    statusString状态:1-成功,0-失败
    httpCodeStringHttp返回码
    errCodeString错误码
    errMessageString错误信息
    • 示例
    {
      "status": 1,
      "data": {
        "MENU": [
          "CLUE",
        ]
      },
      "httpCode": 200,
      "errCode": 0,
      "errMessage": ""
    }
    

    2.保存或更新菜单

    1)功能说明

    菜单管理,新增或更新菜单

    2)接口说明

    • 请求方式:POST
    • 请求地址:http://ip:port/authority/saveOrUpdateMenu
    • 请求参数:menuVO

    3)请求参数

    • MenuVO:菜单对象
    参数名类型说明
    typeString操作类型(CREATE–新增;UPDATE–更新)
    menuPOTMenuPO菜单实体类
    • 示例1:菜单新增
    {
      "menuPO": {
          "id": "",
          "name": "菜单名称1"
      },
      "type": "CREATE"
    }
    
    • 示例2:菜单更新
    {
      "menuPO": {
          "id": "23LebronJames",
          "name": "菜单名称23"
      },
      "type": "UPDATE"
    }
    

    4)响应参数

    参数名类型说明
    dataList<String>保存/更新结果主键集合(ryid)
    statusString状态:1-成功,0-失败
    httpCodeStringHttp返回码
    errCodeString错误码
    errMessageString错误信息
    • 示例1:菜单新增
    {
      "status": 1,
      "data": [
        "24Kobe"
      ],
      "httpCode": 0,
      "errCode": 0,
      "errMessage": ""
    }
    
    • 示例2:菜单更新
    {
      "status": 1,
      "data": [
        "23James"
      ],
      "httpCode": 200,
      "errCode": 0,
      "errMessage": ""
    }
    

    二、xx模块

    该模块的所有接口及其简要说明

    序号接口说明
    1xxxx

    预定义

    • 预先定义一些默认的、公共的说明

    1. xx接口

    1)功能说明

    该接口的功能是什么

    2)接口说明

    • 请求方式:GET/POST
    • 请求地址:接口地址
    • 请求参数: 方法参数名称

    3)请求参数

    接口的请求参数说明

    • 示例
    请求参数示例
    

    4)响应参数

    接口的响应参数说明

    参数名类型说明
    xxxxxx
    • 示例
    响应参数的示例
    
    展开全文
  • 计算机软件接口设计说明书模板

    热门讨论 2011-06-16 12:24:57
    1.1 设计目标 1 1.2 适用范围 1 1.3 相关术语 1 1.4 参考资料 1 2 分析设计 1 2.1 设计思想 1 2.2 接口结构 1 2.3 数据流分析 2 3 中间库接口 2 3.1 中间库说明 2 3.2 传输交互方法 2 3.3 中间库接口结构 2 3.3.1 ...
  • 优秀的API接口设计原则及方法

    万次阅读 2019-05-28 15:30:37
     总之,接口设计是一个细致的工作,设计时也会有很多矛盾,但个人倾向于粗粒度设计方向(即内聚性更高一些),这样不仅给客户端浏览接口方便明确,维护也轻松些,这么做的缺点就是某一接口扩展时不是很灵活,但可以...

    一旦API发生变化,就可能对相关的调用者带来巨大的代价,用户需要排查所有调用的代码,需要调整所有与之相关的部分,这些工作对他们来说都是额外的。如果辛辛苦苦完成这些以后,还发现了相关的bug,那对用户的打击就更大。如果API经常发生变化,用户就会失去对提供方失去信心,从而也会影响目前的业务。

    但是我们为什么还要修改API呢?为了API看起来更加漂亮?为了提供更多功能?为了提供更好的性能?还是仅仅觉得到了改变了时候了?对于用户来说,他们更愿意使用一个稳定但是看起来不那么时髦的API,这并不意味着我们不再改进API了。当糟糕的API带来的维护成本越来越大时,我想就是我们去重构它的时候。

    如果可以回头重新再做一遍,那么我心目中的优秀的API应该是怎么样的?

    判断一个API是否优秀,并不是简单地根据第一个版本给出判断的,而是要看随着时间的推移,该API是否还能存在,是否仍旧保持得不错。槽糕的API接口各种各样,但是好的API接口对于用户来说必须满足以下几个点:

    • 易学习:有完善的文档及提供尽可能多的示例和可copy-paste的代码,像其他设计工作一样,你应该应用最小惊讶原则
    • 易使用:没有复杂的程序、复杂的细节,易于学习;灵活的API允许按字段排序、可自定义分页、 排序和筛选等。一个完整的API意味着被期望的功能都包含在内。
    • 难误用:对详细的错误提示,有些经验的用户可以直接使用API而不需要阅读文档。

    而对于开发人员来说,要求又是不一样的:

    • 易阅读:代码的编写只需要一次一次,但是当调试或者修改的时候都需要对代码进行阅读。
    • 易开发:个最小化的接口是使用尽可能少的类以及尽可能少的类成员。这样使得理解、记忆、调试以及改变API更容易。

    如何做到以上几点,以下是一些总结:

    1、 面向用例设计

    如果一个API被广泛使用了,那么就不可能了解所有使用该API的用户。如果设计者希望能够设计出被广泛使用的API,那么必须站在用户的角度来理解如何设计API库,以及如何才能设计出这样的API库。

    2、 采用良好的设计思路

    在设计过程中,如果能按照下面的方式来进行设计,会让这个API生命更长久

    • 面向用例的设计,收集用户建议,把自己模拟成用户,保证API设计的易用和合理
    • 保证后续的需求可以通过扩展的形式完成
    • 第一版做尽量少的内容,由于新需求可以通过扩展的形式完成,因此尽量少做事情是抑制API设计错误的一个有效方案
    • 对外提供清晰的API和文档规范,避免用户错误的使用API,尤其是避免API(见第一节)靠后级别的API被用户知晓与误用

    除此之外,下面还列出了一些具体的设计方法:

    • 方法优于属性
    • 工厂方法优于构造函数
    • 避免过多继承
    • 避免由于优化或者复用代码影响API
    • 面向接口编程
    • 扩展参数应当是便利的
    • 对组件进行合理定位,确定暴露多少接口
    • 提供扩展点

    3、 避免极端的意见

    在设计API的时候,一定要避免任何极端的意见,尤其是以下几点:

    • 必须漂亮(API不一定需要漂亮)
    • API必须被正确地使用(用户很难理解如何正确的使用API,API的设计者要充分考虑API被误用的情况:如果一个API可能会被误用,那么它一定会被误用)
    • 必须简单(我们总会面临复杂的需求,能两者兼顾的API是更好的API)
    • 必须高性能(性能可以通过其他手段优化,不应该影响API的设计)
    • 必须绝对兼容(尽管本文一直提到如何保证兼容,但是我们仍然要意识到,一些极少情况下会遇到的不兼容是可以容忍的)

    4、 有效的API评审

    API设计完成以后,需要经过周密的设计评审,评审的重点如下:

    • 用例驱动,评审前必须提供完善的使用用例,确保用例的合理性和完备性。
    • 一致性,是否与系统中其他模块的接口风格一致,是否与对称接口的设计一致。
    • 简单明了,API应该简单好理解,容易学习和使用的API才不容易被误用,给我们带来更多的麻烦。
    • API尽可能少,如果一个API可以暴露也可以不暴露,那么就不要暴露他,等到用户真正有需求的时候再将它成为一个公开接口也不迟。
    • 支持持续改进,API是否能够方便地通过扩展的方式增加功能和优化。

    5、 提高API的可测试性

    API需要是可测试的,测试不应依赖实现,测试充分的API,尤其是经过了严格的“兼容性整合测试”的API,更能保证在升级的过程中不出现兼容性问题。兼容性整合测试,是指一组测试用例集合,这组测试用例会站在使用者的立场上使用API。在API升级以后,再检测这组测试用例是否能完全符合预期的通过测试,尽可能的发现兼容性问题。

    6、 保证API的向后兼容

    对于每一个API的设计者来说,都渴望做到“向后兼容”,因为不管是现在的API用户,还是潜在的API用户,都只信任那些可兼容的API。但向后兼容有多个层次上的意义,而且不同层次的向后兼容,也意味着不同的重要性和复杂度。

    7、 保持逐步改善

    过去我们总希望能将现有的“不合理”的设计完全推翻,然后按照现在“美好”的思路,重新设计这个API,但是在一段时间以后,又会碰到一样的状况,需要再推翻一次。 如果我们没有有效的逐步改善的办法,依靠推翻现有设计,重新设计API只能让我们回到起点,然后重现之前的过程。 要有一套行之有效的持续改善的办法来在API兼容的同时,改善API使之更好。

    8、 把握API的生命周期

    每一个API都是有生命周期的,我们需要让API的生命周期更长,并且在API的生命周期结束时能让其平滑的消亡。

    • 告诉用户我们是如何设计的,避免误用,提供指导,错误的使用往往是缩短API寿命的一大杀手
    • 提供试用期,API不可能一开始就是稳定,经过试用的API才能有更强的生命力
    • 为API分级:内部使用;二次开发使用;开发或试用中;稳定;弃用API。避免API被滥用的同时,我们可以通过调整API的级别,来扩大其影响力,也能更优雅的结束一个API的生命周期。

    开发API的过程其实就是一个沟通交流的过程。沟通的双方就是API用户和API设计者。

    9、 一些具体的实施方案

    在一个API不可避免要消亡或者改变的时候,我们应该接受并且面对这个事实,下面列举了几种保证兼容性的前提下,对API进行调整的办法:

    • 将API标记为弃用,重新建立一个新的API。如果一个API不可避免要被消亡,这是唯一的办法。
    • 为其添加额外的参数或者参数选项来实现功能添加
    • 将现有API拆成两部分,提供一个精简的核心API,过去的API通过封装核心API上实现。这通常用于解决用户需要一个代码精简的版本时。
    • 在现有的API基础上进行封装,提供一个功能更丰富的包或者类

    一些好的API示例:

    1. Flickr API,这里是文档的示例,同时提供了一个非常方便的API测试工具
    2. Mediawiki API
    3. Ebay API,这里有一个非常详尽的文档示例

    原文出处:http://www.biaodianfu.com/how-to-design-a-good-api.html

      在手机广泛流行的今天,手机应用也随之越来越多,而且成长的速度也非常快。手机应用软件开发实现方式同普通PC软件一样,也分为BS和CS方式。而采用CS方式,在服务器端大多采用接口的形式提供数据交互(主流数据交互方式有:Json、WebService等),今天要说的就是如何设计接口。

      接口作为连通客户端与数据库进行数据流通的桥梁,起着举足轻重的作用,直接影响着程序的效率性、稳定性、可靠性以及数据的正确性、完整性。客户端注重的是界面美观,操作方便顺畅,是用户最直接的感受体验,而接口则是所有数据的提供者,是用户深层的内涵体验。

      因次,设计接口在一个项目中,是非常重要的。那么我就目前的经验总结下如何合理设计接口。

      一、 设计原理

      1. 深入了解需求

      除了设计数据库的人最了解需求外,其次就是设计接口的人了,甚至有时接口开发人员还要参与到数据库设计中。从“客户端-接口-数据库”的层次上看,接口明显扮演着承上启下的角色,一方面要明白接口要什么数据,另一方面要考虑如何从数据库获取、组织数据。所以如果不了解需求,你就无法正确抽象对象来组织数据给客户端,也无法验证数据库的数据结构能否满足需求。数据库设计者要了解需求中的数据结构,而接口则更多的要了解需求中的逻辑结构以及由此衍生出的逻辑数据结构。

      2. 了解数据库结构

      既然接口要明白如何从数据库获取、组织数据,就当然要了解数据库结构啦。

      3. 了解客户端原型

      了解原型,其实更多是为了帮助你设计接口时需要提供的数据和结构。但有时当你设计时并没有原型,所以此条并不是必须要求的。但假如设计完接口后原型出来了,我们也可以拿原型还验证接口设计是否正确、合理。

      二、设计原则

      1. 充分理由

      不是随便一个功能就要有个接口,也不是随便一个需求就要加个接口。每新建一个接口,就要有充分的理由和考虑,即这个接口的存在是十分有意义额价值的,无意义的接口不仅增加了维护的难度,更重要是对于程序的可控性的大大降低,接口也会十分臃肿。因此我放在了第一条。

      2. 职责明确

      一个接口只负责一个业务功能,它与设计模式里的职责单一原则类似但却不同,因为一个业务功能里可能会包含多个操作,比如查询会员,可能除了查询会员表外还要获取该会员的其他必要信息,但不要在查询会员的同时还有修改权限等类似的其他业务功能,应该分成两个接口还做。

      3. 高内聚低耦合

      一个接口要包含完整的业务功能,而不同接口之间的业务关联要尽可能的小。还是查询会员的例子,有时查询会员的同时,可能该会员的相关信息要随之发生变化(如状态),如果这时一条完整的业务流水线,那么就应该在一个接口里完成,而不应再单独设立接口去操作完成。就是说一个接口不应该随着另一个变化而变化或以某几个接口为前提而存在。

      4. 分析角度明确

      设计接口分析的角度要统一明确。否则会造成接口结构的混乱。例如,不要一会以角色的角度设计,一会儿就要以功能的角度设计。

      5. 入参格式统一

      所有接口的参数格式要求及风格要统一,不要一个接口参数是逗号分隔,另一个就是数组;不要一个接口日期参数是x年x月x日风格,另一个就是x-x-x。

      6. 状态及消息

      提供必要的接口调用状态信息。调用是否成功?如果失败,那么失败的原因是什么。这些必要的信息必须要告诉给客户端。

      7. 控制数据量

      一个接口返回不应该包含过多的数据量,过多的数据量不仅处理复杂,对数据传输的压力也非常大,会导致客户端反应缓慢。过多的数据量很多时候都是接口划分不明确。

      8. 禁止随意拓展参数

      与第1条类似,只不过是针对参数而言了。日后拓展接口可能是难以避免的,但是不要随意就加参数,加参数一定是必要且有意义的,需求改变前首先应考虑现有接口内部维护是否能满足需求,而不要通过加个参数来方便自己实现需求的难度,因为参数的更变会直接导致客户端调用的变化,容易产生版本兼容性问题。

      三、设计方法

      1. 抽象业务

      相比抽象对象而言,抽象业务更宏观,我觉得相对也容易一些,但抽象尺度往往不太好把握。

      2. 数据格式

      接口定义的数据格式必须都经过充分考虑,否则会出现数据转换失败或超出长度等错误。如果无法确定,直接设置成字符串是最合适的。

      3. 有意义的命名

      无论是接口还是参数,名称都应该是有意义的,让人能看明白的。

      总之,接口设计是一个细致的工作,设计时也会有很多矛盾,但个人倾向于粗粒度设计方向(即内聚性更高一些),这样不仅给客户端浏览接口方便明确,维护也轻松些,这么做的缺点就是某一接口扩展时不是很灵活,但可以通过重新定义一个接口来弥补,但正如上所说,新增接口还是要三思而后行的。以上很多虽然都是理论性讲解,但牢牢记住这些,并结合实际工作,就会慢慢深刻的体会到其中的含义。即理论指导实践,实践来验证理论。

    文章出处:http://www.360doc.com/content/17/1122/15/16915_706158716.shtml

    作者小记:

    接口设计遵循原则:

    1、接口统一性:避免乱加,重复加

    后果就是代码变得复杂,难以管理,乃至对数据库造成不必要的消耗或影响。

    2、接口设计不做太多的组合,尽量小而精

    一方面,降低复杂度,另一方面,三方可以自由组合实现多种所需,且减少双方都开发。

    3、尽量预留查询基本元素接口,查询实体所有字段接口;

    4、组合查询返回详情信息

    或特定业务,或相对复杂业务,或频繁查询,或其中部分查询没有必要封装接口的(或私密性的)
     

     

    展开全文
  • 系统间接口设计

    千次阅读 2019-05-15 09:14:18
    最近两年一直在和银行、公安、保险、民政等第三方单位之间做接口,写的接口文档不下30份,最初的接口文档漏洞百出,改了又改,丢了不少人,也被批评、埋怨,指责了很多次,久而久之,明白了一个最重要的道理,协作...

    【转载】http://blog.csdn.net/xuepiaohan2006/article/details/46604453

    最近两年一直在和银行、公安、保险、民政等第三方单位之间做接口,写的接口文档不下30份,最初的接口文档漏洞百出,改了又改,丢了不少人,也被批评、埋怨,指责了很多次,久而久之,明白了一个最重要的道理,协作决定接口。双方谈接口时,技术不是最重要的,要兼顾双方技术,成本,工期等等很多因素。但仍有很多技术层面的心得,恰巧上周参与温昱老师的一个性能设计的外训,里面老师讲到了接口设计,正好回来一起整理一下接口设计的经验。主要从3个方面总结一下系统间接口设计:接口定义、接口实现、其他一些注意事项。

     

    一、接口定义

            接口是双方(可能是系统、模块、服务等)之间数据交互的一个标准,定制接口方要想让对方没有疑问,接口考虑到的因素一定要全面,一般情况下,主要考虑3个步骤:

            

            交互机制:如同步请求/应答方式、异步请求/应答方式、会话方式、广播通知方式、事件订阅方式、可靠消息传输方式、文件传输等。

            接口技术:WebService、Scoket、交易中间件、消息中间件、文件方式、共享数据库等。

            接口格式:这个就根据所选技术,实际情况来定义即可。

     

            拿我们(具体行业不便透露)和银行的接口为例(和每个地区银行都不同,以1个为例)

            交互机制:异步请求/应答方式,我们有查控请求时调用银行接口,将请求信息发过去,银行查控完毕后,调用我们接口,将查控结果反馈给我们。调用失败后,会有重试,重试每30分钟一次。

            接口技术:WebService接口,Java开发,xml格式报文,数据采用3DES加密。

            接口定义:具体字段说明,xml格式等略。

            有了这些说明,在对方拿到接口文档后,不出意外(比如对方完全不懂技术,无法看懂)对方都能看懂接口,也能描述清楚,如果回答不上这些问题,恐怕就是有漏洞了。

     

     

     

            这个接口还有很多不完善的,很多地方有更好的选择,还是前面说的,协作决定接口,合适即可。

     

    二、接口实现

            接口定义完成了,开发过程中要考虑的就是非功能层面的了,比如各种约束,像我们这边数据量、并发都较大,需要考虑下面几个情况:

     

            1.高性能,支持高并发,大容量,速度快;

            2.健壮性,防止因大量数据,或大量占用资源导致系统不可用;

            3.可监控,随时看到接口的运行情况,便于及时发现错误及排除故障;

            4.可扩展,两个方面,一是可支持扩展新功能,二是并发增加时支持扩展新硬件。

     

            考虑这些可能会引起接口的改变,比如我们考虑高性能,速度快时,由于我们同时对应30多家银行,每个银行每天大约1000人次查询,单个调用需要3w次,所以改成了支持批量,单次调用最多100人,发送和接收大约5s左右。同时由原来串行改成了并发调用,使用了一个线程池(线程不能太多,可能造成银行接口并发太大导致崩溃)。

            有时主动发起的接口可能不如定时轮询的接口,比如上面我们的接口是主动发起,需要做连接池限制并发,免得并发多了给银行造成问题,后来再其他省改成了完全由我们做服务端,银行定时调用获取要查询的请求信息,虽然有几分钟延迟(依据银行轮询时间决定),但是开发简单不少,考虑的情况也少了不少,接口速度也快了不少。

           考虑可监控时,有很多开源监控组件,比如我们用的JavaMelody,可以监控某个类执行次数。

           考虑可扩展,功能可扩展,比如我们用XML、JSON格式报文,或者其他自定义格式,有一定的规则,千万别用具体含义的参数,一旦增删就会影响接口。

     

    三、注意事项

            1.支持批量,这个一定要有,主要是为了性能考虑,后续数据量大了,再修改支持批量就会导致整个接口修改,所以前期一定要支持批量。

            2.支持部分拆包,比如报文中最好解析报文头就能知道具体业务或能找到处理的逻辑,避免全部解析后才能知道如何处理,比如我们和一个公司做接口(他们制定接口),有10多个实现类,他们文件加密的,必须整体解密后才能读取到用哪个实现类处理,文件大约200M,每次处理5s左右,有3s都在选择用哪个实现类,并发时及其慢,后来改成了前面32个字节标示哪个实现类,后来处理每个包2s左右,性能提升40%多。

            3.安全性,接口的安全控制在逻辑上包括:安全评估、访问控制、入侵检测、口令认证、安全审计、防恶意代码、加密等内容。这个根据实际情况,有些单位要求高,有些无所谓,不涉及互联网的项目,加密为了防止管理员直接看到等,要求不高的Base64就行,或者3DES,高点的通道认证等,再高就根据具体情况来了。

            4.实体文件,FTP等方式传实体文件比较容易,我们用WebService较多,文件较小的一般采用转换成文本(Base64),当文本传输,好处是简单,缺点一是慢,二是文件大了或并发大了,内存可能不够;文件大的,我们一般放到FTP上,然后传给对方FTP上的路径,这个配置比较麻烦。

            5.日志,这个最最最重要,接口的每个环节都要保留详细的日志,可以设置优先级,上线后单独打印到某个文件或者只保留重要的,因为现场出错后只能根据日志分析,很多情况下对方的接口问题对方不承认时,或者出错后对方把责任扔给咱们时,你会发现最可靠的就是日志。

            6.监控,这个也太重要的,但是我们经常忽略,很多时候双方联调测试都没问题,经常一上线就出问题,不外乎数据量大了,并发大了等,此时有一个监控页面,你顿时就会信心倍增。

            7.接口文档编写,一般公司都有自己的接口文档模板,当然我们也有,大部分模板都主要定义个一些步骤,如背景、功能描述、交互机制、安全性……我这整理一下我和各个单位讨论时,碰到的一些文件描述不清楚问题,主要是一些格式定义,字段说明等

           (1)字段类型,一定要统一标准,比如日期、时间格式,不足补0等,如2015-01-0112:01:02。

           (2)实体文件,是Base64之后传递字符串,还是其他规则,或者传递一个FTP上的地址,如果是地址,结束时是否带有斜杠“/”等。

           (3)数值,精确小数后几位,小数点前后位数不足时是否补0等。

           (4)异常,最好有错误码,或者其他信息,以及错误后处理机制等。

           (5)必填项如何校验,代码值是否需要校验等。

           (6)最重要的一点,写完了一定要给别人看看,看看别人是否可以看懂,用词准确,是否有遗漏等。

     

            上面只是一些大体的总结,适合一些web项目等,很多其他模式下的接口都不适用,各个点也都没有深入的研究,后续研究后再加进入吧。

    --------------------- 
    作者:飘寒 
    来源:CSDN 
    原文:https://blog.csdn.net/xuepiaohan2006/article/details/46604453 
    版权声明:本文为博主原创文章,转载请附上博文链接!

    展开全文
  • 软件设计包括软件的结构设计,数据设计,接口设计和过程设计。 1、结构设计:定义软件系统各主要部件之间的关系。 2、数据设计:将模型转换成数据结构的定义。 3、接口设计:软件内部,软件和操作系统间以及软件和人...

    软件设计包括软件的结构设计,数据设计,接口设计和过程设计。

    1、结构设计:定义软件系统各主要部件之间的关系。

    2、数据设计:将模型转换成数据结构的定义。

    3、接口设计:软件内部,软件和操作系统间以及软件和人之间如何通信。

    4、过程设计:系统结构部件转换成软件的过程描述。

    展开全文
  • 软件接口设计

    万次阅读 2016-11-26 17:27:47
    软件接口设计 《构建可扩展的Web站点》主要介绍了Web应用程序的概念、体系结构、硬件需求、开发环境的原则及国际化、本地化和Unicode等基本内容,本文是软件接口设计。 AD:51CTO 网+ 第十二期沙龙:大话数据之...
  • 前后端交互-一些关于接口设计的思考

    万次阅读 多人点赞 2017-11-18 11:04:14
    原文链接:前后端交互-一些关于接口设计的思考 作者:安东尼_Anthony 前言最近在工作中和后端童鞋打交道,前后端沟通最为重点的就是接口API,这里整理一下接口设计的一些考虑点并做分析,希望对大家有帮助 。兵马未...
  • 基于FPGA的UART接口设计

    千次阅读 2021-10-08 18:03:34
    UART即通用异步收发传输接口(Universal Asynchronous Receiver/Transmitter),简称串口,是一种常用的通信接口,其协议原理就不赘述了,不了解的可以百度。(不赘述不代表不重要,相反,对于每一个FPGA设计,充分...
  • 接口设计规范

    千次阅读 2018-10-19 00:46:14
    文章目录接口设计规范1 接口示例2 基本规范2.1 公共参数2.2 响应数据2.3 字段类型规范2.4 上传/下载2.5 避免精度丢失3 瘦客户端4 拓展性5 安全性6 兼容性7 性能优化 接口设计规范 接口规范化以后,会少很多坑,避免...
  • 【Golang】interface接口设计原则

    万次阅读 2020-06-15 12:22:19
    interface接口 interface 是GO语言的基础特性之一。可以理解为一种类型的规范或者约定。它跟java,C# 不太一样,不需要显示说明实现了某个接口,它没有继承或子类或“implements”关键字,只是通过约定的形式,隐式...
  • SpringBoot进行接口设计

    千次阅读 2018-03-26 16:38:08
    所以项目进行接口设计是有必要的。这里使用SpringBoot基于REST风格快速进行接口设计。有关源码和资料可在:https://download.csdn.net/download/qq_36135928/10309244点击打开链接可以进行下载。下面贴出有关核心...
  • 前言 兵马未动,粮草先行。在一款APP产品的各个版本迭代中,兵马的启动指的是真正开始敲代码的时候,粮草先行则是指前期的需求,交互,UI等评审准备阶段,还有本文要说的接口的...所以建议在前期接口设计和评审时,客
  • RPC 框架,或者一部分人习惯称之为服务治理框架,更多的讨论是存在于其技术架构,比如 RPC 的实现原理,RPC 各个分层的意义,具体 RPC 框架的源码分析…但却并没有太多话题和“如何设计 RPC 接口”这样的业务架构...
  • 后端开发之如何写接口设计文档

    千次阅读 2020-03-29 20:09:55
    如何理解接口? 当我们说到接口时,首先要分前端和后端,前端有Android、IOS、Js,后端定义返回值、参数、请求方式、协议等。系统A调用系统B,系统B调用系统C,像是把多个系统连接起来的一座桥梁,各自遵守相同的...
  • 接口设计之幂等性设计

    万次阅读 多人点赞 2020-02-06 18:33:01
    今天我们来聊聊接口的幂等性设计,所谓幂等,就是任意多次执行所产生的影响均与一次执行的影响相同。 幂等性接口是指可以使用相同参数重复执行,并能获得相同结果的接口。这里就不展开数学中的定义了,有兴趣的可以...
  • 接口设计六大原则

    万次阅读 2018-09-25 13:32:23
    每个项目或产品都有特定的环境因素,不要盲从大师的设计,要根据业务逻辑进行最好的接口设计。 五.迪米特法则 Law of Demeter, LOD。又称最少知识原则(Least Knowledge Principle, LKP)。 通俗来讲:一个类...
  • web项目API接口设计与开发总结

    千次阅读 2019-08-31 18:48:47
    虽然以前自己没有设计接口,但是调用过别人写的接口,如百度提供的接口,还有以前在项目中调用别人的接口等等。感觉调用别人的接口还挺方便的,自己来设计的时候,真不知道如何下手。然后去查看学习各种教程,开始...
  • 分布式技术(6) 后端接口设计方案

    万次阅读 2019-05-01 16:54:21
    App与服务器的通信接口如何设计得好,需要考虑的地方挺多的,在此根据我的一些经验做一些总结分享,旨在抛砖引玉。 安全机制的设计 现在,大部分App的接口都采用RESTful架构,RESTFul最重要的一个设计原则就是,...
  • 接口设计需要考虑哪些方面

    千次阅读 2019-03-07 18:04:00
    还有一点,我这里特别想指出来的是很多开发人员为了省事(姑且只能这么理解),将接口设计当成只是 app 页面展示。 这些人将一个页面展示就用一个接口实现,而不考虑这些数据是不是属于不同的模块、是不是属于...
  • 高可用、高性能? 接口设计的 16 个原则

    万次阅读 多人点赞 2017-12-04 00:00:00
    本文来自作者 LY 在 GitChat 上分享「如何设计出高可用、高性能的接口」,「阅读原文」查看交流实录 「文末高能」 ...接口设计需要考虑哪些方面 接口的命名。 请求参数。 支持的协议。
  • 对外开放的通用接口设计

    千次阅读 2019-04-20 21:18:34
    需求:以自己当前的系统作为一个平台,提供一下接口对外开放。其他接入我们对外开放的平台或系统则统称为第三方平台。 如果想要提供一套统一的接口,即可对接各种各样的第三方平台的话,就需要将对外的接口做成通用...
  • Java 对第三方提供通用接口设计

    千次阅读 2020-03-06 11:57:10
    在软件开发中,往往需要给第三方提供接口服务,一般通过SOAP协议或者HTTP协议来传输数据,本文不对SOAP协议进行研究,针对HTTP协议进行对外接口通过设计, 二. 设计 1. 首先系统会创建一个账号:密钥id,密钥...
  • 软件设计-接口设计、代码优化

    千次阅读 2019-05-13 10:39:30
    软件设计-接口设计、代码优化 前言 随着产品业务的发展,产品和用户量不断提升,由于之前每个产品对应一套接口,使得接口数目迅速膨胀,维护的成本也日渐变高。好的接口设计,不管从代码复用还是代码健壮性来看都...
  • 关于接口设计的一些思考

    千次阅读 2016-07-13 18:33:05
    本文针对我遇到的一些接口设计问题,总结了如下一些经验分享给大家,希望我们能够吸取经验,对外提供最美的一面,即使我们的实现可能很丑,但是用户不关心也看不到,这就是封装的好处,哈哈。 1. 关于接口的粒度...
  • 接口设计

    千次阅读 多人点赞 2011-11-21 14:25:42
    接口设计 什么是接口? 接口是CPU和外设之间的连接设备,用于缓存和转发数据。 为什么需要接口? (1)解决主机CPU和外围设备之间的时序配合和通信联络问题  主机的CPU是高速处理器件,比如8086-1...
  • 聊聊RESTful - 接口设计篇(一)

    万次阅读 2017-10-04 23:42:54
    同时我也指出网上有大量介绍RESTful接口设计的文章,如果我们不理解真正的REST,那么单纯的接口设计的讨论会让我们对REST产生误解。那么在我们了解了什么是真正的REST之后,再来讨论接口设计,就是学以致用
  • 软件接口设计 六大原则

    千次阅读 2017-09-25 18:57:02
    每个项目或产品都有特定的环境因素,不要盲从大师的设计,要根据业务逻辑进行最好的接口设计。   五.迪米特法则 Law of Demeter, LOD。又称最少知识原则(Least Knowledge Principle, LKP)。 通俗...
  • 慕课软件工程(第六章.接口设计)

    千次阅读 2020-03-09 11:15:16
    接口设计0 目录6 结构化分析方法26.1 接口设计6.1.1课堂重点6.1.2测试与作业7 下一章 0 目录 6 结构化分析方法2 6.1 接口设计 6.1.1课堂重点 6.1.2测试与作业 1单选(2分)接口设计的主要内容是_______ A.模块或...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,713,695
精华内容 685,478
关键字:

接口设计