배경 백준 알고리즘 문제를 풀다가 빠른 입력 A+B 문제를 봤는데 readLine()으로는 Swift의 처리속도가 느리기때문에 시간초과가 뜨는 문제들이 있다는 걸 알았고 이를 해결하기 위해서 fread 방식으로 빠른입력 처리를 해둔 라이노님의 코드가 존재한다는 걸 알게 됐다. https://gist.github.com/JCSooHwanCho/30be4b669321e7a135b84a1e9b075f88 ps할 때 입력을 한꺼번에 받기 위한 유틸리티 클래스. fread의 swift 버전. ps할 때 입력을 한꺼번에 받기 위한 유틸리티 클래스. fread의 swift 버전. GitHub Gist: instantly share code, notes, and snippets. gist.github.com 그치만 이..
[##_revenue_list_upper##]
iOS Developer
[##_revenue_list_lower##]문제 오늘은 혜아의 면접 날이다. 면접 준비를 열심히 해서 앞선 질문들을 잘 대답한 혜아는 이제 마지막으로 칠판에 직접 코딩하는 문제를 받았다. 혜아가 받은 문제는 두 수를 더하는 문제였다. C++ 책을 열심히 읽었던 혜아는 간단히 두 수를 더하는 코드를 칠판에 적었다. 코드를 본 면접관은 다음 질문을 했다. “만약, 입출력이 N바이트 크기의 정수라면 프로그램을 어떻게 구현해야 할까요?” 혜아는 책에 있는 정수 자료형과 관련된 내용을 기억해 냈다. 책에는 long int는 4바이트 정수까지 저장할 수 있는 정수 자료형이고 long long int는 8바이트 정수까지 저장할 수 있는 정수 자료형이라고 적혀 있었다. 혜아는 이런 생각이 들었다. “int 앞에 long을 하나씩 더 붙일 때마다 4바이트씩 저장..
상황 다음과 같이 DateTimePicker 에 그림자와 배경 그라데이션 필요 문제상황 일반적으로 UIPickerView 는 UIView 를 상속해서 이 때문에 pickerView 자체에 그라데이션과 그림자를 넣어줬다 이 때문에 배경색에 그라데이션이 여러 레이어대로 제대로 작동하지 않거나 그림자를 넣었을 때 백그라운드 전체에 걸려서 그라데이션을 방해했다. 원인파악 일반적으로 UIView의 그라데이션은 두가지 정도를 추가할 수 있는데 위와같은 여러 레이어가 필요한경우는 CAGradientLayer() 객체를 사용해야했다. CAGradientLayer()는 CALayer() 를 상속한다. 즉 , UIView > CALayer > CAGradientLayer 이 단계로 접근해야한다. 또 CAGradientLa..
그 동안 자격증 공부와 iOS 강의를 듣느라 블로그에 소홀했다. 거의 한달 반 만에 블로그에 기록을 남기는 것 같다. 개인적으로 Notion에 기록을 남기기도 하고 정신도 없고... 아무튼,, 오늘은 스토리보드나 SanpKit 이 아닌 FlexLayout과 PinLayout을 이용해서 뷰를 그리는 것에 대해서 적어보겠다..! 1. FlexLayout, PinLayout FlexLayout 은 iOS 의 StackView를 좀 더 빠르고 간편하게 지정하기 위해서 사용하는 라이브러리이다. PinLayout은 SanpKit과 같이 뷰의 위치를 잡아주는데 SnapKit은 Contstraints를 기준으로해서 offset과 inset을 사용해 뷰를 잡는 것과 다르게 PinLayout은 CSS 를 사용하던 사람들에..