iOS 앱 개발자 프로젝트/Swift 문법 정복하기 썸네일형 리스트형 [iOS] lazy var와 private let : 언제 쓰는 걸까? Swift를 다루다 보면 변수를 설정할 때 var와 let을 자주 쓰게 되는데, 상황에 따라 lazy var와 private let이 필요할 때가 있어. 그럼 이 녀석들을 언제, 왜 써야 하는지 쉽게 풀어볼게. ଘ(੭ˊᵕˋ)੭* ੈ✩‧₊˚1. lazy var: 필요할 때만 게으르게!먼저 lazy var부터 살펴보자. 보통 var는 선언하자마자 값을 설정하지. 그런데, 만약 그 변수가 바로 필요하지 않고, 나중에 특정 상황에서만 사용된다면 어떨까? 바로 이럴 때 lazy var를 쓰는 거야. "Simplicity is the soul of efficiency." 코드가 간결할 때 효율적일 수 있다는 점을 기억하기! lazy var는 변수가 처음부터 초기화되지 않고, 실제로 그 변수에 접근할 때 값을.. 더보기 [Swift] HOF == My HOPE (High-order function) 내일은 채 튜터의 고함 세션이 있는 날! 질문은 살살 해 주세요! ( •͈ᴗ-)ᓂ-ෆ IBAction, 7r z or..!https://developer.apple.com/documentation/foundation/urlsession/1407613-datatask dataTask(with:completionHandler:) | Apple Developer DocumentationCreates a task that retrieves the contents of a URL based on the specified URL request object, and calls a handler upon completion.developer.apple.comlet numbers = [1,2,3,4,5] .. 더보기 [Swift] String interpolation 문자열 보간법 (String Interpolation) C# 6.0의 등장 C# 6.0은 2015년에 출시된 C# 프로그래밍 언어의 주요 버전 업데이트로, 도입된 여러 기능 중 하나가 String Interpolation C# 6.0 이전의 문자열 처리 이전에는 문자열 내에 변수나 표현식을 삽입을 위해 String.Format() 메서드를 사용했다. 문자열 보간법은 C# 6.0부터 도입된 기능으로, 문자열 내에 변수나 표현식을 삽입할 수 있게 해준다.→ 서식 지정을 간편하게 하며, 가독성도 높일 수 있다. 📌 문자열 보간법의 장점가독성 향상: 기존의 String.Format() 메서드보다 더 간단하고 직관적인 문법을 사용할 수 있어 코드 가독성이 높다.편.. 더보기 [Swift] 객체 지향 프로그래밍 (Object-Oriented Programming) 관계란 무엇인가. 객체 지향이란 무엇인가. swift라는 객체 지향의 세계에서는 관계 맺기를 잘해야 코딩을 잘 할 수 있다고 합니다. 경험이 쌓일수록 이해도가 높아지겠지만, 일단은 현 수준에서 OOP에 대해 다시 정리해 봅니다. 객체란 무엇인가 메세지를 전달 받을 수 있는 대상, object. 푸바오에게 "일어나!"라고 한다면 푸바오를 객체라 할 수 있다. 말 그대로 대상을 나타내는 단어라고 생각해도 된다. 4월 3일 푸바오가 유학을 떠난 간 쓰촨성 선수핑 기지에는 나이도 출신도 다른 90여 마리의 판다들이 있는데 이들도 모두 객체가 될 수 있다. (부디 우리 푸바오가 여러 객체들과의 관계를 잘 맺으며 객체 지향적인 삶을 살기를.. ) 푸바오의 친구 판다들 모두 각자의 데이터, 타입(상태)와 메서드(행위.. 더보기 [Swift] Inheritance & Override (2) 상속(Inheritance)으로 물려받은 행동(method)을 수정할 수 있는 Override에 대하여 공부하고, Inheritance 핵심 개념을 복습합니다. Override에서 final 로 선언하면 자식 클래스가 Override하는 것을 막을 수 있다는 것도 익혀둡니다. Override 상속받은 상태와 행동을 수정할 수 있다. 즉, 자식 클래스는 부모 클래스로부터 상속 받은 property나 method를 그대로 사용하지 않고 자신만의 기능으로 변경하여 사용할 수 있다. 이를 재정의, Override 라 한다. override 키워드는 swift 컴파일러가 조상 클래스(부모 포함 상위 부모 클래스)에 해당 프로퍼티나 메서드 등이 있는지 확인한 후 재정의 하는데 만약 조상클래스에 해당 특성이 없다면,.. 더보기 [Swift] Closure, Higher Order Function (2) 2024년 4월 2일 화요일 3월에 공부했던 클로저와 고차함수를 제대로 이해하기 위해 연습하기 [Swift] Closure, Higher Order Function 1 복. 씁. 하. 기. Closure (클로저) 동작을 저장할 수 있다. 변수/상수에 저장할 수 있다. 파라미터로 전달할 수 있다. 함수에서 반환할 수 있다. 타입을 가진다 = Function Type 함수는 Closure의 한 종류(Named Closure) 이다. + Quiz / SayHello 함수의 Function Type은? func sayHello(name: String) { } (String) -> () (String) -> Void Higher Order Function (고차함수) "함수를 파라미터로 받는 함수" + 아래 a.. 더보기 [Swift] Struct vs. Class 2024년 3월 28일 목요일 두 개념을 다시 한 번 정리해 봅니다. 한 문장으로 정리한 차이점은, Class 참조타입이고 ARC로 메모리 관리를 한다. Struct 값 타입이다. [ 공통점 ] 함수적 기능을 하는 메서드를 선언할 수 있다. 값을 저장할 property를 선언할 수 있다. protocol을 채택하여 기능을 설정할 수 있다. extension을 사용하여 기능을 확장할 수 있다. 생성자를 사용해 초기 상태를 설정할 수 있다. 내부 값에 .을 사용하여 접근할 수 있다. [ Class ] 참조 타입이다. : ARC로 메모리를 관리한다. : 상속이 가능하다. 동일한 클래스 인스턴스를 여러 변수에 할당한 뒤 값을 변경하면 모든 변수에 영향을 준다. 타입 캐스팅을 통해 런타임에서 클래스 인스턴스 타입.. 더보기 [Swift] Closure, Higher Order Function 2024년 3월 16일 토요일 익명 함수 closurer와, 다른 함수를 인자로 받거나, 함수의 결과로 함수를 반환하는 고차함수(map, filter, reduce)를 공부해 봅니다. #1. Closure #2. Higher Order Function (고차함수) #1. Closure 이름없는 함수 즉, 코드 블록을 말한다. ('closure'라는 단어가 참 잘 어울린다.. ) 상수나 변수의 참조를 캡쳐(capture)해 저장할 수 있습니다 주변 환경에 있는 변수나 상수를 캡처하여 저장하고, 이를 나중에 사용할 수 있도록 하는데 이것은 클로저가 생성될 때 클로저가 참조하는 변수 또는 상수의 값에 대한 복사본을 유지하고 저장하는 메커니즘이다. 값(value) 캡처: 클로저가 변수나 상수의 값을 캡처한다... 더보기 이전 1 2 3 다음