Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 프로그래머스 암호 해독
- 프로그래머스 n의 배수 고르기
- Error installing cocoapods
- 스파르타코딩캠프
- n번째 원소까지
- 문자열 붙여서 출력하기
- 프로그래머스 자동커밋
- 프로그래머스
- 문자열 정렬하기 (1)
- continue
- 프로그래머스 문자열 정렬하기 (1)
- ruby설치
- array
- cocoapods 설치 오류
- 프로그래머스 배열 만들기1
- 주사위 게임1
- 프로그래머스 문자열 붙여서 출력하기
- 프로그래머스 조건에 맞게 수열 변경하기 3
- 객체지향
- 프로그래머스 최댓값 만들기(2)
- Break
- 배열 만들기1
- 연산자
- 프로그래머스 주사위 게임1
- swift
- 스페인어
- 조건에 맞게 수열 변경하기 3
- 스파르타 코딩클럽 내일배움캠프
- 프로그래머스 n번째 원소까지
- Til
Archives
- Today
- Total
dev._.note
[Swift] 반응형 프로그래밍 본문
반응형 프로그래밍이란?
반응형 프로그래밍(Reactive Programming)은 데이터 스트림 또는 데이터의 변화에 따라 코드가 자동으로 반응하는 프로그래밍 패러다임. 이 패러다임에서는 데이터의 변경 사항을 감지하고 이에 따라 연속적으로 반응하는 방식으로 프로그램을 작성합
1. 데이터 스트림(Data Stream)
- 이벤트 스트림, 값의 흐름 등과 같이 시간에 따라 연속적으로 발생하는 데이터의 흐름을 나타냄.
- 이러한 데이터 스트림은 사용자 입력, 센서 데이터, 외부 API의 응답 등 다양한 소스에서 나올 수 있음.
2. 옵저버(Observer) 패턴
- 데이터의 변화를 감시하고, 변화에 따라 특정 작업을 수행하는 디자인 패턴.
- 변화가 일어나면 옵저버(또는 구독자)는 해당 변화에 반응하여 알림을 받고, 필요한 작업을 수행.
3. 스트림의 변환과 조작(Transforming and Manipulating Streams)
- 데이터 스트림을 조작하여 필터링, 매핑, 결합, 변환 등을 수행하여 새로운 스트림을 생성하는 작업.
- 이를 통해 데이터 스트림을 효과적으로 처리하고 필요한 형태로 가공.
4. 바인딩(Binding)
- 데이터의 변화와 이에 따른 작업의 연결을 나타냄.
- 데이터와 UI 요소, 또는 데이터와 작업 사이의 연결을 설정하여, 데이터의 변경이 발생하면 이에 맞춰 UI나 다른 작업을 자동으로 업데이트.
바인딩은 데이터의 변화와 연관된 작업이 서로 결합되어 있어서, 하나의 변화가 다른 작업에 자동으로 전달되고 반영될 수 있도록 해줌. 이를 통해 코드의 가독성과 유지보수성을 높일 수 있음.
많은 프레임워크와 라이브러리들이 반응형 프로그래밍을 지원하며, Swift에서는 Combine 프레임워크가 이러한 개념을 포함하고 있어 데이터 스트림의 변화를 쉽게 처리하고 반응형으로 프로그래밍 가능.
'Dev > SWIFT' 카테고리의 다른 글
[Swfit] todoList 과제 (0) | 2023.12.20 |
---|---|
[Swfit] Combine 도구 (0) | 2023.12.18 |
[Swift] 동기와 비동기 (0) | 2023.12.18 |
[Swift] 강한 참조 순환 문제와 해결방법 (1) | 2023.12.15 |
[Swift] 스레드(Thread) (0) | 2023.12.14 |