분류 전체보기
-
Swift의 문자열 처리 (split vs components)Swift 2023. 1. 6. 09:08
안녕하세요. 그린입니다🍏 이번 포스팅에서는 Swift에서의 문자열 처리를 해주는 두 메서드 split과 components에 대해 학습해보겠습니다🙌 Swift 언어의 특성상 문자열을 타 언어보다 다루기가 조금 까다로워요🥲 쉽게 Subscript를 통해 Int 인덱스 참조가 불가능하여 쉽게 문자열에서의 문자를 빼올 수 도 없고 index를 통해서 가능하게 해주죠. 이와 관련해서 Swift에서는 도대체 왜 그런지 궁금하시다면 아래 포스팅을 먼저 보고 오셔도 좋습니다! https://green1229.tistory.com/286 Subscript에 대해 알아보기 (feat.String) 안녕하세요. 그린입니다🍏 오늘 포스팅은 Subscript에 대해 알아보며 Swift 언어에서만 왜 String을 다룰때 Su..
-
addingPercentEncoding(withAllowedCharacters:)Swift 2023. 1. 2. 21:27
안녕하세요. 그린입니다🍏 이번 포스팅에서는 addingPercentEncoding(withAllowedCharacters:)이라는 메서드에 대해서 학습해보겠습니다🙌 왜 필요할까요? 네트워크 통신 시 URL 헤더 파라미터로 한글이 포함된 key 값을 넘겨줄때가 있을거에요. 그럴때 인코딩을 시도하고 기본적으로 정해진 타입에 따라 인코딩이 됩니다. 여기에는 한글이나 특수문자 및 공백 등이 포함되지 않았기에 유효하지 않은 URL을 요청하게 되고 정상적인 동작을 하지 않습니다😭 예를들어 아래와 같이 URL을 보내면 문제를 일으켜요! let url = URL("https://itunes.apple.com/search?term=몽실&entity=software"!) // 네트워크 통신 몽실이라는 key가 들어가서 그..
-
Nib & Xib (feat. storyboard)iOS 2022. 12. 29. 10:20
안녕하세요. 그린입니다🍏 이번 포스팅에서는 Nib와 Xib에 대해 알아보겠습니다🙌 UI 구현 종류 우리가 iOS 개발을 하다보면 UI 즉, 화면을 그리는것은 빼놓을 수가 없습니다. iOS에서는 이 UI를 구현하는 방법에 대해 3가지를 이용할 수 있습니다. 1. 스토리보드로 구현하기 2. 코드로 구현하기 3. Nib, Xib로 구현하기 여기서 오늘 알아볼 것이 세번째 Nib, Xib로 구현하는것에 대해 알아보겠습니다🕺🏻 우선 그럼 Nib와 Xib의 정의부터 알아보시죠! Nib Nib는 Nextstep Interface Builder의 약자입니다. iOS / MacOS에서 애플리케이션의 유저 인터페이스를 저장하는 파일이죠. Nib는 UI를 그리는것에 있어서 바이너리 형식의 압축 파일을 이용해 필요한 클래스들..
-
SwiftUI - View를 구조체로 생성하는 이유SwiftUI 2022. 12. 26. 09:13
안녕하세요. 그린입니다🍏저번 포스팅에서는 SwiftUI의 View 프로토콜에 대해 알아봤어요!혹시 안보셨다면 아래 포스팅을 먼저 보고 오시면 더 도움이 됩니다🙌https://green1229.tistory.com/314 SwiftUI - View안녕하세요. 그린입니다🍏 이번 포스팅에서는 SwiftUI의 View Protocol에 대해 알아보겠습니다🙌 SwiftUI로 뷰를 만들면서 꼭 만나는 개념이 있습니다. 바로 View를 채택하는것인데요. 그러니까 이 Viewgreen1229.tistory.com 저번 포스팅 말미에 우리가 SwiftUI에서 View를 정의할때 구조체로 정의하는 이유에 대해 알아본다고 했었습니다😄오늘 그거 한번 알아보시죠 :D 오늘 포스팅은 구조체와 클래스가 무엇인지 그리고 차..
-
SwiftUI - ViewSwiftUI 2022. 12. 24. 12:16
안녕하세요. 그린입니다🍏 이번 포스팅에서는 SwiftUI의 View Protocol에 대해 알아보겠습니다🙌 SwiftUI로 뷰를 만들면서 꼭 만나는 개념이 있습니다. 바로 View를 채택하는것인데요. 그러니까 이 View는 프로토콜입니다. 이 프로토콜을 별 고민없이 채택하고 뷰를 그려줬었는데 오늘은 이 프로토콜이 어떻게 구성되어 있는지에 대해서 알아보겠습니다. 그럼 바로 보시죠🕺🏻 View 공식문서에서는 View 프로토콜을 앱 사용자 인터페이스의 일부를 보여주고 뷰를 구성하는데 사용하는 모디파이어 즉 수정자를 제공하는 프로토콜이라고 합니다. 쉽게 정리하면, 뷰를 그리기 위해서 채택하는 프로토콜이라고 이해하고 어떻게 구성되어 있는지 보시죠~! public protocol View { associatedty..
-
RxSwift로 서버 통신하기RxSwift 2022. 12. 19. 10:51
안녕하세요. 그린입니다🍏 이번 포스팅에서는 RxSwift를 쓰는 환경에서 서버 통신을 하는 틀을 만들어보겠습니다🙋🏻 우선 서버 통신이 필요한 환경이 정말 필수적이고 많은분들이 RxSwift를 사용하고 있을거에요. 그렇기에 저도 나름의 방식으로 RxSwift를 사용하면서 잘짜여진 서버 통신 템플릿을 만들고 쉽게 사용해보려합니다! 먼저 들어가기전 사용된 라이브러리는 두가지입니다. Alamofire와 RxSwift Alamofire를 통해 조금 더 간편하게 서버 통신을 시킵니다. Moya를 활용하지 않은 이유는 네트워크 레이어를 추상화한것뿐이라 이 부분은 직접 구현하면서 조금 더 장점을 가져갔습니다. 그럼 한번 보시죠🥸 우선 가장 먼저 만들어볼것인 서버 통신 규약을 정해보는 Router 프로토콜과 해당 프로토..
-
프로그래머스 - 롤케이크 자르기Algorithm 2022. 12. 10. 11:12
아래 문제는 프로그래머스에서 제공하는 롤케이크 자르기의 문제입니다🧑🏻💻 문제 제시 더보기 철수는 롤케이크를 두 조각으로 잘라서 동생과 한 조각씩 나눠 먹으려고 합니다. 이 롤케이크에는 여러가지 토핑들이 일렬로 올려져 있습니다. 철수와 동생은 롤케이크를 공평하게 나눠먹으려 하는데, 그들은 롤케이크의 크기보다 롤케이크 위에 올려진 토핑들의 종류에 더 관심이 많습니다. 그래서 잘린 조각들의 크기와 올려진 토핑의 개수에 상관없이 각 조각에 동일한 가짓수의 토핑이 올라가면 공평하게 롤케이크가 나누어진 것으로 생각합니다. 예를 들어, 롤케이크에 4가지 종류의 토핑이 올려져 있다고 합시다. 토핑들을 1, 2, 3, 4와 같이 번호로 표시했을 때, 케이크 위에 토핑들이 [1, 2, 1, 3, 1, 4, 1, 2] 순..
-
프로그래머스 - 두 큐 합 같게 만들기Algorithm 2022. 12. 9. 14:13
아래 문제는 프로그래머스에서 제공하는 두 큐 합 같게 만들기의 문제입니다🧑🏻💻 문제 제시 더보기 양의 정수 n이 주어집니다. 이 숫자를 k진수로 바꿨을 때, 변환된 수 안에 아래 조건에 맞는 소수(Prime number)가 몇 개인지 알아보려 합니다. 0P0처럼 소수 양쪽에 0이 있는 경우 P0처럼 소수 오른쪽에만 0이 있고 왼쪽에는 아무것도 없는 경우 0P처럼 소수 왼쪽에만 0이 있고 오른쪽에는 아무것도 없는 경우 P처럼 소수 양쪽에 아무것도 없는 경우 단, P는 각 자릿수에 0을 포함하지 않는 소수입니다. 예를 들어, 101은 P가 될 수 없습니다. 예를 들어, 437674을 3진수로 바꾸면 211020101011입니다. 여기서 찾을 수 있는 조건에 맞는 소수는 왼쪽부터 순서대로 211, 2, 11..