Skip to content

COFFEESCRIPT Study #4 : 커피스크립트 시작하기 (2)

2013년 7월 18일

커피스크립트의 기본 원칙과 철학을 이해하면 언어를 배우고 사용하기가 더 쉽습니다. 커피스크립트는 자바스크립트의 기능을 1:1 매칭하는 것이 기본 컨셉입니다. 자바스크립트로 작성하는 코드와 동일한 명령어를 동일한 개수만큼 써야 합니다. 자바스크립트의 내용을 그대로 변환만 해서 커피스크립트의 내용으로 작성하면 되는 것입니다. 물론 예외적으로 this를 치환하는 @를 사용하는 방식에 따라 추가적인 코드를 제공하기도 합니다. 이는 하지만 자바스크립트에서 관습적으로 사용되는 this 선언 방식을 제안한 것 에 불과합니다. 또한 코드 호출 방식을 대부분 return call 방식으로 값을 호출합니다. 자바스크립트의 비동기 호출을 고려한 구조이죠. 이런 예를 제외하곤 나머지는 모두 동일한 1:1 메칭이라고 보면 됩니다. 자바스크립트를 쓰시던 분이라면 자바스크립트에서 생각하는 방식대로 코딩이 가능합니다. 즉 C -> Java 로 변화해 OOP개념을 추가적으로 사용하고 하는 개념이 아니라는 뜻입니다.

커피스크립트에서는 class 선언이 가능합니다. 또한 extends 라는 명령어를 통해 class 상속도 가능합니다. 이는 자바스크립트에 없는 새로운 기능이 생긴 것이 아닙니다. 기존에 javascript prototype을 활용해 class처럼 관습적으로 사용하던 방식을 커피스크립트의 oop적인 문법으로 대체한 것에 불과합니다. 따라서, 기존에 관습적인 방식을 기억해 javascript코드를 사용할 필요 없이 coffeescript를 이해함 만으로 기존 관습코드에서 벗어나 자바스크립트를 잘 모르는 사람도 readability가 뛰어난 코드를 작성할 수 있습니다.

class Member extends Backbone.Model
   name: 'yk'

위의 코드는 Backbone을 활용한 class코드를 생성할 때 사용하는 방식입니다. Coffeescript를 만든 사람은 Backbone을 이미 알고 있거나 고려해 만든 사람이 분명합니다. Backbone은 원래 extend라는 javascript명령어를 활용해 상속받은 Object를 사용합니다. 그 대신 Coffeescript 는 더 oop 적인 색깔을 활용해 Backbone을 활용한 코드를 더 효과적으로 작성하도록 도와줍니다.

var Member = Backbone.Model.extend({
    name: 'yk'
});

위의 코드는 원래 자바스크립트에서 쓰는 방식입니다. 자바스크립트의 기능을 활용해 상속된 오브젝트처럼 사용하려고 만든 extend라는 명령어가 커피스크립트에서는 더이상 필요가 없어졌습니다. 커피스크립트는 우리들의 자바스크립트 코드의 내용을 더 이해하기 쉽고 효율적으로 작성하도록 도와줄 것 입니다. 앞으로 Coffeescript 연재를 통해 더 쉽고 간편하게 복잡한 자바스크립트 프로젝트를 진행할 수 있도록 도와주는 포스팅이 되겠습니다.

Advertisements

From → Development

댓글 남기기

답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Google+ photo

Google+의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

%s에 연결하는 중

%d 블로거가 이것을 좋아합니다: