Tips about software architecturing
다중성을 생각하는 것이 좋습니다. 단일 요소로 가정하고 만든 모듈은 추후 다중 요소로 확장하기 어려울 수도 있습니다.
다른 모듈과 쉽게 통합이 가능해야 합니다. 이 모듈을 적용하기 위해 추가 작업이 많이 필요한 경우 그냥 기존 모듈을 수정하면서 확장하는 것이 더 낫습니다.
이를 위해 기존의 사용 사례들을 파악하고, 특수한 경우가 있는 경우 이를 염두에 두는 것이 추후에 생길 통합 실패를 예방하는데 도움이 됩니다.
모듈은 자주 사용되어야 합니다. 3번 미만으로 사용될 모듈은 3의 법칙을 따라 아직 추상화 할 필요가 없을 수도 있습니다. 모듈로 추상화하고 통합하는 데는 많은 비용이 소모되며 자주 사용되는 모듈 만이 이 비용을 정당화할 수 있습니다.
특수한 값에 특화된 데이터 보다는 일반화된 데이터에서 특수한 값을 추출하는 것이 장기적으로 재사용에 유리합니다.
가능하다면 오프라인 플레이어 등 특수한 상태를 고려하여 구조를 짜는 것이 좋습니다.
설정이 안되는 등 비정상적으로 라도 값이 없는 경우를 고려해야 합니다. 이 경우에 영구적 데이터 손실이 일어나서는 안됩니다.
모듈에 발생하는 일반적인 요구 사항은 다음과 같습니다.
관리 가능성, 로그
오류 처리
Last updated 14 days ago