<주의사항>

본 블로그의 주인은 자바스크립트를 시작한지 이제 1년이 조금 넘은 초보 개발자입니다.

내용상의 잘못된점이나 이상한점이 있다면, 댓글 혹은 이메일로 알려주신다면, 바로바로 수정하도록 하겠습니다.




제가 WinJS를 접하게 된건 자바스크립트를 시작하고 3개월 정도 지난 2015년 3월경이었습니다.

대학을 졸업하고 다니게된 첫 직장에서, 팀장님이 Windows 8.1 Metro App 을 이용하여 어플리케이션을 만들면서 처음 WinJS라는것을 접하게 되었습니다.

그 당시에는 Javascript도 제대로 알지 못하는 왕초보였던 관계로 WinJS가 무엇인지, 어떻게 작동하는지 잘 알지 못하였지만 최근에 다시 공부를 하게 되면서 블로깅도 같이 하게 되었습니다.

내용이 많이 부족하겠지만, WinJS를 공부하시는 분들께 많은 도움이 되었으면 좋겠습니다.






WinJS란?


WinJS는 모든 Windows 장치에서 일관된 모양과 성능으로 HTML, CSS 및 Windows 스토어용 JavaScript 응용 프로그램 빌드에 도움이 되는 

오픈 소스 JavaScript 라이브러리입니다. 

WinJS는 모든 브라우저에서 작동하며 독립 실행형 솔루션으로 사용되거나 기타 프레임워크 및 라이브러리와 사용될 수 있습니다.

<https://developer.microsoft.com/ko-kr/windows/develop/winjs>

WinJS provides the controls you need to make your app professional, functional and easy-to-use - all in one place.

<http://www.buildwinjs.com>


간단히 보면 WinJS는 Metro Style의 App 개발 전반에 다양한 기능을 제공하는 JavaScript 오픈소스 라이브러리라고 알수가 있습니다.

( 이 부분에 대해서는 추가 설명이 필요할거 같습니다. 죄송합니다..)


하지만 WinJS의 숨겨진(?) 또다른 기능이 있습니다. 그것은 WinRT와 자바스크립트 사이의 연결인데요,


우선 그림을 하나 보시겠습니다.




이 표는 과거 Windows7 에서의 App 구조 ( Desktop Apps ) 와 Windows 8.1 부터 나온 App구조 ( Metro style Apps ) 를 보여주는 그림입니다.










블로그 이미지

Jaro

대한민국 , 인천 , 남자 , 기혼 , 개발자 jaro0116@gmail.com , https://github.com/JaroInside https://www.linkedin.com/in/seong-eon-park-16a97b113/

,

서버 셋팅

서버 2015. 12. 8. 13:45



우분투 설치

- http://www.ubuntu.com/download 에 접속하여 우분투 다운로드 및 설치



기본 설정 준비

- 패키지 경로를 최신으로 업데이트

sudo apt-get update

- 현재 깔려 있는 패키지 중 업데이트 할것이 있다면 업데이트

sudo apt-get upgrade

< 가장 최신으로 완료될때까지 update & upgrade 해준다. >

- 특정 ssh 패키지가 설치되어있는지 확인한다.

dpkg -l | grep ssh

- ssh 서버 설치

sudo apt-get install openssh-server

- 패키지 설치 확인

dpkg -l | grep ssh

- 포트 제대로 열려있는지 확인

netstat -ntl

ssh는 22번 포트를 사용하므로 22번 포트가 열려 있는지 확인한다.

- 포트 변경하려면

sudo nano /etc/ssh/sshd_config

- 재시작

sudo service ssh restart



- 이후에 다른 컴퓨터에서 접속하려면, 터미널 열고 ssh 아이디@아이피주소


nginx 설치

- 설치

sudo apt-get install nginx

- nginx 제대로 설치되었는지 확인

아이피로 접속해서 확인 ( 기본 80포트 )

- 프록시 사이트 추가

sudo nano /etc/nginx/sites-available/설정파일 이름.conf

server {


   listen 80;

   server_name 도메인 이름;


   location / {

     proxy_set_header Host $http_host;

     proxy_set_header X-Real-IP $remote_addr;

     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

     proxy_set_header X-Forwarded-Proto $scheme;

     proxy_set_header X-NginX-Proxy true;


     proxy_pass http://127.0.0.1:포트번호/;

     proxy_redirect off;

   }


   log_not_found off;


   gzip on;

   gzip_comp_level 2;

   gzip_proxied any;

   gzip_min_length  1000;

   gzip_disable "MSIE [1-6]\.(?!.*SV1)";

   gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript text/x-js;

}

- 심볼릭 링크 생성 ( A file -> B file )

sudo ln -s /etc/nginx/sites-available/설정파일이름.conf /etc/nginx/sites-enabled/설정파일이름.conf

- 서비스 재시작

sudo service nginx restart




서버와 도메인 연결

- 도메인 DNS 관리에서 호스트 IP(A레코드) 관리 : cafe24.com

- A레코드 추가



NVM 설치

- https://github.com/creationix/nvm 에 가서 설치 스크립트로 설치

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.29.0/install.sh | bash ( 필요에 따라 bash 앞에 sudo 써야함)


- 재접속

- nodejs 설치

nvm install 4.2.3

- .bashrc 또는 .profile 에 버전 셋팅 ( 처음에 시작할때 사용할 node버전 명시)

nvm use 4.2.3



express 설치

- express-generator 전역 설치

npm install express-generator -g

- 프로젝트 생성

express 프로젝트이름

- 설치 및 실행

npm install && npm start



- nginx 에서의 포트 번호와 express의 포트 번호를 동일하게 맞춰야 한다. (보안상 문제)



레디스

wget http://download.redis.io/releases/redis-3.0.5.tar.gz

- 압축 해제
tar xzf redis-3.0.5.tar.gz
- 경로 이동
cd redis-3.0.5
- 빌드 툴 설치
sudo apt-get install build-essential
- make
- 테스트를 위한 패키지 설치
sudo apt-get install tcl8.5
- 경로 이동 후 make test
cd src && make test
- 레디스 설치
sudo make install
- 레디스 클러스터 인스톨러를 실행
cd.. && cd utils && sudo ./install_server.sh
- 외부에서 접속이 가능하도록 셋팅 후 재시작
sudo nano /etc/redis/6379.conf => bind 0.0.0.0
sudo /etc/init.d/redis_6379 restart


몽고DB

- 설치

sudo apt-get install mongodb

- 외부에서 접속이 가능하도록 셋팅 후 재시작

sudo nano /etc/mongodb.conf => bind_ip = 0.0.0.0

sudo service mongodb restart





블로그 이미지

Jaro

대한민국 , 인천 , 남자 , 기혼 , 개발자 jaro0116@gmail.com , https://github.com/JaroInside https://www.linkedin.com/in/seong-eon-park-16a97b113/

,