본문 바로가기

Javascript

(32)
Scraping & Crawling 1. Scrapping (1) 웹 스크래핑은 웹사이트에서 데이터를 추출하는 것으로 웹 스크래핑 소프트웨어를 통해 수행 (2) 웹 스크래핑 소프트웨어는 하이퍼텍스트 전송 프로토콜이나 웹 브라우저를 이용해 웹페이지에 직접 접근함 (3) 스크래핑은 사용자가 수동으로 수행할 수 있지만 일반적으로 봇이나 웹 크롤러를 사용하여 자동화된 형태로 실시 (4) 특정 데이터를 웹에서 수집하고 중앙 로컬 데이터베이스 또는 스프레드시트로 나중에 복사하는 복사 형식 2. Crawling (1) 조직적 , 자동화된 방법으로 인터넷을 탐색하는 컴퓨터 프로그램을 이용하여 스크래핑 작업을 하는 것 (2) 웹 크롤러는 크롤링을 하는 프로그램으로 방문한 사이트의 모든 페이지의 복사본을 생성하는 데 사용됨 (3) 검색 엔진은 생성된 페이지..
Docker 1. Docker 란? (1) 컨테이너 기술을 활용하는 앱의 개발, 제공 및 실행을 위해 설계된 소프트웨어 컨테이너 플랫폼 (2) 라이브러리, 시스템 도구, 코드, 런타임 등의 소프트웨어를 실행하는 데 필요한 것들을 모두 포함하고 있음 (3) 환경에 상관없이 애플리케이션을 신속하게 배포 및 확장 가능 2. 장점 (1) 다양한 소프트 웨어 제공 (2) 손쉬운 배포 및 표준화된 운영 가능 (3) 리소스 사용률을 높여 비용 절감 가능 3. Docker의 구성 (1) 컨테이너 코드와 모든 종속성을 패키지화하여 애플리케이션이 다양한 환경에서 빠르고 안정적으로 실행할 수 있게 해주는 표준 소프트웨어 장치 영구적이지 않고 이미지로 부터 생성 (2) Docker 엔진 컨테이너를 구축하고 실행하는 오픈 소스 호스트 소프..
Null, Undefined, NaN 1. Null (1) Javascript의 원시 타입 중 하나 (2) 일반적으로 존재하지 않거나 유효하지 않은 object (3) 주소를 의도적으로 가리키는 참조를 나타냄 (4) boolean 타입에서 false로 취급 2. undefined (1) 전역 객체의 속성, 전역 스코프의 변수 (2) 원시값 (3) 선언 후 할당하지 않은 변수 또는 값이 주어지지 않는 인수에 자동으로 할당 3. NaN(Not a Number) (1) 전역 객체의 속성,전역 스코프의 변수 (2) 초기값은 Not-A-Number로, Number.NaN의 값과 같음 (3) NaN을 반환하는 경우 숫자로서 읽을 수 없음 (parseInt("문자"), Number(undefined)) 결과가 허수인 수학 계산식 (Math.sqrt(-1..
Javacsript & Node.js 1. Javascript (1) 가벼운 인터프리터 컴파일 프로그래밍 언어 (2) 스크립트 언어로 잘 알려져 있지만 비 브라우저에서도 많이 사용 (3) 과거에는 브라우저를 구성하는데 사용 했었지만 현재는 더 나아가 백엔드를 구현하는데도 사용되고 있음 2. Node.js (1) Javascript는 기존에 브라우저 상에서만 실행이 가능 (2) 이런 불편한 점을 개선하기 위해 브라우저 상이 아닌 내 로컬 환경에서 Javascript를 실행하기 위해 Node.js가 개발됨 (3) Node.js는 언어가 아닌 javascript를 브라우저가 아닌 곳에서 실행하게 할 수 있는 프로그램 참고 https://developer.mozilla.org/ko/docs/Web/JavaScript
var, let, const 1. var (1) 변수를 선언 (2) 변수 선언전 선언과 초기화 동시 진행 (3) 변수를 블록을 고려하지 않고 전역, 지역 스코프 어디에서나 접근할 수 있는 변수를 선언 (4) 호이스팅(hoisting)이 적용 2. let (1) let 은 블록 스코프의 범위를 가지는 지역 변수를 선언 (2) 선언과 초기화 단계가 분리되어 진행 (3) 구조 분해 할당 적용 가능 (4) 자신을 선언한 블록과 모든 하위 블록을 스코프 (5) 파서가 구문을 평가해야만 변수를 값으로 초기화 (6) 같은 변수를 같은 함수나 블록 스코프 안에서 다시 선언하려고 시도하면 에러 발생 3. const (1) 블록 범위의 상수 선언 (2) const로 선언한 것은 재할당 X, 재선언 X (3) 초기화 필요 (4) 블록 범위 스코프 4...
Javascript ES6 1. ECMAScript 2015 ECMAScript 2015는 두 번째 자바스크립트의 개정 버전으로 ES6과 ECMAScipt6로도 알려져 있습니다. 2. 추가된 기능들 (1) let, const 키워드 (2) 화살표 함수 (3) Spread 연산자 (4) for of 문 (5) Maps , Sets, Classess, promises (6) Symbol type (새로운 원시 타입) (7) Default Parameters(자동 디폴트 값) (8) Rest Parameter(...) : 함수에 전달된 인수들의 목록을 ... 매개변수를 통해 배열로 전달 받음) (9) 문자열 메서드 includes(), startsWith(), endsWith() 추가 (10) 배열 메서드 from(), keys(), ..
MVC 1. MVC (1) Design Pattern 디자인 패턴은 프로그래밍을 할 때 보다 구조적이고 편히라게 하기 위하여 특정한 약속을 통해 쉽게 쓸 수 있는 형태로 만드는 프로그래밍 기법입니다. (2) Model, View, Controller (3) 소프트웨어에서 사용되는 소프트웨어 디자인 패턴 (4) UI(User Interface)로 부터 서비스 로직을 분리하여 시각적 요소나 서비스로직을 서로 영향없이 관리 할 수 있음 2. Model (1) 애플리케이션의 정보(데이터) 관리 (2) 필요한 데이터가 무엇인지 정의 (3) 데이터 상태 변경 시 View or Controller에게 알려줌 3. View (1) html(뷰) 단에서 보여주는 파일들을 관리해주는 폴더 (2) UI 4. Controller (..
비교 연산자(Comparison operater) 1. 비교 연산자 (1) 비교 연산자는 피연사낮 사이의 상대적 크기를 판단하여, 참(true)와 거짓(false)으로 결과를 반환 (2) 비교 연산자는 모두 두 개의 피연산자를 가지는 이항 연산자이고, 피연산자들은 왼쪽에서 오른쪽으로 결합 (3) 피연산자가 둘 다 숫자면, 숫자를 서로 비교 (4) 피연산자가 둘 다 문자라면, 문자열의 첫 번째 문자부터 알파벳 순서대로 비교 2. 비교 연산자의 종류 비교 연산자 설명 == 왼쪽과 오른쪽 값이 같다면 참 반환 === 왼쪽과 오른쪽 값과 타입이 같다면 참 반환 != 왼쪽과 오른쪽 값이 같지 않다면 참 반환 !== 왼쪽과 오른쪽 값이 다르거나, 타입이 다르면 참를 반환 > 왼쪽이 오른쪽보다 값이 크다면 참을 반환 >= 왼쪽이 오른쪽 값보다 크거나 같으면 참을 반환
SQL vs NoSQL 파일시스템 vs DBMS 1. 파일 시스템 (1) 데이터 중복 (2) 응용 프로그램이 개별 데이터를 직접 관리 (3) 응용 프로그램이 데이터를 쓰는 방식이 다름 (4) 데이터가 특정 응용 프로그램에 종속도미 2. DBMS (1) 하나의 소프트웨어가 데이터 관리 방식이므로 데이터 중복 제거 (2) 여러 프로그램이 하나의 DBMS를 통해 데이터 공유 (3) 각각의 응용 프로그램의 데이터가 하나의 소프트웨어로 관리되어 데이터 관리방식이 통합됨 (4) 응용프로그램과 별도로 DBMS에 의해 보관됨 3. RDBMS (1) 테이블 : 데이터를 2차원 표 형태로 저장하고 관리 (2) 행(row,record,tuple) : 저장하려는 하나의 개체를 구성하는 여러 값을 가로로 늘어뜨린 형태 (3) 열(attribute, ..
HTTP 1. HTTP HyperText Transfer Protocol의 약자로 두 컴퓨터 간 텍스트 데이터를 주고받는 길 2. HTTP 요청(Request)과 응답(Response) (1) HTTP 요청(Request) 웹브라우저에서 홈페이지(Front-end 컴퓨터)가 실행중이라면 작성한 게시물 텍스트 데이터를 HTTP를 통해 Back-end 컴퓨터로 보내고 , Back-end 컴퓨터에게 이 데이터를 데이터베이스에 저장 해달라고 요청 (2) HTTP 응답(Response) 요청을 받은 Back-end 컴퓨터가 성공, 실패 등 처리 결과를 응답 3. HTTP 상태 코드 (1) 1xx (정보): 요청을 받았으며 프로세스를 계속한다 (2) 2xx (성공): 요청을 성공적으로 받았으며 인식했고 수용하였다 (3) 3..