当前位置: 首页 > news >正文

莱芜网站优化公司天津seo实战培训

莱芜网站优化公司,天津seo实战培训,网络域名怎么注册,佛山新网站建设哪家好策略模式的本质是为了消除if 、else代码,提供拓展点,对拓展开放,对修改关闭,也就是说我们开发一个功能的时候,要尽量的采用设计模式进行将不变的东西进行抽取出来,将变化的东西进行隔离开来,这样…

策略模式的本质是为了消除if 、else代码,提供拓展点,对拓展开放,对修改关闭,也就是说我们开发一个功能的时候,要尽量的采用设计模式进行将不变的东西进行抽取出来,将变化的东西进行隔离开来,这样不仅仅可以减少bug,也可以提高开发效率。

策略的整体是策略类的定义、创建、使用三部分。

定义一个策略接口类。

public interface UserCache {public void cache();}
public class LRUCache implements UserCache{@Overridepublic void cache() {System.out.println("LRU算法");}}
public class FIFOCache implements UserCache{@Overridepublic void cache() {System.out.println("FIFO cache");}
}
public class CacheContext {private UserCache userCache;public CacheContext(UserCache userCache) {this.userCache = userCache;}public void run() {userCache.cache();}}

测试类

LRUCache lruCache = new LRUCache();CacheContext cacheContext = new CacheContext(lruCache);cacheContext.run();

可以发现通过将不同的策略进行抽取出来,利用面向接口编程的方式,进行编程。其实也可以不利用context,也可以利用查表法进行编程。

public class CacheFactory {private static Map<String,UserCache> cache = new ConcurrentHashMap<>();static {cache.put("LRU",new LRUCache());cache.put("LRU",new LRUCache());}public static void run (String cacheType) {if (Objects.isNull(cacheType)) {throw new RuntimeException("");}UserCache userCache = cache.get(cacheType);userCache.cache();}}

其实在spring mvc中,比如解析不同的数据结构,xml、json等格式,都是进行抽象出高纬度的接口,然后根据配置进行查找对应的解析器进行处理,我们不一定要参考GOF的设计模式进行设计,一定要结合自身的业务实际来设计对象结构和逻辑,否则就不能灵活套用。

在说一个就是平时开发中为什么很少使用到设计模式,其实我们开发的大部分业务都不具备框架级别的可复用性,大多都是需求,一次性的,所以很少使用到。但是框架不一样,它需要考虑更重的适配性,不能说我都if、else 否则的话,那么缺少什么就需要进行编码调整,所以里面有各种的设计模式来提升程序的拓展性。

那么平时我们如何将学习到的设计模式使用到项目中,其实可以根据现有业务考虑,将不变的东西进行抽取,改变的东西进行拓展。但是也不要过度设计,否则为了编码的可拓展性,降低了可读性。设计一个精心的高拓展架构,其实本身就是一种权衡。架构设计亦是如此,软件设计也是如此。架构设计平衡的是在高性能、稳定性、可拓展上的权衡、软件设计则是在可读性、可拓展性、维护性权衡。

http://www.sczhlp.com/news/35891/

相关文章:

  • 怎么制作公司网页教程关键词优化软件有哪些
  • 哪些做展架图的网站好昆明网站开发推广公司
  • 宿迁哪家做网站推广陕西seo推广
  • wordpress 本地西安seo外包公司
  • 租房注册公司需要什么资料网站优化北京seo
  • 墙绘做网站靠谱不百度seo怎么做网站内容优化
  • 腾讯云服务器做网站软文写作的基本要求
  • 八桂职教网技能大赛2023白山seo
  • wordpress类目权限温州seo博客
  • 个性化网站建设开发厉害的seo顾问
  • 网站semseo先做哪个怎么做电商
  • 网站 公司南京seo域名
  • 网站一定要服务器吗seo优化宣传
  • 商务网站开发的流程整站优化提升排名
  • 大邑做网站网站优化比较好的公司
  • 个人网站建设价格表东莞seo外包
  • 哪个网站做图文素材多html网页制作动态效果
  • 保定网站建设优化如何开发网站平台
  • 信阳市人民政府领导分工东莞seo公司
  • 聊城网站建设推广网站优化查询
  • 下载了网站模板怎么用河南seo和网络推广
  • 医院网站建设官网百度推广怎么开户
  • 咸阳软件开发公司知乎推广优化
  • 有哪些教做蛋糕的网站百度收录批量查询工具
  • 网站的建设分析小米口碑营销案例
  • 网页设计需要用到的软件优化推广网站怎么做最好
  • 海淀教育互动平台网站建设谷歌搜索引擎免费入口 台湾
  • 济南市住房和城乡建设委员会官方网站经典软文范例大全
  • 网站建设投标ppt模板下载今日热搜
  • 怎么做非法网站搜索优化的培训免费咨询