반응형

전체보기 359

[NodeJs] NodeJs 이벤트 사용하기 - Event Emitter

들어가며 NodeJs는 일반적인 'procedural programming'의 개념과는 다른 'event driven programming' 개념을 가지고 있습니다. 'event driven programming'은 특정 이벤트가 발생할때, 미리 선언된 함수가 호출 되는 형태를 말합니다. 일반적으로 순차적으로 실행하는 프로그램이과는 다르기 때문에 언제 어디가 호출 될지 모릅니다. 이러한 이벤트 방식은 안드로이드에서 버튼 클릭 이벤트와 같이 callback 함수를 바인딩 시켜놓은 형태와 라고 할 수 있습니다. 이번 포스팅에서는 이러한 event를 연결, 제거, 생성, 발생 등 어떻게 해야하는지에 대해서 설명하겠습니다. 연결 on('eventname', eventHandler)연결 개수 제한은 10개setM..

[NodeJs] NodeJs 입력받기 - readline 모듈사용

들어가며 모든 언어에서 기본적으로 배우는 내용이 입력/출력 입니다. 이번 포스팅은 키보드로 부터 입력을 받는 예제입니다. 처음에는 1번 입력받는 예제를 설명하고, 반복적으로 입력을 받는 예제에 대해서 설명해 볼까 합니다. 구현하기 1번 입력 받는 예제 입력을 받기 위해서는 readline의 모듈을 사용하시면 됩니다. 최초에는 createInterface를 통해 input과 output을 생성을 해주고, quest메소드에 callback 함수를 생성합니다. 최초 질문을 "Do you like banana?"라고 했을때 키보드로 부터 입력이 받아지면 answer에 담겨져 옵니다. 여기서 callback함수는 간단하게 이벤트가 왔을때 실행되는 함수라고 생각하시면 됩니다. 키보드로 부터 입력이 왔으니 해당 fu..

[NodeJs] 내장 모듈 사용하기 (os, url, querystring, util)

들어가며 NodeJS에서 기본으로 제공하는 API에 대해서 알아보도록 하겠습니다. 일단 말그대로 내장 모듈이기 때문에 추가적인 설치가 필요하지 않습니다. NodeJs의 장점중 하나인 제공되는 모듈이 많다는 점을 적극 활용하시면 더 빠르게 결과를 얻을 수 있을것 같습니다. [API 문서바로가기] 내장모듈 사용하기 내장모듈에서 자주 사용하는 모듈에 대해서 설명을 해드리겠습니다. os 모듈 : OS 관련 정볼르 보여주고, 전역객체인 Process 객체와 비슷하지만, 좀 더 많은 정보를 제공하는 모듈 var os = require("os"); console.log(os.hostname()); // 호스트 이름 console.log(os.type()); // os 이름 console.log(os.platform(..

블로그 방문자수 늘리기 - Sitemap 등록하기 (3/3)

전 포스팅에서 Sitemap 생성하는 방법에 대해서 알아보았습니다. 내 자신의 웹사이트의 지도를 만들었다면 어떻게 해야할까요? 다른 방문자들이 접근이 가능하도록 나의 웹사이트 지도를 각 포털에 배포를 해야겠죠? 전 포스팅에서 생성한 Sitemap을 아래와 같이 얻었습니다. 우리는 각 포털에 아래 sitemap 주소를 등록해주면 됩니다. [Sitemap 생성하기 바로가기] attachment/cfile28.uf@12398172398DDFDF.xmlWebmaster를 지원하는 사이트 목록네이버 (국내에서 가장 많이 사용하는 사이트라고 할 수 있지요.) [네이버 웹마스터 바로가기]구글 (포털에서는 사실 깡패니까 등록을 해야겠지요. [구글 웹마스터 바로가기]Bing (MS에서 만든 포털이니까... 인터넷익스플로..

블로그 방문자수 늘리기 - Sitemap 생성하기 (2/3)

들어가며 sitemap은 웹 크롤러가 우리의 사이트에 들어왔을때 어떤 페이지가 있는지 쉽게 찾아 주는 역할을 해줍니다. 크롤러는 우리 사이트를 들어와서 어떤 페이지가 있는지 찾는데 우리가 미리 정의를 해놓은다면 쉽게 페이지를 찾을 수 있고, 그렇게 되면 블로그의 노출에 도움을 주게 됩니다. 한마디로 sitemap은 해당 사이트의 큰 지도다. 각 포털의 크롤러들이 어디로 가야하는지 알려주기 때문에 페이지 노출을 늘리기 위해서는 필수이다. Sitemap 생성하기 웹 사이트 기반 Sitemap을 생성해주는 XML Sitemap Generator 사이트이다. [Sitemap 생성사이트 바로가기] 사이트를 들어가면 아래와 같은 화면이 나올것이다. 1번에는 자신의 홈페이지 주소를 써주고, 2번에는 보안코드를 작성,..

블로그 방문자수 늘리기 - 웹마스터를 이용해 블로그 포털에 등록하기 (1/3)

들어가며 본 포스팅에서는 구글에 자신의 블로그를 노출하는 방법에 대해서 설명하겠습니다. 구글에서는 우리의 사이트가 웹 검색을 활용하도록 도와주는 webmaster를 제공합니다. 이런 서비스를 이용해서 우리의 질좋고 많은 글들을 공유하면 좋을 것 같습니다. 등록하기 웹 마스터 홈페이지에 접속하면 아래와 같은 화면이 보입니다. [SEARCH CONSOLE]을 눌러서 홈페이지 관리하는 화면으로 들어갑니다. [웹마스터 홈페이지 바로가기] 로그인을 하고 나면 홈페이지를 등록할 수 있는 화면이 나옵니다. [속성추가]를 눌러서 자신의 홈페이지를 등록합니다. 속성추가를 누르면 나의 블로그 주소를 입력할 수 있는 창이 보입니다. 등록하고 나면 다음 화면에서는 인증(?)의 절차가 필요합니다. 아래 권장방법 / 대체 방법 ..

[Android] 안드로이드 HTTP요청 사용법 (GET/POST/PUT/DELETE)

들어가며 HTTP는 Server와 통신하는데 가장 modern한 방식 중 하나이다. 서버에 GET, POST, PUT, DELETE 요청을 통해 데이터를 주고 받는 방법에 대해서 설명한다. 오픈 소스인 OkHttp를 설치하고, HTTP요청 방법에 대해서 설명하겠습니다. 설치하기 설치하는 방법은 총 3가지이다. jar파일 다운 또는 Maven, Gradle 추가이다. v3.2.0 Jar [다운로드] Gradle compile 'com.squareup.okhttp3:okhttp:3.2.0' Maven com.squareup.okhttp3 okhttp 3.2.0 GET package okhttp3.guide; import java.io.IOException; import okhttp3.OkHttpClient;..

Programming/Android 2016.03.27

[Android] 안드로이드 SharedPreference 사용하기

들어가며 안드로이드에서 코딩을 하다보면 앱이 종료되도 값을 저장해 유지해야 할때가 많습니다. 만약 앞으로 설명해야 할 SharedPreference가 없다면, 파일입출력을 통해서 데이터를 저장을 해야하는 번거로움이 있습니다. 파일 입출력 없이 간단한 데이터를 Key, Value로 저장할 수 있다면 쓰기/읽기가 수월할 것입니다. 사용 예로는 안드로이드에서 Setting값을 항상 내가 설정한 값으로 유지해야하는 경우가 있는데, 이때 SharedPreference를 사용하면 문제를 쉽게 해결 할 수 있습니다. 하지만 앱을 제거 후 새로 설치되면 SharedPreference의 값은 초기화가 됩니다. 사용방법 SharedPreferences는 안드로이드에서 제공하고 있습니다. Context를 통해서 값을 가져올..

Programming/Android 2016.03.26

[Python] 파이썬 인코딩 문제 SyntaxError: Non-ASCII character

들어가며 파이썬으로 코딩을 할때 많은 에러가 발생하지만 가장 자주 마주하는 에러는 인코딩 문제일 것이다. 파이썬은 기본 인코딩이 ASCII코드이다. 우리가 파이썬 한글이 포함된 스크립트를 실행할때 발생하는 에러와 에러 해결 방법에 대해서 설명하겠다. 에러 내용 SyntaxError: Non-ASCII character '\xeb' in file app.py on line 166, but no encoding declared; see http://python.org/dev/peps/pep-0263/ f or details 해결 방법 .py의 파일 위에 나는 utf8, euc-kr의 인코딩을 기본으로 사용할 것이다. 라고 명시적으로 입력을 해주면 문제가 해결된다. #-*- coding: utf-8 -*- 또..

Programming/Python 2016.03.26
반응형