profile
학생입니다

블로그 이전

tistory로 이전하려고 합니다.https://glassgow.tistory.com/

2023년 5월 1일
·
0개의 댓글
·

[Algorithm] Heap

Swift로 우선순위 큐를 구현하려면 직접 힙을 구현해야한다.여기 Swift로 구현한 힙이 있습니다.

2023년 4월 2일
·
0개의 댓글
·

[Algorithm] 플로이드 와샬

그래프 문제에서 자주 출제되는 문제 유형.그래프 유형에서 크루스칼과 플로이드 와샬이 대표적인 그리디 알고리즘크루스칼 → 최소 간선을 싸이클 없이 더해가면서 최소 비용을 찾는과정 (한 정점에서 다른 정점으로 가는 최단거리)플로이드 와샬 → 현재 노드의 최솟값을 지정할 때

2023년 2월 1일
·
0개의 댓글
·

[RxSwift] RxDataSources

RxSwift용 UITableView와 UICollectionView용 라이브러리RxDataSource가 없이, RxSwift 와 RxCocoa 만으로 구현할 경우엔 다음과 같이 구현그러나 여러 Section이 존재할 경우 insert, move, delete시의 애니

2023년 1월 10일
·
0개의 댓글
·

[Swift] 순열과 조합 구현하기

스위프트는 순열과 조합을 직접 구현해야 한다.서로 다른 n개의 원소에서 r개를 중복 없이 순서에 상관있게 선택하는 혹은 나열하는 것백트래킹 으로 구현서로 다른 n개의 원소에서 r개를 중복 없이 순서에 상관없이 선택하는 것

2022년 12월 11일
·
0개의 댓글
·

30Days of Metal - 3.Commands

Command, 명령 Metal에는 데이터를 제공하고 도형을 그릴 수 있는 메서드나 API가 존재하지 않음 데이터 제공 및 그리기 명령의 실행은 별도의 작업이며 가장 일반적인 유형의 Metal 명령 예시: 몇 개의 점 데이터가 포함된 버퍼가 있고, 선분을 그리려고 한

2022년 12월 7일
·
0개의 댓글
·

30Days of Metal - 2.Buffer

대부분의 그래픽 API에서는 선을 그리려는 경우 drawLine() 같은 선분을 그리기 위해 호출되는 함수가 있거나 선이 시작하고 끝나는 위치를 지정하는 메서드가 제공됨Metal에는 이러한 API가 존재하지 않음. 대신 선을 그리려면 선의 끝점을 Buffer에 저장한

2022년 12월 6일
·
0개의 댓글
·
post-thumbnail

30Days of Metal - 1.Device

Metal이란?GPU 프로그래밍을 가능케 하는 프레임워크애플기기에서 개발자가 3D 그래픽을 렌더링하고 GPU에 대한 로우 액세스를 제공하기 위한 프레임워크기존의 OpenGL을 WWDC2018에서 Deprecate시키면서 대체, 더욱 최적화Core Animation의 하

2022년 12월 5일
·
0개의 댓글
·
post-thumbnail

[iOS 개발후기] UI 챌린지와 RxSwift의 도입.

씨밋을 개발하면서 가장 애먹은 부분 중 하나는 약속 신청 화면들이었다. 언뜻? 보면 별거 아닌 화면 같다. 그냥 UISearchBar 이용하고, UITextField, UITextView 이용해서 입력창을 구현하고 각 입력창에 모든 값이 입력되어 있으면 다음 버튼을

2022년 12월 5일
·
0개의 댓글
·
post-thumbnail

[iOS 개발후기] Coordinator 패턴의 도입

29기 SOPT 앱잼을 통해 개발했던 SeeMeet에 대한 후기를 이제서야 올린다.개발은 올해 1월부터 했지만, 본인의 삽질에 대해 오랜 시간이 지나며 사이드 프로젝트화 되어 오랜 기간이 소요되었다 ㅠ개발을 하면서 어려운 점에 대해 정리하여 앞으로 서술하고자 한다.본래

2022년 10월 10일
·
0개의 댓글
·

[Swift] Copy-On-Write (COW)

Swift 에는 흥미로운 부분이 있다. 바로 Copy-On-Write, 사실 이것은 스위프트 만의 특징은 아니고 여러 다른 언어들도 가지고 있는 전반적인 특징이다.한 줄로 말하자면, 어떤 값의 복사가 일어날 때, 실제로는 그 값을 복사하는게 아닌 참조한다. 그리고 원본

2022년 9월 18일
·
0개의 댓글
·

[Swift] KeyPath

함수가 일급시민으로서 상수나 변수에 함수참조를 할당할 수 있다. 그리고 이렇게 참조해두고 나중에 원할 때 호출할 수 있고, 다른 함수를 참조하도록 할 수도 있다.프로퍼티도 이와 마찬가지로 값을 바로 꺼내오는 것이 아니라 어떤 프로퍼티의 위치만 참조하도록 할 수 있다.

2022년 9월 4일
·
0개의 댓글
·

[Swift] Array.reversed()에 관한 고찰

스위프트에서 리스트를 뒤집는 것은 Swift Standard Library의 .reversed() 를 활용할 수 있다.놀랍게도 이 메서드는 시간복잡도가 O(1)이다. 왜냐하면 이건 lazy이고, 원래 컬렉션을 거꾸로 뒤집는 뷰를 생성하기만 하기 때문이다. 정확히 말하

2022년 8월 28일
·
0개의 댓글
·

[자료구조] 스택

스택은 한 쪽에서만 자료를 넣고 뺄 수 있는 자료구조이다. 스택의 연산은 LIFO(Last In First Out, 선입선출)을 따른다.스택은 2가지 필수적인 연산이 있다.push: 스택의 최상위에 요소를 추가하는 연산pop: 스택의 최상위의 요소를 제거하는 연산인터페

2022년 8월 21일
·
0개의 댓글
·

[SwiftUI] SwiftUI와 UIKit와의 호환

SwiftUI는 UIKit와 다음과 같은 방법들로 호환시킬 수 있습니다.A UIKit view controller that manages a SwiftUI view hierarchy.SwiftUI 뷰 계층을 관리하는 UIKit의 ViewControllerSwiftUI

2022년 8월 4일
·
0개의 댓글
·

[Swift] NS 타입

접두사로 NS가 붙은 타입은 NSString, NSArray, NSSet, NSDictionary 등등 여러가지가 있다.이들은 NextStep의 줄임말로, 예전 Objective-C 시절의 타입을 일컫는다.구조체로 구현되어 있다.Foundation 프레임워크를 impo

2022년 6월 12일
·
0개의 댓글
·

[Swift] 클래스와 구조체중 어느 것을 선택해야 할까?

스위프트의 구조체는 여타의 C 기반 언어의 구조체에 비해 훨씬 강력하다. 그런데 클래스는 그러면 언제 사용해야 할까?애플의 Swift Programming Language Guide에서는 다음과 같이 제시하고 있다기본적으로는 구조체를 사용하라. \- Swift의 구조

2022년 6월 12일
·
0개의 댓글
·
post-thumbnail

[TroubleShooting] URLSession에서 SSL 인증 예외 처리하기

Raywenderlich 예제를 따라하던 중, NASA 공개 API 데이터를 다운로드하던 중 다음과 같은 오류가 발생했다.The certificate for this server is invalid. You might be connecting to a server th

2022년 5월 12일
·
0개의 댓글
·
post-thumbnail

[RxSwift] Combining Operators

Prefixing and concatenating startWith(_:) 주어진 인자의 값을 Observable 시퀀스의 접두사로 붙인다. 해당 인자의 타입은 Observable 요소 타입과 동일해야 한다. concat(_:) 2개의 시퀀스를 하나로 합친다.

2022년 5월 12일
·
0개의 댓글
·
post-thumbnail

[RxSwift] Transforming Operator

Observable은 요소들을 하나씩 개별적으로 방출하지만, 이것들을 통합한 컬렉션으로 다루고 싶은 경우가 생긴다.예를 들면, 테이블뷰나 컬렉션뷰의 dataSource로 활용하고 싶은 때가 대표적이다.이런 경우 사용하는 연산자가 toArray이다. toArray 연산자

2022년 5월 4일
·
0개의 댓글
·