실행환경 MacOS Mojave 10.14.3 Node 10.15.3 Webpack 4.30.0 Babel 7.4.3 Babel js 컴파일러로써, 진화하고있는 자바스크립트와 브라우저간의 호환을 위해 사용하는 라이브러리이다. ES6, ES7 등의 최신문법들을 지원하지 않는 브라우저들에서도 정상동작 하도록 컴파일 해주는 역할을 한다. ES6 문법...
실행환경 MacOS Mojave 10.14.3 Node 10.15.3 Webpack 4.30.0 Webpack-cli 3.3.0 Webpack js 에서 로딩하는 모듈이 많아질수록 모듈간의 의존성이 증가하고 비효율적이게된다. 웹팩은 엔트리를 통해 필요한 모듈을 로딩하고 하나의 파일로 묶어주는 역할을 한다. Webpack 사용하기 ** 설치하기...
실행환경 MacOS Mojave 10.14.3 Node 10.15.3 Yarn 1.15.2 컴포넌트 라이프사이클 API 컴포넌트의 생성/업데이트 시점에 따라 동작할수있는 라이프사이클 API 를 활용할 수 있다. 기본적으로 사용되는 API들은 다음과 같다. componentWillMount() - 생성 직전 componeneDidMount() - 생성 직후...
실행환경 MacOS Mojave 10.14.3 Node 10.15.3 Yarn 1.15.2 리액트 구조 지난 포스팅에서 create-react-app을 통해 리액트 프로젝트를 만들었다. 프로젝트를 살펴보면 다음과 같다. App.js 위 내용을 보면, App 컴포넌트를 정의하여 JSX(HTML 같은 코드)를 return 하여 렌더링해주는것을 확인...
실행환경 MacOS Mojave 10.14.3 Node 10.15.3 Yarn 1.15.2 리액트(React.js)란? 페이스북에서 만들어진 오픈소스 자바스크립트 라이브러리로써, interactive UI 구현에 최적화되어있다. 특징 UI Component class SearchBar extends React.Component{ render(){ <input><button> } } class App extends React.Component{ render(){ <div>...
Spring Java 개발에 있어서, 개발자에게 어플리케이션 레벨에만 집중할 수 있도록 해주는 경량 어플리케이션 프레임워크이다. 이때 경량이라함에 있어서 의문을 가질수도 있겠으나, Java 환경에 있어서는 기존의 EJB등의 프레임워크에 비해 많이 단순화가 되었다. POJO(Plain Old Java Object) 기반의...
실행환경 Python 3.7.3 PyCharm Crawler 크롤링이란 웹페이지를 불러와 데이터를 추출해내는 행위를 말한다. 이를 자동으로 해주는 프로그램인 간단한 크롤러를 만드는 예제를 만들어 보고자 한다. 크롤러 만들기 http request 를 사용하기 위해 파이썬 requests 라이브러리를 이용한다. pip...
형태소 분석 형태소란 국어사전 정의로, 뜻을 가진 가장 작은 말의 단위 이다. 형태소 분석은 자연어처리에서 가장 근간이 되는 분석으로, 인간의 언어 현상을 컴퓨터와 같은 기계에서 이용해서 모사할수 있도록 하기 위한것이다. 예를 들어보자, 아버지가 방에 들어가신다.라는...
실행환경 Python 3.7.3 Django 2.1.7 PyCharm 개요 Python+Django로 처음 웹프로젝트를 시작하려는 사람들을 위해 index 페이지를 띄우기까지 포스팅을 하려한다. 기본적으로 Python 및 Django가 설치되어있다는 가정하에 진행하도록 하겠다. 프로젝트 생성 먼저, Django 프로젝트를 생성해주어야한다. 터미널에서 저장 폴더로...
Garbage Collection 가비지 컬렉션의 기본 개념은, 더이상 사용되지 않는 오브젝트들을 자동으로 메모리에서 제거하여 사용가능한 메모리 공간을 확보 하는것이다. 자바에서는 JVM 에서 가비지 콜렉터(Garbage Collector)가 자동으로 처리를 해주기 때문에, 개발자가 메모리를 처리하기위한 로직을 만들필요가 없다. JAVA...
ELB Elastic Load Blancing , 이름에서 알수있듯이 로드밸런싱의 주된 기능은 부하 분산이다. 트래픽을 설정알고리즘을 통해 여러대의 서버로 분산시켜 하나의 서버에 트래픽이 몰리는 일을 방지시켜준다. ELB 알고리즘 RR (Round Robin) Hash-ip Sticky session 등 ELB 구조...
JAVA 3대 구성요소 JAVA의 3대 구성요소로는 다음과 같다. JVM, JRE, JDK 이 세가지 구성요소에대해 알아보고자 한다. JVM 자바의 고유한 장점인 OS에 상관없이 실행되는 특징을 만들어주는 JVM이다. JVM은 JAVA Vertual Machine 의 줄임말으로, JAVA Byte code를...
REST Representational State Transfer의 약자로, WWW와 같은 분산하이퍼 미디어 시스템에서 사용되는 아키텍쳐이다. REST 의 원칙을 잘 지킨서비스를두고 RESTful이라 칭하기도 한다. REST의 3대 구성요소 Resource http://taes-k.com/users Method HTTP POST Message {user:taeseong} REST의 특성 유니폼 인터페이스 HTTP...
퀵정렬 기본개념 분할정복 알고리즘의 하나로 이름에서 알수있듯이 평균적으로 매우 빠른 수행 속도를 자랑한다. 리스트중 하나의 요소를 선택하여 선택요소보다 작은 값을 좌측, 큰값을 우측으로 나누어 정렬해나가며 더이상 분할이 불가능 할때까지 반복한다. 정렬 진행순서 [8,5,4,3,9,2,7,6,1] 1회 :...
Sort 기본적으로 작은순서에서 큰순서로 정렬함을 의미한다. 많은 정형화된 정렬 알고리즘들이 있고 이번 포스트에서는 정렬알고리즘들에대해서 정리해보려고한다. 기본적으로 널리알려진 정렬 알고리즘들에 대해 정리해보자면 다음과 같다. 삽입 정렬 선택 정렬 버블 정렬 셸 정렬 퀵 정렬 힙 정렬...