引 GOF 《设计模式:可复用面向对象软件设计的基础》中的模式,应当算是模式归纳的鼻祖(并非他们最早发现/使用了模式,而是将已有的模式进行了整合归纳),而我们现在对于模式的学习基本上都是基于Gof的设计模式。今天主要说说行为型模式中的一个:策略模式。 模式定义 意图:定义一系列的算法,把它们一个个封 ...
分类:
编程语言 时间:
2018-02-07 00:40:17
阅读次数:
213
1.使用异常而非返回码 我们平常处理错误的方法是使用判断条件,然后再做错误处理。这种方法虽然很简单,但是会使我们的逻辑代码混乱。我们应该尽量使用异常,这样我们可以将逻辑代码和错误处理代码分开,使得代码结构清晰。 2.异常发生时需要记录异常发生的环境说明 异常产生了,我们一般都都打印异常产生的堆栈,我... ...
分类:
其他好文 时间:
2018-02-05 12:49:40
阅读次数:
116
说说cxf中的拦截器,可以分为系统拦截器(如日志拦截器)和自定义拦截器,也可以分为出拦截器和入拦截器,也可以分为服务器拦截器和客户端拦截器。 下面将实现一个可以进行登陆验证的拦截器,其中用户名作为方法参数传递,密码放在发送给服务器的xml的header中。 服务端 代码结构如下: ValidUser ...
分类:
Web程序 时间:
2018-02-03 12:36:42
阅读次数:
235
代码结构图: //抽象工厂定义:抽象工厂模式提供一个创建一系列相关或相互依赖对象的接口,而无需指定他们具体的类(官方定义看着真蛋疼 自行百度理解吧 ^_^)//需求:不同的数据库sql写法不一样,实现从不同数据库获取用户和新增用户,获取部门和新增部门//用户表 抽象产品aclass user{}//... ...
分类:
Web程序 时间:
2018-02-02 14:15:36
阅读次数:
210
1.File->New->Other-Web->Dynamic Web Project,创建动态网络工程。它会自动生成配置文件,自动生成对应文件夹。2.IDE起到修改代码结构和内容的作用,程序的主体仍然是磁盘目录上的代码文件夹。因此在eclipse编辑时,仍然可以在tomcat中部署工程,不需要等待 ...
分类:
其他好文 时间:
2018-02-01 17:19:23
阅读次数:
121
1.没有重复代码 首先要保证没有重复代码!这就需要我们学会抽象和聚合,抽取相似部分,提高代码的可复用性。 2.功能职责单一 功能单一是要求我们保证类、方法的功能是唯一确定的,不要在一个方法中包含多种业务逻辑,这样不利于后期维护和代码可重用。 3.命名清晰易懂 命名是代码中无处不在的。变量、方法、类、 ...
分类:
其他好文 时间:
2018-01-31 18:33:15
阅读次数:
135
对于语言来说Lamda表达式都是轻车熟路的,但是对于Java来说从Java8才引入Lambda,所以这里还是提一下Lambda。而且Kotlin中使用Lambda的确很赞。 Lambda表达式简称lambda,本质上就是一段可以传递给其他函数的一小段代码,可以轻松的把通用的代码结构抽取成库函数。 可 ...
分类:
其他好文 时间:
2018-01-29 21:23:43
阅读次数:
169
本篇我们根据架构图进行代码的构建。根据微服务化设计思想,结合spring cloud一些优秀的项目,如服务发现、治理、配置化管理、路由负载、安全控制等优秀解决方案,使用Maven技术将框架进行模块化、服务化、原子化封装并构建,也为后期的灰度发布、持续集成提前做好准备工作。 另外在搭建环境之前,大家需 ...
分类:
编程语言 时间:
2018-01-29 11:32:09
阅读次数:
110
XMR挖矿教程 XMR介绍 门罗币(Monero,代号XMR)是一个创建于2014年4月开源加密货币,它着重于隐私、分权和可扩展性。与自比特币衍生的许多加密货币不同,Monero基于 "CryptoNote" 协议,并在区块链模糊化方面有显著的算法差异。Monero的模块化代码结构得到了比特币核心维 ...
分类:
其他好文 时间:
2018-01-28 13:49:31
阅读次数:
1396
#前面了解了文件的基本操作方法。在实际应用中,对文件内容进行迭代和重复执行操作是比较常见的操作。 #所谓迭代,是指不断重复某一个动作,直到这些动作都完成为止。 1、按字节处理 #在while循环中,read方法是最常见的对文件内容进行迭代的方法,例如: 1 #!/usr/bin/python3 2 ...
分类:
其他好文 时间:
2018-01-28 11:14:37
阅读次数:
173