분류 전체보기20 [Swift] property wrapper 정의 및 사용법 예시 propert wrapper는 Swift5.1에 추가된 개념으로 이름에서 말하든 property를 감싸서 새로운 property를 만드는 것을 말한다. 그냥 이렇게만 들어보면 개념이 잘 안 잡히지만 Swift 를 사용하는 개발자라면 한 번씩 사용해 본 경험이 있을 것이다. @State @Published @Binding 위와 같이 property 앞에 추가되는 것이 property wrapper이다. 그럼 사용법 및 예시를 자세히 알아보자 사용법 우선 property wrapper를 사용하기 위해서는 local stored property 만 가능하다. global property, computed property 에는 사용할 수 없다는 것을 명심하고 바로 예시를 보자 @propertyWrapper st.. 2023. 11. 24. [Swift] class 와 struct 의 차이 Swfit에서 가장 헷갈리는 내용 중에 하나가 class와 struct에 차이이다. 둘은 언뜻 보면 비슷하게 사용되며 큰 차이점이 없는 것처럼 보인다. 하지만 차이점을 모르고 잘못 사용하다 보면 큰 문제가 발생할 수 도 있다. 그 차이를 한번 알아보자 공통점 우선 차이점을 알기전에 공통점부터 알아보자. 둘 모두 Swift에서 사용되는 데이터를 유용하게 표현하기 위해 저장하고 처리하기 위해 사용자가 타입을 정의해서 만들어 주는 데이터 타입이다. 그렇기에 데이터를 잘 다룰 수 있도록 다양한 기능이 제공된다. 데이터를 저장할 수 있는 프로퍼티를 만들 수 있다. 메소드를 만들어서 특정 작업을 수행할 수 있다. initializer를 가질 수 있어 초기값을 설정할 수 있다 Extention을 이용해서 기존 타입에.. 2023. 11. 15. [Android] Context 는 무엇이고 우리는 왜 사용하는가? 안드로이드 개발자라면 Context라는 건 많이 들어보았을 것이다. 하지만 정확히 Context 가 무엇인지는 잘 알지 못한다. Context가 무엇이고 어떨 떄 사용하는지 한번 알아보자 Context 란? 안드로이드에서 사용되는 Context 는 어디에서 온 것일까? Context는 안드로이드의 메인 프레임워크인 Android.jar 에 존재한다. 그럼 안드로이드 프레임워크는 무엇인가? 안드로이드 프레임워크는 안드로이드에서 동작하는 메인 애플리케이션이며 개발자가 만드는 애플리케이션은 그 메인 애플리케이션에서 동작하는 하나의 이벤트 핸들러이다. 미니 애플리케이션 (개발자가 만든 앱) 을 다운로드할 수 있는 메뉴를 가진 슈퍼 애플리케이션 (안드로이드 프레임워크) 이 있다고 생각하면 쉽게 이해된다. 안드로이.. 2023. 11. 1. [Kotlin] extension 함수의 이해 코틀린에서 extension 함수는 기존에 존재하는 클래스의 변형 없이 새로운 함수를 추가할 수 있도록 해준다. 이 것은 기존에 정의되어 있지 않더라도 정의되어 있는 것처럼 사용 할 수 있도록 하여 좀 더 코틀린을 유연하게 사용할 수 있도록 도와준다. 예를 들어 우리가 컨트롤 할 수 없는 3rd party library의 클래스에 필요한 메서드를 추가할 수 있다. 장점 클래스 소스파일의 수정 없이 함수를 추가할 수 있다. 소스 코드가 없는 경우 매우 유용하게 사용될 수 있다. 관련된 함수를 하나의 클래스나 오브젝트로 그룹핑 할 수 있어 가독성 있고 이해하기 쉬운 코드를 작성할 수 있게 해 준다. 코드의 중복을 줄여서 유지보수에 유용하다. 단점 많은 장점에도 불구하고 extension 도 몇 가지 단점이 .. 2023. 10. 31. 이전 1 2 3 4 5 다음 반응형