Programming 32

파이썬 가상환경(virtualenv, venv)

파이썬 가상환경(virtualenv, venv) 파이썬으로 개발하는 경우 pip를 이용하여 다양한 패키지들을 설치하게 된다. 로컬에서 pip로 설치하면 파이썬 설치폴더 내부에 package 관리하는 폴더에 저장하게 되고, 이는 로컬에서 사용하는 모든 스크립트에서 사용된다. 하지만 여러개의 프로젝트를 개발하는 경우, 같은 패키지가 필요하지만 다른 버전을 개발해야 하는 경우 패키지 충돌이 날 수 있다. (예. 1번 프로젝트에서 A 패키지 1.1버전, 2번 프로젝트에서 A 패키지 1.2버전이 필요한 경우) 이를 해결하기 위해 파이썬에서 가상환경을 사용할 수 있는데, 가장 많이 사용되는 방법이 virtualenv와 venv 이다. 먼저 virtualenv를 사용하는 방법을 알아보자. 먼저 pip를 이용하여 vi..

Programming/Python 2020.02.29

[Javascript] You Don't Know JS (Values)

YOU DON'T KNOW JS : Chapter2. Values Arrays 타입이 엄격한 언어들과 달리 자바스크립트의 배열은 문자열, 숫자, 객체 심지어 배열까지 모든 타입의 값을 포함할 수 있는 컨테이너이다. var a = [ 1, "2", [3] ]; a.length; // 3 a[0] === 1; // true a[2][0] === 3; // true 배열의 사이즈를 미리 정할 필요가 없으며, 선언하고나서도 값을 추가할 수 있다. var a = [ ]; a.length; // 0 a[0] = 1; a[1] = "2"; a[2] = [ 3 ]; a.length; // 3 Warning: 배열에서 delete 연산자를 사용하면 배열안에 있는 요소를 지우게 된다. 그러나 배열의 마지막 요소까지 지우더..

[Javascript] You Don't Know JS (Types)

YOU DON'T KNOW JS : Chapter1. Types 자바스크립트 스터디를 진행, 번역이라 좀 어색할 수 있음 (원본 : https://github.com/getify/You-Dont-Know-JS) Built-in Types 자바스크립트에서는 7가지 내장형 타입이 존재한다. null undefined boolean number string object symbol (ES6에서 추가, Chapter3에서 다룰 예정) object를 제외하고 모두 원시타입(primitives)로 불림 typeof 연산자는 주어진 값의 타입을 검사하고 7개의 type중 하나를 항상 반환하지만 1:1로 정확하게 매칭되지 않는다. null을 제외한 아래 6개는 정확하게 매칭된다. typeof undefined === ..

파이썬 JSON 모듈

파이썬 JSON 모듈 서로 다른 언어들간의 데이터를 주고 받는 여러 방법이 있다. (php-javascript, java-php, javascript-python 등..) 둘간의 배열은 다른 형식으로 표현되기 때문에 이들 사이에 규칙을 정해줘야 데이터를 주고 받을 수 있다. 이를 해결하기 위한 대표적으로 XML과 JSON이 존재한다. XML은 문법이 복잡하고 엄격한 표현규칙으로 인해서 JSON 대비 데이터의 용량이 커진다는 단점이 있다. 태그를 이용하여 정보를 표현함 (html 태그와 동일)​ Gambardella, Matthew XML Developer's Guide Computer 44.95 경량 데이터 교환 형식으로 Javascript에서 숫자와 배열등을 만드는 형식을 차용해서 이것을 다른 언어에서..

Programming/Python 2020.01.11

스크립트를 이용한 Manifest 자동 생성 (Shell+Python)

매번 bugfix와 새로운 feature 개발할 때, manifest 파일을 만들어서 빌드를 해야하는 번거로움이 있었다. 이를 위해 manifest를 자동으로 생성하는 jenkins job을 만들게 되어 기록해본다. 즉 manifest에서 작업한 repository에 해당하는 라인 뒤에 revision 값을 추가해야 한다. 필요한 매개변수 Base branch : 생성할 manifest의 base 브랜치 Working repositories : 작업한 repository 리스트 (공백으로 받음, 젠킨스에 공백으로 구분할 수 있는 기능이 있음) New branch : 새로 생성 할 브랜치. 즉 working branch에서 작업한 branch명 # Build with Parameters # BASE_BRA..

Programming 2020.01.10