목록모바일 (29)
BOID
안녕하세요 HoonIOS입니다. :) 정말 오랜만에 포스팅을 하는 것 같네요 :) 이번 주는 바빠서 포스팅을 제대로 못했습니다. ㅠㅠ 이번에는 텍스트 필드 델리게이트을 공부하던 중 나왔던 최초 응답자에 대해 포스팅을 하려고 합니다. 최초 응답자 란? 우선 최초응답자를 설명하기 전에 UIWindow객체를 알아야 합니다. UIWindow 객체란 사용자에 가장 가까이 위치한 객체입니다. 사용자로부터 발생하는 터치 관련 이벤트를 내부 객체로 전달하는 역할을 담당합니다. 그냥 이렇게 글로보면 모르시겠죠? 재미도 없고.... 자 다음 view의 계층에서 UIWindow객체의 위치를 보겠습니다. 왼쪽에 있는 파란색 층이 UIWindow층이 됩니다. 오른쪽 층을 보시면 UIWindow는 뷰 컨트롤러, 뷰를 포함하고 있..
안녕하세요 HoonIOS입니다. :) 저번 포스팅에는 텍스트필드에 대해 그리고 텍스트필드를 어트리뷰트 인스펙터와 UI코드로 꾸미는 법을 알아봤습니다. boidevelop.tistory.com/62 [iOS] 텍스트 필드(textField 객체) 란? - HoonIOS 안녕하세요 HoonIOS입니다. :) 오늘은 델레 게이트 패턴 공부를 하다가 제일 기본적인 UITextFieldDelegate를 공부하다가 그전에 textField에 대해 알아보려고 합니다. 텍스트 필드란? 우선 기본적으로 애 boidevelop.tistory.com 이번에는 텍스트필드의 텍스트 입력특성인 Text input traits에 대해 한번 알아보겠습니다. 텍스트 입력 특성으로는 첫글자 대문자, 대문자 자동완성, 오타 체크, 키보드..
안녕하세요. HoonIOS입니다. :) 오늘은 알고리즘을 공부하다가 map, filter에 대해 좀 더 자세하게 알고 싶어서 공부를 좀 했습니다. (-.-) (_ _) (-.-) ※ 고차 함수란? - 매개변수로 함수를 갖는 함수 - 맵, 필터, 리듀스 등이 있습니다. - 이런 고차 함수들은 알고리즘을 공부할 때 readLine을 통해 입력받은 값을 정리하는 데 사용이 되기 때문에 확실히 알고 가는 게 좋을 거 같습니다. 맵(Map) 이란? - 자신을 호출할 때 매개변수로 전달된 함수를 실행하여 결과를 다시 반환하는 함수입니다. - 배열, 딕셔너리, 세트, 옵셔널 등의 환경(?)에서 사용을 할 수 있습니다. - 맵의 원리는 컨테이너가 담고 있던 각각의 값을 매개변수를 통해 받은 함수에 적용을 한 후 다시 ..
안녕하세요 HoonIOS입니다. :) ( 우선 포스팅을 하기 전에 여기에 있는 예시 및 조건은 다중스레드가 아닌 단일 스레드에서 컴파일, 실행이 된다고 가정을 하는 것입니다. ) 스위프트는 상당히 안전을 중요하게 생각하는 언어입니다. 그중에서 메모리의 안전한 접근에 위험을 줄이도록 장치를 두었는데요, 그중에 대표적인 것이 변수를 사용하기 전에 initalize를 하고 해제된 메모리에 접근을 할 수 없도록 하는 것이 있습니다. 사실 스위프트는 컴파일러에서 메모리를 자동으로 관리해서 굳이 신경을 쓸 필요가 없는데요. 그 이유는 메모리 접근 충돌이 생길만한 코드를 미리 알려주는 방식으로 관리가 되고 있습니다. 메모리 접근 충돌에 대해 * 메모리에 접근을 하는 방법 3가지 개발자가 변수에 값을 할당 함수의 전달..
안녕하세요 HoonIOS입니다. :) 앱을 개발하다 보면은 사용자한테 메시지를 전달하고 싶은 내용이 있습니다. 때론 사용자에게 명시적인 메시지를 전달해야 될 때가 있습니다. 예를 들어 .... 서버 점검을 한다고 알린다거나 오랫동안 접속을 안 했을 시 초대 알림을 보낸다는 등이 있습니다. 이렇게 사용자한테 메시지를 전달하는 방법은 총 3가지가 있습니다. 메시지(알림창) - alert 로컬 알림 - UserNotification 서버 알림(푸시 알림) - APNs 메시지 창이란? - 메시 자창은 사각형 박스 안에서 버튼을 눌러 의사를 표현하도록 하는 창이 알림 창입니다. - 메시지 창은 한 가지 단점이 있는데 바로 앱이 실행 중일 때만 동작을 한다는 점입니다. 즉 사용자에게 바로바로 메시지를 전달해야 할 ..
안녕하세요 HoonIOS입니다. :) 후처리인 defer에 대해 알아보겠습니다. 크게 defer는 코드 블록을 나가기 전에 무조건 꼭! 꼭! 꼭! 실행되는 코드라고 생각하시면 됩니다. defer란? - defer구문을 사용하면 현재 있는 코드 블록을 빠져나가기 전에 꼭 실행해야 하는 코드를 작성해줄 수 있습니다. - defer구문의 특징은 오류가 발생해서 코드블록을코드 블록을 나가든, 정상적으로 코드 블록을 나가든 defer구문은 코드가 블록을 빠져나가기 전에 무조건 실행이 됩니다. ( 따라서 만약 파일을 열고 사용하고 있다가 에러가 발생해서 코드가 블록을 빠져나가게 되면 그전에 그 파일을 정상적으로 닫아 메모리 해제를 해야 되는데 그때 defer구문 내부의 코드를 실행시켜 정상적으로 메모리를 해제시켜줄..
안녕하세요 HoonIOS입니다. :) 이번 포스팅에는 오류처리에 대해 알아보겠습니다. :) 프로그램에서 우리가 기능을 구현했으면 그 기능들이 우리가 원하는 대로 무조건 100% 정확하게 동작한다는 보장이 없습니다. 오류는 충분히 생길 수가 있지만 앱이 그냥 종료되는 것을 방지하기 위해서 오류 처리 기능을 사용합니다. 오류처리 기능을 통해 이런 상황들을 구별하여 프로그램 자체적으로도 오류를 해결할 수 있고, 사용자와 상호작용을 통해 오류를 풀어나가는 방향으로 제어를 할 수도 있습니다. 이제부터 오류처리하는것에 대해 설명을 해보겠습니다. 오류처리 정의란? - Apple documentation에서 Error protocol의 의미로 throw 할 수 있는 에러 값을 나타내는 타입입니다. - 오류처리는 프로그..
안녕하세요 HoonIOS입니다. :) 저번에는 프레젠테이션 방법을 이용해서 값을 전달하는 방법에 대해 알아봤습니다. boidevelop.tistory.com/34 [iOS] 데이터 직접 전달하는 방식 (동기방식) -HoonIOS 안녕하세요 HoonIOS입니다 .:) 안녕하세요 저번 포스팅에는 데이터를 주고받는 방법인 동기 방식, 비동기 방식에 대해 알아봤습니다. https://boidevelop.tistory.com/33 [iOS] 다른 뷰컨트롤러와 데이터 주고 boidevelop.tistory.com 혹시 안 읽어보셨으면 읽고 오시면 좋을 거 같아요 이어지는 부분도 있거든요!!! 내비게이션 컨트롤러의 값을 전달하는 방식은 앞 포스팅에서 이야기한 프레젠테이션 방법과 같습니다. 단지 다른점은 화면을 전환하..