일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Observable
- RxCocoa
- map
- 클린 코드
- 스위프트
- UITextView
- 리펙터링
- swift documentation
- Xcode
- ios
- MVVM
- rxswift
- uitableview
- 리팩토링
- SWIFT
- combine
- collectionview
- tableView
- Refactoring
- Human interface guide
- swiftUI
- clean architecture
- 리펙토링
- Clean Code
- HIG
- uiscrollview
- 애니메이션
- Protocol
- ribs
- UICollectionView
- Today
- Total
목록함수형 프로그래밍 (3)
김종권의 iOS 앱 개발 알아가기
NSAttributedString과 NSMutableAttriubtedString 차이점 AttributedString 이란? AttributedString은 내부적으로 guts라는 인스턴스가 String 타입을 받아서 String에 속성을 부여하여 사용할 수 있도록 구현해 놓은 것 즉, String을 wrapping하여 단순 text에 색깔, 폰트와 같은 속성을 입힐 수 있도록 한 것 (구체적인 구현부는 swift-foundation 코드 참고) 초기화하고 값을 바꿀수 있다면 NSMutableAttributedString, 초기화 이후 값을 변경할 수 없다면 NSAttributedString 사용 NSAttributedString 예제) let attributes: [NSAttributedString...
함수형 프로그래밍 함수형 프로그래밍의 핵심은 가변 변수: 가능한 가변 변수를 지양 race condition, deadlock, concurrent update 문제 해결을 위한 프로그래밍 람다(lambda) 계산법이 핵심 (Alonzo Church, 1930년대에 발명) cf) 1958년 최초 함수형 프로그래밍 List, 1972년 절자치향 프로그래밍 c언어 클로저 표현식 존재 4가지 특징 1. Pure Functions 외부의 상태값을 참조 or 변경할수 없는 것 // x let num = 1 func add(a: Int) { return a + num } 2. Statesless, Immutability (= no sideEffect) multi thread 환경에서도 안정적으로 동작 가능 // x..
구조적 프로그래밍 (structured programming) `구조적 프로그래밍`이란 제어흐름(if/then/else, do/while/until)의 직접적인 전환에 대해 규칙을 부과하는 것 객체 지향 프로그래밍 (object-oriented programming) `객체 지향 프로그래밍`이란 제어흐름의 간접적인 전환에 대해 규칙을 부과하는 것 구조적 프로그래밍보다 2년 먼저 등장 ALGOL언어에서 stack의 frame을 heap으로 옮기면 함수 호출이 반환된 이후에도 함수에서 선언된 지역 변수가 오랫동안 유지될 수 있음을 발견 -> 이러한 함수가 클래스의 '생성자'로 지정 / 지역 변수는 인스턴스 변수로 / 중첩 함수는 메서드로 / 함수 포인터를 특정 규칙에 따라 사용하는 과정을 통해 다형성 등장 ..