首页 > 其他分享 >2B面向对象的业务的一些总结经验(持续更新)

2B面向对象的业务的一些总结经验(持续更新)

时间:2022-10-26 18:01:09浏览次数:45  
标签:逻辑 删除 关联 面向对象 枚举 总结经验 2B 类型 设备

面向对象表结构设计之关联

场景

主对象:设备

属性:设备类型 设备等级

两者异同

同:都是设备的关联属性

异:类型是散列的 等级是线性的

结论

设备类型的配置表完全可以通过id关联,符合传统表结构范式规则;

设备等级的场景极有可能出现逻辑运算(如将中等及以上的设备做一个查询之类的)此时需要通过具体的等级内容做关联即1、2、3等,需要注意关联等级配置表对level的唯一性做好维护;

 

2B项目枚举字段的类型抉择

1.枚举型字段的三种情形

1.1.是否 0是 1否

1.2.状态 0正常 1~∞ 非正常

1.3.类型 list

枚举型基本上述三种情况

 

2.枚举型配置的两种情况

2.1通用字典 为了通用性一般设置成string类型

2.2专门的类型配置表  如 设备类型

 

3.数据库字段类型的抉择思路

3.1如果要通过字典来管理 上述三种情况都要用字符型

3.2如果要通过专门的类型配置,根据类型的数据类型而定(类型如果是可编辑的必须用主键关联)

3.3如果是自由的,建议数字型对搜索效率友好,但是每次都要和前端约定,后端还要枚举类翻译,不好管理, 一般1.1 ,1.2会遇到

 

逻辑删、物理删、状态字段理解

逻辑删请直接理解为物理删除,他的意义在于运维日志的查看,而不是在业务逻辑中去操作逻辑删字段;

所以在开发人员的角度来看逻辑删=物理删;

一旦出现类似文件的“删除”“回收站恢复”千万不能用物理删除、逻辑删除的概念去做;而是增加状态字段来做业务逻辑的需求;否则就会出现物理删除引起的数据一致性问题,进而导致在业务逻辑中去操作逻辑删字段,使得各种关联逻辑产生很多额外的非空判断,使得业务逻辑又臭又长;

标签:逻辑,删除,关联,面向对象,枚举,总结经验,2B,类型,设备
From: https://www.cnblogs.com/xuetieqi/p/16829378.html

相关文章

  • 234. 面向对象(上)综合练习题 题面
    234.综合练习题1235.综合练习题2......
  • 2 方法、数组、IDEA使用、面向对象
    五、方法1.方法定义和调用2.方法重载OverLoad六、数组1.数组的三种初始化方式:静态、动态、默认2.Arrays工具类3.二维数组七、IDEA介绍1.IDEA常用设置2.IDEA常用快......
  • 面向对象程序设计
    1.    2.    3.    4.    5.    6.   7.     8.    9.   ......
  • C++ 面向对象高级开发 基础篇(二)
    操作符重载C2就是this传递者不用知道是否returnbyreference 非成员函数(全局函数)的操作符重载(有几种用法就写几种重载)不能使用returnbyreference因为他们得......
  • C++ 面向对象高级开发 基础篇(一)
    C与C++的结构 C++举例   基本结构:   C与C++的输出    防御式声明   头文件声明   Class的声明 模板   访问......
  • JAVA面向对象-下
    Java面向对象-下static1.可以用来修饰的结构:主要用来修饰类的内部结构属性、方法、代码块、内部类2.static修饰属性:静态变量(或类变量)2.1属性:是否使用static修饰,又分......
  • js面向对象
    18面向对象概述:面向对象是一种编程思想(oop),面向对象相对于面向过程的一个抽取和简化。主要是以类来构建对象,以对象来存储对应的行为及属性,抽取对应的行为做为方法,抽取对......
  • day18面向对象
    概述:面向对象是一种编程思想(oop),是对面向过程的一个抽取和简化。主要是以类构建对象,来存储对应的行为及属性,将抽取的行为作为方法,对应的属性为属性,所有内容都可以抽取为一个......
  • 219 . 面向对象 (上) 封装性与隐藏
    219.面向对象(上)封装性与隐藏·为什么需要封装?封装的作用和含义?我要用洗衣机,只需要按一下开关和洗涤模式就可以了。有必要了解洗衣机内部的结构吗?有必要碰电动机吗?......
  • 面向对象编程 封装继承
    访问修饰符访问修饰符访问级别public公有地,外部可以访问protected受保护的,只有本类和派生类才能够访问private私有的,只有本类中可以访问封装字段......