- 授权协议: Apache
- 开发语言: Java
- 操作系统: 跨平台
- 软件首页: https://github.com/mydotey/scf
- 软件文档: https://github.com/mydotey/scf/blob/master/README-cn.md
- 官方下载: https://github.com/mydotey/scf/releases
软件介绍
SCF: 简单配置门面
Simple Configuration Facade, 简写为 SCF。是 代码 和 外部配置 (properties文件, 环境变量,系统/命令行参数, yaml文件, 等等)之间的一层抽象。命名上和另一个著名组件 slf4j (Simple Logging Facade for Java)相似,在配置领域的地位也和 slf4j (.NET 可类比 NLog)在日志领域的地位相同。
SCF 使得代码和外部配置分离。代码使用一个配置项,无需关心配置项在哪里配置,如何配置。
用法
java: https://github.com/mydotey/scf/tree/master/java
dotnet: https://github.com/mydotey/scf/tree/master/dotnet
示例
功能
强类型
核心抽象是强类型的Property
安全的配置
可以通过1个value filter来自动检查外部配置的正确性。
动态配置
配置可以是动态变化的。配置项的值自动更新。用户也可添加Listener监听配置项的变化。
多配置源
多个配置源有不同的优先级。配置项的值按配置源的优先级自动计算。
可扩展
scf-core 里只定义了一组接口抽象和默认实现。所有核心概念都是可扩展的(配置管理器,配置源,配置项等等)。用户可以自由地对默认实现进行扩展,或者编写自己的实现。
一些常用扩展:
轻量
无线程使用,只使用少量内存来缓存配置项。
支持多线程并发
Manager/Property的方法都是线程安全的,可以多线程并发使用。时间复杂读为O(1),和ConcurrentHashMap相同。
容易使用
scf-simple 对最简单常用的Property场景进行了实现: properties file, memory Map, system properties, env variables.
参考:
.NET框架程序设计
(美)Jeffrey Richter、(美)Francesco Balena / 李建忠 / 华中科技大学出版社 / 2004-1 / 54.00元
Microsoft.NET框架为简化开发与卫联网无缝连接的应用程序和组件提供了强大的技术支持,如ASP.NET Web窗体、XML Web服务以及Windows窗体。本书的目的在于展示.NET框架中公共语言运行库存的核心内容。全书由两位广受尊敬的开发者/作者完成,并假设读者理解面向对象程序设计的基本概念,如数据抽象、继承和多态。书中内容清楚地解释了CLR的扩展类型系统,CLR如何管理类型的行为,以......一起来看看 《.NET框架程序设计》 这本书的介绍吧!
