首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

接口定义规范

"addressDetail"... } 3、瘦客户端(将业务重心交由后端,客户端保持逻辑简单) 客户端尽量只负责展示逻辑,不处理业务逻辑 客户端不处理金额的计算 客户端少处理请求参数的校验与约束提示...(手机号和固话) 接口单一职责 4、扩展性 默认图片,特别是"xxx20分钟之内","xxx7天到期"这些带数字的文案,不可能永远不变的,即使和PM确认了打死不变,也最好通过常量配置接口进行下,...尽量有后端下发 用flag替换boolean:一般情况下,一款APP都会有config接口,用于获取一些常量文案,通用配置等信息,会有很多类似开关的字段,如:"isNew","isVip","isShowBalance...字段精简,减少流量消耗 缓存 无需的字段清理 小图 局部刷新 Wifi移动网路区别对待 数据压缩(gzip) 8、体检优化 时间戳(缓存), 懒惰加载,预加载 9、通用请求参数 每个接口添加version...,自定义JsonDeserializer,提高容错性,规避脏数据引起的数据解析失败; 关于这么多Tips,如果有更好的,可以留言!

94820

代码模板 | 我的代码没有else

嗯,我的代码没有else系列,一个设计模式业务真实使用的golang系列。 ? 前言 本系列主要分享,如何在我们的真实业务场景中使用设计模式。...本文主要介绍「模板模式」如何在真实业务场景中使用。 什么是「模板模式」? 抽象类里定义好算法的执行步骤和具体算法,以及可能发生变化的算法定义为抽象方法。不同的子类继承该抽象类,并实现父类的抽象方法。...代码建模 通过上面的分析我们可以得到: 一个抽象类 - 具体共有方法`Run`,里面定义了算法的执行步骤 - 具体私有方法,不会发生变化的具体方法 - 抽象方法,会发生变化的方法 子类一(按时间抽奖类型...) - 其他参数校验的方法`checkParams` - 获取node奖品信息的方法`getPrizesByNode` 抽奖结构体类 - 具体共有方法`Run`,里面定义了算法的执行步骤 - 具体私有方法...我的代码没有`else`,只是一个在代码合理设计的情况下自然而然无限接近或者达到的结果,并不是一个硬性的目标,务必较真。 2.

1K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    C++ 模板(template) 的定义

    定义: 模板(template)是实现代码重用机制的一种工具,它可以实现类型参数化,把类型定义为参数(模板元编程),从而实现了真正的代码可重用性。 模板是用来批量生成功能和形式都几乎相同的代码的。...编译器就能在需要的时候,根据模板自动生成程序的代码。从同一个模板自动生成的代码,形式几乎是一样的。 模板就像一个做饼干的模具,至于饼干是什么味道,则要看具体实例化时制作饼干的材料。...模板可以分为两类,一个是函数模板,另外一个是类模板。...先举个函数模板的栗子:   写一个求和函数: template int sum(T a, T b) { return a>b; } //也可写成template T是模板类型的名称,可以apple可以是ABC sum(15,16); // 这种不申明类型的写法也是允许的 sum(1, 2); sum(

    1.5K30

    移动端UI设计规范模板参考以及设计规范的好处

    2018也快要过完了(-_-),我们的移动端的UI设计规范也层出不穷。很多APP设计师也要在年底给公司或者是团队做一个总结。那么一个像样的APP ui设计规范也是很有必要的作品回顾。...我的设计规范没有大公司那么高大上,只包含了字体选用,配色运用,ui kit这些东西。...很多设计师做这个设计规范,纯粹只有两个原因: 1、要设计的界面太多了,而且产品迭代很快,来不及一个个界面标注重复性的东西,于是我就出一个字体运用规范,让开发看一个文档就好了。...2、把这些东西一个版本的整理迭代好了,哪天来一场说走就走的旅行,没有交接成本,即使公司找不到设计师,开发哥哥直接用这个规范,就可以分分钟上岗党设计师了。直接甩这个规范的sketch源文件就可以了。...好了,我们言归正传,看看最新的 移动端UI设计规范模板参考吧。 UI设计规范.jpg 看完,是不是心里有底了吗?

    1.8K20

    运维规范:线上故障处理的流程模板

    事故出现时候的处理流程及文档记录。事故处理流程基本原则: 在故障处理过程中采取的所有手段和行动,一切以恢复业务为最高优先级。...建立专门的应急群,将这些事故产品的关键角色纳入其中,当有故障发生时会第一时间在群通报。...没有进展也是进展,也要及时反馈。事故排查最近发布信息可以包括最后一次发布的系统的commitId,时间,人员等。测试反馈测试人员对本次故障处理的反馈。方便开发人员查问题。...在出现线上故障,每个owner负责检查自己负责的服务的情况。检查过程的证件必须保留证据。...action必须是可执行的,准确的Action执行人验证人计划完成时间完成时间

    3.1K20

    dotnet 设计规范 · 抽象定义

    严格来说,只有一个类被其他的类继承,那么这个类就是基类。在很多时候,基类的定义是提供足够的抽象和通用方法和属性、默认实现。在继承关系中,基类定义在上层抽象和底层自定义之间。...他们充当抽象实现的实现帮助者,充当框架的部分。例如,处于框架的列表接口 IList 定义。...从上面的讨论可以知道,基类对于定义抽象很有帮助,但是在定义的时候,基类需要有自己的职责,因为基类添加了继承深度所以对框架的复杂度会增加。所以定义基类必须基类具有意义。...需要避免为了定义相同的类型定义基类,基类的定义需要执行特殊的方法,基类定义需要很清楚。如果提供很多基类,需要让开发者容易找到使用的基类而不是对继承哪个基类需要经过想的时间很长。...✓ 建议设置基类抽象,即使他没有任何抽象的方法或属性。这个定义是任何需要使用这个类定义都需要继承,但是另一个方法是设置这个类的构造是私有。 ✓ 把基类和继承类的命名空间分开,这样基类有更大的扩展。

    15720

    dotnet 设计规范 · 抽象定义

    严格来说,只有一个类被其他的类继承,那么这个类就是基类。在很多时候,基类的定义是提供足够的抽象和通用方法和属性、默认实现。在继承关系中,基类定义在上层抽象和底层自定义之间。...他们充当抽象实现的实现帮助者,充当框架的部分。例如,处于框架的列表接口 IList 定义。...从上面的讨论可以知道,基类对于定义抽象很有帮助,但是在定义的时候,基类需要有自己的职责,因为基类添加了继承深度所以对框架的复杂度会增加。所以定义基类必须基类具有意义。...需要避免为了定义相同的类型定义基类,基类的定义需要执行特殊的方法,基类定义需要很清楚。如果提供很多基类,需要让开发者容易找到使用的基类而不是对继承哪个基类需要经过想的时间很长。...✓ 建议设置基类抽象,即使他没有任何抽象的方法或属性。这个定义是任何需要使用这个类定义都需要继承,但是另一个方法是设置这个类的构造是私有。 ✓ 把基类和继承类的命名空间分开,这样基类有更大的扩展。

    32420

    Go 视图模板篇(一):模板引擎的定义、解析与执行

    虽然模板引擎没有统一的标准,甚至不同的模板引擎提供的功能特性也是天差地别,但是仍然可以划分为两种不同的类型: 无业务逻辑:数据通过指定占位符替换,模板中不包含业务逻辑,所有业务逻辑都在处理器中完成,这样做的好处是将业务逻辑和数据渲染很好的隔离开...我们倾向于无业务逻辑嵌入的模板引擎,这样的视图模板性能更好,可维护性更好,但是绝对的无业务逻辑嵌入也是做不到的(比如一些简单的条件判断和循环),大部分时候这取决于业务开发团队的约定,尽量不要在视图模板中编写业务逻辑代码...2、Go 模板引擎 Go 模板引擎都是在处理器中触发,指定要解析的模板文件,并传入待渲染的数据,最后返回由模板引擎最终生成的 HTML 作为 HTTP 响应发送给客户端: ?...解析模板 在上面的示例代码中,我们调用了 ParseFiles 方法解析模板文件并创建稍后执行的解析后的 Template。...其底层分为两步,它可以接收一个或多个模板文件名称,传入多个模板文件名的时候,会以第一个文件名作为模板名称,后续其它模板通常是第一个模板或者其他模板嵌套的子模板。

    1.7K12

    关于模板函数声明与定义的问题

    大家好,又见面了,我是你们的朋友全栈君。 c++ primer上说:c++模板函数的声明与定义通常放在头文件中,而普通的函数通常是声明放在头文件中,定义放在源文件中,为什么会有这样的区别呢?...,而对模板函数来说,此时并没有生成add函数对应的代码。...如果类模板的成员函数的定义与类的定义不在同一个编译单元中(分离式编译),此时调用类的成员函数便会出现未定义的错误。而当我们像代码中那样在某个地方显式的调用它的时就不会出现此类问题了。...总结:其实很明显,明确一点就可以了,即编译器只要遇到使用模板函数时就会实例化相应的函数,若在此编译单元内没有模板函数的定义,它当然不能够实例化成功了。...总之,若你不想出现任何未定的错误,将类模板或函数模板的定义与声明放在同一个文件中就行了。

    2.4K30

    Elasticsearch中的模板:定义、作用与实践

    一、Elasticsearch模板是什么 在Elasticsearch中,模板是一种预定义的配置,用于指定索引的设置和映射。...模板优先级通过order属性来定义,该属性可以在模板的JSON表示中设置。order属性的值是一个整数,数值越大,模板的优先级就越高。...需要注意的是,如果没有明确指定order属性,Elasticsearch将为模板分配一个默认的优先级。默认优先级的计算基于模板的索引模式,更具体的模式通常具有更高的默认优先级。...除了order属性外,还可以通过其他方式控制模板的应用,例如使用更具体的索引模式或调整现有模板的定义以确保所需的模板始终具有最高的优先级。...pretty" 在这个的示例中,我们展示了如何定义包含多种字段类型、自定义分析器、动态模板和多字段特性的Elasticsearch模板。

    47010

    【创作中心】自定义模板的使用

    :该博主将长期更新c语言内容,初学c语言的友友们,订阅我的《初学者入门C语言》专栏,关注博主不迷路!...目录 1.在PC端的创作中心找到自定义模板 2.定义栏目标题 3.定义栏目内容 ---- 设置个性模板步骤如下: 1.在PC端的创作中心找到自定义模板 栏目内容支持HTML格式,不支持JS, 最多添加...1个自定义栏目,VIP、博客专家、企业博客才可在个人详情页显示 2.定义栏目标题 标题可以是你博客的名称,或是优美、励志的句子,例如: 春不播,秋不收。...不过尽量简短,因为栏目标题汉字的限制是32字 3.定义栏目内容 栏目内容可以是HTML内容,不支持JavaScript,最常用的是图片(可以是动图),或是一些自己喜欢的句子,你可以在Visual Studio...gif,然后打开该博客,复制你想要用的图片链接,粘贴到 举例  最终效果  这个功能还是很nice的,可以使用自定义模块的朋友们,还不赶紧去试试!!!

    56150

    dotnet 设计规范 · 结构体定义

    X 不要给结构体默认构造函数 默认的C#编译器也不让开发者定义有默认构造的结构体 X 不要定义易变的属性 易变的属性指的是在调用属性返回值的时候返回的是新的实例,易变的属性会有很多的问题。...✓ 需要确定数据的状态,定义为 0、false、null 是正确的 防止开发者不从构造函数进行赋值 ✓ 建议结构体继承 System.IEquatable 因为默认的比较使用的是引用比较,而结构体在使用经常会被复制...X 不要扩展 System.ValueType ,实际上大多数语言都阻止自定义,因为系统的类型有编译支持 结构体只能用在很小、很轻、而且不易变的属性,并且很少发生装箱的业务。...注:不易变的另一个解释,请看 Point 类,不能对这个类的属性进行更改。 补充: 所有的字段都禁止公开,如果结构体的定义是字段公开,请不要公开这个结构体。...一般结构体的定义都是公开属性,但是一些和 COM 传输的结构体就需要定义为字段 参见:docs/struct.md at master · dotnet/docs

    37920
    领券