디자인 모델 중의 몇 가지 원칙 과 유형 관계
디자인 모델 중의 몇 가지 원칙 / 법칙 을 나열 하 다.
개폐 원칙
개폐 원칙 은 모델 의 가장 기본 적 인 원칙 이다. 한 마디 로 확장 개방, 수정 폐쇄 이다.
수요 가 변 경 될 때 시스템 은 기 존 시스템 을 확장 하 는 것 이지 기 존의 논 리 를 수정 하 는 것 이 아니 라 구조의 우열 을 평가 하 는 가장 기본 적 인 조건 이다.본 원칙 은 체계 적 유연성 을 요구 하 는 구현 이다.
리 씨 교체 원칙
리 씨 교체 원칙 은 다른 원칙 의 기초 이다. 한 마디 로 아들 은 아버 지 를 대신 할 수 있 고 아버 지 는 아들 을 대신 할 수 없다.
이것 은 자바 문법 규범 인 것 같 지만 구체 적 으로 는 말 하지 않 는 다.
후진 원칙 에 의존 하 다.
후진 원칙 에 의존 한 다 는 한 마디 로 요약 하면 추상 에 의존 해 야 지 구체 에 의존 해 서 는 안 된다.인터페이스 프로 그래 밍 이 아니 라 프로 그래 밍 을 해 야 한 다 는 얘 기다.
구체 적 인 실현 은 인터페이스 나 추상 류 를 사용 하여 변수의 성명, 파 라 메 트릭 성명 과 반환 값 유형 성명 등 을 하 는 것 이다.
List list = new ArrayList();
List 는 list 의 정적 유형 이 고 Array List 는 그의 실제 유형 입 니 다. 나중에 다른 방식 으로 먼저 List 를 사용 해 야 한다 면 정 의 를 수정 하지 않 아 도 됩 니 다. 값 은 실제 유형 을 수정 해 야 합 니 다.또한 시스템 유연성 의 구현 이다.
인터페이스 격 리 원칙
인터페이스 격 리 는 가능 한 한 인 터 페 이 스 를 추상 적 으로 독립 시 키 고 너무 비대 하지 않 으 며 불필요 한 실현 이 필요 하지 않 은 사례 에 나타 나 지 않도록 하 는 것 이다.
합성 / 중합 복용 원칙
재 활용 모듈 이 필요 하 다 면 일반적으로 두 가지 방법 이 있 는데 하 나 는 계승 을 사용 하 는 것 이 고 하 나 는 합성 / 중합 을 사용 하 는 것 이다.모델 의 요구 에 따라 가능 한 한 합성 / 중합 방식 을 사용 하여 계승 재 활용 을 직접 사용 하지 않도록 해 야 한다.
이렇게 하 는 목적 지 는 상속 을 사용 하려 면 자 류 가 모든 부류 의 방법 을 알 고 안전성 이 높 지 않다 는 것 이다.계승 도 재 구성 에 유리 하고 너무 많은 계승 으로 인해 구조 가 너무 복잡 하고 유지 하기 어렵다.
디 미트 의 법칙
한 마디 로 서로 통신 할 필요 가 없 는 두 가지 유형 은 직접적인 역할 을 해 서 는 안 되 며, 굳이 통신 을 하려 면 제3 자 를 통 해 전달 할 수 있다.이 법칙 의 근본 사상 은 높 은 내부 집적, 낮은 집적, 불필요 한 관련 관 계 를 해결 하 는 것 이다.
단점: 1 불필요 한 업무 적 의미 없 는 퍼 가기 류 가 많이 생 긴 다.2. 통신 효율 을 낮 추고 모듈 간 의 조화 가 쉽 지 않다.
보완: 역전 원칙 에 의존 하여 상호 보완 적 으로 사용 하면 극복 할 수 있다.
클래스 간 의 몇 가지 관계:
일반적 관계
일반적인 관 계 는 상속 과 실현 관계, 즉 부자 관계 다.
UML 에 서 는 실선 가 삼각형 을 사용 하여 계승 을 표시 하고 허 선 가 삼각형 은 실현 을 나타 낸다.
연관 관계
관련 관 계 는 한 클래스 가 다른 클래스 의 모든 상황 을 알 고 있 음 을 나타 내 며, 일반적으로 한 클래스 에 다른 클래스 를 포함 하 는 실례 변 수 를 나타 낸다.
UML 에서 실현 화살 표를 사용 하면 양자 관 계 는 1 대 1, 1 대 1 이 될 수 있다 는 것 을 나타 낸다.
중합 관계
집적 관 계 는 비교적 강 한 관련 관계 로 하나의 유형 이 다른 유형의 사례 를 포함 하 는 것 이 아니 라 이 두 가 지 는 전체 와 개체 간 의 관계 이다.자바 의 실현 에서 취 합 관계 와 관련 관 계 는 코드 급 에서 다 르 지 않 고 업무 적 의미 에서 만 의미 가 다 릅 니 다.
UML 에 서 는 실현 과 마름모꼴 을 사용 하여 양자 관계 가 연관 관계 임 을 나타 낸다.
합성 관계
합성 관 계 는 집적 관계 보다 더욱 강 한 관련 관계 로 이들 이 전체 와 부분의 관계 이 고 전체 대상 이 일부 대상 의 생존 을 책임 져 야 한다.일부 대상 은 공유 할 수 없습니다.자바 실현 에서 합성 과 중합 관계 도 다 르 지 않 고 업무 적 의미 만 다르다.
UML 에 서 는 실선 과 실심 마름모꼴 을 사용 하여 양자 관계 가 연관 되 어 있 음 을 나타 낸다.
의존 관계
의존 관 계 는 하나의 유형 이 다른 유형의 정의 에 의존 하고 관련 관계 의 인 스 턴 스 변수 와 달리 방법 으로 인용 을 전달 하 며 구체 적 으로 부분 변수, 방법 파 라 메 트릭 과 정태 적 인 방법 으로 호출 하 는 방식 으로 이 루어 질 수 있다 는 것 을 나타 낸다.사용 관계 라 고도 부 르 는 곳 이 있다.
UML 에 서 는 점선 에 화살 표를 붙 여 표시 합 니 다.
마지막 으로 추상 류 와 인터페이스의 관 계 를 보충 합 니 다.
1. 추상 류 는 부족 한 실현 을 제공 할 수 있다.
2 인 터 페 이 스 는 많이 계승 할 수 있다
3. 인 터 페 이 스 는 재 구성 에 더욱 유리 하 다.
4 인 터 페 이 스 는 cloneable 등 혼합 형식 을 정의 할 수 있 습 니 다.
가장 좋 은 실현 은 추상 류 를 사용 하여 인 터 페 이 스 를 실현 하고 부족 한 실현 을 제공 하 며 자신의 논리 에 따라 부분 적 인 방법 을 다시 쓴다.
열람 에 대비 하여 기록 하 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.