技术开发 频道

SCA软件架构设计理念分析

    精巧的设计

    QName name = source.getName();
    StAXArtifactProcessor<?> processor =

    (StAXArtifactProcessor<?>)processors.getProcessor(name);

    再看QName来自于何方神圣,在我们开发的例子程序中有Calculator.composite配置文件:

    <component name="CalculatorServiceComponent">
    <implementation.java class="calculator.CalculatorServiceImpl"/>


    上面的QName的localPart属性就是“component”,“implementation.java”,而这个QName是在读Calculator.composite文件时产生的,根据这个QName,我们就能找到要处理这个tag的类。如当读到“implementation.java”的QName,根据QName作为key值就在HashMap中找到JavaImplementationProcessor ,然后由JavaImplementationProcessor来处理。

    “implementation.java“-〉JavaImplementationProcessor,多么令人拍案叫绝的设计啊!

    (4)JDK 泛型在工厂模式中的应用

    Tuscany是基于JDK1.5的开发出来的,其中大量使用了泛型等新特性,下面简单地介绍泛型在工厂模式中的应用。

0
相关文章