본문 바로가기

전체 글67

데이터베이스 스터디 4주차 이상 현상 테이블에 투플을 삽입할 때 부득이하게 NULL 값이 입력되거나, 삭제 시 연쇄삭제 현상이 발생하거나, 수정 시 데이터의 일관성이 훼손되는 현상을 말합니다. 잘못된 테이블 설계를 할 경우에 발생합니다. 삽입 이상(Insertion Anomaly) 투플 삽입 시 특정 속성에 해당하는 값이 없어 NULL값을 입력해야 하는 현상 갱신 이상(Update Anomaly) 투플 수정 시 중복된 데이터의 일부만 수정되어 데이터의 불일치 문제가 일어나는 현상 삭제 이상(Deletion Anomaly) 투플 삭제 시 같이 저장된 다른 정보까지 연쇄적으로 삭제되는 현상 함수 종속성 릴레이션 속성 간에 함수적으로 종속하는 성질 한 속성 A의 값을 알 때 다른 속성 B의 값이 유일하게 정해지는 의존관계를 속성 B는 .. 2024. 1. 29.
[백준] 도로의 개수 1577 JS 문제 해결 방식 우선 N,M의 범위가 100이하여서 n^2으로 풀었습니다. DP문제라고 판단하여 테이블로 값을 갱신하면서 풀었습니다 (0,0)에서 시작해서 (N,M)까지 가는 최단거리이기 때문에 우상단을 향해 가는 값들만 고려했습니다. DP[i][j] = DP[i][j-1] + DP[i-1][j]; 그중에서 공사 중인 길은 제외하고 값을 더해나갔습니다. 로직 상에는 문제가 없는 것 같았는데 제출을 하자마자 다 틀리더라구요 알고보니 경로를 set에 저장할 때 키값의 문제였습니다 처음에는 ${a}${b}${c}${d} 이런 식으로 키값을 줬었는데 구분자 없이 키값을 주니 a,b,c,d값이 다름에도 같은 값으로 인식되어서 틀린 것 같아요 const filePath = process.platform === 'l.. 2024. 1. 29.
React Native - 웹뷰 통신 구현(TypeScript) 우선 React Native에서 웹뷰를 사용하기 위해서 react-native-webivew 라이브러리를 사용했습니다. RN Webview 메시지 보낼 때 webviewRef.current.postMessage(JSON.stringify(message)); window.ReactNativeWebView?.postMessage(JSON.stringify(message)); 메시지 받을 때 WebView 컴포넌트의 onMessage 속성을 사용합니다 //안드 document.addEventListener('message', getMessageListener); //ios window.addEventListener('message', getMessageListener); RN에서 사용하는 예 ref를 사용해.. 2024. 1. 27.
데이터베이스 스터디 3주차 랜덤 I/O와 순차 I/O 랜덤 I/O 순차 I/O 의미 데이터에 임의로 접근하는 입출력 방식 디스크 헤드를 특정 위치로 직접 이동하여 데이터를 읽거나 쓰는 것 데이터를 연속적인 순서로 접근하는 입출력 방식 디스크 헤드를 한 방향으로 움직이는 것 언제 사용하는가 데이터베이스에서 특정 레코드 조회, 갱신 또는 삭제 전체 테이블을 스캔하거나 대량의 데이터를 일괄 처리해야 할 때 인덱스(Index) 데이터베이스에서 효율적인 검색을 위해 사용되는 자료구조 원하는 데이터를 빨리 찾기 위해 투플의 키 값에 대한 물리적 위치를 기록합니다. 주로 B-Tree 또는 B+Tree 구조를 사용하여 데이터를 저장하고 검색합니다. 인덱스의 동작 방식은 B-tree와 B+tree에 따라서 달라집니다. 우선 B-Tree에 대해 설.. 2024. 1. 25.
데이터베이스 스터디 2주차 SQL과 범용 프로그래밍 언어의 차이는? SQL은 데이터베이스 전용 언어이다. 데이터베이스의 데이터와 메타 데이터를 생성하고 처리하는 문법만 가지고 있다. SQL은 사용자가 처리를 원하는 데이터가 무엇인지만 제시하고 데이터를 어떻게 처리해야 하는지를 언급할 필요가 없어 비절차적 데이터 언어의 특징을 띤다고 할 수 있다. C언어 같은 프로그래밍 언어는 범용 프로그래밍 언어로, 시스템 프로그래밍, 응용 프로그램 개발, 게임 개발 등 다양한 분야에서 사용된다. 이처럼 SQL과 프로그래밍 언어는 목적에서 차이가 있다. SQL의 실행 과정 SQL이 실행되는 과정은 크게 파싱, 최적화, 실행 세 단계로 나눌 수 있다. 1. 파싱 SQL문장을 토큰 단위로 나눠서 문장의 구조를 분석하고, 문법적인 오류를 찾아낸다. 토.. 2024. 1. 18.
Next scss 전역변수 적용하기 전역 스타일 변수들을 한 번에 적용하는 방법을 알아보겠습니다. 우선 next.config.js 파일에서 sassOptions을 사용하여 Sass compiler를 설정할 수 있습니다. sassOptions은 sass-loader의 설정입니다 https://github.com/webpack-contrib/sass-loader?tab=readme-ov-file#additionaldata addtionalData는 실제 항목 파일 앞에 Sass 코드를 추가하기 때문에 각각의 스타일 파일에 전역 변수 파일들을 임포트 하지 않아도 scss파일 안에서 전역 변수 사용이 가능합니다. /** @type {import('next').NextConfig} */ const nextConfig = { ... sassOptio.. 2024. 1. 17.