분류 전체보기 175

[iOS] Combine (1) : Overview

동기 vs 비동기 1️⃣ 동기? - 요청과 결과가 동시에 2️⃣ 비동기? - 요청에 대한 결과가 언제 나타날 지 모름 모바일 개발에서 비동기 작업은 굉장히 많음! - 서버에서 데이터를 받아와서 페이지에 보여주는데 걸리는 시간 - 사용자의 버튼 인터렉션 (언제 버튼을 클릭할 지 모르는 것) 📌 Combine? - 효율적인 비동기 처리 방식 - 여러 비동기 처리 방식들 (Target/Action, Notification Center...) 대신 통합된 비동기 처리방식이 필요하여 Combine 등장 - 일관된 방식으로 비동기 처리할 수 있는 API를 Combine으로 제공! 🍎 Apple이 정의한 Combine! - A unified, declarative API for processing values ove..

iOS 2022.07.03

[iOS : Toy Project] Head Space Focus (2) : Navigation

➰ 이전 코드 내용 Head Space Focus 💡Head Space Focus(2)에서 할 것은 Navigation 구현! - 상세 뷰로 넘어가게 하기! ❗️Navigation을 구현할 때는, 사용자가 최대한 개미지옥에서 탈출할 수 있도록 구현해줘야 함을 잊지말자! 1️⃣ 상세 뷰를 위한 다른 Storyboard, View Controller 만들기 - QuickFocusStoryboard - QuickFocusListViewController - 새로운 스토리보드의 Class와 Storyboard ID 까아쥐 2️⃣ 화면의 Component, AutoLayout 설정 - CollectionView 이용 → CollectionViewCell도 필요하겠지? "QuickFocusCell" 만들기 // Q..

iOS/Toy project 2022.06.30

[iOS : Toy Project] Apple Framework List (3) : Modal

➰ 이전 코드 내용 Apple Framework List(1) Apple Framework List(2) 💡 Apple Framework List(3)에서 할 것은 Modal 구현! - 각 아이템들을 눌렀을 때, 상태뷰가 모달로 띄워지는 것을 구현할 것이다. 1️⃣ Detail View를 위한, Storyboard 파일 만들기 2️⃣ Detail View를 위한 ViewController 만들기 - FrameworkDetailViewController 3️⃣ Detail View 컴포넌트와 AutoLayout 설정 4️⃣ Modal 띄우기 // FrameworkListViewController.swift // item이 선택되었을 때 효과 넣기 extension FrameworkListViewContro..

iOS/Toy project 2022.06.29

[iOS] Navigation과 Modal

💡Navigation과 Modal의 필요성? - 사용자가 서비스 제공자의 의도를 잘 인지하게 도와주고, 앱 사용성을 쉽게 이해하게 도와주기 위해서 1️⃣ Modal 의 종류 1. iOS에서 제공하는 시스템 모달 alert activity views share sheets action sheets 2. 직접 개발 (모달을 띄우는 스타일) automatic → pageSheet 형태 fullscreen popover page sheet & form sheet current context custom 🚀 Modal 구현 - 뷰컨트롤러의 present(_:animated:completion:) 메소드를 사용 2️⃣ iOS의 주요 Navigation 스타일 Hierarchical Navigation : 설정앱 F..

iOS 2022.06.29

[iOS : Toy Project] Spotify Paywall : CollectionView, Paging Control

📌 열번째 프로젝트 스포티파이 구매뷰 앱을 만들어보자 요번 포스팅부터는 ViewController 등 기본 세팅과 AutoLayout의 내용들은 다루지 않겠다! (기억해둘건 당연히 메모해둘것) 1️⃣ AutoLayout 2️⃣ CollectionViewCell 만들기 - BannerCell 이란 이름의 CollectionView cell // // BannerCell.swift // SpotifyPaywall // // Created by 오예진 on 2022/06/28. // import UIKit class BannerCell: UICollectionViewCell { @IBOutlet weak var titleLabel: UILabel! @IBOutlet weak var descriptionLabe..

iOS/Toy project 2022.06.28

[Algorithm] 백준 19532번 : 수학은 비대면강의입니다

문제 https://www.acmicpc.net/problem/19532 19532번: 수학은 비대면강의입니다 정수 $a$, $b$, $c$, $d$, $e$, $f$가 공백으로 구분되어 차례대로 주어진다. ($-999 \leq a,b,c,d,e,f \leq 999$) 문제에서 언급한 방정식을 만족하는 $\left(x,y\right)$가 유일하게 존재하고, 이 때 $x$와 $y$가 각각 $- www.acmicpc.net 처음 풀이 코드 (Numpy 라이브러리 이용) import numpy as np a, b, c, d, e, f = map(int, input().split()) A = np.array([[a,b],[d,e]]) B = np.array([c,f]) C = np.linalg.solve(A,B..

Algorithm/Python 2022.06.12

[iOS : Toy Project] Head Space Focus

📌 아홉번째 프로젝트 명상 컨텐츠 리스트 앱을 만들어보자 1️⃣ Data 확인 및 SearchViewController 만들기 - 이전 프로젝트들과 마찬가지로 패캠에서 제공해준 데이터들을 사용 - "FocusViewController" 이름의 UIViewController을 만들어서, Main storyboard와 연결까지 완료 2️⃣ CollectionView AutoLayout 설정 - Description과 ContentView와의 관계에서 bottom을 30 이상이 되게 하면 이렇게 빨간색 에러점이 뜨게 되는데, 일단 이건 어쩔 수 없으니까 넘어간다. 3️⃣ UICollectionViewCell 만들기 - "FocusCell" 이름의 UICollectionViewCell을 만들어서 Collecti..

iOS/Toy project 2022.06.07

[Algorithm] 백준 22352번 : 항체 인식

문제 https://www.acmicpc.net/problem/22352 22352번: 항체 인식 첫 번째 줄에는 SP 촬영 결과의 크기를 의미하는 두 정수 $N$과 $M$이 주어진다. ($1 \le N, M \le 30$) 이는 촬영 결과가 세로로 $N$칸, 가로로 $M$칸 크기의 격자라는 것을 의미한다. 다음 $N$개의 줄에는 www.acmicpc.net 풀이코드 (Python) from collections import deque n, m = map(int,input().split()) input_arr = [0]*n for i in range(n): input_arr[i] = list(map(int, input().split())) output_arr = [0]*n for i in range(n)..

Algorithm/Python 2022.06.06

[iOS : Toy Project] Diffable DataSource, Compositional Layout을 이용해 프로젝트 개선하기

기존 Apple Framework List https://yexjinitlog.tistory.com/98?category=1022295 diffable datasource dataSource = UICollectionViewDiffableDataSource(collectionView: collectionView, cellProvider: { collectionView, indexPath, item in guard let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "FrameworkCell", for: indexPath) as? FrameworkCell else { return nil } cell.configure(item) // ite..

iOS/Toy project 2022.06.04

[iOS] Diffable DataSource, SnapShot, Compositional Layout

1️⃣ UICollectionView의 Data, Presentation 이슈 - 기존 UICollectionView의 구현방법을 살펴보면, Controller가 데이터를 받아와서 UI에게 변경을 알린다. - 여기서, Controller와 UI가 가지고 있는 데이터가 서로 다른 이슈가 생길 수 있다. → 앱에서는 어느 데이터가 맞는건지 확인하기 어려움 Single Source Of Truth Data의 필요성 증가 - 이 이슈의 근본적인 문제 해결 방식은 참인 데이터를 하나만 두도록 하는 것이다. → Single Source Of Truth - 그래서 제안된 방법 Diffable DataSource Diffable DataSource ? Diffable DataSource는 Data Source와 달리,..

iOS 2022.06.04