본문 바로가기

분류 전체보기173

[node.js] 모듈 그리고 npm [모듈이란]- 부품과 같은 것- 어떤 기능을 쉽게 만들기위해 필요한 것- 정해진 모듈 사용방법에 따라 사용을 하면 어떤 기능을 쉽게 만들 수 있음- 기능이라는 것이 웹서버 내 기능 뿐만 아니라 컴퓨터 내에 어떤 처리를 쉽게할 수 있도록 도와주기도 함- 예시 : 공식홈페이지에서 가져온 웹서버 구축 코드123456789101112const http = require('http');const hostname = '127.0.0.1';const port = 3000;const server = http.createServer((req, res) => { res.statusCode = 200; res.setHeader('Content-Type', 'text/plain'); res.end('Hello World\n'.. 2017. 4. 12.
[node.js] nodejs에 대하여 [목표]- nodejs가 무엇인지 알아보고 이해하기- 기존 자바스크립트와 nodejs는 어떤 관계인지 알아보기- nodejs 특징을 살펴보고 프로그래밍 시 활용하도록 해보기 [nodejs란]- 서버사이드에서 사용할 수 있도록 자바스크립트로 짜여진 서버사이드 런타임 환경 자바스크립트- 서버로 사용할 컴퓨터에서 서버를 구축할 때 언어로 자바스크립트를 사용할 수 있게 됐다는 말- 자바스크립트가 웹브라우저를 벗어나 서버에서도 사용 가능하게 됨- 탈브라우저 자바스크립트인 nodejs가 어떤 기능을 가지고 있는지에 대해 앞으로 살펴보게될 것 [nodejs 선택한 이유 - 특징](1) 개발 생산성이 좋음- 앞선 포스팅에서 봤듯이 서버 구축할 때 굉장히 빠르게 할 수 있음(이건 해보니깐 굉장히 빠르고 좋음 그래서 더 .. 2017. 4. 11.
[node.js] 예제로 간단하게 웹서버 구축 [목표]- node.js로 웹서버 간단하게 구축해보기- 브라우저 - 웹서버 HTTP 통신 기본개념 익히기- node.js로 간편하게 웹서버 구축하는 방법 알기(다음 포스팅) [서버구축](1) node.js 공식 웹사이트 about 탭 가기 : https://nodejs.org/ko/about/(2) 예시 코드 긁어오기12345678910const http = require('http');const hostname = '127.0.0.1'; //클라우드 서버컴퓨터(원격 접속 후 웹서버 구축)라면 아래 (5)번 항목 참고const port = 3000;const server = http.createServer((req, res) => { res.statusCode = 200; res.setHeader('Co.. 2017. 4. 11.
[자바스크립트] 클로저(closure) [목표]- 이전에 배운 자바스크립트 관련 개념을 통해 클로저 이해하기- 클로저 특징을 활용 예시 알아보기(클로저를 사용하는 이유)- 클로저를 배움으로서 자바스크립트 개발에 있어서 도움이 되는지 스스로 생각해보기 [클로저란]- 실행컨텍스트에 대한 지식이 있어야 이해할 수 있음- 자바스크립트에서 함수는 일급객체(매개변수, 리턴값, 변수 대입 등 값처럼 사용가능)라는 것을 기억해야 이해할 수 있음- 일급객체라는 말을 이해하려면 실행컨텍스트 포스팅 볼 것(자바스크립트 엔진이 함수 스코프 정의 시 객체 만들고 프로퍼티 - 값 정의하는 부분)- 자바스크립트 뿐만 아니라 함수를 일급 객체로 취급하는 함수형 언어에서 사용되는 중요한 특성- 외부함수와 내부함수와 관련된 것12345678function outer(){ /.. 2017. 4. 11.
[node.js] 환경구축, 테스트해보기 [목표]- node.js 환경구축 후 확인해보기- 웹브라우저 없이도 자바스크립트 코드를 돌릴 수 있음을 확인하기- 서버사이드에서는 자바스크립트(node.js)를 어떻게 활용하는지 api 문서를 통해 확인하기 [node.js 설치하기](1) 공식홈페이지 이동 : https://nodejs.org/ko/(2) 다운로드(Downloads) 탭 이동 > 각 OS에 맞게 설치(3) 리눅스 내 설치(aws 프리티어) - 패키지매니저로 node.js 설치하기 클릭 - 버젼별 설치 명령어 : v7.x를 사용하는 것이 좋다함 [node.js 전용 디렉토리 만들기](1) mkdir 전용디렉토리명 : node.js 서버 관련 파일(.js)을 저장할 디렉토리를 만듬- root 계정으로 설정 후 디렉토리 만들기- 혹은 sudo.. 2017. 4. 10.
[자바스크립트] 실행컨텍스트: js 동작원리 [목표]- 실행컨텍스트, VO를 이해하기- 자바스크립트 동작원리를 이해해야 패턴을 왜쓰는지 알 것 같으니깐 이해하기 [실행컨텍스트란]- 실행컨텍스트는 추상적인 개념- 어떻게 자바스크립트 코드가 실행되는지 이해하기위해 알아야하는 개념- 실행컨텍스트는 실행되는 코드의 한 덩어리라 생각하면 됨- 예시(1) 함수가 호출되면 함수의 실행컨텍스트가 생성됨(2) 실질적으로는 함수 내부 정보를 담는 객체가 생성되고, 그 객체에는 함수 정보가 담김(프로퍼티 생성 : 변수명, 함수명 등이 프로퍼티로 생성됨) => 변수에 대한 값 혹은 함수의 실행 부분이 초기화되는 것은 아님 - 호이스팅 부분과 관련되어있음) => 이후 코드가 실행됨 12345678910111213console.log("이것이 global context").. 2017. 4. 8.
[웹 기본개념] 세션 [목표]- 세션과 쿠키의 필요성 인지하기- 쿠키와 세션의 차이를 이해하기- 내가 사용하고 있는 서버언어의 쿠키, 세션 이용방법 찾아보기 [세션이란]- 쿠키보다 안전하고, 조금 더 많은 정보를 저장할 수 있음- 쿠키가 클라이언트 측(웹브라우저)에 이전 통신 정보를 저장하는 것(HTTP 통신은 이전 통신 상태, 정보를 알지못함) : 장바구니, 로그인 정보 등 - 쿠키 보안 이슈 (1) 사용자의 웹브라우저와 서버가 통신하는 과정에서 중요한 정보(로그인시 아이디 비밀번호)가 왔다갔다하는데 중간에 탈취가능성 (2) 클라이언트 컴퓨터 해킹 - 쿠키 정보 탈취 가능성 - 세션 (1) (쿠키 방식 + 서버 측 db에 정보 저장) 혼용(2) 쿠키 방식 - 브라우저 저장(사용자 식별자값만 저장), 실제 값(비밀번호)은 서.. 2017. 4. 5.
[자바스크립트] this 바인딩 [this란]- 자바에서의 this는 객체 자신을 가리킴, 매개변수명과 객체가 가진 멤버변수명이 같을 때 구분하기위한 용도로 사용됨1234567public class Person{ private String name; Person(String name){ this.name = name; //전자는 클래스의 name이고, 후자는 매개변수의 name }}Colored by Color Scriptercs - 자바스크립트의 this는 함수 호출 패턴에 따라 this가 어떤 객체의 this가 될지 정해짐(어디에 바인딩될지 정해짐) [함수호출과 this]1) 함수가 객체의 속성이고, 객체를 통해 함수를 호출할 때 : 객체 각각의 속성을 가리키게됨123456789101112131415var obj1 = { name:.. 2017. 3. 31.
[웹 기본개념] 쿠키 [쿠키]HTTP는 상태가 없음 : 끝난 HTTP 통신(이전)의 상태를 알 수 없음(예시 : 로그인 했는지 안했는지 정보)넷스케이프에서 쿠키(이전 통신정보 기억하기)를 만듬로그인 정보 기억, 쇼핑 장바구니 목록 등을 가져올 수 있음 웹서버에 보낸, 받은 정보를 웹브라우저가 가지고 있다가 서버에 요청시(Request) 이전 상태값(쿠키)을 전송함웹브라우저가 가진 쿠키 보기 : 개발자도구 > 페이지.html 도큐먼트 파일 > Request Headers > Cookie -서버로 전송할 값 서버가 받고 보내는 쿠기 : 개발자도구 > 페이지.html 도큐먼트 파일 > Response Headers > Set-Cookie - 웹브라우저로 전송할 값 쿠키 유효 범위 밖유저가 요청하는 주소값(사이트 주소)이 달라질 경.. 2017. 3. 28.
[웹 기본개념] URL / URI / REST API [URL]프로토콜 : http, https, ftp 등호스트네임 : 도메인 or ip (서버컴퓨터의 이름 - 위치)URL path : 서버컴퓨터(호스트)에서 클라이언트가 요청한 파일 디렉토리쿼리 : 추가적인 질문사항 [URI]Identifier : 식별자, 자원 식별자, id값(index)차이 : URL은 서버컴퓨터에서 클라이언트가 요청한 파일의 디렉토리를 나타낸다면, URI는 자원의 고유 식별자(id값)를 나타냄URI가 URL을 포함하는 개념예시 : http://clooo.loooooo.net/lectures/114 - lecture(db 테이블 네임)라는 db에 저장된 자원의 114번째 자원 [REST API]서버에 리퀘스트할 때 자원의 id와 자원에 대한 처리(HTTP METHOD)를 포함하여 리퀘.. 2017. 3. 24.