기술면접 스터디(9월27일 : 관심사 분리 | SOLID 원칙)
관심사 분리란 무엇인지 설명해주세요. separation of concerns, SoC 가독성 높은 코드를 짜려고 노력하다보면 도달하게 되는 어쩌면 개발자가 최초로 만나게 되는 디자인패턴이라고 볼 수도 있겠다. 예를 들어 자동차의 구현과 제작은 매우 복잡하고 어렵기에 핸들, 바퀴, 골격 각각 담당하여 개발하고 조합을 합니다. 이처럼 소프트웨어를 개발 할 때에 모듈이나 함수가 하나의 큰 책임을 지기 보다는 하나의 기능만을 수행할 수 있도록 독립적으로 개발한 뒤 조합하는 방식으로 소프트웨어를 구성하는 것을 관심사 분리라고 합니다. 이를 통해서 유지보수의 편의성, ‘분리’, ‘확장’을 고려한 코드를 작성할 수 있다는 장점이 있다. SOLID 원칙에 대해 설명해주세요. 객체지향 개발의 5대 원칙을 말한다. 단일..