일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- List
- ViewBuilder
- ios
- Android
- DataBinding
- Swift Package Manager
- SwiftUI
- base64 변환
- 기존 앱
- url 관찰
- oberve url
- swift #swift keychain #keychain 사용법
- UIViewControllerTransitioningDelegate
- 스크롤 탭
- convert base64
- UIPresentationController
- GeometryReader
- url 추적
- 상단 탭바
- DevelopmentRegion
- notifychanged
- transformation.map
- development language
- Tuist
- Side Menu
- 개발자 면접
- swift
- pod install
- detect url
- scrolling tab
- Today
- Total
목록분류 전체보기 (170)
버그 잡이
캐시 데이터를 활용하면 불필요한 연산을 줄일 수 있습니다. 캐시 데이터가 없는 경우 static func getItemNumber(itemName: String) -> Int { let itemNumber = self.items.first { $0.name == itemName }?.number return itemNumber } 위와 같은 코드는 단점이 있습니다. 함수가 호출될 때마다 items 배열을 for문으로 돌며 itemName에 맞는 item을 찾습니다. 호출되는 빈도수가 적은 함수라면 상관없지만 호출이 잦다면 for문으로 인해 속도가 느려질 수 있습니다. 캐시 데이터 생성 var itemListCache: [String: Int] = [:] static func getItemNumber(it..
아는 형의 추천을 받아 최진석 교수님의 강의를 봤다. 내가 본 강의는 "자신의 주인으로 산다는 것"에 대한 강의였다. www.youtube.com/watch?v=UxzWHWrSMxg "경계에 서라" 강의의 핵심을 위 문장으로 정리해본다. 교수님은 자신의 삶을 살기 위해서는 경계에 서라고 말한다. '경계란 무엇인가?' "배운다" (경계) "표현한다" 배우는 것과 표현하는 것 사이에 있는 것이 바로 경계다. "말하기 위해서 듣고 쓰기 위해서 읽어라" 열심히 듣고, 읽어도 그것으로 나만의 생각을 만들고 표출할 수 없다면 그것은 의미가 없는 것이라고 한다. '표현하지 않는다면, 나는 어디에 있는가?' 물론 '배우지만 표출하지 않는 사람', '표출하지만 배우지 않는 사람' 둘 다 문제가 있을 것이다. 그래서 경계..
요구 사항 1. 일반적인 온보딩 페이지 2. 넘길때 애니메이션 효과 적용 (이때 전환시 애니메이션 효과 적용) (특히, 총 4개의 온보딩 page가 있는데 마지막 화면은 button의 모양이 변경됨) 사전 조사 온보딩 페이지를 만드는 방법은 크게 두 가지가 있습니다. 1. UIPageViewController 사용 2. UIScrollView 사용 UIPageViewController는 책장을 넘기는 형태의 뷰 생성을 도와주는 객체이고 UIScollview는 isPagingEnabled 속성을 true로 하면 scroll시 page를 넘기는 것과 같은 효과를 줄 수 있습니다. 결론적으로 UIScrollView를 활용하는 방식을 선택했습니다 두 가지 이유가 있는데 첫째는 pageControl를 맨 하단이 ..
"1 연휴 1 책" 생각해보면 지금까지의 연휴를 보람차게 보낸 기억이 거의 없었다. 그저 방에 누워 유튜브를 보며 나의 말초적 자극을 충족시켜줄 뿐이었다 그래서 이제 3일 이상의 연휴에는 책을 한 권씩 사서 읽어보려고 한다. (이렇게 하면 최소 1년에 3~4권의 책을 읽지 않을까?) 책은 "폴리매스" 라는 책을 선택했다. 과거의 신박사TV 유튜브에서 책 소개를 보고 읽고 싶었는데 이번 기회에 읽게 되었다. "폴리매스란?" 폴리매스(Polymath) - 박식가. 여러 주제에 대해 광범위하게 알고 있는 사람 - 서로 연관이 없어 보이는 다양한 영역에서 출중한 재능을 발휘하며 방대하고 종합적인 사고와 방법론을 지닌 사람 말 그대로 3 가지 이상의 일을 출중하게 하는 사람을 말합니다. 어느 정도로 해야 출중하다..
위와 같이 버튼가 이미지 사이에 간격을 주는 방법에 대해서 정리해보겠습니다. (정말 간단한 부분인데 항상 까먹네요..) 코드로 짜기(programmatically) imageButton.titleEdgeInsets = UIEdgeInsets(top: 0, left: 10, bottom: 0, right: -10) imageButton.contentEdgeInsets = UIEdgeInsets(top: 0, left: 0, bottom: 0, right: 10) size inspector 활용 참고로 inspector로 할 경우 -10 와 같은 음수는 타이핑으로 입력이 안 되는 오류가 종종 있는데 (xcode 문제인듯..) 이때는 옆에 있는 위/아래 버튼을 활용해서 입력하면 됩니다.
나의 새해 목표는 매일 독서를 하는 것이다. 계획은 심플하게 하라고 했다. 나의 계획은 하루 20page를 읽고 이에 대한 요약과 생각을 정리해서 글로 올리는 것이다. 그 결과 한달에 1~2권의 책을 읽는 것이다. 하루에 20page 만 읽는 것이 너무 적을 수도 있다. 하지만 나의 꾸준함을 위해서 20page라는 진입 장벽이 적당하고, 남은 시간 동안 생각을 하고자 한다. 책을 읽는 것에 30분만 시간을 소요하고 나머지 30분 동안 글을 정리하면서 나의 생각을 더할것이다. (아침에 1시간 일찍 일어나서 하자) 첫 책은 "생각의 탄생" 이라는 책이다. 이 책은 내가 한 4년전쯤 100page 정도까지 읽다가 멈춘 책이다. 내 무의식에 따르면 좋은 책 중 하나였고 끝까지 읽어 보고 싶었다. 저자의 말 저자..
www.avanderlee.com/xcode/xcode-mark-line-comment/ Xcode Mark Line to improve readability using // Mark: comments Xcode Mark Comments improve the readability of your classes or structs. Learn about all options, including // FIXME: and // TODO: www.avanderlee.com 위 글을 보고 제 맘대로 번역한 글 입니다. Mark line은 챕터에 제목을 넣거나 라인을 추가하여 클래스 또는 구조체 코드에 대한 보다 나은 overview를 제공합니다. 이 테크닉은 특정 메서드를 찾거나 수정이 필요한 사항을 표시할 때 유..
[weak self] 를 사용할 때, self를 처리하는 방법에는 두 가지가 있습니다. 'guard let self = self' 와 'self?.' "무엇을 쓰는 것이 좋을까요?" 결론부터 말씀드리면 상황에 따라 다릅니다. "guard let self = self" 먼저, 클로저 시작 부분에 'guard let self = self'를 쓰는 것은 "deallocation delay"를 발생시킬 수 있습니다. deallocation delay 는 클로저가 참조하고 있는 객체의 메모리 해제를 지연시키는 현상을 말합니다. 클로저 안에서 이미지를 로드 하는 등의 시간이 오래 걸리는 작업이 있다면 클로저 안의 로직을 수행하는 도중에 self 인스턴스가 해제될 수 있는 것 입니다. 그런데 guard let으로 s..