관심사의 분리
1) 프로그램을 구별된 부분으로 분리시키는 디자인 원칙.
- 관심사란 컴퓨터 프로그램 코드에 영향을 미치는 정보의 집합.
- 관심사는 코드 최적화가 필요한 하드웨어의 세세한 부분만큼 포괄적이거나, 시작할 클래스의 이름처럼 구체적일 수 있음.
- 관심사의 분리는 정보를 잘 정의된 인터페이스가 있는 코드 부분 안에 캡슐화시킴으로써 달성할 수 있음.
* 캡슐화란?
- 객체지향 프로그래밍관점에서 캡슐화란 객체의 속성(fields) 과 메서드를 하나로 묶고, 실제 구현 내용 일부를 private 하게 감추어 은닉하는 것을 말함.
- 접근지정자(private)로 속성이나 메서드를 제한시킴.
- 접근지정자에 의해 정의된 해당 멤버변수나 함수는 코드 중에 접근 방식을 위반한 코드를 작성하면 컴파일 오류로 처리하고 실행코드 생성을 제한함.
2) 관심사 분리를 이용하면 프로그램의 설계에서 코드의 단순화 및 유지보수에 자유도가 높아짐.
- 이러한 자유도가 높아짐으로써 다른 부분의 세세한 사항을 모르더라도, 또 해당 부분들을 직접 가서 변경하지 않더라도 하나의 관심사의 코드 부분을 개선하거나 수정할 수 있게 됨.
- 이를 통해 중간의 기능 손실 없이 단편적인 방식으로 복잡한 시스템을 업그레이드하는 자유도를 높여줌.
'JAVA' 카테고리의 다른 글
객체 지향 프로그래밍 (0) | 2022.08.14 |
---|---|
연산자 (0) | 2022.08.14 |
상수와 리터럴 (0) | 2022.08.14 |
변수와 자료형 (0) | 2022.08.14 |
JDK 구성 및 기능 (0) | 2022.08.14 |
댓글