[iOS/부스트 코스] WeatherToday(2) - 화면 구성
·
iOS 프로젝트
안녕하세요. 개발하는 정주입니다. 오늘은 WeatherToday 화면 구성에 대해 포스팅하려고 합니다. 목차 전체 스토리보드 전체 스토리보드 모습입니다. 화면 이동을 위해 내비게이션 컨트롤러를 추가하였습니다. Navigation Bar 내비게이션 바부터 설정하였습니다. 내비게이션 바를 구현하며 힘들었던 점은 버전별로 동작이 다르다는 것이었습니다. iOS 15 이상에서 UIKit의 scrollEdgeAppearance에는 약간의 변화가 생겼습니다. 바로 기본적으로 투명한 배경을 가진다는 것인데요. 따라서 scrollEdgeAppearance 색을 따로 지정하지 않는다면 윗부분에는 색이 적용이 되지 않습니다. 이것을 해결하는 방법은 비교적 간단합니다. 바로 scrollEdgeAppearance을 설정해주면 ..
[Swift] 공식 문서 - 문자열과 문자 (Strings and Characters)
·
Swift/Swift 가이드
안녕하세요. 개발하는 정주입니다. 오늘은 문자열과 문자 (Strings and Characters)를 정리해보겠습니다. * 공식 문서 내용을 한 줄 한 줄 읽는 것에 의의를 두었습니다. * 파파고의 힘을 빌려 번역했으며 잘못된 번역이 있다면 댓글로 알려주세요. 새로 배운 점 Swift의 String과 Character 타입은 유니코드 호환으로 텍스트 처리를 빠르게 하였다는 점 Multiline String 관련 문법 String의 isEmpty가 Property라는 점 Extended Grapheme Clusters의 문법 여러 개의 문자를 합쳐 하나의 그래픽으로 나타낸다는 점 똑같이 보이는 문자라도 다른 양의 메모리가 필요할 수 있다는 점 SubString은 문자열을 참조하는 구조라는 점 서론 문자열은..
[Swift] Swift 공식 문서 - 기본 연산자(Basic Operators)
·
Swift/Swift 가이드
안녕하세요. 개발하는 정주입니다. 오늘은 기본 연산자(Basic Operators)를 정리하려고 합니다. * 공식 문서 내용을 한 줄 한 줄 읽는 것에 의의를 두었습니다. * 파파고의 힘을 빌려 번역했으며 잘못된 번역이 있다면 댓글로 알려주세요. 목차 새로 배운 점 Swift가 C++로 이루어진 만큼 C와 연산자가 유사한 부분이 많다는 점 튜플의 연산 서론 연산자는 값을 할당, 연산, 결합하는 특수 기호입니다. 예를 들어, 덧셈 연산자(+)는 i = 1 + 2에서와 같이 두 숫자를 더하고 논리 곱 연산자(&&)는 entryDoorCode && passedRetinaScan과 같이 두 개의 Boolean 값을 결합합니다. Swift는 기본적으로 C언어의 연산자를 지원하며 코딩 오류를 줄이기 위해 몇 가지 ..
[Swift] Swift 공식 문서 - Swift 소개(2)
·
Swift/Swift 가이드
안녕하세요. 개발하는 정주입니다. 오늘은 1편에 이어 애플 개발자 홈페이지의 Swift 소개를 정리하려고 합니다. 1편 바로 가기 2021.12.14 - [Swift/공식 문서 정리] - [Swift] Swift 공식 문서 - Swift 소개(1) * 파파고의 힘을 빌려 번역했으며 잘못된 번역이 있다면 댓글로 알려주세요. 목차 Source and Binary Compatibility 스위프트 5를 사용하면 새로운 버전의 컴파일러를 사용하기 위해 스위프트 4 코드를 수정할 필요가 없습니다. 대신 새로운 컴파일러를 사용하면 한 번에 한 모듈씩 새로운 Swift 5 기능을 이용하여 마이그레이션 할 수 있습니다. Swift 5는 이제 앱을 위한 바이너리 호환성을 도입했습니다. 즉, 추후 새로운 버전의 OS가 릴..
[Swift] Swift 공식 문서 - Swift 소개(1)
·
Swift/Swift 가이드
안녕하세요. 개발하는 정주입니다. 오늘은 애플 개발자 홈페이지의 Swift 소개를 정리하려고 합니다. Swift 공식 가이드 문서를 정리하기 전에 Swift가 무엇인지, 어떻게 소개되고 있는지 알아야겠다는 생각이 들었습니다. 파파고의 힘을 빌려 번역했으며 잘못된 번역이 있다면 댓글로 알려주세요. 목차 배우기 쉽고 강력한 프로그래밍 언어 Swift는 iOS, iPadOS, macOS, tvOS 및 watchOS를 위한 강력하고 직관적인 프로그래밍 언어입니다. Swift 코드 작성은 대화형이고 재미있으며, 구문은 간결하면서도 표현력이 있습니다. 또한 스위프트는 개발자들이 사랑하는 현대적 기능을 포함하고 있습니다. 스위프트 코드는 설계상 안전하고 빠르게 실행되는 소프트웨어도 생산합니다. Modern 스위프트는..
[iOS/Swift] 선택한 TableViewCell의 IndexPath 구하기
·
iOS/개념 & 개발
[iOS/Swift] 선택한 TableViewCell의 IndexPath 구하기 안녕하세요. 개발하는 정주입니다. 오늘은 선택한 TableViewCell의 IndexPath 구하는 방법에 대해 포스팅하려고 합니다. 바로 시작합니다. 구현 상황 스토리보드에서 segue를 이용해 화면 이동을 했습니다. TableViewCell을 누르면 다음 화면으로 데이터를 넘기며 넘어가는 로직입니다. 따라서 cell을 눌렀을 때 누른 cell의 indexPath를 구해야 했습니다. indexPathForSelectedRow https://developer.apple.com/documentation/uikit/uitableview/1615000-indexpathforselectedrow Apple Developer Docu..
[iOS/부스트 코스] iOS 앱 프로그래밍: Sign Up(5) - 코드 리뷰 / Pass 후기
·
iOS 프로젝트
안녕하세요. 개발하는 정주입니다. 오늘은 Sign Up 코드 리뷰를 받은 것에 대해 포스팅하려고 합니다. 재제출 결과 Pass를 받을 수 있었습니다. 이번 리뷰어는 두 가지 코멘트를 달아주셨는데요. 이에 대해 자세히 알아보겠습니다. Fail 이유에 대해서는 4편을 참고해 주세요! 목차 종합 의견 리뷰어가 남긴 종합 의견은 "깔끔하다."입니다. 이 멘트를 보고 참 기분이 좋았습니다. Clean Code에 신경을 쓰자는 다짐을 하고 iOS에 임한 만큼 코드가 깔끔하다는 평가는 잘 동작한다보다 훨씬 크게 다가왔습니다. 보람이 있네요. 칭찬과 아쉬움 칭찬을 받은 점은 화면 밖을 터치할 때 키보드가 내려가게 처리한 점이었습니다. 이에 대해서는 자세히 포스팅을 했기에 지난 포스팅으로 대신하겠습니다. 2021.12...
[iOS/Swift] Assets에서 JSON 파일 읽어오기
·
iOS/개념 & 개발
[iOS/Swift] Assets에서 JSON 파일 읽어오기 안녕하세요. 개발하는 정주입니다. 오늘은 Assets에서 JSON 파일을 읽어오는 방법에 대해 포스팅하려고 합니다. JSON을 파일로 지정해서 Asset에 넣고 사용할 때 유용한 방법입니다. NSDataAsset 프로젝트에 JSON 파일을 Asset에 등록하여 사용하기 위해서는 Data Set으로 생성, 삽입해야 합니다. Data Set은 Finder에서 확장자를 확인해보면 dataset 확장자로 나옵니다. 이렇게 Data Set을 코드에서 가져와 사용하고 싶을 때는 NSDataAsset을 쓰면 됩니다. Assets에서 JSON 파일 읽기 위의 내용을 토대로 JSON 파일을 읽어보겠습니다. guard let asset = NSDataAsset...
[Swift] JSON 다루기 / JSON Codable
·
Swift/개념 & 응용
[iOS/Swift] JSON 다루기 / Codable / JSON Decoder / JSON Encoder 안녕하세요. 개발하는 정주입니다. 오늘은 iOS에서 JSON을 다루는 방법에 대해 포스팅하려고 합니다. JSON 데이터를 넣는 구조체 정의와 인코딩, 디코딩에 대해 알아봅시다. Codable JSON을 다루기 전 Codable이 뭔지 알아야 합니다. 공식 문서에서는 Codable을 "Codable is a type alias for the Encodable and Decodable protocols."로 정의하였습니다. 즉 인코딩과 디코딩을 할 수 있는 프로토콜이라는 뜻이며 그러한 것을 수행하려고 할 때 채택하면 됩니다. typealias Codable = Decodable & Encodable ..
[iOS/부스트 코스] WeatherToday(1) - 사전 탐구
·
iOS 프로젝트
안녕하세요. 개발하는 정주입니다. 오늘은 WeatherToday 사전 검수에 대해 포스팅하려고 합니다. 목차 프로젝트 개요 이번 프로젝트는 JSON 데이터, 내비게이션 컨트롤러, 테이블 뷰를 중점으로 진행됩니다. JSON 데이터를 활용하여 날씨 정보를 보여주고 내비게이션 컨트롤러, 테이블 뷰를 활용합니다. 화면 1(세계 국가 리스트) 내비게이션 타이틀은 "세계 날씨"이다. 테이블 뷰 셀 왼쪽에는 국기 이미지를 보여주며, 국기 이미지 오른쪽에는 국가 이름을 보여준다. 테이블 뷰 셀의 액세서리 뷰를 통해 다음 화면으로 이동 가능함을 표시한다. 테이블 뷰 셀을 누르면 화면 2로 이동하며 데이터도 함께 전달된다. 화면 2(도시 목록) 내비게이션 아이템의 타이틀은 이전 화면에서 선택된 국가 이름이 설정된다. 내비..
유정주
'iOS 개발' 태그의 글 목록 (11 Page)