iOS

iOS/Design Pattern

[iOS/Design Pattern] 예제로 알아보는 MVVM패턴 - 2

데이터 바인딩을 하지 않는 경우와 바인딩을 하는 경우를 나누어서 간단한 예제를 만들어보았다. // Model struct Babys { let name: String let sex: String let age: Int let memo: String let image: String init(name: String, sex: String, age: Int, memo: String, image: String) { self.name = name self.sex = sex self.age = age self.memo = memo self.image = image } } ✅ 아이 정보를 정의한 간단한 모델이다. // Data struct DummyData { static let baby: [Babys] = [ Ba..

iOS/Design Pattern

[iOS/Design Pattern] 예제로 알아보는 MVVM패턴 - 1

MVVM 패턴 Model - View - ViewModel로 이루어진 디자인 패턴이다. Model 데이터를 처리 View 사용자에게 보여지는 UI ViewModel View를 표현하기 위해 만들어진 View를 위한 모델이다. 비즈니스 로직 등을 포함하고 있다. ✅ MVVM 패턴에 대해서는 나중에 자세하게 다른 글에서 다루겠다. 예제 1 - MVVM 패턴을 이용한 시계 // Model class Clock { static var currentTime: (() -> String) = { let today = Date() let hours = Calendar.current.component(.hour, from: today) let minutes = Calendar.current.component(.minut..

iOS/iOS

[iOS] 2. 메모리 관리 1 - ARC (Automatic Reference Counting)

참조 타입과 힙 class Country { var name: String var capital: String init(name: String, capital: String) { self.name = name self.capital = capital } } let korea = Country(name: "Korea", capital: "Seoul") // korea는 지역변수라고 가정 Country라는 클래스를 korea라는 인스턴스로 생성하고 초기화 했다. 위와 같이 메모리에 저장 된다. 지역 변수인 korea는 스택에 할당되고, Country 인스턴스는 힙에 할당 된다. 스택에 있는 korea는 힙 영역에 있는 인스턴스를 "참조"하고 있는 형태이다. 따라서 korea 안에는 힙에 할당 된 인스턴스의 ..

iOS/iOS

[iOS] 1. 메모리 구조

메모리 구조 프로그램이 실행되면 OS는 메모리에 실행한 프로그램을 위해 아래와 같은 공간을 할당해 줌. 메모리 (RAM) 코드 영역 데이터 영역 힙 영역 스택 영역 코드 영역 우리가 작성한 코드가 기계어 형태로 저장 됨. - 컴파일 타임에 결정 됨. - Read-Only 형태로 저장 됨. ✅ 기계어 : 컴퓨터가 읽을 수 있는 가장 밑단의 언어. (0과 1로만 이루어져 있음.) 데이터 영역 전역변수, static 변수가 저장 됨. - 프로그램 시작과 동시에 할당 됨. - 프로그램이 종료 되어야 메모리가 해제 됨. - Read-Write로 저장 됨. struct Seongil { static let lastName: String = "Yeo" // static 변수 ➡️ 데이터 영역 } var address..

여성일
'iOS' 카테고리의 글 목록 (12 Page)