#设计

hive数据仓库表设计之(矮宽表+高窄表)

昨天面对某客户域做表关联的时候发现了。有两张相同内容的主表。但是表的设计结构并不相同:(每个领域都有主表,每次往这个领域(库)添加新表的时候一般都会join主表,从而有唯一的主键id)这两个表提供了这个领域的主键(id).在这个+------------+------------+----------+--+|col_...

纸上原型--纸上草稿设计--简单高效的沟通方式!

纸上原型--纸上草稿设计--简单高效的沟通方式!-----高端、大气、上档次!哈哈...

PowerDesigner设计表时显示注释列Comment,Columns中没有Comment的解决办法

我使用的PowerDesigner版本为16.5,如下图:在所要编辑的表上双击,打开TableProperties窗口,并将上面的选项卡切换到Columns,如下图:我们点击CustomizeColumnsandFilter按钮,下图红框中的按钮,或者按Ctrl+U快捷键:在打开的CustomizeColumnsand...

分布式系统的接口幂等性设计

在微服务架构下,我们在完成一个订单流程时经常遇到下面的场景:/一个订单创建接口,第一次调用超时了,然后调用方重试了一次在订单创建时,我们需要去扣减库存,这时接口发生了超时,调用方重试了一次当这笔订单开始支付,在支付请求发出之后,在服务端发生了扣钱操作,接口响应超时了,调用方重试了一次一个订单状态更新接口,调用方连续发送...

分布式缓存设计:一致性Hash算法

缓存作为数据库前的一道屏障,它的可用性与缓存命中率都会直接影响到数据库,所以除了配置主从保证高可用之外还需要设计分布式缓存来扩充缓存的容量,将数据分布在多台机器上如果有一台不可用了对整体影响也比较小。不多说,你懂我意思的!缓存的分布式集群和应用服务器不同,缓存的分布式是每台机器上的缓存数据是不一样的,不像应用服务器是无...

C#设计模式

  【吕振宇-设计模式】  【TerryLee-设计模式】  地上本没有路,走得人多了也就成了路。设计模式如同此理,它是经验的传承,并非体系;是被前人发现,经过总结形成了一套某一类问题的一般性解决方案。模式的目标是把共通问题中的不变部分和变化部分分离出来,不变的部分就构成了模式。模式是一个经验提取的“准则”,并且在一次...
代码星球 ·2021-02-19

C#设计模式-迭代器模式

  迭代器是针对集合对象而生的,对于集合对象而言,必然涉及到集合元素的添加删除操作,同时也肯定支持遍历集合元素的操作,我们此时可以把遍历操作也放在集合对象中,但这样的话,集合对象就承担太多的责任了,面向对象设计原则中有一条是单一职责原则,所以我们要尽可能地分离这些职责,用不同的类去承担不同的职责。迭代器模式就是用迭代器...
代码星球 ·2021-02-19

设计模式学习系列(一)——IOC设计原则

参考转载自IoC之2.1IoC基础——跟我学Spring3 ...

观察者(observer)设计模式

转载:http://www.tracefact.net/CSharp-Programming/Delegates-and-Events-in-CSharp.aspx 假设我们有个高档的热水器,我们给它通上电,当水温超过95度的时候:1、扬声器会开始发出语音,告诉你水的温度;2、液晶屏也会改变水温的显示,来提示...
代码星球 ·2021-02-18

设计模式笔记2:策略模式

  设计一个商场打折计费的软件,可以实现打折,满300送100等优惠功能。     我们先把4个计算的类写出来。  ViewCode   在写负责创建对象和调用的CashCoxt类  ViewCode    最后调用的代码:  ViewCo...

设计模式笔记3:设计模式几大原则

1.  单一职责原则  定义:就一个类而言,应该仅有一个引起他变化的原因。   如果一个类的职责太多,就等于把这些职责耦合到一起。一个职责的变化,可能会消弱或抑制这个类完成其他职责的能力。这种耦合会导致脆弱的设计,当变化发生时,设计会遭受到意想不到的破坏。  软件设计真正要做的许多内容就是发现职责并把职责分离...

设计模式笔记4 装饰模式

  动态的给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更加灵活。  ViewCode 调用  ViewCode     装饰模式就是为已有功能动态地添加更多功能的一种方式。...

设计模式笔记5:代理模式

  为其他对象提供一种代理,以控制这个对象的访问。  其实就是两个类实现一个接口或抽象类,在A类中实例化B类的对象,那么A类的就能代理B类实现接口的方法。     Porxy代理类中声明了RealSubject类的实例,在需要调用他们都实现的方法时,调用RealSubject实例的方法。就...

设计模式笔记6:工厂方法模式

  简单工厂增加计算功能需要增加case语句修改工厂类。违背了开放封闭原则。  工厂方法模式:定义一个创建对象的接口,让子类决定实例化哪一个类。    工厂模式:抽象出一个工厂父类,每一个功能做为一个子工厂。这时候要增加一个计算功能,要在计算类增加一个功能类,并且增加对应的工厂类。这样避免了改变工厂类,而是通过扩展的方...

设计模式笔记7:原型模式

·用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。 ps:当我们需要创建大量相同对象的时候,就可以用原型模式大批量复制对象。和现实生活中的复印机相似,通过一个原型(模板)批量复制相同的对象;  1,浅复制:如果字段是值类型的,则对该字段进行逐位复制,如果字段是引用类型,则复...
首页上一页...23456...下一页尾页