본문 바로가기
728x90

전체 글139

[iOS] SnapKit / Then 라이브러리를 이용해 코드로 UI 구현하기 SnapKit iOS 에서 Autolayout 을 코드로 구현할 때 쉽고 편리하게 도와주는 라이브러리 작성해야하는 코드의 길이를 줄여주고, 가독성을 높여주는 장점이 있다. 뷰 계층의 depth 가 깊어지면 복잡해질 수 있다. pure autolayout 으로 Autolayout 을 적용하는 방법 view.addSubview(label) label.translatesAutoresizingMaskIntoConstraints = false let leading = label.leadingAnchor.constraint(equalTo: view.leadingAnchor) let trailing = label.trailingAnchor.constraint(equalTo: view.trailingAnchor) le.. 2021. 11. 11.
[iOS/RxSwift] RxDataSource - UITableView, UICollectionView RxSwift 에서 DataSource 를 설정하는 방법을 정리해보려고 합니다! UIKit 의 UITableView, UICollectionView 를 이용할 때에는 각 리스트에 대한 데이터를 표현하기 위해 data source 를 지정해줘야 하는데요. 기본적으로는 data source 프로토콜을 채택해, 메소드를 구현해 데이터를 표현합니다. RxSwift 와 RxDataSource 에서는 data source 메소드를 직접 구현하지 않고 쉽게 사용할 수 있도록 오퍼레이터를 제공합니다. 1. UIKit 에서 data source 를 설정하는 방법 2. RxSwift 에서 data source 를 설정하는 방법 3. RxDataSource 를 이용해 data source 를 설정하는 방법 1. UIKit .. 2021. 10. 17.
[iOS] iOS 앱 배포 :: Certificates(인증서)와 Provisioning profiles(프로비저닝 프로파일) iOS 앱을 앱 스토어에 배포하기 위해 필요한 개념 중 인증서와 프로비저닝 프로파일을 알아볼게요 👀 1. Certificates (인증서) 2. Provisioning Profiles (프로비저닝 프로파일) 지난번 개발한 Zerobin 앱을 업데이트 하기 위해 다시 인증서와 프로비저닝 프로파일을 등록했지만 무엇을 위해 필요한건지 모르겠어서 정리를 합니다 🥲 1. Certificates (인증서) 인증서는 애플이 개발자를 신뢰할 수 있는 보증서이다. “애플만이 자신의 하드웨어에 소프트웨어를 동작시킬 수 있다” -> 애플인증서를 발급받아야만 개발자는 애플 하드웨어에 소프트웨어를 동작시킬 수 있다. 애플의 실제 하드웨어(아이폰, 아이패드)에서 우리가 만든 소프트웨어를 동작하기 위해 인증서가 필요하다. - iO.. 2021. 10. 15.
[Swift] 스터디 7주차 - 그래프 알고리즘 6/1 진행했던 스위프트 데이터 구조와 알고리즘 책의 5장 '트리 구조 기반의 알고리즘' 스터디 정리입니다! 1. 그래프의 개념, 그래프의 종류 2. 그래프의 표현 방식 (코드적으로) 3. 그래프 탐색 - DFS(깊이우선탐색), BFS(너비우선탐색) 💡 그래프(Graph) 그래프는 노드(Vertex; 꼭지점)와 노드를 연결하는 간선(Edge; 모서리)의 집합으로 이루어진 데이터 구조입니다. 그래프를 통해 연결되어 있는 객체들의 관계를 표현할 수 있습니다. 그래프의 활용 예시 : SNS 에서 연결된 사람들, 지도, 지하철 노선도의 최단 경로, 선수 과목 등 .. ✔︎ 그래프(Graph)의 종류 1) 무방향 그래프(Undirected Graph) 노드를 연결하는 간선이 양방향성인 그래프입니다. 방향이 없다는.. 2021. 7. 26.
[Swift] 스터디 5주차 - 트리 구조 기반의 알고리즘 5/18 진행했던 스위프트 데이터 구조와 알고리즘 책의 5장 '트리 구조 기반의 알고리즘' 스터디 정리입니다! 🎄 1. 트리의 특징 2. 트리 vs 그래프 3. 이진 트리, 이진 트리의 종류 4. 이진 탐색 트리(BST, Binary Search Tree) 5. 트리 순회 방식 6. B 트리와 스플레이 트리 🎄 트리(Tree) 트리는 노드의 집합으로, 계층을 이루고 있는 데이터 구조를 의미합니다. 트리의 최상위 노드인 루트 노드, 그 아래로 뻗어나가는 자식 노드로 구성됩니다. 각각의 노드는 키 값, 자식 노드 집합, 부모 노드 링크 등을 포함하고 있는 데이터 구조입니다. 트리의 특징 트리는 그래프의 한 종류로, 사이클이 없는 하나의 연결 그래프입니다. 트리는 이진 트리, 이진 탐색 트리, 균형 트리(AV.. 2021. 7. 26.
[알고리즘/Swift] 그래프탐색(DFS/BFS) - 타겟넘버, 네트워크, 단어변환, 여행경로 1. 타겟 넘버 (DFS) 1을 더하거나 뺄 수 있기 때문에, 더하거나 빼는 경우에 대해 한번씩 DFS 를 수행해준다. 이를 그래프로 그려보면 이해하기 쉽다. 숫자를 하나 더하거나 빼는 것을 그래프의 깊이 탐색이라고 생각하면 된다. import Foundation func dfs(numbers: [Int], target: Int, i: Int, total: Int) -> Int { if i == numbers.count { return total == target ? 1 : 0 } let count1 = dfs(numbers: numbers, target: target, i: i+1, total: total - numbers[i]) let count2 = dfs(numbers: numbers, targe.. 2021. 7. 21.
[iOS] 네이버지도 앱 연동 - Place ID 로 앱 열기 다른 앱에서 네이버 지도를 열고, 특정 위치를 보여주는 방법을 작성하려고 합니다! 공식 가이드의 내용인데, 링크 이동이 안되어서 불편한 점이 있더라구요 😢 일단 "네이버 지도앱 실행" 버튼은 제공하지 않는다고해요. 하지만, UIButton 을 이용해 버튼을 생성하고 URL Scheme 을 참고해서 네이버지도로 이동하게끔 하면 됩니다 😀 💡 지도앱 연동 URL Scheme 네이버 지도 앱을 열어서, 이동하는 것이기 때문에 별도의 네이버 클라우드 가입은 필요하지 않아요! 지도의 메인 표시, 좌표값을 통해 이동하는 내용이 나와있는데요. 좌표(위도&경도)를 이용해서 지도를 열어주면, 특정 위치의 이름이 나타나지 않습니다. 장소 표시도 좌표를 통해 표시하는 내용만 있고, 네이버지도에서 리뷰, 상세정보가 나타나는 .. 2021. 7. 16.
[iOS] MVVM & RxSwift 스터디 W2 - TableView bind items, modelSelected, cell prepareForReuse [iOS] MVVM & RxSwift 스터디 W2 - TableView 만들어보기 iamchiwon/RxSwift_In_4_Hours RxSwift, 4시간 안에 빠르게 익혀 실무에 사용하기. Contribute to iamchiwon/RxSwift_In_4_Hours development by creating an account on GitHub. github.com 곰튀김님 강의 영상의.. jellysong.tistory.com 곰튀김님 RxSwift 강의 중 step1 을 MVVM + TableView 로 바꿔본 위의 포스팅에서 View Controller 에서의 데이터바인딩, TableViewCell 에서 이미지 처리를 따로 정리한 글입니다! 1 ListViewController / 2 Detai.. 2021. 7. 15.
[iOS] MVVM & RxSwift 스터디 W2 - TableView 만들어보기 iamchiwon/RxSwift_In_4_Hours RxSwift, 4시간 안에 빠르게 익혀 실무에 사용하기. Contribute to iamchiwon/RxSwift_In_4_Hours development by creating an account on GitHub. github.com 곰튀김님 강의 영상의 코드는 step1 ~ 4 까지 있는데요. step1 은 JSON 파일을 다운로드하는 작업을 비동기로 처리하고 이를 editView 에 띄워주는 것이고. step2 는 step1 과 같은 JSON 파일을 tableView 로 보여주는 코드에요. 강의에서 step2 는 패스하셔서 이를 연습해봤습니당 🧐 👀 MVVM + RxSwift TableView 예제 step2 완성 코드에서는 타이머와 LOAD 버.. 2021. 7. 15.
728x90