ios

· 일상
네이버 부스트캠프 iOS 트랙이 드디어 끝이 났다.이전 프로젝트가 끝난 후에는 뭐를 해볼까? 라는 생각을 많이 했었다. 그래서 내린 결론은, iOS 로드맵을 따라 부스트캠프에서 배웠던 내용을 리마인드 해보는 게 어떨까? 였다.어떻게 Remind를 할까?내가 내린 결론은, “그룹프로젝트를 하면서 경험했던 것들을 부스트캠프 학습 스프린트와 접목시키자” 였다.  예를 들면첫번째 학습 스프린트 때는 아래와 같은 내용을 배웠다.버전관리와 PR 절차리모트 Origin 저장소를 fork 한 후, 로컬에서 작업을 진행한 후 Pull Request 보내는 것 현재 그룹프로젝트에서는 fork 를 통한 Task 분리가 아닌, branch로 진행을 했지만,이를 그룹 프로젝트에서 적용하면 어떻게 할 수 있을까? 뷰 컨트롤러 라..
· iOS
이번 글에서는 프로젝트를 진행하며, 제가 경험했던 내용에 대해 작성할 예정입니다.처음 프로젝트를 하며 다양한 상황을 경험해보고 있습니다.이 중에서 이번 2주차 때 가장 인상 깊었던 내용에 대해 공유해보고자 합니다.목차MVVM 패턴을 도입하며나의 첫 PR리팩토링 과정을 경험해보며이 글의 목차는 위 3가지와 같습니다.첫 번째 글에서는 프로젝트에서 도입할 아키텍처를 설정하는 과정에 대해 리마인드 겸, 정리를 해보려고 합니다.두 번째 글에서는 제가 맡은 Task에 대해 첫 PR을 올리고, 어떤 피드백들을 받았는지에 대해 정리할 예정입니다.마지막으로는 리팩토링 과정을 통해 어떻게 변했는지, 어떤 장점을 얻게 되었는지에 대해 서술할 예정입니다. MVVM 패턴을 도입하며프로젝트 하임은 클린 아키텍처를 기반으로 하고,..
· 일상
오늘은 학습 스프린트 마지막 주에 앞서 이전까지의 과정에 대한 회고를 진행해 볼 예정이다.[F인 마음으로 글을 작성하다 보니, 두서없이 글이 진행될 수도 있습니다] 2학기를 휴학하게 되며3학년 1학기 재학 중, 기말고사 기간이었다. 기말고사를 1주일 정도 앞둔 시점이었다.‘네이버 부스트캠프’ 모집글을 인스타그램에서 보게 되었다.(이전 Swift를 처음 공부할 때, iOS에 대해 전문적으로 (무료로) 배울 수 있는 곳은 ‘네이버 부스트캠프’, ‘새싹’이었다.) 모집글을 보다 보니, Swift로 2차 코딩 테스트를 봐야 한다는 내용이 적혀있었다.해당 내용을 보고 그냥 지원하지 말까?라는 생각을 처음에 했었던 것 같다. Swift 언어를 배우고 적용해 본 지 얼마 되지도 않았고, 3학년 2학기 때 휴학을 하는..
· iOS
개요네이버 부스트캠프 마스터 클래스, 미션을 수행하는 과정에서 아키텍처에 관한 이야기를 많이 접하게 되었다.기능 구현에만 급급하던 상황을 보냈다.다시 한 번 SOLID 원칙을 점검하며 리팩토링을 하는 과정을 수행하는 과정에서아키텍처에 대해서도 공부를 한 뒤, 적용해보고 싶다는 생각을 하게 되었다.당장 미션을 위한 것이라면 기능만 돌아가도록 하면 된다.그치만, 지식을 적립하는 과정이 더욱 중요하다는 생각을 하게 된 것 같다.이럴려고 네부캠 신청한 거 아니겠어?!우선, 처음 접한 지식과 이를 적용하려는 과정에서 제가 이해한 바를 나타낸 것이기 때문에, 오류나 피드백이 있다면 언제나 환영입니다 :)  소프트웨어 아키텍처?최근들어 주위에서 아키텍처란 말을 많이 듣게 된 것 같다.이는 무엇을 나타내는 걸까?소프트..
· iOS/UIKit
날짜: 2024년 8월 22일태그: delegate, iOS   이와 같은 텍스트필드가 존재하는 View가 있다.해당 텍스트필드는 해당 뷰컨트롤러(뷰)와는 분리된 또다른 객체이다.유저와 직접적인 커뮤니케이션을 하는 부분으로내부에서 키보드가 동작하며, 키보드는 OS의 관리 영역이다.사용자가 어떠한 동작을 한 뒤에, 동작을 다시 뷰컨트롤러에 전달하는 커뮤니케이션 과정이 일어난다. 동작의 형태로는 디테일하게 여러가지가 존재한다.etc: 입력 시작, 종료, 변경 .. 등등이와 별개로 버튼의 경우(추천, blue, red…)는 IBAction을 통해 뷰컨트롤러와 직접적인 커뮤니케이션이 가능하다.    즉, 정리해보면텍스트필드는 유저와 커뮤니케이션을 따로 해준 뒤에뷰컨트롤러에 동작을 전달해준다.그러면 어떻게 코드로..
· iOS/UIKit
ViewController날짜: 2024년 8월 21일태그: Swift, UIKit, iOS앱의 생명주기?어떤 앱을 실행 중일 때 전화가 오는 상황을 가정해보자.원래 실행 중이던 앱은..?잠깐 비활성화 상태로게임 중이던 모든 데이터는?저장이 안되서 날아갈 수도 있음앱의 실행(메모리에 올라감)부터 앱이 백그라운드로 / 앱의 종료까지를 포괄적으로 표현하는 개념앱의 실행이 시작되서, 앱이 종료(메모리에서 내려감)되기까지의 주기가 존재[그래서 왜 알아야 함?](상태 변화의) 해당 시점에 호출되는 함수들이 있음예시 ) 앱이 실행중이다가, 다른 앱으로 전환되는 시점에 (특정) 함수가 호출됨게임 데이터 유지… etc 여러 상황에 사용 가능ViewController의 생명주기뷰 컨트롤러에도 생명주기가 존재왜 필요할까?..
· 일상
드디어 여름방학 동안 달렸던 부스트캠프 웹・모바일 9기 챌린지 과정이 모두 마무리 되었습니다. https://boostcamp.connect.or.kr/ 부스트캠프개발자의 지속 가능한 성장을 위한 학습 커뮤니티boostcamp.connect.or.kr 부스트캠프는 베이직 - 챌린지 - 멤버십 과정으로 이어져있습니다.. 비록 챌린지 과정에 대한 글을 적을 거지만... 부스트 캠프를 어떻게 알게 되었고, 챌린지 과정 전, 후의 마음가짐 변화에 대해 적어보자 합니다.. 간단히 저에 대해 소개를 좀 적자면..! S025, 너는 누구니? 우선 저는 컴퓨터공학부 3학년 학생입니다. 컴퓨터공학부에 들어오게 된 건... (재수 후) 20학번으로 입학 할 때 IT 업계 붐이 일어나기도 했었고.. 가족 중에 칼취업(..?..
· iOS/Swift
About Closure 오늘은 클로저에 대해 알아보도록 하자. 미리보기 클로저 형태 왜 클로저를 사용하지? 여러가지 문법 아래는 나중에 다룰 예정 클로저의 메모리구조 @escaping, @autoclosure 키워드 캡처현상, 캡처리스트 사용 예시 우선 클로저란 무엇일까? 클로저 (Closures) | Swift 클로저 (Closures) | Swift 명명된 함수 생성없이 실행되는 코드 그룹입니다. 클로저 (Closures) 는 코드에서 주변에 전달과 사용할 수 있는 자체 포함된 기능 블럭입니다. Swift의 클로저는 다른 프로그래밍 언어에서 클로저, bbiguduk.gitbook.io 해당 글에 따르면 클로저는 ‘코드에서 주변에 전달과 사용할 수 있는 자체 포함된 기능 블럭’이다. 본격적으로 들어가..
· iOS/Swift
About Class, Struct 미리보기 구조체 클래스 구조체와 클래스의 차이 무엇을 선택해야 하는가? 우선 내용을 정리하기에 앞서, 아래와 같은 사실을 꼭 알아두자 하나의 프로세스 내 존재하는 메모리 모델은 아래와 같다. 코드, 데이터, 힙, 스택은 꼭 기억하자. 또한, 클래스와 구조체는 ‘객체 지향 프로그래밍’ 패러다임을 연 녀석들이다. 흔히 사용하는 비유로 클래스, 구조체는 ‘붕어빵 틀’을 만들어 낸 것과 같다. → 인스턴스를 찍어냈다. 라는 말로도 사용 💡 인스턴스 → 실제로 메모리에 할당되어 구체적 실체를 갖춘 것 (스위프트에서는 클래스의 instance를 특별히 객체(object)라고 부름) 클래스 [클래스의 특징은 다음과 같다] reference type 데이터 영역에 (클래스)틀이 저장..