{CMoney战斗营} 的第十四周 # Web API

这周的主题是Web API,也就是透过HTTP通讯协定,来请求及获得回覆,也就是透过URL来传递後端程序需要的资讯。

为了合作上的理解和维护便利,通常会希望後端 API 设计符合以下规则:

CRUD原则

以请求的方法POST、GET、PUT、DELETE分别对应Create(创建)、Read(读取)、Update(更新)和 Delete(删除)等功能。

RESTful 风格

  • URL的设计以名词为主(动词通常在请求方法中以有所描述了)
  • 避免前段endpoint 不存在

另外,学习後端框架需要理解的知识有:

依赖反向原则(DIP)

  • 高阶模组不应该依赖於低阶模组。两者都应该依赖抽象。
  • 抽象不应该依赖细节;细节应该依赖抽象。

控制反转(IoC)

  • 将物件控制权转移给第三方『容器』:
    不由高阶模组直接建立低阶模组,使用控制反转中心去建立低阶模组,高阶模组要使用的时候再把这个低阶模组交给高阶模组使用。
    也就是要先向容器注册物件,注册方式分为:
    • AddSingileton: 程序执行时期,使用同一个物件实体
    • AddScoped: 每一个Request使用同一个物件实体
    • AddTransient: 每次注入需求皆使用新的物件实体
      由容器掌管物件的生命周期,高阶物件使用期间不宜呼叫dispose 等方法

依赖注入(DI)

高阶物件不直接创建低阶物件(依赖),而是由外部创建低阶物件(依赖)後传入(注入)高阶物件。可以有效的让物件解耦,方便抽换依赖物件的实作内容。


<<:  威胁建模(Threat modeling)

>>:  JavaFX+SceneBuliider+jfoneix +eclipse 安装

Day 7:Prometheus

讲到监控,Prometheus 应该算是最常被提及的其中一个工具,它是一套开源的监控与警报系统,最早...

观注的系列

之後会将铁人赛里的系列文做一个介绍 不过分类是依照我的想法 Google Assistant Goo...

Day10-元件沟通传递(part2)

没有props还可以传资料吗 v-bind和v-on在没有props的情况下一样可以得到父层的资料。...

【DAY 4】 Power Automate 简介 + 订便当系统

哈罗大家好~ 今天要简单说明 “ Power Automate “ 这个强大的流程引擎以及示范一个用...

[Day 6] 阿嬷都看得懂的开始写第一支 .html 档案罗!

阿嬷都看得懂的开始写第一支 .html 档案罗! 昨天我们介绍了 HTML 标签怎麽写,各位阿嬷是不...