阅读更多

16顶
2踩

编程语言

Google在官方博客正式宣布推出Dart语言,Google称之为早期预览版(early preview)。

Chrome浏览器V8 JavaScript引擎的创造者,也是Dart语言项目的领导者Lars Bak在今天于丹麦举行的Goto会议上为Dart进行了主题演讲,并在博客中进行了详细透露。

Lars Bak表示,Dart是一种“结构化的Web编程”语言,它接受基于类的任意类型。


在博客中Lars Bak写道:

 

Dart的设计目标是:

  • 创建一个结构化又富灵活性的Web编程语言。
  • Dart对编程人员应该是熟悉而自然的,易于学习。
  • 在所有现有浏览器和各种环境(从小型的手持设备乃至服务器端实现)中确保实现高性能
Dart考虑了一系列的开发场景:从没有太多架构的个人项目至代码中需要加入正式类型以便说明程序员意图的大型项目。为了支持这些广泛的大型项目,Dart提供了许多可选的类型,在编码时你可以先不用考虑类型而在需要的时候添加它们。


根据Lars Bak,Dart代码可以用两种不同方式执行:一是通过一个原生的虚拟机;另一种则是JavaScript引擎,使用编译器将Dart代码转换为JavaScript代码。也就是说,你可以使用Dart编写一个Web应用程序,并在任何现代浏览器上编译及运行它。虽然目前Dart VM尚未集成至Chrome中,但已在研究计划之中。

此外,Google同时推出了Dart语言的官方网站dartlang.org,其中包含Dart的相关介绍、代码示例及教程,并提供了一系列的基础库,另外还有关于Dart语言规范的文档以及讨论论坛

Dart中的hello world:

 

main() {
 var name=‘World’
 print('Hello, ${name}!');
}

 

下面则是一个简单的类定义:

 

class Point {
  num x, y;
  Point(num this.x, num this.y);
  Point scale(num factor) =>
          new Point(x*factor, y*factor);
  num distance() => Math.sqrt(x*x + y*y);
}
 void main() {
  Point a = new Point(2,3).scale(10);
  print(a.distance());
}


在一个月前,Google便透露了Dart语言的一些细节,并有传言表示Dart就是为了取代JavaScript,将扮演JavaScript杀手角色。在Google看来JavaScript确实存在一些非常严重缺陷,也非常希望能够解决这些问题。不过今天Bak对此进行了否认,他表示:

 

Dart并不打算取代JavaScipt,JavaScipt是现今Web的一块基石,在很长很长一段时间它都将继续存在。


这番话是否言不由衷不得而知,想当初Google发布Go语言时,也认为Go可应用到服务器软件外的其他领域,包括在浏览器内执行软件,取代目前JavaScript的角色。而从其力推HTML5、一再发布Go、Dart来看,Google志在成为Web革新者的目的不言而喻。

 

项目官网:http://www.dartlang.org/

 

Google Code 主页:http://code.google.com/p/dart/(其中WIKI页面包含如何构建开发环境和转换为JavaScript的工具)

 

16
2
评论 共 24 条 请登录后发表评论
24 楼 王斌_code 2012-12-11 09:38
print('Hello, ${name}!');
为什么这么像php的变量又不像php那么简洁呢
print("Hello, $name!");
print("Hello, {$name}!);
23 楼 damoqiongqiu 2012-10-18 09:26
yunhaifeiwu 写道
cl1154781231 写道
damoqiongqiu 写道
var name=‘World’ 
print('Hello, ${name}!'); 
这是不是太狗血了点啊
直接print("Hello"+name)不行吗?



haha

你没看见,字符串里能控制引用 程序运行中的内部变量吗? 动态啊! 

可是+号只要写一个符号,而${}要写3个符号
22 楼 yunhaifeiwu 2012-10-18 07:47
cl1154781231 写道
damoqiongqiu 写道
var name=‘World’ 
print('Hello, ${name}!'); 
这是不是太狗血了点啊
直接print("Hello"+name)不行吗?



haha

你没看见,字符串里能控制引用 程序运行中的内部变量吗? 动态啊! 
21 楼 cl1154781231 2011-12-18 11:46
damoqiongqiu 写道
var name=‘World’ 
print('Hello, ${name}!'); 
这是不是太狗血了点啊
直接print("Hello"+name)不行吗?



haha
20 楼 Pontifex 2011-10-13 14:58
Go语言的下场怎么样了? 这个dart,比go更惨
19 楼 clue 2011-10-13 11:37
类似gwt的理念吧?用更严谨的语言开发程序,然后编译成JavaScript代码。
取代JS是不可能的,想想IE6在国内的生存率,再想想众多已知的浏览器差异等等,没有20年真的很难办到。
18 楼 ray_linn 2011-10-13 09:32
基本可以忽略~~~
17 楼 fjjiaboming 2011-10-12 19:39
真蛋疼...${}
.......
16 楼 盖茨他爹 2011-10-12 15:21
接受它的条件:
1、开源
2、不申请任何相关专利
Oracle不可信,google同样不可信
15 楼 evanz 2011-10-12 13:58
[想当初Google发布Go语言时,也认为Go可应用到服务器软件外的其他领域,包括在浏览器内执行软件,取代目前JavaScript的角色。而从其力推HTML5、一再发布Go、Dart来看,Google志在成为Web革新者的目的不言而喻。] -- google有这么说过吗?还是小编说的? go是静态编译语言,怎么用来替代javascript,在浏览器内执行。。。
14 楼 elgs 2011-10-12 12:56
一个是运行时检查,一个是编译时检查。这时动态语言和静态语言的基本区别。

damoqiongqiu 写道
var name=‘World’ 
print('Hello, ${name}!'); 
这是不是太狗血了点啊
直接print("Hello"+name)不行吗?

13 楼 134564 2011-10-12 12:34
damoqiongqiu 写道
var name=‘World’ 
print('Hello, ${name}!'); 
这是不是太狗血了点啊
直接print("Hello"+name)不行吗?



print('Hello, [${name}], xxx ? xx ! is ${name}!'); 

print('Hello, [' + name + '], xx ? xx ! is ' + name + '!');

显然上面的好一点
12 楼 damoqiongqiu 2011-10-12 12:06
var name=‘World’ 
print('Hello, ${name}!'); 
这是不是太狗血了点啊
直接print("Hello"+name)不行吗?
11 楼 饶首建 2011-10-12 10:07
创新要付出代价,感觉这种语言不够创新,更没听说付出过什么代价之类的,活(火)不了啊
10 楼 levithinking 2011-10-12 09:47
${name}

不喜欢这种语法,又是$又是{},一点都不简洁,真不嫌烦,违反现代语言的发展趋势
9 楼 yzongjie 2011-10-12 09:33
希望一切变得美好,因为开发语言已经很久没有革新了
8 楼 shuaiji 2011-10-12 09:27
学不过来啊,观望
7 楼 volking 2011-10-12 09:09
Jekey 写道
有go的前车之鉴,前景如何,有待观察呀!

辛亥革命也不是一次就成功的。前前后后有十几次,都失败了
6 楼 sdujq 2011-10-11 23:00
突然发现用chrome看到的javaeye的代码片段是有问题的
5 楼 haiyupeter 2011-10-11 21:16
前车之鉴!真的前车之鉴!

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 在PHP中,如何定义一个类?

    需要注意的是,为了使类能够被正确加载,通常将类定义放在单独的文件中,并使用。在类中,可以定义多个属性和方法,可以根据需要添加构造函数(类的属性和方法通过访问修饰符(如。,可以访问类的属性和调用类的方法。)和其他特殊方法(如析构函数。通过实例化类并使用对象操作符。在PHP中,可以使用关键字。语句将其引入到其他文件中。的类,它具有一个公共属性。上述代码定义了一个名为。)来确定其访问级别。

  • php定义一个学生类_PHP class:定义类

    PHP 支持面向对象编程,支持类和对象的概念。从数据类型的角度看,对象是一种比较特殊的数据类型。它由一个事先定义好的类生成,而类由用户自己定义,它由一系列数据和对这些数据操作的数个函数组成。初步使用面向对象程序设计,要掌握的就是使用面向对象的思想抽象出一个类,这是一种思想的转化,难点也就在这里。而这些思想体现在程序中就是代码。在这里,要写出代码、掌握语法,都是很简单的,而能正确地抽象出一个类才重点...

  • php中怎么定义类_php中如何定义类

    PHP 类定义PHP 定义类通常语法格式如下:

  • thinkphp5 模型实例化 获得数据对象

    模型对象和数据对象理解 1. 模型对象:模型类实例化后获得的对象; 2. 数据对象:获取到了原始数据的模型对象; 原始数据:存放在模型对象的$data属性中($data是一个数组) 数据对象:说到底,还是一个模型对象,千万不要认为是一个全新的对象 DB操作返回是数组。 模型直接操作返回是对象。 //该对象共计有28个受保护属性,必须在本类或子类中使用,外部不能直接

  • php 定义类变量 定义一个,其它方法可以直接引用

    用法一: class LebaifenPay { //定义 private $version = '1.0.0'; private $encoding = 'utf-8'; /** * 创建 * * @param $data * @return string * @throws ErrorException...

  • PHP day7 model模型对象

    1.  tp  模型对象  查询数据 //一,获取一条数据 //1.传递闭包函数 /*$res = User::get(function($query){ $query->where('username','eq','user002') ->field('usern...

  • PHP定义类

    <?php //类 class Student{ //属性 public $name; protected $age; private $money; //方法 public function love(){ echo '吃吃'; ...

  • PHP定义一个类,设置属性并且使用的例子

    <?php class Hello { private $content = "HelloMyPHP"; public $name; public function getContent() { return $this->content; } function __construct($name) { $this->name = $n...

  • PHP 快递鸟接口封装

    <?php /* * 节日快乐 * 快递鸟物流接口 * By: Phpstorm * Author: XiaoJie * Datetime: 2018/10/21 15:28 */ namespace app\portal\controller; use cmf\controller\WeChatBaseController; class KdniaoController...

  • php学习笔记(正侧表达式一)

    字符  说明    ^   匹配行的开始位置    $   匹配行的结束位置    \b  匹配单词的开始或结束位置    .   匹配除换行符之外的任意数字    \w  匹配单词字符(字符、数字、下划线和汉字)    \W  匹配任意的非单词字符    \s  匹配任意空白字符,如空格、制表符、换行符等    \S  匹配任意非空白字符    \d  匹配任意的数字    ...

  • PHP面向对象-如何定义一个类1-1-2

    面向对象基本概念    包括3部分内容:    面向对象分析(Object Oriented Analysis,OOA)    面向对象设计(Object Oriented Design,OOD)    面向对象编程(Object Oriented Programming,OOP) 类的定义    类是属性和方法的集合【人类,动物类,植物类】    属性,即类内定义的变量,又称成员...

  • php_类的定义

    此文章为原创见解,例子各方面也是东拼西凑.如果有错请留言.谢谢 在面向对象的思维中提出了两个概念,类和对象. 类是对某一类实物的抽象描述,而对象用于表示现实中该类事物的个体, 例子:老虎是父类,东北虎,华南虎是子类,一只东北虎是对象 可以将玩具看成一个类,.    将个个玩具看成对象.

  • Php 模型对象,PHP 新对象模型

    quinn at strangecode dot com (2006-05-19 08:53:42)Here is another possible solution for migrating code to php 5 when using $this = 'something' reassignments. In my case, I had several classes with me...

  • LeetCode第242题有效的字母异位词

    题目来源 题目描述 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。 示例 1: 输入: s = “anagram”, t = “nagaram” 输出: true 示例 2: 输入: s = “rat”, t = “car” 输出: false 说明: 你可以假设字符串只包含小写字母。 代码 class Solution { public boolean isAnagram(String s, String t) { int[] al = new i

  • PHP数据对象模型(PDO)

    虽然在php中有很多种数据库系统的扩展,但是不同的数据库系统对应的函数又是不同的,就拿MYSQL数据库系统而言,PHP就提供了Mysql和,Mysqli两种扩展,有没有一组统一的扩展标准来使不同的数据库系统都能使用呢?    PDO就能实现这样的功能,PHP 数据对象 (PDO) 扩展为PHP访问数据库定义了一个轻量级的一致接口。实现 PDO 接口的每个数据库驱动可以公开具体数据库的特性作为标准

  • Typescript(八)类的概念和使用

    类是一个功能的集合。 一:类的定义及基本使用 1:定义一个类 class lady{ content = "你好啊,我是camellia"; say(){ console.log(this.content); } } 2:调用类 // 类的使用 let camellia = new lady(); camellia.say(); // 输出:你好啊,我是camellia 二:类的继承 1:定义一个girl类继承lady类 class girl extend

  • php面向对象——类和对象

    php面向对象——类和对象1.类和对象<?php //定义一个类: class A{ public $name="John"; //定义一个普通属性 static $age=18; //定义一个静态属性 const PI=3.14; //定义一个常量 /*定义一个普通方法*/

  • php定义一个学生类_PHP中的类-什么叫类

    在阐述类的概念之前我们来先说说面向对象编程的概念:面向对象的程序设计(Object-OrientedProgramming,简记为OOP)立意于创建软件重用代码,具备更好地模拟现实世界环境的能力,这使它被公认为是自上而下编程的优胜者。它通过给程序中加入扩展语句,把函数“封装”进编程所必需的“对象”中。面向对象的编程语言使得复杂的工作条理清晰、编写容易。说它是一场革命,不是对对象本身而言,而是对它...

  • php 声明一个类,php类的声明与使用

    * Description of Girlfriend* 要求:* 1.类声明代码应该单独创建一个php文件* 2.类名必须要与类文件名一致* 3.必须使用命名空间(暂未学到,后面再说)** 当前类共有5个成员:3个属性,二个方法* 属性就是类中声明的变量,命名规则与普通变量完全一致* 方法就是类中声明的函数,与普通函数的命名与使用规则完全一样* 由于定义在类中,所以与普通变量与函数相比,有一些特...

Global site tag (gtag.js) - Google Analytics