적당한 고통은 희열이다

- 댄 브라운 '다빈치 코드' 중에서

반응형

분류 전체보기 586

[Swift iOS] UICollectionView - Storyboard

UICollectionView 사용하기 까다롭네.. 내 기억이 맞다면 xib 파일 사용하면 collectionview 내에 cell을 바로 넣어서 설정해줄 수 없고 번거롭게도 따로 cell xib 설정을 해줘야 한다고 알고 있다. 그래서 이번엔 스토리보드로 사용해본 UICollectionView 1. 기본 UICollectionView 세팅하기 우선 스토리보드에 UICollectionView를 추가한 후, 다음과 같이 오토 레이아웃을 설정해준다. 그리고 중요한 것. Automatic으로 기본 설정되어있는 Estimate Size를 None으로 바꿔주어야 한다. (custom cell 만들고 크기 설정 다 해줘도 반영이 안되서 이거 때매 몇시간 날려뚬 ㅠ ) 컬렉션뷰를 @IBOutlet으로 연결해주고, U..

[Swift 알고리즘] Codility: CyclicRotation

https://app.codility.com/programmers/lessons/2-arrays/cyclic_rotation/ Lesson 2 Arrays (Easy) CyclicRotation Rotate an array to the right by a given number of steps. 주어진 정수 배열A를 K만큼 오른쪽으로 회전시키는 문제. 입출력 예시 var arr = [3,8,9,7,6] print(solution(&arr, 3)) //[9,7,6,3,8] 처음에 그냥 print(solution([3,8,9,7,6],3)) 으로 입력값을 주었더니 Cannot pass immutable value of type '[Int]' as inout argument 이라는 에러가 떴다! 처음보는 in..

Algorithm/Codility 2022.05.23

[Swift 알고리즘] Codility: BinaryGap

https://app.codility.com/programmers/lessons/1-iterations/binary_gap/ Lesson 1 Iterations (Easy) BinaryGap Find longest sequence of zeros in binary representation of an integer. 처음 풀어보는 Codility 문제. 영어로 되어 있어 당황스러웠지만, 크게 어렵진 않았다. Swift언어는 Swift4 로 지원이 되는듯..? 주어진 양의 정수 N을 이진수로 변환했을 때, 1과 1로 둘러싸인 연속된 0의 갯수 중 최대값을 반환하는 문제. 입출력 예시 print(solution(9)) //1001 => 2 print(solution(529)) //1000010001 => 4..

Algorithm/Codility 2022.05.21

thread란? + 멀티쓰레드의 장단점

Process & Thread 프로세스 : 실행 중인 프로그램. 자원(resources. 메모리, CPU ...) + 쓰레드로 구성 쓰레드 : 프로세스 내에서 실제 작업을 수행. 모든 프로세스는 최소한 하나의 쓰레드를 가지고 있다. 프로세스 : 쓰레드 = 공장 : 일꾼 싱글 쓰레드 프로세스 = 자원 + 쓰레드 멀티 쓰레드 프로세스 = 자원 + 쓰레드 + 쓰레드 + ... + 쓰레드 여러 작업을 나눠 동시에 수행 가능. 보다 효율적으로 처리할 수 있다. 대부분의 프로그램은 멀티쓰레드로 작성되어 있다. 멀티쓰레드의 장단점 장점 - 시스템 자원을 보다 효율적으로 사용할 수 있따. - 사용자에 대한 응답성(responseness)이 향상된다. - 작업이 분리되어 코드가 간결해진다. 단점 프로그래밍할 때 고려해야..

컴퓨터시스템 2022.05.13

[Swift] 메서드 정복하기 Instance / static / class methods 비교

Swift에서는 class, struct, enum 타입 내에서 정의된 함수들을 메서드라고 한다. 호출 방식에 따라 Instance 메서드와 Type 메서드로 나뉘는데, func 키워드로 흔히 사용하는 것이 바로 인스턴스 메서드. 인스턴스 메서드는 클래스 등의 인스턴스를 생성하여 이를 통해 메서드를 호출하고, 타입 메서드는 클래스 등의 타입으로부터 직접 메서드를 호출할 수 있다. 타입 메서드는 오버라이딩 여부에 따라 static 또는 class 메서드로 나뉘는데, static 메서드는 오버라이딩이 불가하기 때문에 오버라이딩이 필요한 경우 class 메서드를 사용할 수도 있다. Methods 메서드란? 일반적으로 func 으로 정의하는 것들을 함수라고 부른다. 그 중에서도 클래스, 구조체, 열거형 타입 내..

[Swift] Class / Struct / Enum Types

값 타입 vs 참조 타입 설명은 다음을 참고 -> Value Type / Reference Type Enumerations 열거형 An enumeration defines a common type for a group of related values and enables you to work with those values in a type-safe way within your code. 연관된 값들을 하나의 그룹으로 묶어 데이터 타입으로 정의한 자료형 열거형을 사용하면 미리 정의해둔 타입의 케이스 내에서 벗어날 수 없으므로 코드의 가독성과 안정성이 높아짐 → 명확한 분기 처리 가능 (열거형은 항상 switch문으로 분기처리 가능) 다른 언어와 다르게 Swift에서 열거형은 값을 따로 선언해주지 않아도 ..

728x90
반응형