- Today
- Total
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 디자인 패턴
- 알고리즘
- datastructure
- 프로그래머스 level1
- coding test
- 코테
- Algorithm
- 스위프트
- programmer
- swift 코딩테스트
- 감성에세이
- 정렬 알고리즘
- 코딩테스트
- swift 알고리즘
- swift
- Design Pattern
- programmers
- sort
- swift split
- rxswift
- 프로그래머스
- 자료구조
- 프로그래머스 레벨2
- dart
- 디자인패턴
- 스위프트디자인패턴
- 정렬알고리즘
- 프로그래머스 swift
- 정렬
- 다트
목록전체 글 (173)
Bill Kim's Life...
디자인패턴에의 Visitor(방문자)에 대하여 Swift를 기반으로 하여 살펴봅니다. #. 구독 대상 컴퓨터 및 소프트웨어 공학과 관련자 소프트웨어 관련 종사자 기타 컴퓨터 공학에 관심이 있으신 분 디자인패턴의 개념을 잡고 싶으신 분 기타 소프트웨어 개발과 지식에 관심이 있으신 모든 분들 Swift 언어를 활용하여 디자인패턴을 공부해보고 싶으신 분들 Visitor(방문자) Visitor(방문자) 패턴은 객체의 구조와 기능을 분리시키는 패턴으로서 구조는 변하지 않으면서 기능을 쉽게 추가하거나 확장되어야 할 경우 사용할 수 있는 행위 관련 패턴입니다. Visitor(방문자) 패턴은 컴포지트 패턴과 연동되어 사용되는 경우가 많습니다. Visitor(방문자) 패턴의 예로서 파일 탐색기를 구현해볼수 있는데 파일 ..
디자인패턴에의 Template Method(템플릿 메소드)에 대하여 Swift를 기반으로 하여 살펴봅니다. #. 구독 대상 컴퓨터 및 소프트웨어 공학과 관련자 소프트웨어 관련 종사자 기타 컴퓨터 공학에 관심이 있으신 분 디자인패턴의 개념을 잡고 싶으신 분 기타 소프트웨어 개발과 지식에 관심이 있으신 모든 분들 Swift 언어를 활용하여 디자인패턴을 공부해보고 싶으신 분들 Template Method(템플릿 메소드) Template Method 패턴은 어떤 작업을 처리하는 일부분을 서브 클래스로 캡슐화해 전체 일을 수행하는 구조는 바꾸지 않으면서 특정 단계에서 수행하는 내역을 바꾸는 행위 관련 패턴입니다. 좀더 쉽게 설명해보면 상위 클래스에서 템플릿과 같은 틀을 제공하고 하위 클래스에서 이 틀을 이용하여 ..
디자인패턴에의 Mediator(중재자)에 대하여 Swift를 기반으로 하여 살펴봅니다. #. 구독 대상 컴퓨터 및 소프트웨어 공학과 관련자 소프트웨어 관련 종사자 기타 컴퓨터 공학에 관심이 있으신 분 디자인패턴의 개념을 잡고 싶으신 분 기타 소프트웨어 개발과 지식에 관심이 있으신 모든 분들 Swift 언어를 활용하여 디자인패턴을 공부해보고 싶으신 분들 Mediator(중재자) Mediator(미디에이터) 패턴은 복잡한 의존 관계를 줄이고자 할 때 유용한 행동 디자인 패턴입니다. 모든 클래스간의 복잡한 로직(상호작용)을 캡슐화하여 하나의 클래스에 위임하여 처리하는 패턴으로서 비슷한 패턴으로는 Facade 패턴과 Observer 패턴 등이 있습니다. 결론적으로 커뮤니케이션을 하고자 하는 객체가 있을 때 서로..
디자인패턴에의 Strategy(전략)에 대하여 Swift를 기반으로 하여 살펴봅니다. #. 구독 대상 컴퓨터 및 소프트웨어 공학과 관련자 소프트웨어 관련 종사자 기타 컴퓨터 공학에 관심이 있으신 분 디자인패턴의 개념을 잡고 싶으신 분 기타 소프트웨어 개발과 지식에 관심이 있으신 모든 분들 Swift 언어를 활용하여 디자인패턴을 공부해보고 싶으신 분들 Strategy(전략) Strategy(전략) 패턴은 클래스의 행위를 캡슐화 하여 동적으로 행위를 자유롭게 바꿀 수 있도록 돕는 패턴이다. Strategy 패턴은 특정한 계열의 알고리즘(행위) 및 동작을 정의하고 해당 알고리즘을 캡슐화하며 이 알고리즘들을 해당 계열 안에서 상호 교체가 가능하게 만들어 줍니다. 즉 Strategy 패턴은 유연하고 재사용 가능한..
디자인패턴에의 Proxy(프록시)에 대하여 Swift를 기반으로 하여 살펴봅니다. #. 구독 대상 컴퓨터 및 소프트웨어 공학과 관련자 소프트웨어 관련 종사자 기타 컴퓨터 공학에 관심이 있으신 분 디자인패턴의 개념을 잡고 싶으신 분 기타 소프트웨어 개발과 지식에 관심이 있으신 모든 분들 Swift 언어를 활용하여 디자인패턴을 공부해보고 싶으신 분들 Proxy(프록시) Proxy(프록시) 패턴은 실제 기능을 수행하는 객체(Real Object)(대신 가상의 객체(Proxy Object)를 사용해 로직의 흐름을 제어하는 디자인 패턴입니다. 즉 Proxy 객체를 이용하여 원래 객체의 변경없이 기능을 특정 방식을 제어할 수 있게 도와줍니다. 구조 Proxy(프록시) 패턴을 UML로 도식화하면 아래와 같습니다. S..
디자인패턴에의 Observer(옵저버)에 대하여 Swift를 기반으로 하여 살펴봅니다. #. 구독 대상 컴퓨터 및 소프트웨어 공학과 관련자 소프트웨어 관련 종사자 기타 컴퓨터 공학에 관심이 있으신 분 디자인패턴의 개념을 잡고 싶으신 분 기타 소프트웨어 개발과 지식에 관심이 있으신 모든 분들 Swift 언어를 활용하여 디자인패턴을 공부해보고 싶으신 분들 Observer(옵저버) Observer(옵저버) 패턴은 특정 객체에서 발생하는 이벤트를 구독자에게 전달하는 패턴입니다. Observer(옵저버) 패턴은 한 객체의 상태 변화에 따라 다른 객체의 상태도 연동 되도록 1 대 N 객체간 의존 관계를 구성하는 디자인 패턴입니다. 구조 Observer(옵저버) 패턴을 UML로 도식화하면 아래와 같습니다. Subje..
디자인패턴에의 Flyweight에 대하여 Swift를 기반으로 하여 살펴봅니다. #. 구독 대상 컴퓨터 및 소프트웨어 공학과 관련자 소프트웨어 관련 종사자 기타 컴퓨터 공학에 관심이 있으신 분 디자인패턴의 개념을 잡고 싶으신 분 기타 소프트웨어 개발과 지식에 관심이 있으신 모든 분들 Swift 언어를 활용하여 디자인패턴을 공부해보고 싶으신 분들 Flyweight Flyweight 패턴은 객체의 내부에서 참조하는 객체를 직접 만드는 것이 아니라, 없다면 만들고 만들어져 있다면 객체를 공유하여 전달해주는 구조 관련 패턴입니다. Flyweight 패턴을 사용하면 객체의 할당에 사용되는 메모리를 줄일 수 있을 뿐 아니라, 객체를 생성하는 시간도 들지 않게 도와줍니다. 다만 공유된 객체 및 자원의 경우 해당 공유..
디자인패턴에의 Command(커맨드)에 대하여 Swift를 기반으로 하여 살펴봅니다. #. 구독 대상 컴퓨터 및 소프트웨어 공학과 관련자 소프트웨어 관련 종사자 기타 컴퓨터 공학에 관심이 있으신 분 디자인패턴의 개념을 잡고 싶으신 분 기타 소프트웨어 개발과 지식에 관심이 있으신 모든 분들 Swift 언어를 활용하여 디자인패턴을 공부해보고 싶으신 분들 Command(커맨드) Command 패턴은 실행될 기능을 캡슐화함으로써 주어진 여러 기능을 실행할 수 있는 재사용성이 높은 클래스를 설계하는 행위(Behavior) 패턴입니다. 즉, 이벤트가 발생했을 때 실행될 기능이 다양하면서도 변경이 필요한 경우에 이벤트를 발생시키는 클래스를 변경하지 않고 재사용하고자 할 때 유용합니다. 실행될 기능을 캡슐화함으로써 기..