분류 전체보기

    CS - 메모리 구조 (feat. 스택 vs 힙)

    구조체와 클래스의 차이를 알기 전에 메모리의 구조를 알아두면 좋습니다. 자 프로그램이 메모리에 로드가 되어야 프로그램이 실행됩니다! 그리고 그 프로그램에서 사용되는 객체들을 저장할 메모리도 필요합니다. OS는 다양한 메모리를 제공하는데, 대표적인 메모리 공간은 4가지가 있습니다. 메모리 관련 공부를 하셨다면 이 사진을 많이 보셨을 겁니다! 하나씩 살펴볼게요 코드 영역 실행할 프로그램의 코드가 저장되는 영역입니다. (텍스트 영역이라고도 불려요) CPU는 이곳에 저장된 명령어를 한 개씩 가져와서 처리를 합니다. 우리가 작성한 코드를 binary 형태(0과 1)로 저장합니다. 그리고 프로그램 실행 중 코드를 수정하더라도 이미 실행중인 프로그램에는 영향을 주면 안되기 때문에 Read-Only 형태로 저장됩니다!..

    swift - MVVM 패턴 (feat. MVC)

    iOS 공부를 하면서 MVC나 MVVM 등, 다양한 패턴에 대해서 들어 보셨을 겁니다. 그런데 이런 패턴을 적용하는 이유가 뭐지?? 그냥 돌아가기만 하면 되는 거 아닌가?? 라는 생각을 했었지만... 프로젝트의 크기가 커진다면? → 에러가 난 부분을 찾는 것과 로직 파악이 어렵다 (분명 내가 짠 코드인데...?) 함께 협업하는 상황이라면? → 잇시 이거 누가 짰어! (그 코드를 이해하는 데 어려움이 발생) 문제점은 여러가지가 있겠지만 그 중에서도 위의 문제가 중요하다고 생각합니다. 적절한 비유는 아니지만... 만약 자취를 한다고 생각하면! 혼자 산다! 그러면 뭐 대충(?) 살겠죠. 분명 내가 던져 놓은 물건인데 필요할 때에는 꼭 찾기 어렵고... 하지만 함께 산다! 서로 민폐가 되지 않기 위해서 규칙을 ..

    swift - ReactorKit

    MVVM 패턴은 따로 규격화된 것이 없습니다. 그렇기 때문에 개발자의 개발 스타일에 따라 코드가 달라질 수 있습니다! 협업을 한다면 치명적인 문제가 될 수 있습니다. 코드를 이해하는 데 시간이 걸리고 의도와 다르게 파악할 수도 있기 때문이죠. 하지만 ReactorKit은 형식이 있기 때문에 다른 개발자가 작성한 코드도 쉽게 이해할 수 있습니다!! 그리고 보통 MVVM과 RxSwift를 같이 사용하는 경우가 많은데, 이때 상태 값을 관리하기가 어려워지는 문제가 있습니다. 이런 문제들을 빠샤! 하기 위해 등장한 것이 바로 ReactorKit입니다! 그리고 RxSwift 기반으로 만들어졌기 때문에 RxSwift의 메소드를 사용할 수 있습니다. 흐름은 MVVM과 비슷합니다. 사용자가 어떠한 액션을 보내면 Rea..

    RxSwift - 기본 개념 맛보기

    맨날 정리해야지... 생각만 하고 있다가 이제야 정리하게 되네요 하하 RxSwift... 자주 들어보셨죠? 특히 회사 공고에 우대사항에 자주 보일 정도로 중요한 기술입니다. 사실 직접 써보면 여러가지 이점이 많아서 계속 쓰게 됩니다. 오늘은 완전 자세히가 아니라 맛보기 수준으로 정리를 하려고 합니다! (이해가 목적!) 더 깊이 있는 내용들은 다음 시간에 이어서 다룰게요! Rx(ReactiveX)? ReactiveX 홈페이지에 들어가면 이런 문구를 볼 수 있습니다! ReactiveX는 관찰 가능한 흐름들로 비동기적인 프로그래밍을 하기 위한 API다! 음... 사실 저는 처음 Rx를 접할 때 무슨 소리인지 이해를 할 수 없었습니다... 이 부분은 아래에서 다시 설명할게요! RxSwift는 새로운 언어가 아니..

    swift - Xcode에서 시뮬레이터가 보이지 않을 때 ?

    프로젝트를 다운받아서 돌려보려고 할 때 종종 이런 상황이 발생합니다... (디바이스가 아닌 시뮬레이터가 보이지 않는 경우입니다.) PROJECT -> Info 에서 iOS Deployment Target을 낮춰주면 해결이 되더군요... ㅋㅋ; 노란색 경고메시지들을 보면 타겟이 SDK 버전보다 높다고 혼내고 있어요. 타겟을 그 이하 버전으로 바꾸면 끝! 뭐 시뮬레이터가 안 나오는 경우는 여러가지가 있겠지만 혹시 모르니 한 번 해보십쇼 ㅎㅎ

    swift - 카카오맵 API 연동하기

    카카오맵 가이드 페이지를 참고하자! https://apis.map.kakao.com/ios/guide/ 페이지에 들어가면 SDK 다운로드 버튼이 있습니다. 바로 다운로드 해줍니다! 그 다음 app key를 발급받기 위해 개발자 페이지로 이동합니다 https://developers.kakao.com/ Kakao Developers 카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다. developers.kakao.com 로그인을 하고 내 애플리케이션을 클릭합니다 애플리케이션 추가하기를 눌러줍니당 그러면 이런 화면이 나오는데 앱 이름과 사업자명을 넣어주세요! (사업자명이 없다면 학교?를 넣어주세요 ㅋㅋ) 저장을 누르면~~..