전개 연산자 전개 연산자는 배열 데이터를 단순 나열할 때 사용한다. *A 의 의미 : A 배열의 데이터를 나열한다. *기호는 흔히 곱하기 연산자이다. 그런데 Kotlin에서 * 기호는 곱하기 이외에 전개 연산자(Spread Operator)로도 사용된다. 전개 연산자는 배열값을 나열할 때 사용한다. 아래 예시 코드를 보자. import java.util.Arrays.asList fun main(args: Array) { val array = arrayOf(10, 20, 30) val list = asList(1, 2, array[0], array[1], array[2], 100, 200) list.forEach{print(it)} } 위에서 배열의 크기는 3이므로 3개의 데이터를 직접 추가하였다. 하지만..
iOS 복습 및 연습용으로 간단하게 구현해본 어플리케이션이다. 로컬 DB는 없고 실행 시에만 내용이 유지되는 예제수준이지만, Swift 5와 iOS 12 기준으로 제작해본 첫 앱이다. (기존 Swift3 시절과는 약간 내용이 다른 점이 있었지만, 크게 막 전혀 새롭다는 느낌은 없었던 것 같다.) Navigation Controller : 화면 전환 시 iOS느낌이 더 나도록 표준을 맞추기 위해 사용 UITableViewController : 테이블로 메모 목록을 나타내주기 위해 사용 UIImagePickerController : 이미지를 앨범으로부터 가져와서 사용하기 위해 사용 (이미지 편집 기능 포함) GitHub Repository Link https://github.com/della-padula/M..
예시 코드를 먼저 보도록 하겠다. class ViewController: UIViewController { @IBOutlet var uiTitle: UILabel! override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view. } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() } @IBAction func sayHello(_ sender: Any) { self.uiTitle.text = "Hello, World!" } } @IBOutlet은 프로퍼티에, @IBAction은 메소드에 각각 추가된다. 이 A..
View Controller의 상태는 크게 4가지로 구성된다 Appearing View Controller가 Screen에 등장하기 시작한 순간부터 등장을 완료하기 직전까지의 상태 Appeared View Controller가 Screen 전체에 완전히 등장한 상태 Disappearing View Controller가 스크린에서 가려지기 시작해서 완전히 가려지기 직전까지의 상태 Disappeared View Controller가 스크린에서 완전히 가려졌거나 퇴장한 상태 > 상태 변화에 따른 API Method 1) Appearing -> Appeared viewDidAppear: 2) Appeared -> Disappearing viewWillDisappear: 3) Disappearing -> Disa..
application(_:willFinishLaunchingWithOptions:) 앱이 구동되어 필요한 초기 실행 과정이 완료되기 직전에 호출되는 메소드 application(_:didFinishLaunchingWithOptions:) 앱이 사용자에게 화면으로 표시되기 직전에 호출되는 메소드 앱이 실행된 후에 진행할 커스터마이징이나 초기화를 위한 코드를 여기에 작성하면 된다. applicationDidBecomeActive(_:) 실행된 앱이 Foreground, 즉 화면 전면에 표시될 때 호출되는 메소드 앱이 Inactive 상태에 들어가면서 일시 중지된 작업이 있다면 이를 재시작하는 코드를 여기에 작성해주어야 한다. applicationDidEnterBackground(_:) 앱이 Backgroun..
iOS가 가질 수 있는 앱의 상태 값은 다음과 같다. Not Running 앱이 시작되지 않았거나 실행되었지만 시스템에 의해 종료된 상태 Inactive 앱이 전면에서 실행중이지만, 아무런 이벤트를 받지 않고 있는 상태 Active 앱이 전면에서 실행 중이며, 이벤트를 받고 있는 상태 Background 앱이 백그라운드에 있지만 여전히 코드가 실행되고 있는 상태 Suspended 앱이 메모리에 유지되지만 실행되는 코드가 없는 상태, iOS시스템은 메모리가 부족한 상황이 오면 Suspended상태에 있는 앱들을 특별한 알림 없이 정리하여 Foreground에 있는 앱의 여유 공간을 확보한다.
멀티 스레드는 동시성(Concurrency) 또는 병렬성(Parallelism)으로 실행된다. 동시성은 멀티 작업을 위해 하나의 코어에서 멀티 스레드가 번갈아가며 실행하는 성질을 말하고 병렬성은 멀티 작업을 위해 멀티 코어에서 개별 스레드를 동시에 실행하는 성질을 말한다. 자바의 스레드 스케줄링은 Priority 방식과 Round Robin 방식을 사용한다. Priority 방식은 우선순위가 높은 스레드가 실행 상태를 더 많이 가지도록 스케줄링 하는 것을 말한다. Round Robin 방식은 시간 할당량(Time Slice)를 정해서 하나의 스레드를 정해진 시간만큼 실행하고 다시 다른 스레드를 실행하는 방식을 말한다. Priority 방식에서 우선순위는 1~10으로 주어지며 1이 가장 낮고 10이 가장 ..
* Binding - 프로그램 구성 요소의 성격을 결정해주는 것 ex ) 변수의 데이터 타입이 무엇인지 정해지는 것 종류 정적 바인딩(Static binding) 동적 바인딩(Dynamic binding) 정의 컴파일 시간에 성격이 결정되는 것 실행 시간(runtime)에 성격이 결정되는 것 예시 C언어 컴파일 시간에 변수의 데이터 타입이 결정 Python(Interpreter 언어) 런타임에 값에 따라 변수의 데이터 타입이 결정 장단점 컴파일 시간에 많은 정보가 결정되므로 실행 효율↑ 런타임에 자유롭게 성격이 바뀌므로 적응성↑
- Total
- Today
- Yesterday
- 함수형프로그래밍
- 컬렉션
- retrofit
- databinding
- CloudComputing
- C++
- Rxjava
- Reactive programming
- 상속
- watchos
- 애플워치
- 안드로이드
- 아이폰
- apple
- XCode
- 코틀린
- Kotlin
- Elliotable
- Auto Layout
- 알고리즘
- 오토레이아웃
- 스위프트
- 함수형
- SwiftUI
- Swift
- Notissu
- Apple Watch
- android
- java
- ios
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |