이 글을 작성하는 목적은 iOS 개발 공부를 시작하면서 거의 놓아버린 kotlin과 Android를 다시 한번 공부하고, 애매하게 완료된 앱을 마무리 하기 위해서이다.당분간은 iOS 7, Android 3 정도로 시간을 투자하게 될거 같네요진짜 오랜만에 회사 다니면서 틈틈히 개발한 사이드 프로젝트를 정리하고자 글을 작성합니다.dogdom이란?개의 왕국이라는 뜻으로 반려견, 반려묘를 대상으로 사진 및 동영상을 공유하는 소셜 네트워크 서비스입니다.현재까지 유행? 하고 있는 생성형 인공지는 chat-gpt를 탑재하여 사용자가 원하는 정보를 주고 받을 수 있습니다.해당 앱을 개발하게 된 이유는 앱 개발을 시작한 시점이 chat-gpt 출시 시점과 안드로이드 공부를 시작한 시점이 어느정도 겹치게 되어 둘을 병합한..
전체 글
취뽀하고싶다
CollectionView 뷰 구현안녕하세요! 그놈이에요이번 프로젝트에서는 CollectionView를 추가하게 되어서 글을 작성하게 되었어요.거짓말 같겠지만 지금 글을 작성하는것이 처음이 아니에요...열심히 만들었는데 저장을 안해서 저의 노력이 먼지가 되어버렸네요 ㅋㅋㅋㅋ하지만 괜찮아 다시 만들면 되니까!! 하하하하 이제 무조건 노션에 만들어서 완성하면 복붙해서 넣는식으로 하자…CollectionView 객체 생성밑에 나오겠지만 우선 SubView가 무엇이냐?SubView는 MainView라는 사각형 화면에 들어가게 되는 각각의 요소들을 말합니다.그래서 MainView에 CollectionView를 서브뷰로 넣을 겁니다그럼 어떻게 넣으면 될까요? 우선 CollectionVIew라는 객체를 만들거에요p..

[STEP3] 구현시 고민한 사항STEP3는 사용자 UI를 개발해야 합니다.STEP2에서 개발한 API 수신 모델을 사용해 CollectionView의 내부 뷰에 BoxOffice API를 사용해 수신되는 데이터를 연결해야 합니다.이전 프로젝트에서 진행한 UI 작업은 모두 StoryBoard를 사용하여 개발했기 때문에 코드 기반 화면 작업에 여러 에러? 막히는 부분들이 많았고 이번 글에서는 그 문제가 무엇이고 어떻게 해결했는지를 작성하고자 합니다.StoryBoard → CodeBase 이미 스토리 보드를 생성해서 프로젝트를 진행중이라면 이제 설명드리는 작업들을 진행해야 코드 기반으로 UI를 그릴수가 있습니다.아래 작업은 프로젝트에서 스토리 보드와 연결된 Main 파일을 삭제하고, UIKIT Main St..
안녕하세요 책을 싫어하는 개잡놈입니다. 매주 책을 읽고 이에 대한 느낀점을 작성하기 위해서 블로그 작성을 시작했어요.... ㅎㅎ 3월 2주차에 제가 처음 읽게된 책의 이름은 객체지향의 사실과 오해 줄여서 객사오 입니당 매주 친한 친구랑 이 책의 일정 범위까지 독서를 하고 느낀점을 말하기로 했어요 객사오 이책을 읽기 시작하게된 이유?는 개발자들이 생각하는 객체 지향 프로그래밍과 내가 생각한는 객체 지향 프로그래밍이 달라서, 개발자들과 올바른 협업 문화를 가지기 위해서, 코더가 되지 않기 위해서, 취업을 하기 위해서 등과 같은 다양한 이유들 때문입니다. 객사오는 책의 서문에서부터 저에게 질문을 던집니다. 객체지향이란 무엇일까요? 이 질문에 여러분은 뭐라고 답하실겁니까? 순간 머리속에서는 SOLID와 객체지향..

디자인 패턴에 대해서 공부하던중 예시 코드에서 Hashable을 채택하는 코드를 보고 먼저 학습을 해야겠다고 생각했다.블로깅 결과 소들이 형님이 너무 자세하게 설명을 해주셔서 대부분 그의 블로그를 참조해서 작성하기로 했습다.리산 알 가입 이시여...Hash란?딕셔너리에서 많이 사용되는 개념인 Hash는 Key - Value로 값을 저장하는 형태로 HashTable도 당연히 key - Value로 값을 저장합니다.HashTable이란?해시 테이블은 내부적으로 배열로 구현되어 있습니다.key값은 해시 함수를 통해서 해시 주소값으로 변환되고해시 주소값을 이용하여 해당하는 해시 테이블에 접근하여 value를 가져오거나 저장하는 구조입니다. 그런데 이러면 일반 배열에 값을 저장하는거랑 크게 다르지 않나? 그냥 배..

[STEP2] 작업 목록URL Session을 활용한 서버와의 통신JSON 데이터 매핑할 모델 설계 및 사용Unit TestSTEP2 진행시 고민한 부분이전 STEP에서는 프로젝트의 폴더링을 어떻게 해야될지를 고민했습니다.API, DTO, Model과 이를 테스트하기 위한 unitTest를 작성했는데 API는 Main API인 kobis API와 이를 채택하는 detailMovie, DailyBoxOffice가 있고 더 많은 API가 생성되는 경우 공통 부분으로 묶여진 kobis API를 프로토콜로 만들어 채택하는 방법을 사용하게 되었습니다.Manager는 각각의 API를 관리하고자 하는 클래스입니다.저는 API를 사용하고자 할때 해당하는 Manager를 생성하여 통신하는 방법을 사용했습니다.그런데 이에..

UserDefaultsUserDefaults란UserDefault란 구글 문서에 따르면 앱 실행 시 지속적으로 키-값 쌍을 저장하는 사용자의 기본 데이터베이스에 대한 인터페이스 입니다.그럼 언제 필요하고 어떻게 사용하면 되는걸까요?주로 앱의 영구 저장소를 사용해야 될때 입니다. 빠르고 간단한 데이터를 저장하는데 적합하고 앱의 종료와는 무관하게 접근이 가능합니다.앱의 초기 사용자에 대해 예를 들면사용자 튜토리얼회원가입 & 로그인매인 화면 이동이와 같은 순서로 화면 전환이 이루어지게 되는데 초기 사용자가 아닌 일반 유저의 경우,앞서 진행한 1번 2번의 화면은 보여줄 필요가 없기 때문에 이와 같은 정보를 저장하는데 적합 합니다.UserDefaults 특징value를 가져오기 위해 key ,value를 설정하는..