분류 전체보기

해당 글은 [모던 자바스크립트 Deep Dive] 도서의 내용을 정리한 글입니다. 💡 객체타입 자바스크립트의 데이터 타입은 크게 원시 타입과 객체 타입으로 분류한다고 했다. 자바스크립트는 객체 기반의 언어이며, 자바스크립트를 이루고 있는 거의 모든 것이 객체라는 것이다. 앞에 올렸던 데이터 타입 -1 게시글에 올라온 데이터 타입 이외의 값은 모두 객체 타입이다. 💡 데이터 타입의 필요성 1. 데이터 타입에 의한 메모리 공간의 확보와 참조 메모리에 값을 저장하려면 먼저 확보해야 할 메모리 공간이 크기를 결정해야 한다. 값을 저장하기 위해 메모리 공간을 확보한 다음, 확보된 메모리에 값을 저장한다. 이러한 처리를 하려면 값을 저장할 때 확보해야 할 메모리 공간의 크기를 알아야 한다. 자바스크립트 엔진은 변수..
해당 글은 [모던 자바스크립트 Deep Dive] 도서의 내용을 정리한 글입니다. 💡 데이터 타입 데이터 타입(data type, 줄여서 '타입'이라고도 한다)은 값의 종류를 말한다. 자바스크립트(ES6)는 7개의 데이터 타입을 제공한다. 7개의 데이터 타입은 원시 타입과 객체 타입으로 분류할 수 있다. 💡 숫자타입 자바스크립트는 독특하게 하나의 숫자 타입만 존재한다.(number) C나 자바의 경우 정수와 실수를 구분해서 int, long, float, double 등과 같은 다양한 숫자 타입을 제공한다. 자바스크립트는 모든 수를 실수로 처리한다. 정수, 실수, 2진수, 8진수, 16진수 리터럴은 모두 메모리에 배정밀도 64비트 부동소수점 형식의 2진수로 저장된다. 이들 값을 참조하면 모두 10진수로 ..
해당 글은 [모던 자바스크립트 Deep Dive] 도서의 내용을 정리한 글입니다 💡 값 값(value)은 식(표현식 expression)이 평가(evaluate)되어 생성된 결과를 말한다. // 10 + 20은 평가되어 숫자 값 30을 생성한다. 10 + 20; // 30 변수는 하나의 값을 저장하기 위해 확보한 메모리 공간 자체에 붙인 이름이라고 했다. 변수에 할당되는 것은 값이다. 메모리 공간에 저장된 것은 10 + 20이 아니라 값 30이다. 따라서 10 + 20은 할당 이전에 평가되어 값을 생성해야 한다. 값은 다양한 방법으로 생성할 수 있다. 가장 기본적인 방법은 리터럴을 사용하는 것이다 💡 리터럴 리터럴(literal)은 사람이 이해할 수 있는 문자 또는 약속된 기호를 사용해 값을 생성하는 표..
https://school.programmers.co.kr/learn/courses/30/lessons/12914?language=python3 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 문제 설명 프로그래머스 Lv2. 2xn 타일링 문제하고 매우 비슷한 문제입니다. DP 기초 문제입니다. n =5까지 값을 구하면 점화식을 쉽게 세울 수 있습니다. f(n) = f(n-1) + f(n-2) def solution(n): dp = [0]*2001 dp[1]=1 dp[2]=2 for i in range(3,n+1): dp[i] = dp[i-1]%123..
해당 글은 [모던 자바스크립트 Deep Dive] 도서의 내용을 정리한 글입니다. 💡 변수가 왜 필요한가 변수(variable)는 하나의 값을 저장하기 위해 확보한 메모리 공간 자체 또는 그 메모리 공간을 식별하기 위해 붙인 이름을 말한다. 메모리 공간에 연산된 값을 다시 읽어 들여 재사용하기 위해 변수를 사용한다. 💡 식별자 변수 이름을 식별자라고도 한다. 식별자는 어떤 값을 구별해서 식별할 수 있는 고유한 이름을 말한다. 식별자는 값이 아니라 메모리 주소를 기억하고 있다. 변수 이름에만 국한해서 사용하지 않는다. 변수, 함수, 클래스 등의 이름이 다 식별자에 해당 💡 변수 선언 변수 선언이란 변수를 생성하는것을 말한다. 변수를 사용하려면 반드시 선언이 필요하다. 변수를 선언할 때는 var, let, ..
https://school.programmers.co.kr/learn/courses/30/lessons/12905 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 문제풀이 DP로 풀어야 겠다는 생각을 하기까지 좀 걸린 문제였습니다.. 아마 DP로 풀지 않으면 효율성 테스트에서 통과되지 않을거에요! 현재 위치 값이 1일 경우, 왼쪽 대각선 위, 위, 왼쪽 중 최솟값을 찾아 1더해서 저장합니다. 다음 과정을 계속 반복하면 이런 배열 모습이 나옵니다. 배열에 저장된 값중 최댓값을 찾아 출력하면 됩니다. 풀이 코드 def solution(board): ..
[프로그래머스] Lv.2 리코쳇 로봇 - 파이썬(Python) 풀이 https://school.programmers.co.kr/learn/courses/30/lessons/169199 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 리코쳇 로봇이라는 보드게임이 있습니다. 이 보드게임은 격자모양 게임판 위에서 말을 움직이는 게임으로, 시작 위치에서 목표 위치까지 최소 몇 번만에 도달할 수 있는지 말하는 게임입니다. 이 게임에서 말의 움직임은 상, 하, 좌, 우 4방향 중 하나를 선택해서 게임판 위의 장애물이나 맨 끝에 부딪힐 때까지 미끄러져 이동하..
소스코드의 표준화와 자동 포매팅을 수행해, 소스 코드의 품질을 유지하는데 도움을 주는 도구들을 설치해 보도록 하겠습니다. 다음 플러그인들을 설치합니다. typescript-eslint @typescript-eslint/eslint-plugin @typescript-eslint/parser eslint-plugin-prettier eslint-plugin-react eslint-plugin-react-hooks eslint-plugin-import npm install --save-dev prettier eslint typescript-eslint @typescript-eslint/parser@6.1.0 @typescript-eslint/eslint-plugin eslint-config-prettier e..
Next.js 프로젝트를 생성하기 위해서 아래와 같은 명령어를 사용하여 만들었습니다.(pages 폴더 없이 생성하는 명령어) npx create-next-app@latest --ts 버전이 올라가면서 폴더 구조가 바뀐 건지 pages 폴더가 없습니다 이럴 경우, 먼저 빈 폴더를 만들어주시고 그 폴더로 이동해서 아래 명령어를 입력해 주세요.(pages 폴더 생성) npx create-next-app@12.1.0 --typescript ./ 조금만 기다리시면 프로젝트가 생성됩니다. 사진에서 보이는 것처럼 pages폴더가 생성되었습니다. 저는 src 폴더를 새로 만들어서 그 안에다가 pages와 styles를 넣어 정리했습니다. HTML 삽입 미리보기할 수 없는 소스
해당 글은 [혼자 공부하는 컴퓨터구조 + 운영체제] 도서의 내용을 정리한 글입니다. 💡 개념 요약 비트는 0과 1로 표현할 수 있는 가장 작은 정보 단위입니다. 바이트(byte), 킬로바이트(kB), 메가바이트(MB), 기가바이트(GB), 테라바이트(TB)는 비트보다 더 큰 정보 단위입니다. 이진법은 1을 넘어가는 시정에 자리 올림을 하여 0과 1만으로 수를 표현하는 방법입니다 이진법에서 음수는 2의 보수로 표현할 수 있습니다. 십육진법은 15를 넘어가는 시점에 자리 올림하여 수를 표현하는 방법입니다. 💡 문자 집합과 인코딩 문자 집합 : 컴퓨터가 인식하고 표현할 수 있는 문자의 모음입니다. 문자 인코딩 : 문자를 0과 1로 변환해야 비로소 컴퓨터가 이해할 수 있는데 이 변환 과정을 문자 인코딩이라고 합..
늘코딩
'분류 전체보기' 카테고리의 글 목록 (7 Page)