일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- network
- SampleApp
- factory
- WiFi
- WWDC24
- Adapter
- AppleDeveloper
- isolate
- EventLoop
- OpenAI
- iot
- uikit
- designpattern
- GIT
- dartz
- LifeCycle
- tuist
- concurrency
- SwiftUI
- philipshue
- flutter
- dart
- Architecture
- swift
- Xcode
- 문법
- builder
- weatherkit
- singleton
- state
- Today
- Total
목록전체 글 (56)
Jaebi의 Binary는 호남선
목차Property Wrappers배경 → 상태를 나타내는 property들을 처리할 때 수정될때마다 trigger되는 logic이 있는경우가 많음ex) 새 값을 검증, 변환, 또는 listen등을 수행 할 수 있음이미 정의된 property가 있을 때, 이 property를 감싸서 computed-property로 만든 새로운 Wrapper 프로퍼티@propertyWrapper struct Capitalized { var wrappedValue: String { didSet { wrappedValue = wrappedValue.capitalized } } init(wrappedValue: String) { // didSet 실행은 초기화가 완료된 이후에만 트리거..
DartSwiftType Annotation`Double myDouble``let myDouble: Double`String declaration`String myString = 'hi'``var myString: String = "hi"`String interpolation`'${value}'``“\(value)"`Function`String greet(String msg) {}``func greet(msg: String) -> String {}`Function with implicit return`String greet() => "hi"``func greet() -> String {"hi"}`Schedule code to be executed when current scope is exited`de..
목차Protocols and Extensionsprotocol (interface) → `protocol`protocol ExampleProtocol { var simpleDescription: String { get } mutating func adjust()} classes, enumerations, and structures can all adopt protocolsmodify structure → `mutating`class SimpleClass: ExampleProtocol { var simpleDescription: String = "A very simple class." var anotherProperty: Int = 69105 func adjust() {..
목차Objects and Classesclass → `class`var shape = Shape()shape.numberOfSides = 7var shapeDescription = shape.simpleDescription()use `init` to create initializer`self` is used to distinguish the name property from the name argument to the initializerclass NamedShape { var numberOfSides: Int = 0 var name: String init(name: String) { self.name = name }}use `deinit` to deinitialize: ..