일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- collectionview
- HIG
- tableView
- Observable
- UICollectionView
- SWIFT
- 스위프트
- clean architecture
- swift documentation
- Refactoring
- Protocol
- RxCocoa
- Human interface guide
- ribs
- Clean Code
- swiftUI
- map
- uiscrollview
- Xcode
- UITextView
- ios
- uitableview
- MVVM
- 클린 코드
- 리펙터링
- combine
- 리팩토링
- 리펙토링
- rxswift
- 애니메이션
- Today
- Total
목록private (2)
김종권의 iOS 앱 개발 알아가기
final class vs class final class A { ... } class B { ... } class A와 class B의 차이점 A는 서브클래싱이 불가능 A는 성능적으로 더욱 높은 장점 -> 성능이 좋은 이유? 성능이 좋은 이유 - static dispatch 사용 (아래에서 이어서 개념 설명) Static Dispatch (Direct Call) 변수를 타입에 맞춰서 메소드와 프로퍼티를 참조 참조될 요소를 컴파일 타임에 결정 상속 가능성이 없다는 keyword를 코드에 표출하면 컴파일러는 Static Dispatch를 사용 Dynamic Dispatch (Indirect Call) override, subclass와 같은 변수의 실제 타입의 맞춰서 메소드와 프로퍼티를 호출 대표적으로 객..
Access Control 다른 소스 파일 또는 모듈의 코드에서 코드 부분에 대한 엑세스를 제한 코드의 구현 세부 정보를 숨기고 해당 코드에 엑세스하고 사용할 수 있는 기본 인터페이스를 지정 가능 모듈과 소스파일 구분 모듈: 배포 단위 프레임워크 또는 응용프래그램을 import로 다른 모듈로 가져올 수 있는 성격 소스파일: 단순히 소스코드 파일이므로 소스 파일에서 여러 유형에 대한 access control 정의가 가능 Access level open 모든 소스 파일에서 해당 level 접근 가능 + 모든 곳에서 서브클래싱 가능 public 모든 소스 파일에서 해당 level 접근 가능 + 같은 모듈 내에서만 서브클래싱 가능 internal (외부 모듈에서 코드 확인 불가) 같은 모듈 내에서만 접근 가능..