전체 글
-
React 앱에서 dotenv 실행 시 Uncaught Error: Cannot find module 'fs'error handling 2022. 8. 15. 15:36
React 에서 env 파일을 사용하고자 env를 설치하고, 다음과 같이 코드를 작성 import React, { useState, useEffect } from 'react'; import './App.css'; import dotenv from 'dotenv'; dotenv.config() function App() { console.log(process.env.REACT_APP_API_KEY) return ( 앱 ); } export default App; 다음과 같은 오류가 나타났다. nodejs 환경에서는 dotenv import 가 필요하지만, create-react-app으로 구축한 리액트에서는 이미 dotenv가 내장되어 있기 때문에 import를 할 필요가 없음. import dotenv..
-
create-react-app 없이 리액트 개발환경 구축하기카테고리 없음 2022. 8. 14. 23:04
웹 팩을 어느 정도 이해하고 본격적인 실습을 위해서 create-react-app 없이 리액트 개발 환경을 구축해 보았다. 디렉토리 및 package.json 생성 mkdir pure-react cd pure-react npm init -y React 패키지 설치 npm install react // react 코어 패키지 npm install react-dom // react를 DOM과 연결 시켜주는 패키지 Webpack 패키지 설치 // webpack 관련 npm install webpack // 웹 팩의 코어 패키지 npm install webpack-cli // 웹 팩을 터미널(CLI) 에서 사용할 수 있는 패키지 npm install webpack-dev-server // 웹 팩을 빠르게 실시간..
-
firebase 에 이미지 저장하기error handling/Simple tips 2022. 8. 2. 21:38
firebase 의 실시간 데이터베이스 에 이미지를 저장할 때, 이미지는 파일 용량이 크기 때문에 firebase storage에 저장하고나서 저장된 위치를(url) 데이터베이스에 저장해야 한다. 그런데 firebase storage 에 저장한 이미지 경로는 gs 모듈이라서 불러왔을 때 접근이 불가하다. 이걸 https 로 바꿔주는 방법은 다음과 같다. 1. "https://firebasestorage.googleapis.com/v0/b/" 2. bucket object 3. "/o/" 4. correctly encoded path object. 5. "?alt=media" 6. token="..." 참고: https://stackoverflow.com/questions/38779713/how-to-st..
-
운영체제 9강. 가상 메모리 1방송통신대학교 - 컴퓨터과학과/운영체제 2022. 5. 3. 00:36
가상 메모리의 개념 가상 메모리 메모리 크기보다 더 큰 기억공간이 필요한 프로세스를 실행할 수 있게 하는 방법 프로세스에 의해 참조되는 주소를 메모리에서 사용하는 주소와 분리 (가상주소와 실주소를 분리) 현재 필요한 일부만 메모리에 적재 사상 프로세스 실행을 위해 가상주소를 실주소로 변환 동적 주소 변환 (DAT): 프로세스가 실행되는 동안 사상 인위적 연속성: 가상 주소 공간에서는 연속이지만 실주소 공간에서도 연속일 필요는 없음 블록 단위 주소 변환 블록 단위 주소 변환 블록 단위로 분류하여 각 블록이 메모리의 어디에 위치하는지를 관리 블록의 크기 작으면 사상정보가 많아지고, 크면 블록 전송시간이 길어짐, 적재할 프로세스 수도 적어짐 블록 구성 방식에 따른 분류 페이징 기법: 블록의 크기가 동일한 페이..
-
모던 자바스크립트 딥 다이브 14장. 전역 변수의 문제점Modern JavaScript Deep Dive 2022. 5. 2. 22:11
지역 변수의 생명 주기는 함수의 생명 주기와 일치한다. 변수의 생명 주기는 메모리 공간이 확보된 시점부터 메모리 공간이 해제되어 가용 메모리 풀에 반환되는 시점까지다. 할당된 메모리 공간은 더 이상 그 누구도 참조하지 않을 때 가비지 콜렉터에 의해 해제되어 가용 메모리 풀에 반환된다. 호이스팅은 스코프 단위로 동작한다. 호이스팅은 변수 선언이 스코프의 선두로 끌어 올려진 것처럼 동작하는 자바스크립트 고유의 특징을 말한다. 전역 변수의 문제점 전역변수를 사용하게 되면 모든 코드가 전역 변수를 참조하고 변경할 수 있는 암묵적 결합을 허용하는 것 전역변수는 생명 주기가 길다. => 메모리 리소스도 오랜 기간 소비한다. 스코프 체인 상의 종점에 존재한다. => 검색 속도가 가장 느리다. 그래서 변수의 스코프는 ..
-
모던 자바스크립트 딥 다이브 13장. 스코프Modern JavaScript Deep Dive 2022. 5. 1. 22:09
스코프 스코프는 식별자가 유효한 범위를 말한다. 프로그래밍 언어에서는 스코프(유효 범위)를 통해 식별자인 변수 이름의 충돌을 방지하여 같은 이름의 변수를 사용할 수 있게 한다. 전역스코프 / 지역스코프 스코프 체인은 실행 컨텍스트의 렉시컬 환경을 단방향으로 연결한 것이다. 상위 스코프에서 유효한 변수는 하위 스코프에서 자유롭게 참조할 수 있지만 하위 스코프에서 유효한 변수를 상위 스코프에서 참조할 수는 없다. 렉시컬 스코프 자바스크립트는 렉시컬 스코프를 따르므로 함수를 어디서 호출했는지가 아니라 함수를 어디서 정의했는지에 따라 상위 스코프를 결정한다. 함수가 호출된 위치는 상위 스코프 결정에 어떠한 영향도 주지 않는다.
-
모던 자바스크립트 딥 다이브 12장. 함수Modern JavaScript Deep Dive 2022. 4. 30. 21:08
함수란? 함수는 일련의 과정을 문으로 구현하고 코드 블록으로 감싸서 하나의 실행 단위로 정의하는 것 함수는 코드의 재사용 측면에서 유용하다. -> 유지보수의 편의성을 높인다. -> 코드의 신뢰성을 높인다. 함수를 정의하는 방식 함수 선언문 함수 표현식 Function 생성자 함수 화살표 함수 자바스크립트 함수는 일급 객체다. 일급 객체라는 것은 함수를 값처럼 자유롭게 사용할 수 있다는 의미다. 함수 생성 시점과 함수 호이스팅 함수 선언문이 코드의 선두로 끌어 올려진 것처럼 동작하는 자바스크립트 고유의 특징을 함수 호이스팅이라고 한다. vs 함수 표현식으로 함수를 정의하면 함수 호이스팅이 발생하는 것이 아니라 변수 호이스팅이 발생한다. 화살표 함수 화살표 함수는 생성자 함수로 사용할 수 없으며, 기존 함수..
-
운영체제 8강. 메모리 관리방송통신대학교 - 컴퓨터과학과/운영체제 2022. 4. 28. 17:02
프로세스와 메모리 프로세스의 동작 프로그램 카운터를 참조하여 메모리로부터 수행될 명령을 읽어 CPU의 해당 명령을 수행 기억장치 계층 구조 적절한 비용으로 높은 성능을 낼 수 있도록 계층적으로 구성 CPU로 올라갈 수록 접근속도가 빠르고, 비트당 기억장치 비용이 높다. 보조기억장치로 내려갈 수록 용량이 커진다. CPU (레지스터) 캐시 기억장치 메모리 보조기억장치 메모리 관리 언제 새로운 프로세스를 메모리에 둘 것인가? 메모리 배치 실행될 프로세스를 메모리 내의 어느 곳에 둘 것인가? 메모리 교체 메모리가 꽉 찬 상태에서 새로운 프로세스를 적재해야 한다면 어떤 프로세스를 제거할 것인가? 그 외 메모리를 고정 분할할 것인가 동적 분할할 것인가? 프로세스의 적재 영역이 고정적인가 유동적인가? 단일 프로그래밍..