软件工程
文章平均质量分 74
Ruo_Xiao
己所不欲,勿施于人。
展开
-
doxygen 注释规范
在你的注释中加入这样的代码。转载 2022-11-08 09:32:26 · 1738 阅读 · 0 评论 -
网络编程模型 / Reactor
之前一直不理解 Reactor 模型的含义,后来在知乎上看见了一个 demo,再结合文字终于理解什么是 Reactor 模型了,这里分享给大家。一、介绍网络编程模型通常有如下几种:Reactor,Proactor,Asynchronous Completion Token and Acceptor-Connector。本文主要对最主流的 Reactor模型进行介绍。通常网络编程模型处理的主要流程如下initiate => receive => demultiplex =>转载 2021-03-09 15:19:57 · 375 阅读 · 0 评论 -
接口的幂等性
1、接口调用存在的问题现如今我们的系统大多拆分为分布式 SOA,或者微服务,一套系统中包含了多个子系统服务,而一个子系统服务往往会去调用另一个服务,而服务调用服务无非就是使用 RPC 通信或者 restful。既然是通信,那么就有可能在服务器处理完毕后返回结果的时候挂掉,这个时候用户端发现很久没有反应,那么就会多次点击按钮,这样请求有多次,那么处理数据的结果是否要统一呢?那是肯定的!尤其在支付场景。2. 什么是接口幂等性接口幂等性就是用户对于同一操作发起的一次请求或者多次请求的结果是一致的,不会转载 2021-05-20 13:22:39 · 11213 阅读 · 1 评论 -
saas、paas、laas 的概念与区别
要说 saas、paas、laas,首先需要知道云计算是什么:将我们传统的IT工作转为以网络为依托的云平台运行,NIST 给出了云计算模式所具备的5个基本特征(按需自助服务、广泛的网络访问、资源共享、快速的可伸缩性和可度量的服务)、3种服务模式(SaaS(软件即服务)、PaaS(平台即服务)和IaaS(基础设施即服务))和 4 种部署方式(私有云、社区云、公有云和混合云)。当你想看报纸的时候,你不用跑去报刊亭,只要打开头条新闻,新闻唾手可得;当你想看书的时候,你不用跑去书城,只需要打开阅读软件,找到这样的一转载 2022-07-14 06:02:24 · 3013 阅读 · 0 评论 -
软件工程 / 为什么基于接口而非实现编程?
基于接口而非实现编程的目的是解耦。这里面接口的含义可以理解为 dll 或者 so 文件对应的头文件中提供的函数列表,或者理解为C++中的抽象类。该原则可以将接口和实现分离,对外暴露稳定的接口、屏蔽不稳定的实现以及各种实现细节,当实现改变时,上层开发者可以不用修改代码,这样完成了解耦,提高代码质量。那如何实现上述原则呢?有以下三点:函数的命名不能暴露任何实现细节。 封装具体的实现细节。 为实现类定义抽象的接口。总之,不要让上层调用者知道任何实现的细节。(SAW:Game Ove.原创 2020-10-26 18:07:06 · 185 阅读 · 0 评论