본문 바로가기
728x90

전체 글83

[스위프트] final 메서드와 static 메서드 이전에 타입 메서드와 인스턴스 메서드의 비교를 해봤다. 2024.01.03 - [공부/스위프트] - [스위프트] 인스턴스 메서드와 타입 메서드 근데 타입 메서드에 대해서 생각하다 보면 이런 생각이 든다. "final class func와 static func와 똑같이 작동하지 않나?" 실제로 그렇다. 똑같이 작동한다. 적어도 내가 해봤던 테스트상으로는 그랬다. 하지만 실제로는 다른경우에 쓴다. 근데 막 찾아봐도 정확히 어떨 때 쓴다는 말이 명확한 느낌으로 없다. 내가 내린 결론은 단어에서 주는 뉘앙스 차이로 인해서 그렇다고 본다. final 먼저 final 메서드는 타입 메서드로 쓸 때 "final 메서드명" 이런식으로 쓴다. 이는 앞에서 static 타입 메서드 얘기할 때 말했듯이 오버라이딩이 안 된다.. 2024. 1. 4.
[스위프트] 인스턴스 메서드와 타입 메서드 스위프트의 메서드에는 인스턴스 메서드와 타입 메서드 두 가지 종류가 있다. 이번에는 인스턴스 메서드와 타입 메서드, 이 두가지의 차이점에 대해 알아보자. 인스턴스 메서드 인스턴스 메서드란 우리가 흔히 쓰는 메서드이다. 왜 인스턴스 메서드냐면 인스턴스화 했을때 쓸 수 있는 메서드라 인스턴스 메서드다. 타입 메서드 타입 메서드란 흔히 static을 접두어로 붙이고 선언한 메서드를 말한다. (마찬가지로 static을 붙인 프로퍼티는 타입 프로퍼티가 된다.) 이는 클래스나 구조체가 타입으로 선언되니까 호출 시에 "클래스(구조체) 명. 메서드명" 이렇게 호출할 수 있어서 타입메서드이다.(프로퍼티도 똑같다.) 하지만 중요한 건 타입메서드에는 두 가지가 있다. static 메서드 class 메서드 static 메서드.. 2024. 1. 3.
[CS] 인스턴스화란 무엇일까?(클래스, 객체, 인스턴스) 이번시간에는 "인스턴스화"에 대해서 알아보려고 한다. 아마 다들 여기저기서 수업을 듣거나 강좌를 볼때 인스턴스화한다 라는 말은 들어봤을 것이다. 근데 정확한 뜻은 모르고 그냥 느낌상 어떻다 라고만 알수있는데 이번에 확실히 알아보자. 인스턴스화란 객체지향에서 나오는 단어인데 주로 붕어빵틀과 붕어빵으로 얘기가 돌아다니는것을 확인할 수 있다. 하지만 이는 좀 부정확한 비유라는게 최근에 나오고 있다. 나도 동의한다. 그래서 나는 이왕 붕어빵틀로 얘기를 했으니까 붕어빵틀에서 크게 벗어나지 않으려 한다. 그래서 붕어빵틀의 설계도와 붕어빵틀로 얘기를 하려고 한다. 클래스(Class)와 구조체(Struct) 우리가 클래스나 구조체(스위프트에서는 주로 구조체(Struct)를 기본적인 구조와 내부 작동방식(메소드)등으로 .. 2024. 1. 2.
더 파이널스 TFLA0002 로그인 오류 해결방법 더파이널스에 TFLA0002이라는 오류코드가 뜨면서 게임을 실행할 수 없는 상황이 생기는 경우가 있는 것 같습니다. 이를 해결하는 방법은 다음과 같습니다. 스팀이랑 엠바크랑 연동을 안해서 생기는 오류라고 합니다. https://id.embark.games/id/sign-in https://id.embark.games/id/sign-in id.embark.games 여기로 들어가셔서 스팀이랑 연동을 하시면 해결됩니다. 저도 이거땜에 한 2시간 동안 헤매고 결국 어떻게 하다 보니 찾아냈군요. 2023. 12. 20.
[스위프트] 복잡한 함수의 사용 스위프트에서 함수를 선언하고 쓰는 데에 정말 복잡한 경우가 있다. 바로 함수를 일급객체로 쓰는 경우다. 함수를 일급객체로 쓰면 변수 및 상수에 저장해 쓸 수 있다. // 이 함수의 타입은 (String, String) -> String 이다 func areYouKorean(name: String, food: String) -> String { return "\(name), 당신은 \(food)를 좋아하는 한국인입니다." } // 이 함수의 타입도 (String, String) -> String 이다 func areYouAmerican(name: String, food: String) -> String { return "\(name), 당신은 \(food)를 좋아하는 미국인입니다." } 일단 name과 r.. 2023. 12. 19.
[스위프트] nil과 null 차이 스위프트에는 nil이 있습니다. 하지만 다른 언어에, 심지어 이전의 Objective-C에도 null이 있었습니다.(물론 obj-c에는 nil도 있었습니다.) 그렇다면 nil은 무엇이며 nil과 null의 차이는 무엇일까... 일단 기존의 obj-c에서 nil과 null들에 대해서 간단하게 살펴봅시다. NULL C pointer의 null nil Objective-C의 object들을 나타내는 null값 Nil Objective-C의 class들을 나타내는 null값 NSNull null을 표현하기 위한 싱글톤 오브젝트 뭐 그렇다고 합니다. 하지만 Swift에서는 위의 것들을 전부 없애버리고 nil만 남았다. Swift에서 nil은 값이 존재할지 안 할지 모르는 상태의, 아예 빈값("")도 없을 수 있는.. 2023. 12. 15.
728x90