TREASURE408 Swift : 기초문법 [프로토콜#4 - 익스텐션, 컬렉션 타입, 상속] 본 게시글은 yagom님과Zedd0202님의 게시글을 참고하여 작성되었습니다. 먼저 읽고 와주세요! Swift : 기초문법 [프로토콜#1 - 프로퍼티 요구사항] Swift : 기초문법 [프로토콜#2 - 메서드 요구사항] Swift : 기초문법 [프로토콜#3 - 타입으로서의 프로토콜, Delegate] 익스텐션 채택 및 준수 기존 타입의 소스코드에 접근할 수 없는 경우에도 마찬가지로, 기존 프로토콜 익스텐션(Extension) 하여 새 프로토콜을 채택하고 준수할 수 있다. 익스텐션은 기존 타입에 새로운 프로퍼티 및 메서드, 하위 스크립트를 추가할 수 있기 때문에 프로토콜에서 요구할 수 있는 모든 요구사항을 추가할 수 있다. protocol Person { var name: String { get } } 위.. SWIFT/Grammar 2022. 1. 30. Swift : 기초문법 [프로토콜#3 - 타입으로서의 프로토콜, Delegate] 본 게시글은 yagom님과Zedd0202님의 게시글을 참고하여 작성되었습니다. 먼저 읽고 와주세요! Swift : 기초문법 [프로토콜#1 - 프로퍼티 요구사항] Swift : 기초문법 [프로토콜#2 - 메서드 요구사항] 타입으로서의 프로토콜 프로토콜은 다른 타입이 허용되는 여러 곳에서 다음과 같은 프로토콜을 사용할 수 있다. 함수, 메서드 또는 이니셜라이저에서의 매개변수 타입 또는 리턴 타입 상수, 변수 또는 프로퍼티로서의 타입 배열 또는 딕셔너리 또는 다른 컨테이너의 항목으로서의 타입 TIP 타입으로서의 프로토콜 프로토콜은 요구만 하고 스스로 기능을 구현하지 않는다. 하지만 프로토콜은 코드에서 완전한 하나의 타입으로 사용되기 때문에 여러 위치에서 프로토콜을 타입으로 사용할 수 있다. 프로토콜은 이름을 .. SWIFT/Grammar 2022. 1. 28. Swift : 기초문법 [프로토콜#2 - 메서드 요구사항] 본 게시글은 yagom님의 Swift 프로그래밍 3판을 참고하여 작성되었습니다. 먼저 보고 와주세요! Swift : 기초문법 [프로토콜#1 - 프로퍼티 요구사항] 메서드 요구사항 프로토콜은 특정 인스턴스 메서드나 타입 메서드를 요구할 수 있다. 프로토콜이 요구할 메서드는 프로토콜 정의에서 작성한다. 메서드는 일반 인스턴스 및 타입 메서드와 완전히 동일하지만, 실제 구현부인 중괄호 { } 와 메서드 본문 없이 프로토콜 정의의 일부로 작성된다. 매개변수 기본값을 지정할 수 없다. 가변 파라미터는 일반 메서드와 동일하게 작성할 수 있다. 타입 메서드를 요구할 경우 static 키워드를 사용하고, static 키워드를 사용해 요구한 타입 메서드를 클래스에서 구현할 때는 static 키워드나 class 키워드 어.. SWIFT/Grammar 2022. 1. 27. Swift : 기초문법 [프로토콜#1 - 프로퍼티 요구사항] 본 게시글은 yagom님과Zedd0202님의 게시글을 참고하여 작성되었습니다. Protocols 프로토콜(protocol) 이란 쉽게 생각해서 인증서라고 보면 된다. 프로토콜은 특정 작업이나 기능에 적합한 메서드, 프로퍼티 및 기타 요구사항의 청사진을 정의한다. Struct, Class, Enum은 Protocol을 채택해서 특정 기능을 실행하기 위해 프로토콜의 요구사항을 실제로 구현할 수 있다. 프로토콜은 정의를 하고 제시만 할 뿐 스스로 기능을 구현하지는 않는다. 즉, 조건만 정의한다. 메서드 구현부인 { } 중괄호는 사용 불가 하지만, 메서드 이름, 매개변수, 반환 타입 등만 작성 가능하며 매개변수도 사용 가능. 하나의 타입으로 사용되기 때문에 아래와 같이 타입 사용이 허용되는 모든 곳에 프로토콜을.. SWIFT/Grammar 2022. 1. 25. Swift : 기초문법 [타입 캐스팅(Type Casting)] 본 게시글은 yagom님과Zedd0202님의 게시글을 참고하여 작성되었습니다. 타입 캐스팅 타입캐스팅이란 인스턴스 타입을 확인하거나, 인스턴스의 타입을 슈퍼클래스 또는 서브클래스 타입처럼 다루기 위해 사용한다. Swift에서 타입 캐스팅은 is 와 as 연산자를 사용하여 구현함 이 두 연산자는 값의 타입을 확인하거나, 값을 다른 타입으로 전환(Cast)하는 간단하고 표현적인 방법을 제공함 타입 캐스팅을 통해 특정 클래스 인스턴스의 타입을 확인 가능 타입 캐스팅을 통해 프로토콜을 준수하는지도 확인 가능 먼저 알아볼것은 '타입 캐스팅을 사용하여 특정 클래스 인스턴스의 타입을 확인 가능' 부분이다. 인스턴스의 타입은 is 키워드를 사용해서 확인이 가능하다. class Person { var name: Stri.. SWIFT/Grammar 2022. 1. 24. Swift : 기초문법 [상속#3 - 클래스의 이니셜라이저 convenience, required] 본 게시글은 yagom님과장국진님의 게시글을 참고하여 작성되었습니다. 먼저 보고 와주세요! Swift : 기초문법 [상속#1 - 클래스 상속(자식, 부모, 기반 클래스)] Swift : 기초문법 [상속#2 재정의 override] 클래스의 이니셜라이저 값 타입(Struct, Enum)의 이니셜라이저에서는 위임을 위해 이니셜라이저끼리 구분할 필요가 없었지만, Class에서는 지정 이니셜라이저와 편의 이니셜라이저로 역할을 구분한다. 즉, 클래스가 부모클래스에서 상속한 모든 속성을 포함하여 모든 클래스의 저장 속성은 초기화하는 동안 초기 값을 지정해야 줘야 한다. Swift에서는 모든 저장 프로퍼티가 기본값을 가지는데 편리하도록 클래스의 유형에 대해 두 가지 이니셜라이저를 정의한다. 지정 이니셜라이저 클래스의.. SWIFT/Grammar 2022. 1. 24. Swift : 기초문법 [상속#2 재정의 override] 본 게시글은 yagom님의 Swift 프로그래밍 3판을 참고하여 작성되었습니다. 먼저 보고 와주세요! Swift : 기초문법 [상속#1 - 클래스 상속(자식, 부모, 기반 클래스)] 재정의 Override 저번 상속 게시글에서 부모/자식/기반 클래스에 대해 알아봤는데, 자식 클래스는 부모 클래스로부터 물려받은 메서드, 인스턴스/타입 프로퍼티, 서브스크립트 등을 그대로 사용하지 않고 자신만의 기능으로 변경하여 사용할 수 있다. 이것을 재정의 Override라고 한다. orverride 키워드를 사용함 Swift 컴파일러가 슈퍼클래스(부모 포함 상위 부모 클래스)에 해당 특성이 있는지 확인 후 재정의함 만약, 재정의할 해당 특성이 없는데 override 키워드를 사용하면 컴파일 오류 발생 자식 클래스에서 부.. SWIFT/Grammar 2022. 1. 23. (Xcode) - playground 오류 해결방안 Playground not displaying output Xcode의 playground를 통해 코드를 구현하다 보다 보면 저만 이런 현상이 자주 있는지는 모르겠지만 아무런 출력이 되지 않고 빙글빙글 돌고만 있는 현상이 있었습니다. 재실행하거나 몇 분의 시간이 지나면 해결되는 경우도 있었지만, 보통은 hello world 도 출력되지 않았습니다... 그래서 구글링을 해봤는데 생각보다 많은 분들이 이 같은 현상을 오래전부터 격고 있었었는데, 제가 찾은 해결책을 공유하려 합니다. 인텔 맥 완벽한 해결책을 찾지 못했지만, 인텔 맥 에서의 해결책은 아래 링크의 플레이그라운드를 다운로드해서 그곳에서 사용하는 방법입니다. Start-Dev-iOS-Apps-Pplayground.zip M1 맥 M1 맥 에서의 해결.. TIP/iOS & MacOS TIp 2022. 1. 22. Swift : 기초문법 [상속#1 - 클래스 상속(자식, 부모, 기반 클래스)] 본 게시글은 yagom님의 Swift 프로그래밍 3판을 참고하여 작성되었습니다. 상속 클래스는 메서드나 프로퍼티 등을 다른 클래스로부터 상속받을 수 있다. final 키워드를 사용하면 재정의 (Override) 방지 가능 static 키워드를 사용해 타입 메소드를 만들면 재정의 불가능 class 키워드를 사용해 타입 메소드를 만들면 재정의 가능 class 앞에 final 을 붙이면 static 키워드를 사용한 것과 동일 override 키워드를 사용하여 부모 클래스 메소드 재정의 가능 자식 / 부모 / 기반 클래스 A클래스로 부터 상속을 받으면 상속을 받은 B클래스는 A클래스의 자식클래스(Subclass/Child-class)라고 한다. 자식클래스에게 자신의 특성을 물려준 A클래스를 부모클래스(Super.. SWIFT/Grammar 2022. 1. 22. (티스토리) 코드블럭에 클립보드로 복사 버튼 추가 이번에는 블로그에 코드블럭을 넣으면서 복사버튼이 코드블럭안에 나타나 버튼을 클릭시 클립보드로 복사가 되는 스크립트를 구현하고 티스토리에 적용 시켜볼까 합니다. 만약 티스토리 스킨편집에 대한 기초 지식이 없으시다면 아래 글을 먼저 읽고 와주세요! (티스토리) 스킨 편집 기초 상식 안녕하세요. 제 블로그에는 티스토리에서 스킨을 적용하기 위해 다양한 포스팅이 존재합니다. 이번에는 티스토리에서 어떻게 스킨을 어떻게 편집하는지 아주 간단하게 알아보려고 합니다. 스 seons-dev.tistory.com 클립보드 복사 버튼 만들기 티스토리를 이용하는 많은 분들이 콘텐츠를 무단으로 복사할 수 없도록 플러그인을 사용하여 마우스 사용을 막아놓았습니다. 하지만 코드를 자주 사용하는 블로그인 경우 아주 난감합니다...! 그.. FRONT-END/CSS 2022. 1. 21. Swift : 기초문법 [서브스크립트(subscript)] 본 게시글은 yagom님과소들이님의 게시글을 참고하여 작성되었습니다. 서브스크립트 클래스, 구조체, 열거형에는 컬렉션, 리스트, 시퀀스 등 타입의 요소에 접근하는 단축 문법 서브스크립트(Subscript)를 정의할 수 있다. 별도의 설정자(Setter)와 접근자(Getter)등의 메서드를 구현하지 않아도 인덱스를 통해 값을 설정하거나 가져올 수 있다. someArray[index] //someArray인스턴스의 index를 통해 해당 인덱스 값 접근 someDictionary[key] // someDictionary라는 Dictionary의 key를 통해 해당값을 가져옴 클래스, 구조체는 필요한 만큼 서브스크립트 구현 가능 서브스크립스트를 여러 개 구현해도 외부에서 서브스크립트를 사용할 땐, 서브스크립트.. SWIFT/Grammar 2022. 1. 21. Swift: 기초문법 [모나드 - 컨텍스트, 함수객체, 모나드] 본 게시글은 yagom님의 Swift 프로그래밍 3판을 참고하여 작성되었습니다. 모나드 Swift 에는 함수형 프로그래밍 패러다임에서 파생된 기능이나 개념이 종종 등장한다. 이 개념을 이해하지 못한다면 Swift 기능의 절반 정도를 사용하지 못하기 때문에 함수형 프로그래밍 패러다임을 이해하는 게 중요하다. 그 시작은 모나드(monad)이다. 모나드는 한 문장으로 설명하기 어려운 개념이지만, 모나드라는 용어는 수학의 범주론에서 시작된다. 순서가 있는 연산 처리할 때 자주 활용하는 디자인 패턴 사용하는 곳에 따라 수학의 범주론의 모나드인지 특정 디자인 패턴을 따르는 모나드인지 달라짐 프로그래밍의 모나드는 수학 범주론의 모나드의 의미를 완벽히 구현하지 않고, 단지 개념만 차용한 정도의 의미를 가짐 대부분의 성.. SWIFT/Grammar 2022. 1. 20. 찰리푸스 - Light Switch (21.01.21 새벽 2시 공개 !) Light Switch 찰리푸스의 신곡이 한국 시간 기준 1월 21일 새벽 2시경에 유튜브로 최초 공개가 될 예정입니다. 됐습니다! ↪︎ Livestreaming ↪︎ 한국어 해석 ↪︎ Livestreaming Q&A Light Switch는 틱톡을 통해 만들어진 틱톡 전용 노래(?) 라고 하는데 드디어 풀버전으로 나오나봅니다! 올해가 찰리푸스의 마지막 앨범 이후 4년 만이고 2017년 이후로는 영국 톱 10 싱글이 없었다고 하네요. 그래서 그런지 내일 노래가 공개되면 찰리푸스의 이 도전이 성과를 거둘지 기대가 아주 큽니다. 개인적으로 찰리푸스 노래를 아주 좋아하기 때문에 새벽 2시까지 기다렸다가 스트리밍을 실시간으로 시청하려고 합니다 ㅎㅎ Light Switch는 Spotify Apple Music Y.. PLAY/Music 2022. 1. 20. [Pop Song] 나만 알고 싶은 팝송 #11 저작권 문제로 인해 팝송의 가사는 올리지 못하는점 양해 부탁드립니다. 나만 알고 싶은 팝송 청하 & Christopher - Bad Boy Apple music | 가사 PRETTYMUCH - Summer on You Apple music | 가사 Jonas Blue & HRVY - Younger Apple music | 가사 Billie Eilish & Khalid - Lovley Apple music | 가사 Ali Gatie - You Apple music | 가사 PLAY/Music 2022. 1. 20. [Pop Song] 나만 알고 싶은 유튜버 - Levent Gegier 저작권 문제로 인해 해당 유튜버의 링크로 올리는 점 양해 부탁드립니다. Levent Gegier Levent Geiger Hi guys, my name is Levent and I live in Munich/Germany. I am a singer/songwriter. I started playing the drums at the age of 5, piano at the age of 8, Saxophone at the age of 10, guitar at the age of 12. I take vocal lessons since I am 13. I'm 18 years old www.youtube.com One Direction vs BTS Mashup 가사 더보기 That's what makes you .. PLAY/Music 2022. 1. 20. 이전 1 ··· 10 11 12 13 14 15 16 ··· 28 다음 한국어 (기본) English Русский 日本語 👉🏻 잠깐만요! 이 글도 한 번 보고 가세요 이전글 다음글 티스토리툴바 서근 개발노트구독하기