初识delphi-spring-framework

介绍

Delphi Spring Framework是一个国际性的社区开源项目,我们的使命是提供一个强劲的基础框架(Infrastructure Framework),帮助Delphi开发者开发健壮、灵活、扩展性强的企业级应用程序。本框架基于Embarcadero® Delphi® 2010 for Win32平台。

许可

本项目授权许可为Apache License V2.0. 您可以自由使用,个人使用或商用。

架构

Delphi Spring Framework由下面3个类库组成:

  • Spring.Base
提供框架的基础类库,部分类基于.Net Framework进行设计。
  • Spring.Core
提供更高层次的核心功能,比如IoC容器。
  • Spring.Extensions
包含了一些设计良好的实用功能,比如通用编号生成器。

 

特性

  • 控制反转/依赖注入(Inversion of Control/Dependency Injection)容器
Spring.IoC命名空间提供了简单而强大的IoC/DI容器,它支持:
  • 使用代码或属性来进行注册和注入
  • 使用Fluent-style方式完成注册
  • 支持强类型的接口,并提供编译器检查
  • 多种预定义生命周期类型(Singleton/Transient/SingletonPerThread/Pooled)
  • 支持构造函数注入、方法注入、属性注入和字段注入
  • 可以为服务注册多种组件并使用名称进行标识
  • 组件可以实现多种服务,并可以自动注册GUID接口作为服务
  • 自动激活
  • 循环依赖检查
  • 支持反射或委托来实例化组件
  • 多种生命周期接口(IInitializable, IStartable, IRecyclable, etc)
  • Cryptography Library
Spring.Cryptography命名区间包含了下列密码学算法:
  • 哈希算法 (MD5, SHA-1/256/384/512)
  • 校验算法 (CRC-16, CRC-32)
  • 对称算法 (DES, Triple-DES. 支持CipherMode, PaddingMode and IV)
  • 随机数生成器
  • Generic Collection Interfaces
Spring.Collections命名区间提供了.Net框架中存在的泛型容器接口: ICollection<T>, IList<T>, IDictionary<TKey, TValue>. 这3个接口都继承自System单元中的 System.IEnumerable<T>System.IEnumerable接口. 应使用 TCollections类来创建这些接口的实例。
  • Design Patterns
Spring.DesignPatterns命名区间包括了下面3个可重用的设计模式:
  • 单例模式(Singleton Pattern)
  • 观察者模式(Observer Pattern)
  • 规约模式(Specification Pattern)
  • Utility Classes
Spring.Utils和Spring.Utils.IO命名区间提供了很多封装好的工具类:
  • TDriveInfo
  • TEnvironment
  • TOperatingSystem
  • TMessageBox
  • TBaseNCalculator
  • TFileVersionInfo
  • TFileSystemEntry
  • TFileSearcher
  • IFileEnumerable
  • TNetwork
  • Spring.System
    • TInterfaceBase
    • TArgument
    • TBuffer
    • TEnum
    • TRtti
    • TNullable<T>
    • TLifetimeWatcher
    • TObjectHolder<T>
    • TVersion
  • Numbering
Spring.Numbering命名区间提供了很多灵活的通用编号生成器。
  • Live Templates
自从Delphi2006引入的动态模板可以大大提高我们的编程效率。项目中的“Code Templates”文件夹包含了近30个模板。
  • Unit Tests
我们按照敏捷模式进行开发,并使用DUnit来进行单元测试。这可以在最大程度上保证代码质量,并使重构更加快速和安全。

你可能感兴趣的:(framework)