인터페이스 클래스
- 일반적인 인터페이스 = 두 대상간의 commutication(통신)을 위한 중간 매개체
- Java에서의 인터페이스
- 자바는 다중 상속을 원칙적으로 지원하지 않는다.
- 하지만 인터페이스로 정의한 클래스로부터는 다중 상속을 받을 수 있다.
다중 상속
다중 상속의 장점
- 코드의 재사용 - Java는 이점을 포기함(상속받는 부모 클래스간의 변수명이 같은 경우 애매모호해진다.)
- 효율적 제어 - Java는 이걸 노림
- 자바는 원칙적으로 다중 상속(extends)를 허락하지 않는다.
- 자바에서 인터페이스 클래스로 선언한 클래스로부터는 다중 상속이 가능한다.
- 변수 선언 안된다. - 상수 선언만 가능하다 public static final
- 추상 메소드만 가능(반드시 재정의가 필요함) public abstract
디자인 패턴
- 소프트웨어를 설계할 대, 특정 맥락에서 자주 발생하는 고질적인 문제들이 또 발생했을 때, 재사용할 수 있는 훌륭한 해결책
- "바퀴를 다시 발명하지마라(Don't reinvent the wheel)"
- 이미 만들어져서 잘되는 것을 다시 만들 필요가 없다는 의미이다.
- 패턴이란
- 각기 다른 소프트웨어 모듈이나 기능을 가진 다양한 응용 소프트웨어 시스템들을 개발할 때도 서로 간에 공통되는 설계 문제가 존재하여, 이를 처리하는 해결책 사이에도 공통점이 있다. 이러한 유사점을 패턴이라고 한다.
- 설계 단에서 효율적인 클래스 설계를 위해 사용하는데, 웹 개발에 있어서 가장 효율적인 패턴은 MVC 패턴이다. MODEL, VIEW, CONTROL
GoF 디자인 패턴
- 생성 패턴
- 추상팩토리
- 빌더
- 팩토리 메서드
- 프로토타입
- 싱글턴
- 구조 패턴
- 어댑터
- 브리지
- 컴퍼지트
- 데커레이터
- 퍼사드
- 플라이웨이트
- 행동 패턴
- 책임연쇄
- 커맨드
- 인퍼프리터
- 반복자
- 중재자
- 옵저버
- 상태
- 전략
- 템플릿 메소드
- 방문자
'웹 애플리케이션 > 자바' 카테고리의 다른 글
1_9 자바 객체지향(형변환) (0) | 2023.03.17 |
---|---|
1_8 자바 클래스 간 관계(상속) (0) | 2023.03.16 |
1_7 자바 GUI 프로그래밍 (2) | 2023.03.15 |
1_6 자바 UMLet 설치 및 활용 (0) | 2023.03.15 |
1_5 자바 객체지향 실습(회원관리 프로그램) (0) | 2023.03.15 |