RxSwift) RxSwift, 반응형 프로그래밍

2024. 1. 16. 16:48· RxSwift
목차
  1. RxSwift
  2. RxSwift를 사용하는 이유
  3. 반응형 프로그래밍

기업에서 가장 공통적으로 요구하는 기술 스택인 비동기 처리를 위한 프레임워크인 RxSwift를 배워보도록 하겠습니다.

RxSwift

RxSwift = Reactive Extension Swift의 약자로 swift를 반응형 프로그래밍 하기 위한 라이브러리라고 할 수 있습니다.

 

RxSwift를 사용하는 이유

1. 비동기 실행 코드를 이해하기 힘듬(애플의 API에서 제공하는 delegate패턴을 그대로 사용하고 구현코드를 확인할 수 없어 데이터의 흐름 파악에 어려움이 있다.)

2. RxSwift와 MVVM와 밀접한 연관

 

반응형 프로그래밍

반응형 프로그래밍이란, 데이터의 흐름 및 변경사항을 전파(emit?)하는데 중점을 둔 프로그래밍 패러다임입니다. 이 패러다임을 사용할 경우, 주변환경/ 데이터에 변화가 생길 때 연결된 실행 모델이 변경사항을 받아 동작하도록 설계하는 방식입니다.

 

https://babbab2.tistory.com/182

 

RxSwift) RxSwift가 도대체 뭔데요(Reactive Programming)

안녕하세요!! 소들입니다 :> 저는 Let's Swift 티케팅에 낙제하고 퇴근 후 포스팅이나 쓰는 사람입니다 ㅋㅋ;;;;; 아쉬움은 뒤로하고 RxSwift의 드디어 첫 걸음마 포스팅을 써보려고 합니다 RxSwift... 어

babbab2.tistory.com

설명이 잘 되어있어 인용하겠습니다.

 

단순 변수 안에 두개의 정수를 합하여 sum 변수에 할당하는 코드입니다.

var a = 10
var b = 20

var sum = a + b

print(sum) //30

 

만약 a를 20으로 값을 변경하더라도 일반적인 프로그래밍에서는 합의 결과값(sum)이 변화하지 않습니다.

a = 20

print(sum) // 30

 

앞서 말했듯이 반응형 프로그래밍에서는 "주변환경/ 데이터에 변화가 생길 때 연결된 실행 모델이 변경사항을 받아 동작하도록 설계하는 방식"이라고 했습니다. 

 

a = 20

print(sum) // 40

a값이 변화하였고 변경사항을 적용하여 결과값이 적용이 되었습니다.

그러기 위해서는 a의 값이 변경되는지 "관찰"을 하고 변경이 되었다면 변경되었다면 sum에게 "전파"해야 합니다.

 

이러한 반응형 프로그래밍을 가능하게 위해서는 Observable(피관찰자), Observer(관찰자), Operater 주요 3가지 개념이 존재합니다.

 

 

'RxSwift' 카테고리의 다른 글

RxSwift) Observer  (0) 2024.01.29
RxSwift) 간단한 숫자 증가앱  (0) 2024.01.15
RxSwfit) Subject  (0) 2023.01.06
RxSwift) Observer  (0) 2023.01.06
  1. RxSwift
  2. RxSwift를 사용하는 이유
  3. 반응형 프로그래밍
'RxSwift' 카테고리의 다른 글
  • RxSwift) Observer
  • RxSwift) 간단한 숫자 증가앱
  • RxSwfit) Subject
  • RxSwift) Observer
성실농장주
성실농장주
매일 조금이라도 꾸준히 성장하고 싶은 개발자
성실농장주
사과농장
성실농장주
전체
오늘
어제
  • 분류 전체보기 (43)
    • iOS 개발공부📱 (4)
    • Swift🐤 (12)
    • SwiftUI🐧 (2)
    • Firebase 🔥 (1)
    • Git 🐈 (2)
    • Linux (1)
    • Trouble Shooting🛠️ (2)
    • 자료구조🏛️ (1)
    • visionOS 개발공부👓 (1)
    • Algorithm💡 (4)
    • RxSwift (5)
    • 오픈소스 (1)
    • ios 개발자 면접 질문🥸 (6)
    • 영어문서 단어집📕 (0)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • Array
  • processor_management
  • EnvironmentValues
  • iOS_process_management
  • colorScheme
  • process_control_block
  • process_states
  • SWIFT
  • Debug View Hierarchy
  • RxSwift
  • Tuple
  • optional_chaining
  • Xcode
  • nested_function
  • git
  • Set
  • rethrows
  • CLLocationDegrees
  • control_transfer_statement
  • responder_chain

최근 댓글

최근 글

hELLO · Designed By 정상우.v4.2.0
성실농장주
RxSwift) RxSwift, 반응형 프로그래밍
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.