工程常用

一. 设计模式种类:

   1. 概括:总体来说设计模式分为三大类:

       创建型模式(五种):工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。

       结构型模式(七种):适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式;

       行为型模式(十一种):策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。

      参阅资料:http://zz563143188.iteye.com/blog/1847029

   2. 单例模式与类中只有静态方法的类在设计角度有什么差别?

       单例模式可以充分使用面向对象的封装/继承/多态(比如创建多种构造函数);也适用于面向对象思维(比如返回对象为单例类对象,而非静态方法中的string、int等类型);

       而一个类所有静态方法不行,在设计角度远不如单态设计灵活;

   3. 状态模式和策略模式的区别:

      策略的改变由Client完成;而状态的改变,由Context或状态自己。在状态模式中,每个状态通过持有Context的引用,来实现状态转移;但是每个策略都不持有Context的引用,它们只是被Context使用。

      一些常见的策略模式的例子是封装算法,例如排序算法,加密算法或者压缩算法。如果你看到你的代码需要使用不同类型的相关算法,那么考虑使用策略模式吧。而识别何时使用状态模式是很简单的:如果你需要管理状态和状态转移,但不想使用大量嵌套的条件语句,那么就是它了

   4. 抽象工厂模式和工厂方法模式区别:

       参阅  https://blog.csdn.net/liu88010988/article/details/50799902

 

二.string.intern简介

       参阅 https://www.cnblogs.com/dreamroute/p/3650399.html

三. 一致性哈希算法

       参阅 https://blog.csdn.net/u013851082/article/details/68063446

四. dubbo负载均衡和容错

       参阅 http://www.cnblogs.com/juncaoit/p/7691411.html

五. zk选举

        参阅 https://www.jianshu.com/p/c2ced54736aa

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章