Dart, Գուգլ ընկերության ստեղծած ծրագրավորման լեզու։ Dart-ը ստեղծվել է որպես JavaScript լեզվին փոխարինող/այլընտրանք։ Լեզվի ստեղծողներից Մարկ Միլերը գրել է, որ JavaScript լեզուն ունի «հիմնարար թերություններ»[4] («Javascript has fundamental flaws…»), որոնք հնարավոր չէ շտկել։ Դրա համար էլ ստեղծվեց Dart-ը։

Dart
Dart programming language logo.svg
Տեսակօբյեկտ կողմնորոշված ծրագրավորման լեզու, վեբ ծրագրի հենք, scripting language?, իմպերատիվ ծրագրավորման լեզու, reflective programming language?, ֆունկցիոնալ ծրագրավորման լեզու և բազմահարացուցային ծրագրավորման լեզու
Առաջացել էհոկտեմբերի 10, 2011
ՍտեղծողԳուգլ
ՆախագծողLars Bak? և Գուգլ
Ընդլայնումներ.dart
Համացանցի տվյալների տեսակapplication/dart[1] և application/vnd-dart[2]
Ընթացիկ տարբերակ2.13.4 (հունիսի 28, 2021)[3]
Ներշնչվել էStrongtalk?, Ջավա, ՋավաՍկրիպտ, Smalltalk, Erlang և C Sharp
ԱրտոնագիրBSD արտոնագիր
Կայքdart.dev(անգլ.)
Աղբյուր կոդgithub.com/dart-lang/sdk
Dart (programming language) Վիքիպահեստում

Լեզվի մասին առաջին հրապարակային մատչելի տեղեկատվությունը հայտնվեց 2011 թվականի սեպտեմբերի 12-ին Goto ծրագրավորողների կոնֆերանսի ժամանակ[5]։ 2011 թվականի հոկտեմբերի 10-ին տեղի ունեցավ Google Dart լեզվի պաշտոնական ներկայացումը։

Լեզվի ստեղծողների առաջ դրված խնդիրները․[6]

  • Ստեղծել վեբ ծրագրավորման համար կառուցվածքային և միաժամանակ ճկուն լեզու
  • Ուսումը պարզեցնելու համար լեզուն դարձնել գոյություն ունեցողներին նման
  • Ստեղծված ծրագրերի բարձր արագագործություն ինչպես դիտարկիչում, այնպես էլ այլ միջավայրներում, սկսած սմարթֆոններից մինչև սերվերներ։

Նախապես առաջարկվել է Dart ծրագրի օգտագործման երկու տարբերակ․ վիրտուալ մեքենայի օգտագործմամբ կամ միջանկյալ թարգմանություն JavaScript-ում[6][7]։

2013 թվականի նոյեմբերի 15-ին Գուգլ ընկերությունը թողարկեց իր Dart լեզվի առաջին կայուն SDK 1.0 տարբերակը։ 2014 թվականի հուլիսի 4-ին ECMA-ն հաստատեց լեզվի առաջին չափորոշիչները, որը տացավ ECMA-408 անվանումը[8]։

ՕրինակԽմբագրել

Hello, world! ծրագրի պարզունակ օրինակ․

main() {
    print('Hello World!');
}

Ֆիբոնաչիի n-երորդ թիվը հաշվելու ֆունկցիա․

int fib(int n) {
    return (n <= 2) ? 1 : (fib(n - 1) + fib(n - 2));
}

main() {
    print('fib(20) = ${fib(20)}');
}

Պարզունակ դաս

// sqrt() ֆունկցիայի հասանելիության համար math գրադարանի կցում
import 'dart:math' as math;

// Point դասի ստեղծում
class Point {

    // Որպես final հայտարարված փոփոխականները չեն կարող փոփոխվել ինիցիալիզացիայից հետո
    // Երկու թվային դաշտի հայտարարում
    final num x, y;

    Point(this.x, this.y);

    Point.origin() : x = 0, y = 0;

    // Դասի մեթոդ
    num distanceTo(Point other) {
        var dx = x - other.x;
        var dy = y - other.y;
        return math.sqrt(dx * dx + dy * dy);
    }
}

// Dart-ի բոլոր ֆունկցիաները սկսվում են «main()»-ով
main() {
    // Point դասի երկու օբյեկտների ստեղծում 
    var p1 = new Point(10, 10);
    var p2 = new Point.origin();
    var distance = p1.distanceTo(p2);
    print(distance);
}

Տես նաևԽմբագրել

ԾանոթագրություններԽմբագրել

ԳրականությունԽմբագրել

  • Matt Fisher, 8. Exporting to HTML5, Google Dart, HTML5 for Flash Developers (Packt Publishing, Limited) — 322 էջ, ISBN 9781849693325։

Արտաքին հղումներԽմբագրել