본문 바로가기

전체 글126

11월 개발 일기 최근 회사 일이 너무 바빠서 포스팅을 거의 못했는데...기억나는 일이나 생각들을 적어보고자 한다. 1. 앱 개발이 만만하니? SI회사 특성 상 자연스럽게 React-Native에 손을 대게 되었다. (사실 입사 때부터...) React-Native에 입문하면서 당환스러웠던 점은 초기 세팅부터 복잡하다는 점이었다. 웹 개발은 CRA던 Vite던 다양한 빌드 도구들을 통해 기본적인 구성을 한 번에 마칠 수 있고, 이를 통해 정상적으로 웹 브라우저에서 구동되기 때문에 초기 세팅에 리소스가 드는 것은 상상하기 어려운 일이었다. 하지만 앱 개발은 앱을 구동시키기 위한 시뮬레이터(웹으로 치면 브라우저)를 구동시키는 것부터 문제가 발생해 세상 일에는 다양한 어려움이 있음을 상기시켜준다. Android와 IOS 환경을.. 2023. 11. 26.
[React Native] Xcode에서 자주 보는 에러 및 해결 방법 최근 RN 기반의 프로젝트들을 진행하고 있는데, 새 프로젝트를 열 때마다 빌드 과정에서 오류가 발생해 그동안 해당 문제에 대한 해결 방법들을 적어 놓으려고 한다. 개인 경험 + 이전 검색 기록을 기반으로 하기 때문에 100% 정확하지는 않다. 1. unary function 오류 No template named 'unary_function' in namespace 'std'; did you mean '__unary_function'? Xcode에서 프로젝트를 열면 한 번은 나오는 익숙한 오류다. Xcode 업데이트가 이루어지면서 이전 버전에서 사용하던 기본 코드의 변경이 안 되는 것이 원인으로 추정되는데, 새 프로젝트를 열면 꼭 발생하는 오류인 것 같다. (2023.10.24 기준) 해당 오류는 Xcod.. 2023. 10. 24.
[프로그래머스 JS] 숫자 짝꿍 📖 문제 설명 두 정수 X, Y의 임의의 자리에서 공통으로 나타나는 정수 k(0 ≤ k ≤ 9)들을 이용하여 만들 수 있는 가장 큰 정수를 두 수의 짝꿍이라 합니다(단, 공통으로 나타나는 정수 중 서로 짝지을 수 있는 숫자만 사용합니다). X, Y의 짝꿍이 존재하지 않으면, 짝꿍은 -1입니다. X, Y의 짝꿍이 0으로만 구성되어 있다면, 짝꿍은 0입니다. 예를 들어, X = 3403이고 Y = 13203이라면, X와 Y의 짝꿍은 X와 Y에서 공통으로 나타나는 3, 0, 3으로 만들 수 있는 가장 큰 정수인 330입니다. 다른 예시로 X = 5525이고 Y = 1255이면 X와 Y의 짝꿍은 X와 Y에서 공통으로 나타나는 2, 5, 5로 만들 수 있는 가장 큰 정수인 552입니다(X에는 5가 3개, Y에는 .. 2023. 10. 14.
[프로그래머스 JS] 삼총사 📖 문제 설명 한국중학교에 다니는 학생들은 각자 정수 번호를 갖고 있습니다. 이 학교 학생 3명의 정수 번호를 더했을 때 0이 되면 3명의 학생은 삼총사라고 합니다. 예를 들어, 5명의 학생이 있고, 각각의 정수 번호가 순서대로 -2, 3, 0, 2, -5일 때, 첫 번째, 세 번째, 네 번째 학생의 정수 번호를 더하면 0이므로 세 학생은 삼총사입니다. 또한, 두 번째, 네 번째, 다섯 번째 학생의 정수 번호를 더해도 0이므로 세 학생도 삼총사입니다. 따라서 이 경우 한국중학교에서는 두 가지 방법으로 삼총사를 만들 수 있습니다. 한국중학교 학생들의 번호를 나타내는 정수 배열 number가 매개변수로 주어질 때, 학생들 중 삼총사를 만들 수 있는 방법의 수를 return 하도록 solution 함수를 완성.. 2023. 9. 29.
[프로그래머스 JS] 콜라 문제 📖 문제 설명 오래전 유행했던 콜라 문제가 있습니다. 콜라 문제의 지문은 다음과 같습니다. 정답은 아무에게도 말하지 마세요. 콜라 빈 병 2개를 가져다주면 콜라 1병을 주는 마트가 있다. 빈 병 20개를 가져다주면 몇 병을 받을 수 있는가? 단, 보유 중인 빈 병이 2개 미만이면, 콜라를 받을 수 없다. 문제를 풀던 상빈이는 콜라 문제의 완벽한 해답을 찾았습니다. 상빈이가 푼 방법은 아래 그림과 같습니다. 우선 콜라 빈 병 20병을 가져가서 10병을 받습니다. 받은 10병을 모두 마신 뒤, 가져가서 5병을 받습니다. 5병 중 4병을 모두 마신 뒤 가져가서 2병을 받고, 또 2병을 모두 마신 뒤 가져가서 1병을 받습니다. 받은 1병과 5병을 받았을 때 남은 1병을 모두 마신 뒤 가져가면 1병을 또 받을 수.. 2023. 9. 25.
[React Native] CodePush 설정 및 유의사항 CodePush란?CodePush는 React Native를 통해 개발한 모바일 앱을 추가적인 심사 과정 없이 기존 버전에서 사용자의 디바이스에 직접 업데이트할 수 있도록 하는 잠수함 패치 App Center 클라우드 서비스이다. 무려 마이크로 소프트에서 지원하는 서비스로, 단순 CodePush 서비스만 사용한다면 무료다.  모바일 앱 개발이 익숙지 않은 사람이라면 CodePush의 편의성이 크게 와닿지 않을 수 있으니 예를 들어보겠다.  잠시 식당을 운영하는 자영업자가 되어보자. 자영업자는 메뉴를 선정해 재료를 조달받고 음식을 만들어 손님들에게 판매한다. 하지만 계절, 경제적 상황, 새로운 시도 등 다양한 요인에 의해 메뉴를 바꿀 때도 있다. 최근 신메뉴를 개발해 손님들에게 호평받고 있는데, 오늘 조달.. 2023. 9. 24.