0

ターゲット Objectsが部分的に同じ Objects を共有しexcelColumnspdfColumns一部は条件付きでさえ共有する場合、以下のコードのように関数型プログラミング、密結合、ボイラープレートを無効にするための適切な OOP パターンは何ですか? 多くの共有列があり、共有されていない条件付きの列はほとんどないと仮定しましょう。

    List<Column> excelColumns = new ArrayList<>();
    List<Column> pdfColumns = new ArrayList<>();

    //shared columns
    Column test = new Column("test", 121, 11);
    excelColumns.add(test);
    pdfColumns.add(test);

    //conditional columns
    if (condition) {
        excelColumns.add(new Column("test2", 12, 21));
    }

    //non shared columns
    pdfColumns.add(new Column("test3", 12, 41));

    //shared columns
    Column test4 = new Column("test4", 12, 331);
    excelColumns.add(test4);
    pdfColumns.add(test4);
    Column test5 = new Column("test5", 72, 11);
    excelColumns.add(test5);
    pdfColumns.add(test5);
    Column test6 = new Column("test6", 82, 121);
    excelColumns.add(test6);
    pdfColumns.add(test6);
4

2 に答える 2