목록공부 (8)
BOID

안녕하세요, HoonIOS입니다. :) SwiftUI에서 뷰의 레이아웃을 잡아주는 다양한 방법이 있는데 이번 포스팅에는 스택을 이용해 레이아웃을 잡는 방법에 대해 살펴보겠습니다. 스택 스택은 실제로 Storyboard, UIKit에서 사용하는 레이아웃입니다. 바로 UIStackView인데요, 실제로 SwiftUI에서 스택도 같은 역할을 한다고 생각하시면 더 이해하기 쉬울 수 있습니다. Storyboard를 사용해서 레이아웃을 구성할때는 굳이 UIStackView을 필수적으로 사용할 필요 없이 다른 방법을 이용해서도 구현을 할 수 있었는데요, SwiftUI에서는 거의 필연적(?)이라 매우 중요합니다. 스택의 특성 스택은 Content를 제네릭 매개 변수로 받아 자식 뷰로 표현하는 제네릭 구조체로 선언되어 ..

안녕하세요, HoonIOS입니다. :) UIKit에서 사용하는 UILabel을 SwiftUI에서는 Text로 역할을 한다고 합니다. 근데 그렇다고 UILabel처럼 단순히 문자열만 표현하는 뷰가 아닙니다. 어떻게 다를까요? UILabel과 Text의 차이점은? UILabel은 단순히 단어 그대로 문자열을 화면에 표현해주는 역할을 합니다. Text는 단순히 표현만 하는 게 아니라 Button, Toggle, Picker 등등에서 그 UI들을 구성할 때 텍스트를 적용할 때 사용을 합니다. 그만큼 UILabel보다 더 광범위하다고 생각을 하시면 될것 같네요ㅎㅎ Text를 사용하는 방법 Text를 사용해 적용하려면 아래와 같이 Text 수식어를 적용해주면 됩니다. var body: SomeView { Text(..

안녕하세요, HoonIOS입니다. 저번에는 sqlite3에 대해 간단하게 설명하고 어떻게 흐름을 진행해야 하는지 포스팅을 했었습니다. 이번에는 간단한 테이블을 만드는 방법으로 한번 구현을 해보겠습니다. sqlite3 구현하기 1. 제일 먼저 프로젝트 정보에서 Build Phases -> Link Binary With Libraries에서 libsqlite3을 추가해주겠습니다. 2. 이제 위에서 +버튼을 눌러주고 sqlite를 검색해서 추가해줍니다. 3. sqlite 라이브러리는 C형태로 되어 있으므로 브릿지 헤더 파일을 만들어 이 프로젝트와 라이브러리를 연결해줘야 합니다. 4. 브릿지 파일의 이름을 정해주겠습니다. - 브릿지 파일의 이름을 정할 때 웬만해서는 프로젝트명-SQLite3-Bridging-He..

안녕하세요, HoonIOS입니다. 앱 개발 스터디를 통해서 팀원들과 part별로 나누어서 앱 개발을 하고 있는데 여러 UI 기능을 구현을 하다. SearchBar을 처음 구현을 해봤는데 이것을 정리하면 좋을꺼 같아 글을 적게 되었습니다. iOS에서 SearchBar을 구현하는 방법은 2가지가 있습니다. UISearchBar UISearchController UISearchBar 애플 문서에서는 사용자로부터 검색 연관된 정보를 받기 위한 특별한 뷰라고 설명이 되어있습니다. UISearchBar는 entering text, 검색 버튼, 북마크 버튼, 취소 버튼을 제공합니다. 이 UISearchBar을 그냥 구현을 하면 쌩 날것 그대로는 검색기능을 수행하지 않습니다. 즉, UISearchBarDelegate ..

안녕하세요 HoonIOS입니다. :) 저번 포스팅에는 텍스트필드에 대해 그리고 텍스트필드를 어트리뷰트 인스펙터와 UI코드로 꾸미는 법을 알아봤습니다. boidevelop.tistory.com/62 [iOS] 텍스트 필드(textField 객체) 란? - HoonIOS 안녕하세요 HoonIOS입니다. :) 오늘은 델레 게이트 패턴 공부를 하다가 제일 기본적인 UITextFieldDelegate를 공부하다가 그전에 textField에 대해 알아보려고 합니다. 텍스트 필드란? 우선 기본적으로 애 boidevelop.tistory.com 이번에는 텍스트필드의 텍스트 입력특성인 Text input traits에 대해 한번 알아보겠습니다. 텍스트 입력 특성으로는 첫글자 대문자, 대문자 자동완성, 오타 체크, 키보드..
안녕하세요 HoonIOS입니다 :) 이번에는 저번 시간에 이어서 P문제와 NP 문제, NP-난해 문제에 대해 알아보겠습니다. P문제란? 우리가 정의하는 문제의 어려움은 우리가 문제를 풀 때의 난이도가 아니라 계산 복잡도 이론에서 문제의 난이도는 해당 문제를 해결하는 빠른 알고리즘이 있느냐를 나타내는 것입니다. 여기서 빠른 알고리즘이 있는 문제는 계산적으로 쉽고, 빠른 알고리즘이 없는 문제는 계산적으로 어렵다고 합니다. 이 말은 즉 알고리즘을 유도하는 과정이 책이 열 권이고 그 구현이 아무리 길어도 수행 시간만 빠르다면 이건 쉬운 문제가 된다는 것을 알 수 있습니다. 그럼 여기서 빠른 알고리즘의 기준이 뭐라고 할 수 있을까요?, 그 기준은 우리는 다항시간 알고리즘이나 그보다 빠른 알고리즘만을 빠르다고 할수..

안녕하세요 HoonIOS입니다 :) 저번에는 프레임워크, 코코아 터치 프레임워크를 알아봤습니다. 혹시 안 보셨다면 여기를 누르셔서 읽어보고 오시는 걸 추천드립니다 :) 프레임 워크 계층 관계에 대해 - 코코아 프레임워크나 코코아 터치 프레임워크를 구성하는 가장 작은 단위의 프레임워크들은 계층 관계를 이룬다고 합니다. - 우리가 주로 프래그래밍에 사용하는 것은 상위 레벨의 프레임워크들로, 프레임워크에서 상위계층에 해당합니다. 여기서 말하는 상위 계층이란? - 보다 사용자에 가깝고 구체적으로 구현되어 있어서 애플리케이션을 만들때 가장 손쉽게 사용할 수 있는 형태를 말한다, 이런 형태를 구체화되어있다고 표현을 합니다. - 이제 하위계층을 알아보자면 하위계층에 속한 프레임워크는 추상적이면서 하드웨어 쪽에 더 가..
안녕하세요, HoonIOS입니다. 저번에는 기초 알고리즘과 시간 복잡도(추가사항)에 대해 알아봤는데요 (이곳을 클릭하시면 저번 포스팅 내용을 보실 수 있습니다.) 이번 시간에는 O표기법, 주먹구구 법칙에 대해서 알아보겠습니다. 점근적 시간 표기: O 표기 - 우선 O표기법의 정의 대해 알아보겠습니다. O표기법이란 주어진 함수에서 가장 빨리 증가하는 항만 남긴 채 나머지 값들은 다 버리는 표기법입니다. 즉 쉽게 말해 제일 높은 다항 차만 빼고 나머지 값을 버린다고 생각하시면 되겠습니다. - 알고리즘에서는 입력의 크기가 두개 이상의 변수로 표현될 때는 그중 가장 빨리 증가하는 항들만을 떼놓고 나머지를 버린다는 의미입니다. - 예를 들어 N² + N의 알고리즘 입력 크기가 나왔다면 여기서 O표기법으로는 N² ..