목록iOS 개발 (21)
어쩌다보니 iOS 개발자
ArrayList: 배열의 길이가 초기에 결정되어야 한다. 변경이 불가능하다. 동적배열 삭제 또는 추가 과정에서 데이터의 이동이 매우 빈번히 일어난다. (하나의 데이터 이동이 다음 데이터에게 영향을 끼친다) 데이터 참조가 쉽다. 인덱스 값 기준으로 데이터를 빠르게 찾을 수 있다. Linked List: 노드로 구성된다. 노드는 데이터를 저장될 주소 데이터와 다른 변수를 가르키는 데이터로 구성된다. 데이터의 추가 삭제를 할때 용이하다. 하지만 데이터를 찾을 때는 헤드나 꼬리부터 순차적으로 검색을 해야하기 때문에 느리다.
시간 복잡도: 속도에 해당하는 알고리즘의 수행시간 분석결과 공간 복잡도: 메모리 사용량에 대한 분석결과 알고리즘의 최악의 경우(worst case)를 수식으로 만든 후 그 수식에서 가장 영향력이 큰 부분을 빅-오라고 한다. 예) T(n)= n^2+2n+1의 빅오는 O(n^2) 로 표시한다 대표적인 빅-오 - O(logn) - O(n) - O(nlogn) - O(n^2) -> 이중 for문 - O(n^3) -> 삼중 for문 O(logn) < O(n) < O(nlogn) < O(n^2) < O(n^3) < O(2^n) 최고 최악
프로그램이란 데이터를 표현하고, 그렇게 표현된 데이터를 처리하는 것이다. 데이터의 표현은 데이터의 저장을 포함하는 개념이고, 데이터의 저장을 담당하는 것이 바로 "자료구조"이다. 어떻게 데이터를 저장하느냐에 따라 여러가지 자료구조가 있다. - 선형구조: 리스트, 스택, 큐 - 비성형구조: 트리, 그래프 - 파일구조: 순차파일, 색인파일, 직접파일 - 단순구조: 정수, 실수, 문자, 문자열 알고리즘이란 저장된 데이터를 대상으로 하는 문제 해결 방법을 뜻한다. "자료구조에 따라서 알고리즘은 달라진다" "알고리즘은 자료구조에 의존적입니다."
iOS Crash 로 인해 계속 리젝이 나는 상황이었다...리뷰어들이 크래시 파일을 보내주지만 그걸 보고 원인을 파악하기가 한계가 있었고. 어떻게하면 그 크래시 원인을 파악하기가쉬울지 검색하다가 Fabric 이라는 키트? 라고해야하는지 프레임워크 라고해야하는지 잘 모르겠지만 크래시 원인을 쉽게 파악할 수 있도록 하는 도구가 있었다. 설치하는 방법과 프로젝트 세팅하는 방법까지 잘설명되어있는 블로그 http://chelsea-kbj.tistory.com/10 이며, 또한 추가로 디버그 모드에서 강제로 크래시를 불러일으킬때 패브릭 대시보드 쪽으로 정보가 나타나지 않는 경우에는 위와 같은 디버그 모드에서 dsYM 파일을 생성하도록 세팅을 하고 정확한 정보인지는 모르겠지만 bitcode 를 No 로 해야한다고 한..
앱 위치 동의 변경을 위해 앱 설정 화면으로 바로 이동하도록 유도iOS 8 부터 가능 https://stackoverflow.com/questions/1090373/is-it-possible-to-open-settings-app-using-openurl
https://github.com/fastred/SloppySwiper
https://stackoverflow.com/questions/37817554/xcode-8-recommend-me-to-change-the-min-ios-deployment-target-from-7-1-to-8-0 참조