전체 글

전체 글

    [Swift] 어떻게 구조체 이름이 Data냐구요

    ⚠️ 공식문서를 읽고 제가 해석(파파고), 의역한 정보도 포함되어 있으니, 잘못된 정보는 댓글로 알려주시면 감사하겠습니다 🙇‍♂️ 개인적인 학습을 위해 작성한 글입니다. 이 글에는 정확하지 않은 정보가 포함되어 있을 수 있습니다. 서론 이번 주에 iOS에서 네트워킹을 하는 방법 즉, URL을 통해 데이터를 가져오고 보내는 것을 공부했는데, URLSession 클래스의 여러 메서드에 서 Data라는 타입이 자주 등장했다. 그래서 궁금증을 해결하기 위해 글을 써본다! 장문이 될 것 같지만 그럼 시작! 사건의 발단,,, dataTask 메서드는 completionHandler의 파라미터로 Data, URLResponse, Error를 가지고 있는데, data는 우리가 해당 URL로 요청을 보냈을 때 서버로부터..

    [Swift] final 파헤치기

    블로그 글을 오랜만에 쓰려니 어색,, 어색,, 묵혀놨던 글 소재거리 발견해서 공부하고 포스팅해봅니다,,, 이제부터 말투는 내 쓰고 싶은 대로 쓸 거임,,, 시작! 이전에 부스트 코스 iOS 앱 프로그래밍에서 코드 리뷰를 받았을 때 이러한 리뷰 내용이 있었다. 리뷰어님 dispatch가 뭔데요... 내가 아는 건 요건디ㅋㅋㅋㅋㅋ method dispatch라고 검색하니 그제야 내가 찾고 싶었던 것들이 조금씩 보이기 시작했다! 그럼 method dispatch는 뭘까...? Method Dispatch 간단하게 말하면, Method Dispatch는 어떤 작업을 실행해야 하는지, 더 구체적으로는 어떤 메서드를 호출해야 하는지 결정하는 데에 사용되는 알고리즘 혹은 메커니즘이라고 할 수 있다. 음... 일단 o..

    [iOS] 뷰의 상태변화 / ViewController Lifecycle

    ⚠️ 해당 글에는 정확하지 않은 정보가 들어있을 수 있습니다. 부정확한 정보는 댓글로 알려주시면 감사하겠습니다 😂 BoostCourse iOS 앱 프로그래밍 강의를 공부한 내용을 토대로 작성되었습니다. 우리가 사용하는 앱은, 많은 view로 구성이 되어있습니다. view는 화면에 정보를 나타내고, 또한 사용자의 입력을 받기도 하기 때문입니다. 오늘은 view 의 상태변화, ViewController의 Lifecycle에 대해 알아봅니다. 위 사진은 ViewController LIfecycle이라는 키워드로 구글하면 볼 수 있는 이미지들입니다. iOS 개발을 공부하면서 xcode를 다뤄보셨다면, 이중에서 조금 익숙한 키워드가 있을텐데요... 바로 이녀석입니다. 그렇습니다. 바로 xcode에서 새 프로젝트를..

    [iOS] Frame vs Bounds.

    부스트코스 iOS 앱 프로그래밍을 듣고 있던 도중, 개념이나 이론에 관하여 공부한 것을 정리하기 위해 글을 씁니다! ⚠️ 공식문서를 읽고 제가 해석(Google translate), 의역한 정보도 포함되어 있으니, 잘못된 정보는 댓글로 알려주시기 바랍니다.😄 View View는 UIView 클래스 또는 그 하위클래스의 인스턴스로써, 윈도우의 한 영역에서 컨텐츠(이미지, 텍스트, 등등 ...)를 보여주는 역할을 합니다. 오늘 살펴볼 프레임과 바운드는 UIView의 Property들 입니다. Frame 뷰의 프레임은 상위 뷰(SuperView)의 좌표계를 기준으로, 해당 View의 위치 와 크기를 나타내는 사각형입니다. -> 애플 개발자 문서 Bounds 뷰의 바운드는 해당 뷰 자신의 좌표계를 기준으로 위치..

    [iOS] 오토레이아웃 (Auto Layout) 을 알아보자!

    부스트코스 iOS 앱 프로그래밍을 듣고 있던 도중, 개념이나 이론에 관하여 공부한 것을 정리하기 위해 글을 씁니다! ⚠️ 공식문서를 읽고 제가 해석(Google translate), 의역한 정보도 포함되어 있으니, 잘못된 정보는 댓글로 알려주시기 바랍니다 😄 오토레이아웃이 뭔데? 오토레이아웃은 뷰의 제약사항(Constraints)를 바탕으로 뷰 계층 내의 모든 뷰의 크기와 위치를 동적으로 계산하여 지정합니다. Apple Developer Document - Auto Layout Guide Auto Layout Guide: Understanding Auto Layout developer.apple.com 왜 필요할까? 그렇다면 오토 레이아웃은 왜 필요할까요? 예를 들어 봅시다, 휴대폰으로 유튜브에 있는 영..

    [Swift] 구조체와 클래스, 열거형 - 사용자 정의 타입

    * 이 글은 "스위프트 프로그래밍 (3판)" 및 야곰닷넷의 "스위프트 기초 강의", The Swift Programming (번역본)을 공부하며 정리한 내용입니다. 사용자 정의 타입은, 프로그래머가 데이터를 용도에 맞게 묶어 표현하고자 할 때 유용하게 쓰입니다. 구조체와 클래스는 프로퍼티와 메소드를 사용하여 구조화된 데이터 및 기능을 가질 수 있습니다. Swift에서 이 둘은 문법상 생김새는 비슷하나, 구조체는 값 타입, 클래스는 참조 타입이라는 것이 가장 큰 차이라고 할 수 있습니다. 값 타입과 참조 타입은 추후에 따로 다뤄보도록 하겠습니다. 구조체 (Struct) struct SoccerPlayer { // Properties var name: String // 이름 var age: Int // 나이..

    [Swift] 옵셔널

    * 이 글은 "스위프트 프로그래밍 (3판)" 및 야곰닷넷의 "스위프트 기초 강의", The Swift Programming (번역본)을 공부하며 정리한 내용입니다. 옵셔널(Optional) 이란? 옵셔널은 nil의 가능성을 명시적으로 표현하는, 스위프트의 특징 중 하나인 안정성을 문법으로 담보하는 기능입니다. 단어 뜻 그대로 Optional, '선택적인' , '값이 있을 수도, 없을 수도 있음' 을 나타내는 표현입니다. 이 말인 즉슨, 변수나 상수에 값이 있다고 보장할 수 없다,혹은 변수나 상수의 값이 nil 일 수도 있다를 의미합니다. 위 코드를 보면, convertedNumber에서 String 타입인 possibleNumber를 Int 타입으로 변환을 시도합니다. convertedNumber의 타입..

    [Swift] 함수

    * 이 글은 "스위프트 프로그래밍 (3판)" 및 야곰닷넷의 "스위프트 기초 강의"를 들으며 정리한 내용입니다. 함수 스위프트의 함수는 자유도가 굉장히 높은 문법 중 하나입니다. 기본적으로 함수의 이름과 매개변수(Parameter), 반환 타입(Return Type) 등을 사용하여 함수를 정의합니다. 기본적인 함수 선언의 형태와 호출은 다음과 같습니다. func name(parameter1: type, parameter2: type...) -> Type { // 함수 구현부분 return 반환 값 } // 예시 func sum(a:Int, b:Int) -> Int { return a+b } /* 함수이름 - sum 매개변수(parameter) - a,b 반환 타입(return type) - Int */ /..