[nextstep-ATDD]1週目引数テスト後



1週間目の課題は2週間以内に遅く完成した.しかし、私はやはりいくつかのことを学んだので、整理しましょう.残りの一週間はまじめにやろうぜ

引数テストのキー

  • 買収テストは、시나리오의 인수 조건명확한 목적を明らかにする重要性を感じています.
  • 明確な目的は、テストを書くときにステップを分けて、テストを読む人が意図をより明確に理解できるようにすることであり、コメントする人にとってもよい.
  • の内部では、ATDDでのデータテストは難しい.そのため、正確なデータをテストするには、ユニットテストを適切に混合し、テストを統合することを学んだ.
  • 一級コレクションをJPAに使用


    フィードバックとして,シンボルリストを1次集合にリダイレクトするように要求される.キャラクタ分離により,その集合に属するメソッドを作成できるため,理解され改造された.次のコードを使用できます.
    @Entity
    public class Line {
        ...
        @Embedded
        private Sections sections = new Sections();
        ...
    }
    
    @Embeddable
    public class Sections {
        @OneToMany(mappedBy = "line",
                fetch = FetchType.LAZY,
                cascade = {CascadeType.PERSIST, CascadeType.MERGE},
                orphanRemoval = true)
        private List<Section> sections = new ArrayList<>();
        ...
    }

    CascadeType

  • 永続的移行:
  • を使用
  • 私が使っているSectionはLineを主体として
  • を書きました.
  • したがって、Sectionは、サブエンティティ
  • を管理するためにCascadeTypeを必要としない.
    いつ
  • を使いますか?
  • 単一エンティティ(単一所有者)に属する
  • から
  • 親と子供のライフサイクルが同じである場合、
  • CascadeTypeと持続的コンテキストメソッドの役割を整理する必要があると思います.いつか整理して欲しい...
  • コメントリンク

  • https://github.com/next-step/atdd-subway-map/pull/216
  • https://github.com/next-step/atdd-subway-map/pull/235
  • https://github.com/next-step/atdd-subway-map/pull/284
  • 参考資料


    詳細については、
  • エンティティのレベル1セット:https://wbluke.tistory.com/232
  • を参照してください.
  • インフラストラクチャ-金英漢のjava ORM標準JPAプログラミング-基本編-永続線移行と上品な対象課参考