해당 identifier를 가진 cell이 없을 수도 있기 때문에 안전하게 사용하기 위해 옵셔널 바인딩으로 처리한다.내가 지정한 cell의 프로퍼티에 접근하고 사용하기 위해 as?를 사용하여 다운캐스팅한다.cellForRowAt함수는 tableViewCell를 리턴해야
메모리의 구조는 크게 코드 영역 / 데이터 영역 / 힙 영역 / 스택 영역으로 나뉜다. 각각에 대해 알아보자코드 작성한 소스코드가 저장되는 영역이다.데이터전역변수가 저장되는 영역이다.앱의 실행부터 종료까지 사용가능한 요소가 저장된다.static으로 선언된 변수가 저장된
카톡화면, 인스타 피드 등을 보면 같은 형태가 반복적으로 나타나는 구조를 볼 수 있다. 카톡 친구가 1000명일 때, 1000명의 프로필 사진, 상태메시지, 이름, 배경음악.. 등을 보여주기 위한 뷰를 다 따로 만들면 각각 view객체를 1000개씩 만들어야 할까? 이
더 더 열심히 지금까지는 앱이 사용되는 동안에만 메모리에 데이터를 올렸다가 사용하는 형태로 사용했다. 예를 들어 텍스트 필드에 값을 입력했더라도 앱을 껐다 다시 켜면 텍스트 필드가 비어있었다영구적으로 알림 수신 여부와 같이 앱을 껐다 키더라도 데이터를 영구적으로 저장하
OpenSource 카카오톡, 인스타그램 같은 우리가 자주 사용하는 앱의 설정에 들어가면, 오픈소스 라이선스라는 항목을 볼 수 있는데요, 앱을 개발하면서 사용한 외부라이브러리를 볼 수 있습니다. 공유 Dependency Manager CocoaP
Enum / Class / Struct / ExtensionUserDefaultsTableViewControllerOpenSourceGit의 사용에는1\. 백업 관점2\. 협업 관점이렇게 두가지 관점이 존재하는데 백업관점 위주로 알아볼게요Xcode프로젝트를 생성할 때
파일 이동 finder에서 이동하는 게 아니라 Xcode 네비게이터 상에서 이동하는 게 안전하다 폴더링 Info는 위치를 변경해주면 build setting을 건드려야 하는 경우가 있어서 기본 위치에 두는 것을 권장한다 파일 삭제 Finder & Projec
destructive 빨간색으로 경고 (스타일 먹인거 아니다)default 파란색 기본cancel 파란색으로 default보다 볼드하다추가되는 위치에 상관없이 action sheet 맨 아래, alert 왼쪽에 붙는다.cancel 스타일은 하나만 존재할 수 있으며, 두
디자이너에게 적절한 해상도의 이미지로 버튼을 받는다.이미지 뷰 안에 들어간 이미지는 자체적으로 사이즈 조절이 가능이미지뷰 + 레이블 위에 투명한 버튼을 올리는 방법으로 가능하다버튼의 style을 default로 바꾸면 이미지 사이즈를 변경할 수 있다.대신 버튼에 포함된
중요한 내용들을 키워드 위주로 정리해본다. Bundle Identifier 사람으로 치자면 주민번호 같은 개념으로 앱스토어에 한번 출시하고 나면 바꿀 수 없다. 다른 서비스의 bundle id와 겹칠 수 없다. project VS target project가 더
프로그래머스 고득점 키트의 level2 문제인 다리를 지나는 트럭 문제를 풀어보았다. 문제는 다음과 같다. 문제 설명 트럭 여러 대가 강을 가로지르는 일차선 다리를 정해진 순으로 건너려 합니다. 모든 트럭이 다리를 건너려면 최소 몇 초가 걸리는지 알아내야 합니다. 다
단일 프로세스 서버의 한계클라이언트에서 입력한 순서대로 서버에서 데이터를 받는 것이 아닌첫번째로 접속한 클라이언트의 데이터를 다 기록을 하고두번째로 접속한 클라이언트의 데이터를 받음서버는 클라이언트를 하나만 받아서 다른 클라이언트는 기다려야함Parent/Child pr
단일 프로세스 서버의 한계클라이언트에서 입력한 순서대로 서버에서 데이터를 받는 것이 아닌첫번째로 접속한 클라이언트의 데이터를 다 기록을 하고두번째로 접속한 클라이언트의 데이터를 받음서버는 클라이언트를 하나만 받아서 다른 클라이언트는 기다려야함Parent/Child pr