谈到架构是一个很泛的话题
这里我们讨论一下兼容性与扩展性
我们为什么用接口?这是很多java程序员都会问过的问题
我的答案是为了扩展和兼容
最近的框架中想加入日志功能,想自己写一个简单的日志操作类
其实我们最常用的应该是log4j
但jcp标准是java.util.logger 这两个东西完全不兼容,网上有很多说明了原因。有兴趣的同学可以去网上查一查。
其实日志随便用什么框架或者自己写都是可以的,为什么还要如此纠结呢?
这里我纠结的不是功能实现,而是其中的思想。
我怎么才能做一个可扩展的日志框架?
jcp的标准并不是实际上的标准,就象osi和tcp/ip一样,理论上的与工业上实际标准并不一样。
社区的log4j已经很多年了,而java官方并没有去兼容。
最近发现
log4j 的作者 Ceki Gülcü 出来了一标准SLF4J并做了一个实现框架logback.
这个框架应该也很久了,可惜我最近在工作中才发现。
这里领悟到一个思想,当官方标准不被承认,很多框架百花齐放的时侯,我们为了扩展,其实可以定义一个自己的标准,通过实现对需要用到的框架做兼容。
这样就会避免直接引用某一个框架的对象(这里比如说是log4j),当对这个框架进行替换时需要修改所有的引用,可能是成千上万的。
随便推荐一下,我的框架的实践性项目上线了
http://www.zhuaququ.com
分享到:
相关推荐
电脑疯子GHOST-WIN7-SP1旗舰版(64位).doc编程资料
疯子页面采集器是一款网页抓取工具,是用于网站信息采集,网站信息抓取,包括图片、文字等信息采集处理发布,是目前使用人数最多的互联网数据采集程序,可以采集大部分未加密页面站点 采集器教程 ...
京东应用架构设计 分为 业务架构,应用架构,技术架构,数据架构。 整体上比较全,对于构建自己的架构观很有帮助。
计算机软件文档编制规范,详细设计说明书编写规范,接口需求规格说明(IRS), 软件测试报告(STR),软件用户手册(SUM)等
《天才在左疯子在右》的基本介绍和推荐理由[定义].pdf
一款轻简的小说系统,抛弃繁琐,一切从简
疯子助手是一款为苹果设备用户提供应用下载和游戏破解的软件,疯子助手里提供了海量不闪退应用和近千款极高有效度的ios热门游戏存档。 疯子助手完美支持不越狱的iPhone和iPad等iOS设备,是一款下载安装和管理软件、...
疯子手机apk卸载工具疯子手机apk卸载工具疯子手机apk卸载工具疯子手机apk卸载工具疯子手机apk卸载工具疯子手机apk卸载工具疯子手机apk卸载工具疯子手机apk卸载工具疯子手机apk卸载工具疯子手机apk卸载工具疯子手机...
Android疯子卸载
疯子苹果助手是一款最受欢迎的应用下载平台,不越狱装软件的唯一选择、海量正版软件游戏、每日都有新增、全部免费安装,不需理会手机是否越狱,这么神奇助手,大家赶紧下载使用。 疯子苹果助手软件截图
与 smsd 架构兼容 过滤重要组件的 m-pesa 短信 可扩展,您可以随心所欲地扩展 API 多数据库支持,postgresql、mysql、sqlite 等等 安装 使用“go get”命令安装耶稣: go get github.com/gernest/jesus Jesus依赖...
CPU-Z 自读文件 ------------------ Version 1.69.2 版本号 1.69.2 April 2014 2014年04月 CPU-Z为强大的系统检测软件,装机必备~ Configuration file ...配置文件必须存放在cpuz.exe. 同一文件夹下名字为cpuz.ini
疯子锁ie插件,锁ie,锁ie插件 懒人锁ie ie加锁 锁ie主页 ie首页被锁 ie代理设置被锁
疯子ftp上传工具源码传送数据到服务器源码版.rar
读后感ۥ天才在左疯子在右精选.doc
疯子ftp上传工具传送数据到服务器 ftp上传工具 ftp服务器上传 ftp客户端 ftp服务器客户端 2.0新功能 密码加密 在线更新 更新缓存错误
疯子
读后感《天才在左,疯子在右》.doc
疯子页面采集器是一款网页抓取工具,是用于网站信息采集,网站信息抓取,包括图片、文字等信息采集处理发布,是目前使用人数最多的互联网数据采集程序,可以采集大部分未加密页面站点。
傻子疯子白痴心得体会傻子疯子白痴观后感.docx