Module 모듈
자주 사용되는 코드를 별도의 파일로 만들어서 필요할 때마다 재활용
코드 수정 시에 필요한 로직을 빠르게 찾을 수 있다.
ex) Node.js
node.circle.js(로드될 대상)
var PI = Math.PI;
exports.area = function (r) {
return PI * r * r;
};
exports.circumference = function (r) {
return 2 * PI * r;
};
node.demo.js(로드의 주체)
var circle = require('./node.circle.js');
console.log('The area of a circle of radius 4 is' + circle.area(4);
Library 라이브러리
모듈과 비슷한 개념
자주 사용되는 로직을 재사용하기 편리하도록 잘 정리한 일련의 코드들의 집합
좋은 라이브러리를 선택하고 잘 사용하는 것은 프로그래밍의 핵심
Component 컴포넌트
유저가 사용하는 시스템에 대한 조작장치
page, dialog 대화상자, header bar, footer bar, navbars, button, form, list view
ES(ECMAScript)
Ecma 인터내셔널의 ECMA-262 기술 규격에 정의된 표준화된 스크립트 프로그래밍 언어
ES6 온전하게 지원하지 않는 브라우저, Babel 이나 Traceur와 같은 트랜스파일러를 사용해 하위 버전인 ECMAScript 5(이하ES5)로 변환하는 과정을 거쳐야 ES6을 사용할 수 있다.
Sass
Syntactically Awesome Style Sheet
CSS상위에 있는 meta-language로 css에 비해 간결하고 격식을 갖춘 CSS문법 제공
스타일시트를 쉽게 관리할 수 있는 기능 제공
자바스크립트처럼 특정 속성 값(color, margin, width)를 변수로 선언하여 필요한 곳에 선언된 변수 적용
반복되는 코드를 한번의 선언으로 여러 곳에서 재사용할 수 있도록 함
Ruby 환경으로 구동
sass는 css문법 자체를 바꾼다 scss는 권장되는 방식으로 css나 less의 문법과 닮아있다
less
js로 구동, 브라우저단에서도 동작해서 환경을 갖추기 쉽다
SVN Subversion 서브버전
소프트웨어 버전 관리 시스템
명령행인터페이스에서 사용하는 명령어를 따서 “SVN”
Babel
ES6 로 작성된 코드를 이전 문법인 ES5로 변환해주는 transpiler
ES6을 지원하지 않는 환경(구버전 브라우저 또는 익스플로러)에서 ES6 문법을 사용할 수 있도록 해준다.
transpiler compiler는 코드를 바이트 코드로 변환하지만 transpiler는 코드를 같은 레벨의 다른 언어로 변환
Bundling 번들링
여러가지 파일을 모아서 하나로 만드는 것
Webpack
Javascript 모듈화 도구, 오픈 소스 자바스크립트 모듈 번들러이다. 호환 플러그인을 포함하는 경우 HTML, CSS, 심지어는 이미지와 같은 프론트엔드 자산들을 변환할 수 있다. 웹팩은 의존성이 있는 모듈을 취하여 해당 모듈을 대표하는 정적 자산들을 생성한다.
WBS (Work Breakdown structure)
작업분류체계 : 프로젝트의 범위와 최종산출물을 세부요소로 분할한 계층적 구조
프로젝트리더와 매니저가 전체 일정과 인력을 관리할때 손쉽게 할 수 있도록 도와준다.
GSAP
the new standard for HTML5 and javascript animation
WebGL
웹 기반의 그래픽 라이브러리
웹 브라우저에서 인터랙티브한 3D, 2D 그래픽을 랜더링하기 위한 자바스크립트 라이브러리
RFP (request for proposal)
발주자가 특정 과제의 수행에 필요한 요구사항을 체계적으로 정리하여 제시함으로써 제안자가 제안서를 작성하는데 도움을 주기 위한 문서이다. 제안요청서에는 해당 과제의 제목, 목적 및 목표, 내용, 기대성과, 수행기간, 금액(Budget), 참가자격, 제출서류 목록, 요구사항, 제안서 목차, 평가 기준 등의 내용이 포함된다.
TFT (Task Force Team)
기업에서는 팀이나 부또는과 단위로 구성되어 있는데, 특별사업이나 프로젝트위해 각 부서 적격인력을 차출하여 프로젝트를 수행하게 하는 별도의팀
CDN (Content delivery network / content distribution network)
콘텐츠 전송 네트워크, 콘텐츠를 효율적으로 전달하기 위해 여러 노드를 가진 네트워크에 데이터를 저장하여 제공하는 시스템을 말한다. 인터넷 서비스 제공자에 직접 연결되어 데이터를 전송하므로, 콘텐츠 병목을 피할 수 있는 장점이 있다
URI, URL, URN
-
URI (Uniform Resource Identifier) : 웹에 있는 다양한 자원을 식별할 수 있는 수단을 의미하며 가장 보편적인 형태로는 URL이 있다.
-
URL (Uniform Resource Locator) : URI 의 한 형태이자, 부분 집합(범주)로 자원에 접근하는 데 필요한 프로토콜, 도메인, 파일의 경로 및 접근할 파일명 등으로 구성되어 있다.
-
URN (Uniform Resource Name) : 불변의 의미를 가지는 이름으로 인터넷 자원을 찾는 방식을 말한다. 경우에 따라 URL 이 될 수도 있기 때문에 비슷하게 보일 수 있다. 하지만 URL 이 프로토콜, 도메인 등 자원의 위치를 알아야 자원을 찾을 수 있는 형식인데 비해, URN 은 자원의 이름만으로 자원을 찾을 수 있다는 것이 다르다.
DRY 원칙 (Don’t Repeat Yourself)
자신을 반복하지 말 것, DIE라고 하기도 한다 Duplication is Evil (중복은 악이다)
“모든 지식은 그 자체로 시스템 안에서 유일해야 하고, 모호해선 안 되며, 권위 있게 표현돼야 한다.”
대부분의 어플리케이션은 반복적인 일을 자동화하는 게 목적이며 이 원칙은 모든 코드에서 유지되어야 한다.