본문 바로가기

프로그래밍99

[Python3] dictionary 사용 방법 hashmap 을 구현할 수 있는 python dictionary 사용 방법을 서술합니다. dictionary 는 key 와 value 한 쌍의 집합체입니다. 또한 집합 원소 간 순서가 보장되지 않습니다. (순서가 없음) 선언 hashMap = {} 아래와 같이 초기화 할 수 있습니다. hashMap = dict(apple = 10, banana = 6, grape = 7) key 와 value 추가 및 업데이트 keyName 이 없을 경우 추가, 존재하는 경우 value 를 업데이트합니다. hashMap['keyName'] = value key 와 value 삭제 list 삭제와 동일한 방식입니다. del hashMap['keyName'] key 존재 여부 확인 in, not in 구분을 통해 확인 여.. 2023. 2. 13.
[Python3] 다차원 리스트 생성 계속 까먹는 파이썬 다차원 리스트 생성, 알고리즘 문제 푸는 데 유용한 도구가 되니 더 이상 까먹지 않도록 블로그에 기록합니다. 생성 모든 원소 값 0을 갖는 2차원 리스트를 생성합니다. n = 2 table = [[0 for _ in range(n)] for _ in range(n)] # [[0,0], [0,0]] 주의점 아래 프로그램을 실행하여 동일한 결과를 얻을 수 있으나, 일반적인 다차원 리스트를 생성하는 것이 아닌 각 인덱스에 대한 참조 리스트를 생성합니다. n = 2 table =[([0]*n)] *n # [[0,0], [0,0]] table[1][1] 값을 1로 만들고자 할 때, table[0][1] 또한 1로 변경되는 것을 확인할 수 있습니다. print(table) # [[0,0], [0.. 2023. 2. 12.
[React-Native] Pressable 컴포넌트로 재사용 가능한 버튼 구성하기 Presssable 컴포넌트는 RN 앱 개발을 위해 반드시 알아야 하는 컴포넌트입니다. press 상호작용에 관한 기능을 제공하는 컴포넌트이기 때문에 적절히 커스텀해서 버튼 등의 기능을 대신할 수 있습니다. (RN 기본 컴포넌트 Button 컴포넌트는 너무 빈약합니다.) 구성 그러나 Pressable을 재사용 가능한 버튼으로 바로 사용하기에는 난감한 문제들이 있습니다. 버튼 뿐만 아니라 기타 press event에도 대응하기 위해(버튼 그 이상의 목적으로 광범위한 용도를 위해) 만들어졌기 때문입니다. import React from "react"; import { Pressable, Text } from "react-native"; const ButtonCustom = ({ onPress, text, t.. 2023. 2. 12.
[React-Native] react-native-webview 안드로이드 플랫폼에서 웹뷰를 출력하지 않는 문제 앱 내 웹뷰를 이식하려고 했습니다. 웹뷰를 사용하기 위해 react-native-webview 라이브러리를 사용하려 했으나.. 안드로이드 플랫폼에서 정상적으로 출력이 되지 않았습니다. 빈 공간만 출력되었습니다. IOS 플랫폼에선 정상적으로 원하는 웹뷰가 출력되었습니다. 안드로이드 플랫폼에서만 발생하는 문제였습니다. 깃허브 issue 항목에 비슷한 문제에 대한 해결 방법을 찾을 수 있었습니다. 상위 컴포넌트 없이 리턴 View 나 ScrollView 같은 상위 컴포넌트가 존재할 때 리턴하는 경우 발생하는 문제였습니다. 잘못된 예) return ( ); 올바른 예) return ; 참고 : react-native-webview/issues/1426#issuecomment-1207378759 White bla.. 2023. 2. 12.
[React-Native] react-native-google-singin 앱 심사에 통과하기 위한 앱 서명 인증서(SHA-1) 키 적용하기 debug 빌드에서 잘 기능하는 구글 소셜 로그인이 동작하지 않아 플레이 스토어 심사에서 승인받지 못했습니다. 찾아보니 앱 서명 인증서 SHA-1 키를 파이어베이스 콘솔에 추가해야 한다고 합니다. (디버그 환경에서는 상관이 없으니) 귀찮다고 추가 안했던 기억이 나네요... SHA-1 키 복사 구글 플레이 콘솔 -> 앱 선택 -> 설정 -> 앱 무결성 -> 앱 서명에서 앱 서명 인증서(SHA-1) 지문을 복사합니다. 파이어베이스 콘솔 적용 파이어베이스 콘솔 -> 프로젝트 선택 -> 프로젝트 설정 -> 디지털 지문 추가를 클릭합니다. 복사한 SHA-1 키를 붙여넣은 후 저장합니다. (선택) Release 빌드 SHA-1키 콘솔에 적용하기 구글 로그인이 Release 빌드에서도 정상적으로 기능하도록 Relea.. 2023. 2. 12.
[Appstore Connect] 앱 스크린샷 업로드 오류를 Curl API를 통해 우회적으로 해결하기 앱 미리보기에 업로드 하려는데 업로드가 되지 않았습니다. 가끔 웹 클라이언트가 먹통이 되는데요, 이 문제를 Appstore connect API를 활용해 해결해보겠습니다. API 키 생성 Appstore connect -> 사용자 및 엑세스 -> 키 에 들어가서 새로운 키를 생성합니다. API키를 생성했으면 목록 우측에 API 키 다운로드 링크를 통해 API 키를 다운로드합니다. 생성한 API키는 한번만 다운로드 가능합니다. Ruby script 작성 터미널을 열어 다음과 같이 루비스크립트를 작성합니다. ISSUER_ID, iss, KEY_ID, kid 를 올바는 값으로 바꿔주세요. AuthKey_XXXXXX.p8 는 다운로드한 API 키 파일 명으로 바꾸어 주세요. 만료일(exp)을 늘려 주는 게 좋습.. 2023. 2. 12.