달력

11

« 2018/11 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30

Visual Studio Code를 사용한지 벌써 3년은 된것 같다.  이전에 남겨 놓았던 글을 보니 정식 1.0 버전이 2016년 4월 14일에 발표 되었다. 지금도 일하면서 여러가지 IDE를 사용하기는 하지만, 가볍기 때문에 가장 많이 사용하고 있는 IDE 이다. 


내가 사용하는 IDE는 "Visual Study Code", "Visual Study 2017", "IntelliJ" 그리고 "Ultra Editor"의 순으로 사용하고 있다.


가장 손에 익은 툴에 맞어서서 셋팅을 변경해서 사용하는데, 단축키는 Eclipse에 맞추어서 사용하고 있다. Eclipse와 Spring Tool Suits를 오래동안 사용해서 단축키는 Eclipse  편하다. 그리고, VS Code를 만들고 있는 에릭 감마는 마이크로 소프트로 옮기기 전에 Eclipse를 설계/개발 하였기 때문에 VS Code도 기본 키셋팅은 영향을 받은 듯 많이 유사하다.


가끔 사용하는 Ultra Editor은 VS Code가 대용량 파일을 잘 읽어내지 못 할 때에 사용

하고 있다.


집에서다 VS Code를 깔아서 사용하고 있는데, 보통 내가 사용하는 IDE의 폰트는 'Courier New'로 설정해서 사용하고 있는데, iMac에서만 기본 폰트로 사용중이어서, 오늘은 변경해 보기로 했다.


기본 설정 폰트는 다음과 같은 순서로 변경하면 되는데, Mac에서 변경하기 때문에 Mac의 메뉴 기준으로 설명하겠다.



1. Code의 메뉴에서 아래와 같이 설정 메뉴로 이동한다.

 


2. 아래와 같은 화면이 나타나게 되는데, 상단의



여기에서 "font"라고 입력한다.



3. 아래의 화면에서 텍스트 편집기를 선택하면, 오른쪽에 "Editor: Font Family"라고 화면이 나오는데, 

   아래와 같이 4개의 Font들의 리스트를 볼수 있을 것이다.



4. 여기서 "Courier New"을 아래와 같이 앞으로 옮겨 오게 되면, 바로 변경됨을 확인할 수 있다. 
   (
"Courier New"만 남기도 다른 3개의 폰트를 지워도 된다.  없을 경우에 있는 폰트를 사용하도록 순서를 지정하는 것이기 때문에, 필요에 맞추어서 설정하면 된다.) 


5. 지금은 설정을 보면서 바꾸었는데, 이전 방식처럼, User Setting 설정은 다음과 같이 가능하다.

    아래와 같이 오른쪽의 "..."으로 되어 있는 버튼을 누루고, "Open settings.json" 를 선택하면 된다.



6. 그러면, 아래와 같이 json 파일이 열리고 Editor상에서 변경이 가능하다.


변경을 해 놓고 보니, 너무 가늘어 보이는데, "bold"로 변경하고 폰트 크기도 "12"에서 "13"으로 변경하니 괜찮아 보인다.


:
Posted by 행복상자

아주 오래전(약 2년 6개월전)에 글을 쓰기는 했는데, 마무리 짓지 못했던 글인데, 요즘은 await과 async 키워드를 통해서 자연스럽게 사용하고 있어서 필요가 없을 수 있다. 이전에 내부에 Timer와 간단한  Queue를 만들어서  batch 작업을 수행하는데 사용했었다. 


(Async와 Awat 키워드를 사용하거나, Promise를 이용해서 제어하는 것이 아래 방식보다는 훌륭하다.)


Node Js를 이용하여, 개발할 경우에 싱글 쓰레드가 하나의 CPU Core에서도 자연스럽고 부드럽고 너무도 가볍게 동작하는 것을 보고 놀랐었다.

I/O에 대한 Blocking 문제를 자체적으로 처리해주는 똘똘한 녀석이라고, 자랑스러워하였지만, Callback hell이라고 불리우는 지저분해지는 코드는 또다른 문제를 안겨주기도 한다. 


개인적으로는 시각적으로 가독성이 떨어지는 코드는 좋아 하지 않기 때문에, 머신의 성능이 보장해주는 한도에서 가능하면 가독성이 좋고, 이해하기 좋은 코드를 쓰는 것을 좋아한다.

그리고, 리펙토링을 꼭 해서 좀 더 중복을 없애고, 보기 좋은 짜임새 있도록 만들고는 혼자 좋아라 한다.


Node Js의 Callback 함수 호출은 굉장히 개발을 쉽게 해주기도 하지만, 중첩된 콜백과 이벤트 방식으로 인해 사용하기가 쉽지 않다. 오히려 UI가 있는 Visual Basic은 event호출에 의한 callback 함수가 UI 개발에 직관성을 높이고 코드를 분리해 줄수 있지만, 스크립트와 같은 순차적인 작업은 불편하기 짝이 없다.


이때문에 node Js에서는 Sync함수들을 별도로 제작해서 제공하고 있는 것으로 보인다.

(→ node의 file system과 관련된 라이브러리 참고: https://nodejs.org/api/fs.html)


아래는 개인적으로 이러한 환경에서 사용할 수 있는 non-sync 환경에서 Timer를 이용한 간단한 Queue 방식으로 실행할 수 있는 코드이다. 예를 들명 파일에서 라인별 데이터를 읽어 들이고, 이을 Mysql과 같은 DB에 쿼리를 실행하여 데이터를 저장하거나, 반대로 데이터를 읽고 이를 분석하는 기능을 동시에 실행할 경우에 이용할 수 있다. 


var count = 10;
var queue = [];

for(var i = 0; i < 3; i++)
{
    queue.push(i+5);
}

var tid = setInterval(function() {
    if(count == 0){
     if(queue.length > 0){
            console.log("queue: " + queue.length )
          count = queue.shift();
            return;
        }

        clearInterval(tid);
    }

console.log("count " + count--);
}, 1000);


:
Posted by 행복상자