Development

    디자인 패턴을 이용하는 방법 (3)

    디자인 패턴을 이용하는 방법 (3)

    지난 포스팅에서는 객체, 인터페이스, 클래스, 상속의 개념에 대해서 살펴 보았다(상단 링크 참고). 이번 포스팅에서는 디자인 패턴이 어떻게 이런 개념들을 유연하고 재사용 가능한 소프트웨어에 적용 시키는지 살펴보자. 재사용 가능한 소프트웨어 객체지향 시스템에서 기능의 재상용을 위한 가장 대표적인 방법은 상속과 객체 합성이다. 앞선 포스팅에서 상속에 대해서 알아봤으나, 객체 합성은 생소한 단어일 것이다. 객체 합성은 클래스 상속에 대한 대안으로, 새로운 기능성을 위해서 객체들을 합성하는 것이다. 객체를 합성하기위해서는 합성할 객체들의 인터페이스를 명확하게 정의해야 한다. 즉, 객체의 내부는 공개되지 않고 인터페이스를 통해서만 재사용 된다. 이 때문에 다른 클래스를 이용해서 한 클래서의 구현을 정의하는, 즉 ..

    디자인 패턴을 이용하는 방법 (2)

    디자인 패턴을 이용하는 방법 (2)

    이전 포스팅에서 객체에 대한 내용과 객체의 크기에 대한 결정을 하는 방법, 그리고 인터페이스에 대해 간단하게 다뤄 보았다. 이번 포스팅에서는 실제로 객체를 어떻게 정의하는지에 대해서 이야기 해보고자 한다. 객체 구현 명세하기 객체의 구현은 클래스에 정의한다. 클래스는 객체 내부의 데이터, 데이터의 표현방법, 그리고 오퍼레이션을 정의하여 객체를 구현한다. OMT(Obejct Modeling Technique) 기반의 표기법에서는 클래스를 표현하는 사각형에 볼드체로 클래스의 이름을 표현한다. 오퍼레이션의 이름은 클래스 아래 칸에 나열하고, 클레스가 정의하는 데이터는 오퍼레이션 아래 칸에 표시한다. 즉, 클래스의 이름, 오퍼레이션, 데이터 순으로 구분하여 표시한다. ** operation의 type은 반환 t..

    Typescript - Module

    Typescript - Module

    사실 모듈과 관련된 내용을 따로 포스팅할 내용이 있을까 싶을 정도로 간단한 내용일 수 있지만, ES5 Javascript만을 사용해온 사람들이나, 관련 내용을 처음 접하는 사람들에게 도움이 되고자 간단하게 설명하려고 한다. 가볍게 쓰-윽 읽고 넘어가면 좋을 내용이다. 어떤 내용을 코드로 구현하기 위해서는 한 파일에 코드를 쭉~ 작성해서 필요한 메서드나 변수들을 활용해도 동작하는데 문제는 없을 것이다. (물론 호이스팅 등 신경써야 하는 부분들은 많겠지만..!) 하지만, 프로젝트의 규모가 커짐에 따라 코드의 관리 및 유지보수를 편리하고 안전하게 하기 위해, 일정한 기준을 세워 기준별로 코드를 나누는 방식으로 코드를 분할하는데, 이를 모듈화(modulization)라고 할 수 있다. **각 스크립트 파일을 하..

    Typescript 문법 찍먹하듯 훑어보기

    Typescript 문법 찍먹하듯 훑어보기

    이전 포스팅에서 언급한 바와 같이 타입스크립트는 ESNext 문법을 지원하기 때문에, 타입스크립트를 능숙하게 다루기 위해선, ESNext 문법을 알아야 한다. 우선 ES5와는 다른 ESNext의 주요 문법을 살펴보자. ESNext의 주요문법 비구조화 할당 (Destructuring assignment) 비구조화 할당은 객체와 배열에 적용할 수 있다. 아래 코드를 살펴보도록 하자. let user = {name:'soopiri', age: 99} let {name, age} = user console.log(name, age) // result: soopiri, 99 let arr = [1, 2, 3, 4] let [first, ...rest] = arr console.log(first, rest) // ..

    TypeScript란?

    TypeScript란?

    자바스크립트의 종류 자바스크립트의 종류? 자바스크립트에도 종류가 있었나? 현재 자바 스크립트는 크게 세 가지 종류가 있다. 그 중 타입 스크립트는 아래 그림에서도 볼 수 있듯이 Javascript의 상위 확장 개념이다. 아래 그림을 조금을 부연 설명하자면, 웹 브라우저에서 동작하는 표준 자바스크립트인 ES5(ECMAScript 5)와 2015년 많은 변화를 가져온 ES6를 포함해 매년 새로운 버전을 발표하는 ESNext, 그리고 ESNext에 Type 기능을 추가한 타입 스크립트가 생기게 된 것이다. 자바스크립트의 공식 표준은 ECMAScript(줄여서 ES)이다. 2009년 발표된 ES5 버전 이후 2015년 발표된 ES6에서 큰 변화가 있었다. (let & const, arrow function, d..