StoryCode

'분류 전체보기'에 해당되는 글 563건

  1. 내장 모듈
  2. Process 객체, exports 객체
  3. API
  4. 설치
  5. (작성중) transition, transform (rotate, translate)
  6. CSS Grid vs Flex
  7. CSS Grid Syntax Summary
  8. CSS Grid 기본 이해하기
  9. build 과정
  10. ChatScript 문법 간단 설명

내장 모듈

Node.js
반응형

[참조] http://cyberx.tistory.com/138?category=195624


1) 모듈 부르기

require()





2) os 모듈 부르기

var os = require('os')


   hostname() 운영체제의 호스트명을 반환합니다.
   type() 운영체제의 종류를 반환합니다.
   platfrom() 운영체제의 플랫폼을 반환합니다.
   arch() 운영체제의 아키텍처를 반환합니다.
   release() 운영체제의 버전을 반환합니다.
   uptime() 운영체제의 실행시간을 반환합니다.
   loadavg() 로드 에버리지 정보를 담은 배열을 반환합니다.
   totalmem() 시스템 총 메모리를 반환합니다.
   freemem 사용 가능한 메모리를 반환합니다.
   cpus CPU의 정보를 담은 객체를 반환합니다.
   getNetworkInterfaces() 네트워크 인터페이스의 정보를 담은 배열을 반환합니다.







3) url 모듈 부르기

// url 모듈 호출

var url = require('url');


// 구글에 nodejs라고 검색한 주소를 파싱

> var parsedURL = url.parse('https://www.google.co.kr/search?q=nodejs&oq=nodejs&aqs=chrome.0.69i59l3j69i60l3.968j0j8&sourceid=chrome&ie=UTF-8');

> parseURL






4) querystring 모듈 부르기

 // queryStrig 모듈 호출


var qs = require('querystring');

var objQuery = qs.parse(parsedURL.query);

var strQuery = qs.stringify(objQuery);


console.log(objQuery);

console.log(strQuery);






5) Util 모듈 부르기

utill.format() : 매개변수로 입력한 문자열을 조합해 반환합니다.

utill.debug() : 프로그램의 실행을 멈추고 입력값을 출력합니다.

utill.log() : timesteamp 시관과 함께 메시지를 출력한다.


외 다수


> var util= require('util');

> var data = util.format('%d%s %d%s',5, '월', 5, '일 어린이날')'

> console.log(data);




6) Crypto 모듈 부르기

// crypto모듈 호출

var crypto= require('crypto');


// 해시 생성

var shasum = crypto.createHash('sha1');

shasum.update('crypto_hash');

var output = shasum.digest('hex');

console.log(output)


var key = '비밀'; // 비밀키값

var input = 'password486'


//암호화

var cipher = crypto.createCipher('aes192', key);

cipher.update(input, 'utf8', 'base64');

var cipheredOutput = cipher.final('base64');


//암호화 해제

var decipher = crypto.createDecipher('aes192', key);

decipher.update(cipheredOutput,'base64', 'utf8');

var decipheredOutput = decipher.final('utf8');

     

console.log(input)                          // 출력값 : password486

console.log(cipheredOutput)            // 출력값 : 7OVfng/ujIZ8RkfxBIJAaA==

console.log(decipheredOutput )        // 출력값 : password486





7) File System 모듈 부르기

FileSystem을 줄여서 fs모듈이라 하는데요 파일 처리와 관련된 작업을 합니다. 

굉장히 많은 메소드가 있어 위에 링크따라 들어가셔러 언급되지 않은 메소드들도 함께 보면 좋을것 같습니다.



대부분의 메소드들이 동기/비동기로 나뉘어지는데,

동기방식을 사용하는 메소드에는 Sync라는 키워드가 붙어잇다고 보시면 좋을 것 같습니다.

비동기 방식은 callback함수를 마지막에 추가하시면 되는데

파일을 읽어오는 함수 readFile(비동기)/readFileSync(동기)로 설명하자면



동기방식은 (파일 경로, 인코딩)이라면

fs.readFileSync( 'test.txt' , 'utf8' );



비동기 방식은 마지막 인자에 callback 함수를 추가해주시면됩니다.

fs.readFile('test.txt', 'utf8'. function(error, data){ console.log(data); });


파일 처리를 하면서 중요한 부분 중 하나는 예외처리인데요 시스템이 비정상적으로 종료되지 않게 하기 위한 필수 사항입니다만

동기/비동기에 따라 예외처리하는 법이 다릅니다.

위에서 예상하실 수 있듯이, 비동기 방식에서는 callback함수에 예외처리가 가능합니다.

동기 방식에서는 try/catch 문으로 예외처리 하시면 됩니다.


그럼 예외처리까지해서 비동기 방식의 파일을 읽고 쓰기를 실행해보겠습니다.





비동기 방식 ---------------------

  // 모듈을 호출합니다.

  var fs = require('fs');


  // 파일 쓰기

  fs.writeFile( 'test.txt' , 'testing~' , 'utf8', function (error) {

   if(error){

       console.log(error);

   }else{

        console.log('파일 작성 완료');

   }

  });


  // 파일 읽기

  fs.readFile( 'test.txt' , 'utf8' , function (error, data){ 

   if(error){

       console.log(error);

   }else{

        console.log(data);

   }

  });

  

  


동기방식 -------------------------

크게 다를거 없이 callback함수를 지우시고 전체를 try문으로 감싼 후 catch문에 error가 발생했을 경우의 처리 방식을  작성하시면 됩니다.



try{

    fs.writeFileSync('test.txt', 'hello summer', 'utf8');

}catch(e){

    console.log(e);

}







이 외에도 

파일에 내용을 추가하는 appendFile/appendFileSync

파일이 존재하는지 확인하는 exists

파일의 이름을 재정의 하는 rename/renameSync 등등

다양한 메소드들을 제공

반응형

'Node.js' 카테고리의 다른 글

Atom 설치  (0) 2019.04.17
설치 (Windows)  (0) 2019.04.16
Process 객체, exports 객체  (0) 2018.10.31
API  (0) 2018.10.31
설치  (0) 2018.10.31

Process 객체, exports 객체

Node.js
반응형

Global 객체, 전역변수, 전역 객체


1) Process 객체

> process.version

'v6.14.3'


process.argv

[ '/usr/bin/node' ]


process.exit()

[root@localhost ~]#


> process.memoryUsage()

{ rss: 19496960,

  heapTotal: 8421376,

  heapUsed: 4241024,

  external: 9036 }


> process.uptime()
25.124


2) exports

# vi sub.js


exports.multiple = function (a,b)

{

        return a*b;

};



> var module=require('./sub.js');

undefined

> console.log(module.multiple(2,3));

6


[참조] http://cyberx.tistory.com/135

반응형

'Node.js' 카테고리의 다른 글

Atom 설치  (0) 2019.04.17
설치 (Windows)  (0) 2019.04.16
내장 모듈  (0) 2018.10.31
API  (0) 2018.10.31
설치  (0) 2018.10.31

API

Node.js
반응형

https://nodejs.org/dist/latest-v6.x/docs/api/


https://nodejs.org/docs/latest/api/index.html

반응형

'Node.js' 카테고리의 다른 글

Atom 설치  (0) 2019.04.17
설치 (Windows)  (0) 2019.04.16
내장 모듈  (0) 2018.10.31
Process 객체, exports 객체  (0) 2018.10.31
설치  (0) 2018.10.31

설치

Node.js
반응형

1. 환경

Centos 7


2. 설치

[참조] http://kwangsics.tistory.com/entry/CentOs7-nodeJs-%EC%84%A4%EC%B9%98

yum list epel-release

yum install epel-release

yum repolist

yum install npm nodejs

node -v
npm -v

3. node console 실행

# node

> console.log('hello')

hello

undefined



반응형

'Node.js' 카테고리의 다른 글

Atom 설치  (0) 2019.04.17
설치 (Windows)  (0) 2019.04.16
내장 모듈  (0) 2018.10.31
Process 객체, exports 객체  (0) 2018.10.31
API  (0) 2018.10.31

(작성중) transition, transform (rotate, translate)

Web Dev, HTML, CSS, SVG, BootStrap/CSS
반응형

.element

{

  transition: opaticy 300ms ease-in-out 1s;

}



반응형

'Web Dev, HTML, CSS, SVG, BootStrap > CSS' 카테고리의 다른 글

2020-093.CSS.Font Size.폰트 크기.rem.em.px.vh/vw.ex/ch  (0) 2020.04.05
CSS1,2,3  (0) 2020.03.04
CSS 변수  (0) 2019.10.08
CSS Animation : 2D Transform  (0) 2019.08.14
Div p 와 Div > p 의 차이점  (0) 2018.06.03

CSS Grid vs Flex

Web Dev, HTML, CSS, SVG, BootStrap/CSS Grid Layout
반응형


반응형

'Web Dev, HTML, CSS, SVG, BootStrap > CSS Grid Layout' 카테고리의 다른 글

CSS Grid Syntax Summary  (0) 2018.10.25
CSS Grid 기본 이해하기  (0) 2018.10.25
Grid Library  (0) 2018.05.17
CSS Grid layout  (0) 2018.05.16

CSS Grid Syntax Summary

Web Dev, HTML, CSS, SVG, BootStrap/CSS Grid Layout
반응형


반응형

'Web Dev, HTML, CSS, SVG, BootStrap > CSS Grid Layout' 카테고리의 다른 글

CSS Grid vs Flex  (0) 2018.10.25
CSS Grid 기본 이해하기  (0) 2018.10.25
Grid Library  (0) 2018.05.17
CSS Grid layout  (0) 2018.05.16

CSS Grid 기본 이해하기

Web Dev, HTML, CSS, SVG, BootStrap/CSS Grid Layout
반응형



반응형

'Web Dev, HTML, CSS, SVG, BootStrap > CSS Grid Layout' 카테고리의 다른 글

CSS Grid vs Flex  (0) 2018.10.25
CSS Grid Syntax Summary  (0) 2018.10.25
Grid Library  (0) 2018.05.17
CSS Grid layout  (0) 2018.05.16

build 과정

ChatBot 띄우기
반응형

가.   문서편집기로 MYBOT.top 화일 수정후, UTF-8 형식으로 저장.


나.   Chatscript의 명령어 모드

      :build Dorothy reset

      브라우저의 메시지 창에 :restart를 전송후 :reset 전송



반응형

ChatScript 문법 간단 설명

ChatBot 띄우기
반응형

[ 참조 ] http://exagen.tistory.com

명령) source.명령목록을 만들어 한줄씩 실행하기

:source command.txt


명령) testpattern.룰 단위 테스트

작성한 룰 : ?: ( 음악 좋아* ) reuse(FaveKPOP)

입력문 : 음악 좋아해요?

결과 : Matched

:testpattern ( 음악 좋아* ) 음악 좋아해요


명령) verify.토픽내룰 vs 토픽내워드 연결 점검

:verify ~kpop

1 Missing keyword ~kpop.2.0 <= 음악좋아해요 ?

설명) keyword 가 없는 룰이 1개 있는데, 그게 ~kpop토픽의 2번째룰 0번째 예상응답(0은 자기자신)


명령) word.단어 확인

:word


오류) 빌드 오류 처리 방법

1. 정의되지 않은 컨셉 사용 : 수정 필요

2. 정의되지 않은 라벨 사용 ( reuse 등에서 사용 ) : 수정 필요

3. 등록되지 않은 단어의 사용 : 보조사전에 단어 등록

4. 빌드후 체크 방법

    :word 단어


오류) testpattern 결과가 Matched 인데 안 나올 경우

"명령.verify" 를 참조.



반응형

'ChatBot 띄우기' 카테고리의 다른 글

build 과정  (0) 2018.10.22
bot 을 만들었으면, 대화 만들기  (0) 2018.10.21
ChatScript Client/ Server 실행 옵션들.  (0) 2018.10.21
Client 에서 Command 실행 권한자 제한  (0) 2018.10.21
자신만의 Bot 만들기  (0) 2018.10.09