일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- 프로젝트
- 운영체제
- 티스토리
- 파이썬
- auto configure
- jsp
- 문법 정리
- 유사코드
- MongoDB
- gradle
- 알고리즘
- K6
- 초대장
- dynamic query
- smart cast
- JVM
- oracle
- 오라클 디비
- c#
- 파이썬 소스
- 리눅스
- resilience4j
- hyperledger
- 자바 프로젝트
- 자바
- spring
- SQL
- 오라클
- 학점
- 백준 알고리즘
- Today
- Total
목록2018/05/18 (2)
모종닷컴
학습 목표일정한 프로세스를 가진 요구사항을 템플릿 메소드 패턴을 이용하여 구현 탬플릿 메소드 패턴 : 알고리즘의 구조를 메소드에 정의하고 하위 클래스에서 알고리즘 구조의 변경없이 알고리즘을 재정의 하는 패턴. -> 변하지 않는 기능은 슈퍼클래스에서 만들어주고 자주 변경되어 확장할 기능은 서브클래스에서 만든다. 언제 쓰일까? - 구현하려는 알고리즘이 일정한 프로세스가 있다. - 구현하려는 알고리즘이 변경 가능성이 있다. 어떤 단계로 써야 할까? - 알고리즘을 여러 단계로 나눈다. ex) 게임에 접속 시 아이디 비밀번호 로그인 과정, 해당 회원의 등급(회원, 관리자) 확인 과정, 연결 과정 - 나눠진 알고리즘의 단계를 메소드로 선언한다. ex) 위의 로그인 과정, 등급 확인 과정, 연결 과정 들을 각 각 메..
학습 목표알고리즘을 요구사항에 맞게 사용할 수 있다. 상황을 예시로 들자면 "A라는 알고리즘을 돌리게 되면 효율이 매우 떨어진다는 것을 알게 되었고, B라는 알고리즘으로 대체를 하는 상황"이 가장 적절하다고 생각한다. 클래스의 구성은 다음과 같이 되어있다. AdapterImpl.class에서는 sort()라는 메소드안에 Sort.class의 알고리즘을 장착하고, Main.class에서는 이 AdapterImpl.class의 sort 메소드를 사용한다. 1. 버블 소트를 사용하고 있을 때 2. 버블 --> 퀵 다음 사진에서 볼 수 있듯이 Main.class에는 어떠한 변경도 일어나지 않았지만 전혀 다른 알고리즘으로 바꿀 수 있게 되었다. [출처 : https://www.youtube.com/watch?v=..