'분류 전체보기' 카테고리의 글 목록 (12 Page)
my code archive
article thumbnail
노드 공부 기록(6) - Node.js fs 모듈, 파일 시스템 접근하기, 버퍼와 스트림, 폴더 생성, 삭제, 스레드풀

🔍fs 모듈이란? 파일 시스템에 접근하는 모듈 파일 생성, 삭제, 읽기, 쓰기, 폴더도 만들거나 지울 수 있다. 🔍동기 메서드와 비동기 메서드 //readme.txt 저를 여러 번 읽어보세요. 비동기방식으로 파일 하나를 여러 번 읽어보기 실행 결과 비동기메서드들은 백그라운드에 해당 파일을 읽으라고만 요청하고 다음 작업으로 넘어감 => 따라서 파일 읽기 요청만 세 번 보내고 console.log('끝')을 찍는다. 수백 개의 I/O 요청이 들어와도 메인 스레드는 백그라운드에 요청 처리를 위임, 얼마든지 추가 요청을 받을 수 있음. 동기방식으로 순서대로 읽어보기 실행 결과 readFile 대신 readFileSync 메서드 사용 동기방식의 경우 수백 개 이상의 요청이 들어올 때 성능에 문제가 생김(이전 작업..

article thumbnail
노드 공부 기록(5) - 자주 사용하는 Node.js 내장 모듈 정리

노드는 자바스크립트보다 더 많은 기능을 제공함. (운영 체제 정보 접근, 클라이언트 요청 url 정보 가져오기 등등...) -> 모듈 제공 노드의 모듈은 버전마다 차이가 있음. 자주 사용하는 모듈 위주로 알아보도록 한다. 🔍os 운영 체제의 정보를 가져옴. os.arch() : process.arch와 동일 os.platform() : process.platform과 동일 os.type() : 운영 체제 종류를 보여줌 os.uptime() : 운영체제 부팅 이후 흐른 시간(초)을 보여줌. os.hostname() : 컴퓨터 이름을 보여줌 os.release() : 운영체제 버전을 보여줌. os.homedir() : 홈 디렉터리 경로를 보여줌 os.tmpdir() : 임시 파일 저장 경로를 보여줌 os.c..

article thumbnail
노드 공부 기록(4) - Node.js 내장 객체 알아보기, global, console, 타이머, require, process

REPL 사용하기 자바스크립트는 스크립트 언어이므로 미리 컴파일을 하지 않아도 즉석에서 코드 실행이 가능함. REPL : 입력 코드를 읽고(Read), 해석하고(Eval), 결과물을 반환하고(Print), 종료할 때까지 반복(Loop) REPL을 종료하려면 ctrl+c 2회 누르거나 .exit 입력하면 됨. 모듈로 만들기 Node.js는 코드를 모듈로 만들 수 있다는 점에서 자바스크립트와 다르다. 🔍모듈 : 특정한 기능을 하는 함수나 변수들의 집합 모듈로 만들어놓으면 여러 프로그램에서 해당 모듈 재사용이 가능함. var.js const odd = '홀수입니다'; const even = '짝수입니다'; module.exports = { odd, even }; func.js var.js에 변수 두 개를 선언..

article thumbnail
노드 공부 기록(3) - 자바스크립트 문법, 구조분해 할당, 프로미스, async / await

2015년에 자바스크립트 문법에 매우 큰 변화가 있었음. => ES2015(ES6) 🔍const, let 보통 var로 변수를 선언하는 방법부터 배우지만 이제부터 var은 const, let이 대체함. if(true){ var x = 3; } console.log(x);//3 if(true){ const y = 3; } console.log(y);//error x는 정상적으로 출력, y는 에러가 발생하는 이유는 var은 함수 스코프를 가지므로 if문의 블록에 영향을 받지 않는다. 하지만 const와 let은 블록 스코프를 가지므로 블록 밖에서는 변수에 접근할 수 없다. (블록의 범위는 if, while, for 등에서 볼 수 있는 중괄호임.) const는 한 번 값을 할당하면 다른 값을 할당할 수 없고 ..

article thumbnail
노드 공부 기록(2) - Node.js 개발 환경 설정하기

Node.js 개발 환경 설정하기 내 컴퓨터에는 이미 Node가 설치되어 있었는데 공부할 겸 삭제하고 다시 설치해 보았다. 1. 홈페이지 접속 후 왼쪽 LTS로 설치해 준다. 2. 쭉쭉..동의하고...Next... 3. 설치가 끝나면 요런 창이 나오는데 아무키나 눌러준다. 4. 그럼 파워쉘 창으로 넘어간다. 아니 이거밖에 안 했는데 벌써 에러가 난다고.....? 내 컴퓨터에 chocolatey 뭐시기가 이미 설치되어 있어서..그런 듯하다.... 책에 설명을 보니까 🔍초콜리티 윈도우 명령 프롬포트를 통해 노드를 설치하고 싶을 때 초콜리티를 고려해볼 수 있음. 노드 외의 다른 프로그램도 명령 프롬포트를 통해 설치할 수 있어 편리함. choco install nodejs 명령어를 사용하면 됨. 라고 하는데....

article thumbnail
노드 공부 기록(1) - Node.js란 무엇인가, 서버와 런타임, 논 블로킹 I/O, 싱글 스레드

노드 핵심 개념 이해하기 -Node.js는 Chrome V8 Javascript 엔진으로 빌드된 Javascript 런타임이다. 🔍서버와 런타임 서버 노드는 다양한 자바스크립트 애플리케이션 중 서버 애플리케이션 실행 시 제일 많이 사용함. 서버는 네트워크를 통해 클라이언트에 정보나 서비스를 제공하는 컴퓨터 or 프로그램을 말함. 클라이언트 : 브라우저, 데스크톱 프로그램, 모바일 앱... 자바스크립트 런타임 런타임은 특정 언어로 만든 프로그램들을 실행할 수 있는 환경을 말한다. 노드는 자바스크립트 런타임 -> 노드는 자바스크립트 프로그램을 컴퓨터에서 실행 가능 -> 쉽게 말해 노드는 자바스크립트 실행기라고 볼 수 있음. (기존에는 자바스크립트 프로그램을 웹 브라우저 위에서만 실행 가능했다.) 🔍이벤트 기..

article thumbnail
[코딩테스트 연습, 백준, Java] 브론즈 :: 2914, 3003, 3046, 5554

💡2914번 저작권 https://www.acmicpc.net/problem/2914 2914번: 저작권 창영이는 노래 여러 개를 이어서 부르는 가수이다. 유명한 노래의 비슷한 멜로디를 이어서 부르면서 언제 곡이 넘어갔는지 모르게 만드는 것이 창영이 노래의 특징이다. 이런 노래로 상업적으 www.acmicpc.net 몇 곡인지 구하려면 곡의 개수와 평균을 곱하면 됨. 올림을 한다고 했으므로 평균값이 24일 경우 적어도 24.01이 되어야함. -> 곱한 값에 1을 더하면 된다. import java.util.Scanner; public class Main { public static void main(String[] args){ Scanner scan = new Scanner(System.in); int ..

article thumbnail
[코딩테스트 연습, 백준, Java] 브론즈 :: 1271, 1550, 2338, 2845

💡1271번 엄청난 부자 https://www.acmicpc.net/problem/1271 1271번: 엄청난 부자2 첫째 줄에는 최백준 조교가 가진 돈 n과 돈을 받으러 온 생명체의 수 m이 주어진다. (1 ≤ m ≤ n ≤ 101000, m과 n은 10진수 정수) www.acmicpc.net long보다 큰 범위를 위해 BigInteger 사용. BigInteger : java.math 안에 존재하며 BigInteger는 문자열 형태로 이루어져서 숫자의 범위가 부한대임. 계산은 BigInteger안의 메소드(divide...)를 사용하면 됨. import java.math.BigInteger; import java.util.Scanner; public class Main { public static ..

반응형
반응형