DartがJavaScriptよりかっこいい10の理由
DartはGoogleが発明した新しいプログラミング言語です.JavaScriptを1年以上使ってから、Dartに一目惚れしました.私は以前Javaをしていましたが、JSを使うときに新しいことをたくさん勉強しなければなりません.JavaScriptを深く研究しなければならないと言われています.そうしないと、コメントする資格がありません.私はJSの達人ではありませんが、プログラミング言語は勉強しやすく、理解しやすく、言語構造が合理的だと信じています.私も長い間JSと付き合っていますが、JSにはクールな機能がたくさんあることは知っていますが、私は毎日JSの問題を慎重に処理しなければなりません.これはよくありません.プログラミング言語はプログラマーに友好的で、プログラマーが言語を世話するのではありません.次にJavaScriptよりもDartの方が強いところを挙げますが、Dartに移った理由でもあります.フロントエンドフレームワークの共有1.Dartは1つの否定条件しかない JSではfalse,null,undefined,",0,NaNを否定条件として使用できます.たとえば、
Dartではfalseだけが否定条件で、上のコードはこのように書かなければなりません.
多くの否定条件も問題ありませんが、明らかにプログラムが複雑になり、読みにくくなり、さまざまな否定条件を学ぶ必要があります.2.Dart使用可能タイプ JS開発者は、タイプが柔軟性を低下させることを強調することが多い.OK、正しいかもしれません.しかし、柔軟性が多すぎると、ソフトウェアがクラッシュします.タイプを使用する必要がある場合があります.Dartでは、タイプチェックを有効にすることができます.フロントエンドフレームワークの共有 3.JSはDOMを解析するためのフレームワークが必要である JSの方法を見てみましょう.
強いですか?しかし、私たちはJQueryを持っています.DartはJQueryを勉強しました.2つの方法しかありません.
4.クラスとインタフェース Java開発者がJSを書き始めたばかりの頃、彼らはいつもJSをJavaと同じように書いていました.彼らはクラスと構造関数を書くことができて、明らかにJSはこのように游んでいません.JSでは、何でもオブジェクトで、これはかっこいいように見えますが、それらのデザインモデルは役に立たないです.代わりにJavaScriptのデザインモードです.しかし、これは開発者に多くの困惑をもたらし、コードをめちゃくちゃにした.5.継承 JavaScriptでは、Dr.Rauschmayerブログ(http://www.2ality.com/2011/11/javascript-classes.html)の通りです.PrototypeとjQueryのフレームワークを使うこともできますし、継承のメカニズムを自分で実現することもできます.これで混乱し、継承という目標を達成するために、JSはいろいろなやり方があり、頭が痛いです.Dartには類という概念があるので、「extends」というキーワードもあります.すべては簡単です!6.グローバルネームスペース JSでは、グローバルレベルにある変数があれば、すべてのスクリプトがこの変数にアクセスできます.これは恐怖で、コードが混乱します.その後、Stoyan Stefanovs Book JavaScript Patterns(http://astore.amazon.de/neoteccde-21/detail/0596806752)、私のネーミングスペースはこれからきれいになりました.しかし、なぜこのような基本的な機能言語は持参できず、いわゆるパターンでこの問題を解決する必要があるのだろうか.フロントエンドフレームワークの共有 Dartのデフォルトは「library」の範囲で、publicと宣言されたものだけが外部にアクセスできます.これは簡単で、異なるスクリプトは相互に影響しません.7.Dartは並列対応 JSには本格的な並列はありません.jQueryを介して非同期リクエストを発行しても、スレッドが1つしか働いていません.HTML 5、webworkersでこの問題を解決することができます.Dartはパラレルをサポートし、Isolatesをサポートしています.これはErlangに似ています.1つのIsolateが失敗した場合、もう1つのIsolateはこのIsolateを再起動することができます.これはかっこいいのではないでしょうか.これにより、Dartはサーバ側のプログラミングに適しています.はい、Node.jsは知っていますが、Dartは生まれながらにしてこの機能をサポートしています.8.JSはforeachをサポートしていない JSでは、このように配列を巡ります.
オブジェクトを巡回することもできます
しかし、この方法はお勧めしません.このような遍歴方式で得られる結果は不確定なので、方法名など欲しくないものを手に入れることもできます.もちろん、jQueryはあなたの救いの星です!Dartの使用:
これほど簡単なものはないでしょう.9.奇妙な配列初期化 このコードを見てください.
a 1は5つの要素を持つ配列である[1,2,3,4,5]a 2は5つの要素を持つ配列である[undefined,undefined,undefined,undefined,undefined]Dartがはっきりしている.
10.undefinedとnull JSでは、この2つの値はほとんど交換できますが、そうではない場合もあり、頭が痛いです.Dartはnullしかありません.まとめ JSには多くの利点があり、いくつかの良いパターンがあります.しかし、今までJSができることやDartができないことは何も見つかりませんでした.Dartは明らかに優雅で、読みやすい(私にとって).JSマニアの中にはJSがいいと思っている人もいるかもしれませんが、理解できます.
1
var
a =
null
;
2
if
(!a) {
3
// do
4
}
Dartではfalseだけが否定条件で、上のコードはこのように書かなければなりません.
1
var
a =
null
;
2
if
(a !=
null
) {
3
// do
4
}
多くの否定条件も問題ありませんが、明らかにプログラムが複雑になり、読みにくくなり、さまざまな否定条件を学ぶ必要があります.2.Dart使用可能タイプ JS開発者は、タイプが柔軟性を低下させることを強調することが多い.OK、正しいかもしれません.しかし、柔軟性が多すぎると、ソフトウェアがクラッシュします.タイプを使用する必要がある場合があります.Dartでは、タイプチェックを有効にすることができます.フロントエンドフレームワークの共有 3.JSはDOMを解析するためのフレームワークが必要である JSの方法を見てみましょう.
01
getElementsById()
02
getElementsByTagName()
03
getElementsByName()
04
getElementsByClassName()
05
querySelector()
06
querySelectorAll()
07
document.links
08
document.images
09
document.forms
10
document.scripts
11
formElement.elements
12
selectElement.options
強いですか?しかし、私たちはJQueryを持っています.DartはJQueryを勉強しました.2つの方法しかありません.
1
elem.query(
'#foo'
);
2
elem.queryAll(
'.foo'
);
4.クラスとインタフェース Java開発者がJSを書き始めたばかりの頃、彼らはいつもJSをJavaと同じように書いていました.彼らはクラスと構造関数を書くことができて、明らかにJSはこのように游んでいません.JSでは、何でもオブジェクトで、これはかっこいいように見えますが、それらのデザインモデルは役に立たないです.代わりにJavaScriptのデザインモードです.しかし、これは開発者に多くの困惑をもたらし、コードをめちゃくちゃにした.5.継承 JavaScriptでは、Dr.Rauschmayerブログ(http://www.2ality.com/2011/11/javascript-classes.html)の通りです.PrototypeとjQueryのフレームワークを使うこともできますし、継承のメカニズムを自分で実現することもできます.これで混乱し、継承という目標を達成するために、JSはいろいろなやり方があり、頭が痛いです.Dartには類という概念があるので、「extends」というキーワードもあります.すべては簡単です!6.グローバルネームスペース JSでは、グローバルレベルにある変数があれば、すべてのスクリプトがこの変数にアクセスできます.これは恐怖で、コードが混乱します.その後、Stoyan Stefanovs Book JavaScript Patterns(http://astore.amazon.de/neoteccde-21/detail/0596806752)、私のネーミングスペースはこれからきれいになりました.しかし、なぜこのような基本的な機能言語は持参できず、いわゆるパターンでこの問題を解決する必要があるのだろうか.フロントエンドフレームワークの共有 Dartのデフォルトは「library」の範囲で、publicと宣言されたものだけが外部にアクセスできます.これは簡単で、異なるスクリプトは相互に影響しません.7.Dartは並列対応 JSには本格的な並列はありません.jQueryを介して非同期リクエストを発行しても、スレッドが1つしか働いていません.HTML 5、webworkersでこの問題を解決することができます.Dartはパラレルをサポートし、Isolatesをサポートしています.これはErlangに似ています.1つのIsolateが失敗した場合、もう1つのIsolateはこのIsolateを再起動することができます.これはかっこいいのではないでしょうか.これにより、Dartはサーバ側のプログラミングに適しています.はい、Node.jsは知っていますが、Dartは生まれながらにしてこの機能をサポートしています.8.JSはforeachをサポートしていない JSでは、このように配列を巡ります.
1
for
(
var
i = 0; i < elements.length; i++) {
2
// do something
3
}
オブジェクトを巡回することもできます
1
for
(key
in
elements) {
2
alert(elements[key]);
3
}
しかし、この方法はお勧めしません.このような遍歴方式で得られる結果は不確定なので、方法名など欲しくないものを手に入れることもできます.もちろん、jQueryはあなたの救いの星です!Dartの使用:
1
for
(element
in
elements) {
2
// do something
3
}
これほど簡単なものはないでしょう.9.奇妙な配列初期化 このコードを見てください.
1
var
a1 =
new
Array(1,2,3,4,5);
2
var
a2 =
new
Array(5);
a 1は5つの要素を持つ配列である[1,2,3,4,5]a 2は5つの要素を持つ配列である[undefined,undefined,undefined,undefined,undefined]Dartがはっきりしている.
1
List a1 = [1,2,3,4,5];
2
List a2 =
new
List(5);
10.undefinedとnull JSでは、この2つの値はほとんど交換できますが、そうではない場合もあり、頭が痛いです.Dartはnullしかありません.まとめ JSには多くの利点があり、いくつかの良いパターンがあります.しかし、今までJSができることやDartができないことは何も見つかりませんでした.Dartは明らかに優雅で、読みやすい(私にとって).JSマニアの中にはJSがいいと思っている人もいるかもしれませんが、理解できます.