본문 바로가기

전체 글34

[React Native] Android, iOS 에뮬레이터(emulator), 실기기 build (USB debugging) M3 Pro Macbook에서 React Native Setting을 마치고 Build까지 성공한 지난 글에 이어, 구체적으로 Android와 iOS가, 또 가상기기(emulator)와 실기기에서의 build 방법이 어떻게 다른지 적어보려 한다. 1. Android 1) 가상기기 (Emulator) Android Studio의 기기 관리자 (Device Emulator)에서 원하는 가상기기 전원을 켠다. 가상 기기를 생성하는 방법은 이전 글에 나와 있다. [React Native] M3 Macbook Pro에 리액트 네이티브(React-Native-Cli) 초기 세팅하기 (개발 환경 구축부터 Android, iOS 기기 Build까지) [React Native] M3 Macbook Pro에 리액트 네이티.. 2024. 4. 16.
[React Native] M3 Macbook Pro에 리액트 네이티브(React-Native-Cli) 초기 세팅하기 (개발 환경 구축부터 Android, iOS 기기 Build까지) 설레는 마음으로 개봉한 M3 맥북 프로.개발의 세계에서 가장 어려운 게 세팅이라 했건만 인텔 아이맥 한번 세팅해 본 경험만으로 자만감이 차올랐던지, 신중함 없이 신나게 세팅하다 실패하여 구매한 지 하루만에 결국 포맷을 하게 되었다.검색해 보니 아직 M3 Macbook Pro의 React Native Cli Setting 방법이 없길래 다른 사용자들이 필자처럼 삽질하지 않기를 바라는 마음에 포맷 후 세팅 기록을 정리했다.부디 이 긴 여정을 끝까지 함께하길 바라며 버전 정보부터 정리한다.Version InfoSystem: OS: macOS 14.3 CPU: (11) arm64 Apple M3 Pro Memory: 78.47 MB / 18.00 GB Shell: version: "5.9" p.. 2024. 4. 16.
[Git] git commit message 작성 및 적용하기 (commit convention) Git을 사용하며 협업할 때는 commit convention 등을 지정하면 코드 가독성이 증가하여 원활환 소통에 큰 도움이 된다. 특히 commit message를 지정해 두면 각 commit이 어떤 내용이고, 무엇을 위한 commit이며 무엇을 수정했는지 확인할 수 있어 유익하다. Git Commit Message 규칙 1. 제목(title)과 본문은 개행하여 분리한다. 2. 제목 행은 영문 기준 50자 이내로 작성한다. 3. 제목 행 첫 글자는 대문자로 작성한다. 4. 제목 행 끝에 마침표(.) 사용 금지 5. 제목 행은 명령문을 사용한다. 6. 본문은 72자 단위로 개행한다. 7. How보다는 what과 why를 설명한다. Commit Message 구조 Type: Subject Body Foot.. 2024. 4. 1.
[Programmers] 두 개 뽑아서 더하기* Description 정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요. 제한사항 numbers의 길이는 2 이상 100 이하입니다. numbers의 모든 수는 0 이상 100 이하입니다. 입출력 예 numbers result [2, 1, 3, 4, 1] [2, 3, 4, 5, 6, 7] [5, 0, 2, 7] [2, 5, 7, 9, 12] 권장 시간 복잡도 $O(N^2log(N^2))$ 풀이 def solution(numbers): setA = set() for i in range(len(numbers)): for j in range(i+1.. 2024. 4. 1.
[Redux] Redux를 사용하는 이유 리액트에서는 컴포넌트 단위로 프로젝트를 구성하기 때문에 컴포넌트 사이에 데이터를 주고받는 방식이 명확해야 한다. 보통 하나의 루트 컴포넌트 (일반적으로 App.js)에서 상태를 정의하고, 이를 상속함으로써 하위 컴포넌트에서도 관리할 수 있게 한다. 하위 컴포넌트에서 상태를 직접 정의하지 않고 부모 컴포넌트에서 정의한 후 이를 통해서 소통하는 이유는, 하위 컴포넌트끼리 직접 소통하기가 까다롭고 코드가 복잡해지기 때문이다. (보통 ref를 사용하여 작업한다고 한다.) 이렇게 부모 컴포넌트에서 상태를 관리하면서 상속을 통해 소통하게 되면 관리하기 편하면서 직관적인 구조가 된다. 그러나 문제는 앱의 규모가 커져 상속의 단위나 컴포넌트의 개수가 늘어났을 때이다. 규모가 커질수록 데이터도, 데이터를 업데이트하거나 .. 2024. 3. 30.
[React/Error] useRoutes() may be used only in the context of a <Router> component : <BrowserRouter> 추가 useRoutes() may be used only in the context of a component. react-router-dom 라이브러리를 import하여 Route, Routes 등을 사용하려 할 때 발생하는 에러 해당 라이브러리를 사용하기 위해서는 index 파일에서 App 컴포넌트를 컴포넌트로 감싸주어야 한다. index.js / index.tsx (전) import React from 'react'; import ReactDOM from 'react-dom/client'; import './index.css'; import App from './App'; import reportWebVitals from './reportWebVitals'; const root = ReactDOM.cre.. 2024. 3. 29.