목록개인공부 (86)
BOID
안녕하세요 HoonIOS입니다. :) 비동기 방식인 저장소를 이용하여 값을 주고받는 방법에 대해 포스팅하겠습니다. 비동기 방식 중에서 Appdelegate, 코코아 터치 프레임워크에서 제공하는 UserDefaults객체 두 개에 대해서 포스팅하려고 하는데 지금은 Appdelegate 다음에는 UserDefaults로 값 전달하는 방식에 대해 설명하겠습니다. -코코아 터치 프레임워크에는 값을 반영구적으로 저장할수 있도록 UserDefaults객체(NSUserDefaults)와 코어 데이터(Core Data)를 제공합니다. * 우선 간단하게 UserDefaults와 코어데이터를 설명하면 - UserDefaults객체는 비교적 간단한 데이터를 저장하는데 사용되고 코어데이터 객체는 소규모 데이터베이스처럼 다소 ..
안녕하세요 HoonIOS입니다. :) 이번에는 어제 공부한 동적 계획법에 대해 알아보겠습니다. 동적 계획법이란? - 동적 계획법은 큰 의미에서 분할정복과 같은 접근 방식을 의미합니다. - 동적 계획법과 분할정복의 차이가 발생하는 부분은 문제를 나누는 방식입니다. - 예를 들어 cde는 abcde를 해결할때와 cdefg를 해결할때 한 번씩 계산하고 그러면 c, d, e는 각각 세번씩 중복 실행이 됩니다. - 이렇게 계산의 종복횟수는 분할의 깊이가 깊어질수록 더 증가하게 됩니다. 이런 문제를 해결하기 위해서 고안된 알고리즘은 동적계획법 입니다. * 여기서 분할정복이란? - 주어진 경우를 작은 사례로 나뉘고 해답을 구할수 있을 만큼 충분히 더 작은 사례로 나누어 해결하는 방법입니다. - 대표적인 예시로 이진 ..
안녕하세요 HoonIOS입니다. :) 저번에는 오류처리의 정의와 Error 프로토콜, throw에 대해 알아봤습니다. 이제는 오류를 처리하는 방법인 try, try?, try!, Do - catch에 대해 알아보겠습니다. 함수에서 발생한 오류 알리기 - 함수에서 발생한 오류를 해당 함수를 호출한 코드에게 알려주는 방법입니다. - 함수가 오류를 던지면 프로그램의 흐름이 바뀔 가능성이 매우 큽니다. 따라서 오류를 어디서 던지고 받을지 결정을 잘해주어야 합니다. * throw를 이용하여 던진 오류를 try를 이용해서 그 오류를 있는 것은 알지만 시도는 해볼게라는 의미입니다. - try는 try, try!, try?를 통해서 표현을 할 수 있습니다. 따라서 이 3종류에 대한 특징을 알아보겠습니다. 종류 특징 t..
안녕하세요 HoonIOS입니다. :) 이번 포스팅에는 오류처리에 대해 알아보겠습니다. :) 프로그램에서 우리가 기능을 구현했으면 그 기능들이 우리가 원하는 대로 무조건 100% 정확하게 동작한다는 보장이 없습니다. 오류는 충분히 생길 수가 있지만 앱이 그냥 종료되는 것을 방지하기 위해서 오류 처리 기능을 사용합니다. 오류처리 기능을 통해 이런 상황들을 구별하여 프로그램 자체적으로도 오류를 해결할 수 있고, 사용자와 상호작용을 통해 오류를 풀어나가는 방향으로 제어를 할 수도 있습니다. 이제부터 오류처리하는것에 대해 설명을 해보겠습니다. 오류처리 정의란? - Apple documentation에서 Error protocol의 의미로 throw 할 수 있는 에러 값을 나타내는 타입입니다. - 오류처리는 프로그..
안녕하세요 HoonIOS입니다. :) 지금까지는 VC1 -> VC2로 값 전달 밑 화면전환에 대해 포스팅을 했는데요. 이번에는 반대로 거꾸로 VC2에서 값을 입력하면 이 값들을 VC1으로 전달하겠습니다. VC1 -> VC2 와 VC2 -> VC1의 다른점 * 첫번째 VC2에 입력을 한다는것은 VC1화면이 만들어져 있고, 인스턴스 역시 만들어져 있다는것을 전제로합니다. 따라서 인스턴스를 새로 만드는게 아니라 현재 존재하는 뷰컨트롤러에서 참조값을 가져와야합니다. 여기서 중요한점은 화면 전환 방식에 따라 사용하는게 달라지는데 프레젠테이션 방식이라면 self.presentingViewController를 사용하여 읽어오고 내비게이션 컨트롤러 방식이라면 self.navigationController?.viewCo..
안녕하세요 HoonIOS입니다. :) 저번에는 프레젠테이션 방법을 이용해서 값을 전달하는 방법에 대해 알아봤습니다. boidevelop.tistory.com/34 [iOS] 데이터 직접 전달하는 방식 (동기방식) -HoonIOS 안녕하세요 HoonIOS입니다 .:) 안녕하세요 저번 포스팅에는 데이터를 주고받는 방법인 동기 방식, 비동기 방식에 대해 알아봤습니다. https://boidevelop.tistory.com/33 [iOS] 다른 뷰컨트롤러와 데이터 주고 boidevelop.tistory.com 혹시 안 읽어보셨으면 읽고 오시면 좋을 거 같아요 이어지는 부분도 있거든요!!! 내비게이션 컨트롤러의 값을 전달하는 방식은 앞 포스팅에서 이야기한 프레젠테이션 방법과 같습니다. 단지 다른점은 화면을 전환하..
안녕하세요 HoonIOS입니다 .:) 안녕하세요 저번 포스팅에는 데이터를 주고받는 방법인 동기 방식, 비동기 방식에 대해 알아봤습니다. https://boidevelop.tistory.com/33 [iOS] 다른 뷰컨트롤러와 데이터 주고받기 - HoonIOS 안녕하세요 HoonIOS입니다. :) 이번에는 뷰 컨트롤러들 사이에 값을 주고받는 방식인 직접 전달하는 방식, 간접 전달하는 방식에 대해 포스팅을 해보겠습니다. 뷰 컨트롤러들 사이에 값을 주고받 boidevelop.tistory.com 따라서 이번에는 동기방식으로 데이터를 주고받는 방법, 다음에는 비동기와 세그웨이를 통해 데이터를 주고받는 법에 대해 포스팅을 하겠습니다. * 다시 간단하게 동기 방식에 대해 알아보겠습니다. - 저장소를 거치지 않고 다..
안녕하세요 HoonIOS입니다. :) 이번에는 뷰 컨트롤러들 사이에 값을 주고받는 방식인 직접 전달하는 방식, 간접 전달하는 방식에 대해 포스팅을 해보겠습니다. 뷰 컨트롤러들 사이에 값을 주고받는 방식은 두 가지 개념으로 나누어집니다. 뷰 컨트롤러에서 다음 뷰컨트롤러로 값을 직접 전달하는 방식( 직접 전달 방식 ) 공통 저장소(DB, 코어 데이터)를 만들어 뷰 컨트롤러에서 공통 저장소로 값을 저장하고 화면을 이동하면 다음 뷰 컨트롤러에서 이 저장소를 열어서 값을 꺼내오는 방식입니다. 직접 전달하는 방식(동기 방식) - 이 방식은 예를 들어 테이블 뷰에서 셀을 선택하면 상세 페이지로 넘어가 세부 데이터를 보여주는 방식을 사용할때 많이용을 합니다. - 저장이 아니라 값을 전달하는거라 정보를 오래 저장할 필요..