“다트는 객체 지향 언어로 개발자가 웹 기반의 대규모 애플리케이션 코딩시 발생할 수 있는 실행문제를 쉽게 해소할 수 있게 개발됐다”라며 “아직 초기 버전이지만 향후 웹 프로그래밍에서 빠질 수 없는 존재가 될 것으로 기대한다”라고 소개했다.
구글은 자바스크립트와 달리 대규모 프로젝트와 소규모 프로젝트도 쉽게 개발할 수 있게 만들어졌으며, 단일 코드 블록을 피힐 수 있다고 소개했다. 또 동적 타입 지정과 정적 타입 지정을 모두 지원해 개발자가 변수를 추가하는데 좀 더 유연하다고 밝혔다. 기존 언어가 정적 언어와 동적 언어 사이에 선택을 강요하는 것과 달리, 다트는 자유로운 코딩을 지원한다는 설명
라스 박 구글 다트팀 소프트웨어 엔지니어는 10월10일(현지기준) 자사 공식 블로그를 통해 “유연하면서도 구조적인 새로운 웹 프로그래밍 언어인 다트를 소개한다”라고 발표했다.
자바스크립트는 현재 세계에서 가장 널리 사용되는 프로그래밍 개발 언어 중 하나다. 이런 점에서 다트가 등장이 주목된다.
-----------------------------------------------------------------------
Tutorial: Interfaces
Interfaces—types that define which methods a class provides—are important in Dart. In fact, much of the Dart Core Library is defined in terms of interfaces. If you've never used a language that features interfaces or protocols, you might want to read about them.
-----------------------------------------------------------------------
class Greeter implements Comparable {
String prefix = 'Hello,';
Greeter() {}
Greeter.withPrefix(this.prefix);
greet(String name) => print('$prefix $name');
int compareTo(Greeter other) => prefix.compareTo(other.prefix);
}
void main() {
Greeter greeter = new Greeter();
Greeter greeter2 = new Greeter.withPrefix('Hi,');
num result = greeter2.compareTo(greeter);
if (result == 0) {
greeter2.greet('you are the same.');
} else {
greeter2.greet('you are different.');
}
}
-----------------------------------------------------------------------
About the code
The preceding code both uses and implements interfaces. Here's what's interesting about it:
- Interface implementation
- The
Greeter
class implements the Core Library'sComparable
interface, making it easy to compare twoGreeter
objects. Implementing the interface consists of two steps: addingimplements Comparable
to theclass
statement (line 1), and adding a definition of the only method required byComparable
:compareTo()
(line 7). int
andnum
interfaces- Although you might expect
int
anddouble
to be primitive types, they're actually interfaces that extend thenum
interface. This means thatint
anddouble
variables are alsonum
s.In use,
int
anddouble
feel like the primitive types you're probably used to. For example, you can use literals to set their values:int height = 160; double rad = 0.0;
More about interfaces
In Dart, you can often create objects directly from an interface, instead of having to find a class that implements that interface. This is possible because many interfaces have a factory class—a class that creates objects that implement the interface. For example, if your code says new Date.now()
, the factory class for the Date
interface creates an object that represents the current time.
http://www.dartlang.org/docs/getting-started/interface.html
http://www.dartlang.org/
'IT/과학 /탐구' 카테고리의 다른 글
애플 `iOS5' (0) | 2011.10.11 |
---|---|
MS 듀얼코어 LTE폰!! (1) | 2011.10.11 |
LG '옵티머스 LTE' 출시!! 'HD급' LTE 스마트폰 '구본준폰', '회장님폰', '독한폰' (0) | 2011.10.10 |
휴대폰 이제는 창문에 붙여 태양광 충전!! (0) | 2011.10.09 |
안드로이드 스마트폰에 3D 감성 꾸미기!! 런처 앱 네오엠텔 ‘맥스홈’ (0) | 2011.10.09 |