[ DB ] 아키텍처 설계, 어떻게 들어가야할까?
·
Archive/Develop
최근 한빛미디어에서 나온 데이터베이스 첫걸음이라는 책을 읽고 있다. 이 책을 읽으며 내가 기록하고 싶은 것들을 기록해나가겠다. 나는 현재 회사에서 서버 이전 작업중이다. 그러면서 기존 db를 전부 분리하고, table 설계를 다시 하는 등의 작업을 예상하고 있다. 그래서 이 책을 집어들었다. 아키텍처는 어떻게 우리에게 왔는가 - 아키텍처의 역사 사실 아키텍처라는 단어 자체가 굉장히 추상적이다. 이를 이해하기 위해 역사를 좀 되짚어보자. stand-alone 구조 초기에는 DB 서버가 네트워크에 접속하지 않고 독립되어 동작했다. 이러한 구성에서는 DBMS(데이터베이스 미들웨어)와 애플리케이션 소프트웨어는 같은 DB 서버에서 동작한다. 그렇기 때문에 내가 DB를 쓰고 싶으면, 물리적으로 그 DB에 가야지만 ..
"개발자의 글쓰기" 후기 - 저도 잘 쓰고 싶어요
·
Archive/Develop
점심시간, 출퇴근 시간에 책을 잡고 읽기 시작했다. 오늘은 약 일주일간 내 출퇴근 시간을 책임졌던 "개발자의 글쓰기"에 대한 내 생각, 중요한 것들을 정리해보려고 한다. http://www.yes24.com/Product/Goods/79378905?pid=123487&cosemkid=go15700131051712730&gclid=CjwKCAjwtp2bBhAGEiwAOZZTuBwSw0KSlvSlbWnW04wA_S8D6vRQ6Xu3FmKtCGert4btoog0XKMqFhoCbCcQAvD_BwE 개발자의 글쓰기 - YES24 오직 개발자를 위한 글쓰기의 모든 것을 담았다!이 책은 개발자의 글쓰기 능력을 종합적으로 향상하기 위한 책이다. 코드 안에서는 함수와 변수 이름을 짓는 것부터 주석 쓰는 법, 에러 메시지..
[ 모던 자바스크립트 스터디 ] Ajax
·
Archive/Develop
Ajax? Ajax(Asynchronous Javascript and XML) 란 자바스크립트를 사용하여 브라우저가 서버에게 비동기 방식으로 데이터를 요청하고, 서버가 응답한 데이터를 수신하여 웹페이지를 동적으로 갱신하는 프로그래밍 방식을 말한다. Ajax는 브라우저에서 제공하는 Web API 인 XMLHttpRequest 객체를 기반으로 동작한다. XMLHttpRequest는 HTTP 비동기 통신을 위한 메서드와 프로퍼티를 제공한다. 이전 웹페이지는 완전한 HTML 을 서버로 부터 받아 웹 페이지 전체를 처음부터 다시 렌더링하는 방식으로 동작했다. 화면 전환시 웹 페이지 전체를 처음부터 다시 렌더링 했어야했던 것이다. Ajax 는 이런 전통적인 패러다임을 전환했다. JSON JSON.stringify ..
[ 모던 자바스크립트 스터디 ] REST API
·
Archive/Develop
REST 는 HTTP를 기반으로 클라이언트가 서버의 리소스에 접근하는 방식을 규정한 아키텍처고, REST API는 REST를 기반으로 서비스 API를 구현한 것을 의미한다. REST API의 구성 REST API 는 자원(Resource), 행위(verb), 표현(Representations) 의 3가지 요소로 구성된다. REST는 자체 표현 구조로 구성되어 REST API 만으로 HTTP 요청의 내용을 이해할 수 있다. 구성요소 내용 표현 방법 자원 자원 URI 행위 자원에 대한 행위 HTTP 요청 메서드 표현 자원에 대한 행위의 구체적 내용 페이로드 REST API 설계 원칙 두가지만 알고 있으면 된다. URI 는 리소스를 표현하는데 집중하고, 행위에 대한 정의는 HTTP 요청 메서드를 통해 하는 것..
[ 모던 자바스크립트 스터디 ] 비동기 프로그래밍
·
Archive/Develop
동기 처리와 비동기 처리 함수를 호출하면 함수 코드가 평가되어 함수 실행 컨텍스트가 생성된다. 이때 생성된 함수 실행 컨텍스트는 실행 컨텍스트 스택에 푸시되고 함수 코드가 실행된다. 자바스크립트 엔진은 단 하나의 실행 컨택스트 스택을 갖는다. 이는 동시에 2개 이상의 함수를 실행시킬 수 없다는 것을 의미한다. 실행 컨텍스트 스택의 최상위 요소인 "실행중인 실행 컨텍스트"를 제외한 모든 실행 컨텍스트는 모두 실행 대기중인 태스크 들이다. 대기중인 태스크들은 현재 실행중인 함수가 종료되면 비로소 실행된다. 이처럼 자바스크립트 엔진은 한번에 하나의 태스크만 실행할 수 있는 싱글 스레드 방식으로 동작한다. 싱글스레드 방식은 한 번에 하나의 태슼느만 실행할 수 있기 때문에 처리에 시간이 걸리는 태스크를 실행하면 ..
[ 모던 자바스크립트 스터디 ] 타이머
·
Archive/Develop
호출 스케줄링 함수를 명시적으로 호출하면 함수가 즉시 실행된다. 만약 함수 호출을 예약하고 싶다면 타이머 함수를 이용하면 된다. 이를 호출 스케줄링이라 한다. 자바스크립트는 setTimeout 과 setInterval, clearTimeout, clearInterval 을 제공한다. 타이머 함수는 ECMAScript 사양에 정의된 것은 아니지만, 브라우저 환경과 Node.js 환경에서 모두 전역 객체의 메서드로서 타이머 함수를 제공한다. setTimeout 함수가 생성한 타이머는 단 한 번 동작하고, setInterval 함수가 생성한 타이머는 반복동작한다. 자바스크립트 엔진은 단 하나의 실행 컨텍스트 스택을 갖기 때문에 두 가지 이상의 태스크를 동시에 실행할 수 없다. 즉, 자바스크립트 엔진은 싱글 스..