본문 바로가기

Programming310

[Javascript] Object 객체 객체들의 객체인 Object 객체에 대해서 알아보겠습니다. 1. Object 객체 Object 객체는 객체에 대한 공통적인 속성과 기능을 제공하는 객체입니다. 다시말해 Object 객체는 객체의 객체라고 할 수 있습니다. 내장형 객체와 사용자 정의 객체도 Object 객체에 포함되어 Object 객체의 기능들을 이용할 수 있습니다. Object 객체는 많은 멤버들을 가지고 있는데, 그 중에서 가장 많이 사용되는 멤버들을 몇 가지 소개하고 넘어가겠습니다. 멤버 설명 constructor 생성자 함수 지정 assign(target, obj, ...) 객체 target에 obj 객체들을 복사 create(prototype) prototype 객체를 기반으로 새 객체 생성 is(value1, value2) va.. 2022. 1. 30.
[Javascript] Closure 1. 스코프 체인 Closure에 대해서 알아보기 전에, 스코프 체인에 대한 개념을 간단하게 짚고 넘어가겠습니다. 자바스크립트는 스크립트가 실행 될 때, 내부적으로 Global 객체를 생성합니다. 이 객체는 인스턴스화하거나 메소드 호출이 불가능한 객체로, 스크립트에서 글로벌 변수/함수를 관리하기 위해 내부적으로 자동 생성되는 객체입니다. 마찬가지로 로컬 변수 또한 글로벌 객체와 유사한 객체로 관리됩니다. 이를 Call 객체(Activation 객체)라고 부르는데, Call 객체는 Global 객체처럼 인스턴스화나 메소드 호출이 불가능하며, 함수가 호출 될 때마다 로컬 변수들을 관리하기 위한 자동 생성 객체입니다. 이렇게 여태까지 몰랐어도 문제가 없었고, 직접 사용할 수도 없는 자동 생성 객체를 왜 굳이 .. 2022. 1. 29.
[MongoDB] 데이터베이스, 컬렉션 몽고디비에서 데이터베이스와 컬렉션을 만들고 이용하는 방법을 알아보겠습니다. 1. 데이터베이스 생성하기 시작하기 앞서 지금 어떤 데이터베이스가 있는지 알아보겠습니다. 현재 작업중인 데이터베이스를 확인하는 명령어는 db명령입니다. db 현재는 test라는 데이터베이스에서 작업중입니다. 실습을 위한 데이터베이스를 하나 만들어보겠습니다. 몽고디비에서 데이터베이스를 생성하는 명령어는 use입니다. use 데이터베이스명 use가 작업할 데이터베이스를 선택하는 일도 하지만, 지정한 데이터베이스명에 일치하는 데이터베이스가 없을 경우, 데이터베이스를 생성하기도 합니다. practice라는 이름의 db를 생성하고 선택까지 되었습니다. 현재 존재하는 데이터베이스를 확인하는 명령은 show dbs입니다. db가 생성되어 있더.. 2022. 1. 28.
[MongoDB] BSON BSON(Binary JSON)은 JSON의 이진 표현 방식입니다. JSON의 장점을 살려리면서도 JSON 보다 더 많은 데이터 유형을 가질 수 있다는 장점이있습니다. 또, 문자열 기반인 JSON은 해석하는데 이진 표현 방식보다 느릴 수 밖에 없기에 JSON 보다 더 빠른 속도를 가질 수 있습니다. 몽고디비에서는 데이터 레코드 저장하기 위한 방식으로 BSON을 이용합니다. 물론 관리자가 작성하고 볼 때는 JSON의 형태를 가지지만, 실제로 전송될 때는 이진 표현으로 만들어서 저장/송수신하게 됩니다. BSON은 JSON과 유사하게 키/값 쌍으로 이루어진 필드를 갖습니다. { 키: 값, 키: 값, ... } 위에서도 언급했지만 BSON은 JSON에 비해 더 많은 값을 가질 수 있다고 했습니다. JSON은 S.. 2022. 1. 27.
[MongoDB] 몽고DB 지난 포스팅까지는 SQL의 대표주자인 오픈소스 MySQL과 MySQL의 SQL 문법을 알아보았습니다. 이번에 소개드릴 데이터베이스는 몽고DB입니다. 왜 SQL을 배웠는데, 다른 것을 다시 배우는 지부터, 몽고 디비가 무엇인지까지도, 이번 포스트에서 소개해드리겠습니다. 1. NoSQL NoSQL은 이름에서 느낄 수 있듯이 SQL을 사용하지 않는 데이터베이스입니다. 사용하지 않는다고 했지만 이는 정확하지 않은 이야기이고, SQL을 사용할 수는 있으므로 No를 Not only라고도 부르기도 합니다. 그렇다면 SQL문을 사용하지 않았을 때의 장점은 무엇이길래 NoSQL이 등장하게 되었을까요? NoSQL 데이터베이스는 기존의 관계형 데이터베이스에 비해 융통성있고, 데이터를 다루는데 개선된 매커니즘을 다루고 있습니.. 2022. 1. 27.
[React/Redux] redux-thunk 리덕스의 또 다른 미들웨어인 redux-thunk에 대해 알아보겠습니다. redux-thunk는 가장 많이 다운로드된 리덕스 미들웨어입니다. 그 다음으로 많이 사용되는 redux-saga도 꽤 많은 다운로드 수를 보여주고 있지만 redux-thunk에 비하면 1/3가량 밖에 되지 않는 숫자입니다. 1. redux-thunk redux-thunk는 비동기 처리를 관리해주는 리덕스 미들웨어입니다. 비동기 처리에 대해 다시 짚고 넘어가자면 어떤 명령이 실행되는 동안, 다음 코드들은 그 명령이 완료될 때까지 기다리지 않고, 작업을 수행하는 것을 말합니다. thunk의 의미는 공식 깃허브에 올라와있는데, 특정 식을 함수로 래핑해 작업을 지연시키는 것을 의미합니다. 즉, 식은 정의해놓고 나중에 호출하고 계산함으로써.. 2022. 1. 26.
300x250