디자인패턴
저장소 패턴 - 2
2023.02.08 - [디자인패턴] - 저장소 패턴을 알아보자 - 1에 이어 두 번째 기능을 구현할 때 항상 테스트부터 작성하자. 이 테스트는 코드(저장소)가 데이터베이스와 제대로 연동하는지 검사하기 때문에 아마 통합 테스트로 분류할 수 있다. #객체를 저장하는 저장소 테스트(test_repository.py) def test_repository_can_save_a_batch(session): batch = model.Batch('batch1', 'RUSTY-SOAPDISH', 100, eta=None) repo = repository.SqlAlchemyRepostiory(session) repo.add(batch) # 여기서 테스트하는 메서드는 repo.add() 이다. session.commit()..
![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FeN98R3%2FbtrYtwTEAjd%2F1gOWQ5tfmbo3bknr35s941%2Fimg.png)
저장소 패턴을 알아보자 - 1
『파이썬으로 살펴보는 아키텍처 패턴』을 보고 본 포스팅을 작성했다. 1. 저장소 패턴 소개 저장소 패턴은 모든 데이터가 메모상에 존재하는 것처럼 가정해 데이터 접근과 관련된 지루한 세부 사항을 감춘다. import all_my_data # 모든 데이터를 가져온다 def create_a_batch(): batch = Batch(...) all_my_data.batches.add(batch def modify_a_batch(batch_id, new_quantity): batch = all_my_data.batches.get(batch_id) batch.change_initial_quantity(new_quantity) 모든 객체가 메모리에 있더라도 이 객체들을 나중에 다시 찾을 수 있도록 어딘가에 보관해야 ..