전체 글 (172) 썸네일형 리스트형 [RN] React Native Recording Player stopReocrder 메서드 동작 문제 1. 문제 발생 사이드 프로젝트로 진행하고 있는 인생 퍼즐에서 음성 녹음 기능 구현 중 react-native-record-player의 stopRecorder 메서드가 동작하지 않는 문제 발생했다. stopRecorder의 결과는 녹음이 이미 중지되었다고 떴으나 녹음 시간 및 파일의 크기는 계속 증가했다. 1. 발생 코드 const PuzzleWritingVoice = (): JSX.Element => { const audioRecorderPlayer = new AudioRecorderPlayer(); const onStartRecord = async function () { const path = 'sound.m4a'; const audioSet = { AudioEncoderAndroid: Audio.. 객체 지향 설계 - SOLID(2) 3. LSP(리스코프 치환 원칙) LSP는 프로그램 객체는 프로그램의 정확성을 깨뜨리지 않으면서 하위 타입의 인스턴스로 바꿀 수 있어야 한다는 원리이다. 위반할 경우 사용자가 의도되지 않는 기능을 불러다가 사용할 수 있다. 1) 위배되는 코드 - 하위 클래스의 인스턴스가 정확성을 깨뜨리는 경우 - 타조는 날수 없는 새이기 때문에 상위 인터페이스 Bird의 fly를 수행 하지 못함 (정확성 깨짐) static void Main { Bird bird = new Ostrich(); bird.fly(); } public interface Bird{ public void fly(); } public class Pigeon implement Bird{ public void fly(){ 구현 } } public cl.. 객체 지향 설계 - SOLID(1) SOLID란 로버트 마틴이 2000년대 초반에 명명한 객체 지향 프로그밍 및 설계의 다섯 가지 기본 원칙을 마이클 페더스가 앞글자만 따서 소개한 것이다. SRP, OCP, LSP, ISP, DIP를 포함하고 있다. 1. SRP(단일 책임 원칙) SRP는 한 클래스가 하나의 책임만을 가져야 한다는 원칙이다. Clean Code 책을 참고했을 때 하나의 책임이란 클래스를 수정해야 할 이유가 한 가지일 때라고 한다. 1) SRP 위배되는 코드 - 클래스를 수정해야 할 경우가 2가지 이상 - Component 관리에 대한 정보를 변경할 때 수정 - Version 정보에 대해 변경할 때 수정 public class SuperDashboard{ // Component 관리 public Component getLas.. Carla Simulator Nav(format - bin) 파일 생성 방법 1. 환경설정 Ubuntu 18.04 Unreal Engine 4.24 Carla Simulator 0.9.10 2. Navigation 파일 설명 1. Carla Simulator 상에서 보행자 이동을 위해 Navigation 파일을 생성 2. Navigation 파일은 Unreal Engine의 Map에서 추출한 파일(obj)을 사용해 생성 3. Navigation 파일 포맷은 bin 3. 문제 사항 Carla Simulator 공식 문서 가이드에 따른 Navaigation 파일 생성이 정상적으로 이루어지지 않았다. 코드 테스트 및 검색을 통한 확인한 문제점은 아래와 같다. 1. Navigation 파일을 생성할 때 사용하는 Unreal Engine의 obj 파일이 처리할 수 있는 크기를 초과하는 문.. 이전 1 ··· 19 20 21 22 다음