본문 바로가기

전체 글

(22)
2026 당근 빌더 밋업 모임에 다녀오다! - iOS 학생 개발자의 후기 당근에서 주최한 2026 당근 빌더 밋업에 다녀왔다! 우선 왜 신청하게 되었냐면 .. 대학생 시절, 나의 워너비 회사는 당근이었다.주변 지인은 알고 있겠지만, 나는 대학생 시절부터 "아 당근에서 개발자로 일하고 싶다!"란 마음이 있었다. 3~4년 전 막 모바일 개발을 시작할 쯔음, 당근마켓 어플이 엄청 인기 많았고, 모두가 당근으로 중고거래를 했다. 모바일 개발에 막 발을 들이던 나에게는 정말 꿈의 회사였다. 채용공고에는 멋있고 복잡해 보이는 기술 스택을 사용하고 있었고, 그만큼 적극적으로 최신 기술을 도입하고자 하는 의지가 보였다. 그래서 나도 당근에 들어가면 저런 기술들을 다 알고 있고 멋있는 선배가 되어있을 것만 같은 ... 그런 생각이 있었다. ㅋㅋ 방황 중인 나에게 길을 제시해줄 수 있을 것 같..
indirect Enum, 근데 이제 약간의 CS 지식을 곁들인 .. - 1일1챌린지 https://guryss.tistory.com/21 해당 챌린지에서 연결된 심화 개념..? 이라고 하자 🧃 Enum 열거형 기초 개념을 다시 새겨보자 - 1일1챌린지Enumeration Model custom types that define a list of possible values. 관련 값들을 정의하는 커스텀 타입관련된 값들의 그룹에 대한 공통 타입을 정의한다.코드 내에서 type-safe한 방식으로 값들을 사용할 수 있다guryss.tistory.com 열거형은 값 타입이다 (like Struct)값 타입은 메모리에 저장될 때 크기가 컴파일 시점에 반드시 고정되어야 한다.⭐️ 왜 컴파일 시점에 고정되어야 할까?컴파일러는 코드를 기계어로 변환할 때, 각 변수가 메모리의 어느 위치에 저장될지 미..
Enum 열거형 기초 개념을 다시 새겨보자 - 1일1챌린지 Enumeration Model custom types that define a list of possible values. 관련 값들을 정의하는 커스텀 타입관련된 값들의 그룹에 대한 공통 타입을 정의한다.코드 내에서 type-safe한 방식으로 값들을 사용할 수 있다. Enumeration Syntax (열거형 문법)enum 키워드로 시작한다. ← 당연한 말 ; 이지만 그래도 !전체 정의를 중괄호 쌍 안에 배치한다. ← 당연한 말 ; 이지만 그래도 !enum CompassPoint { case north case south case east case west}열거형 내 정의된 값들 → enumeration casecase 키워드를 통해 값을 추가할 수 있다.case 순서에 따라 기본적으로 정수가 설정되..
Struct vs Class 를 완벽하게 새겨보기 - 1일1챌린지 공부 계기이번 웹소소 iOS 오프라인 회의에서, 윤학 오빠가 기존의 Service, Repository 타입을 class에서 struct로 변경하자는 의견을 제시했다. 그 이유를 물어보니, Swift 공식 문서에서는 class를 반드시 사용해야 할 명확한 이유가 없다면 struct 사용을 권장한다고 한다.이 계기로 자연스럽게 class와 struct의 차이에 대해 이야기를 나누게 되었는데, 정작 나는 그 내용이 거의 기억나지 않는다는 사실을 깨달았다… 😭 최근에는 AI 에이전트, 면접 준비, 자소서 작성 등에 집중하면서 정작 중요한 개발 기초 개념 학습을 소홀히 하고 있었다는 것을 느꼈다.그래서 지금부터는 다시 마음을 다잡고, 하루에 하나씩 개념을 차근차근 정리하며 쌓아가려고 한다. 왜 Swift는 s..
[BOJ/C++] 백준 32762. 더치페이 1. 문제 이해https://www.acmicpc.net/problem/32762 N명의 입장 및 퇴장 시간이 주어진다. M개의 음식 정보가 주어지는데, 음식의 주문 시각과 가격을 알 수 있다. 결과값은 1인당 평균 지불 금액 이다. 2. 풀이 방법처음에는 모든 사람들의 입장 및 퇴장 시간을 저장해야 한다고 생각했다. 이후에 음식 주문 시간에 있는 사람들의 수를 가져와서, (전체 가격) % (주문 시간의 사람 수의 합) 으로 결과를 내면 된다고 생각했다.하지만,, 해당 방식은 브루트포스 이고, 입장 및 퇴장 시간의 범위는 1 ~ 2^31-1 이다.이거 다 계산하다가는 CPU가 나에게 욕을 해버릴지도 모른다. -> 즉, 이 방식은 패스! 다음으로 생각해본 것은 제시된 음식의 주문 시간의 경우만 생각하는 ..
[UIKit] jpegData(compressionQuality: )에 대한 고찰과 트러블슈팅 ☄️ 웹소소 사진소소 1차 QA에서 발견했던 버그가 있었다. (참고로 사진소소는 웹소소 사일로 중 하나로 난 피드 내 이미지 첨부 기능을 구현해야했다.... 흑흑 어려워😞)피드를 수정할 때마다 이미지를 수정하지 않았는데도 이미지의 화질이 계속 저하되는 상황이 발생했다.해당 버그를 수정하기 위해 UIKit에서의 이미지 압축 방식에 대해 처음부터 공부해보기로 결정했다! 우선, 버그부터 해결해보자서버에 보내야 하는 이미지의 최대 사이즈는 0.25MB였다.근데 원본 이미지 사이즈가 이미 0.25MB보다 작으면 압축 과정은 필요없이 서버에 전송하면 되는데 ..내가 이 로직을 생각 못했다 흑흑 if let originalData = image.jpegData(compressionQuality: 1.0) { le..
이미지를 언어별로 다르게 적용시키고 싶다면? Image Localizing ✨ 사이드 프로젝트를 진행하다가 이미지를 한국 / 영어 언어에 따라 다르게 적용해야 하는 상황이 발생했다. (사실은 튜토리얼 뷰를 따로 만들어서 뷰의 크기에 맞게 조정되도록 해야하는데 .. 이건 백로그로!우선 릴리즈 기한을 맞추기 위해 이미지 통째로 넣어두기로 했다. ) 이 상황을 마주하고.. 음 텍스트는 로컬라이징을 할 수 있는데 이미지는 어떻게 하지? 란 생각이 들었다. 해결방법생각보다 간단했다. 로컬라이징 하고 싶은 이미지를 선택하고 우측 네비게이션의 Image Set을 클릭하면 위 사진처럼 Localization이라는 탭이 보일 것이다. 이를 클릭하면 위 버튼들이 생길 것이고, 로컬라이징 하고 싶은 언어들을 선택해주면 된다. 나는 영어와 한글 버전 두가지의 이미지를 추가할 것이기 때문에 두 버튼 모..
[WWDC25] 스스챌 Distinguished Winner로서 간 WWDC25 현장 후기 (3) WWDC25 3일차 마지막날 (6/ 10)공식 행사 마지막날이다. 이제 막 시차적응 했다고 생각했는데.. 벌써 가야한다니 너무 아쉬웠지만 그래도 알차게 끝내자는 생각으로! 마지막날을 힘차게 시작해봤다.오전 9시에 집합해서 인피니트 루프에 가서 어제 발표된 Apple의 Liquid Glass와 관련된 디자인 세션을 들었다. Apple의 엔지니어, HIG 디자이너들이 나와서 직접 코드로 구현까지 해주며 자세한 방법에 대해 알려주었다. 아쉽게도 해당 디자인 세션에선 사진 촬영이 불가해서 내용에 대한 메모만 남겨두었다. 하나 진짜 인상 깊었던 점은, 행사 시작부터 끝까지 수화통역사분들이 열심히 수화로 행사를 설명해주셨다. 애플의 섬세함을 다시 한번 느낄 수 있었다. Liquid glassSpecular hig..