4

Web アプリケーションの JavaScript の学習を開始しています。これまで、DOM 要素を操作するための基本的な JavaScript と jquery の経験がありました。私はいくつかの AJAX にも取り組んできました。最近ウェブで読んでいると、次のことがわかりました。

  • JavaScript はNode JS のようにサーバー側で使用できます。
  • DOM要素とAJAXを操作するための従来の JavaScript
  • また、フレームワーク/ライブラリを使用して、 MV* アーキテクチャ [Backbone JS、Angular JS、Ember JS など] に基づく強力なアプリケーション (クライアント側)を構築するためにも使用できます。
  • 次に、マイクロ テンプレート [アンダースコア JS、HAML-JS など]、AMD [JS が必要]、ロジック レス [Handlebars JS、Mustache、Dust JS]用の JavaScript フレームワーク/ライブラリがあります。
  • また、JS にコンパイルするcoffeescriptもあります。

このすべての読書の後、私はJavaScriptフレームワーク/ライブラリがどのように分類できるかについてひどく混乱しています

  • サイド[クライアントサイド、サーバーサイド、クライアントサーバーサイド、ブラウザサイド]
  • 機能[MV*、DOMスクリプティング、マイクロテンプレートなど]

誰かがこの混乱を各ライブラリ/フレームワークの例で説明できますか? また、Web 上で JavaScript がさまざまな方法でどのように使用されているかについての情報を入手できるリソース/書籍/スライドはありますか?

4

1 に答える 1

2

Javascript は単なる言語です。言語とそれがアクセスできる API を混同しています。ブラウザ上で、API は DOM 期間です。

サーバー上の API は、Javascript をスクリプト言語として使用するソフトウェアです。

NodeJS には DOM とは関係のない API があり、さらに NodeJS の javascript はブラウザ上で動作する JavaScript と必ずしも互換性があるわけではありません。

MongoDB (Javascript をスクリプト言語として使用するデータベース) は、DOM API も nodeJS API もサポートしていませんが、独自の API です。

Fireworks (Adobe) も JavaScript をスクリプト言語として使用しており、この API は他の「利用可能な」API とは何の関係もありません。

Dreamweaver (Adobe) は、他の Adob​​e 製品と互換性さえない API で JavaScript を使用します。

Javascript 言語が何であるかを知りたい場合は、ECMAScript (正式名称) 仕様をお読みください。Javascript は非常に最小限の言語です。

したがって、framework/library/whatever を見つけたら、そのライブラリが使用されるコンテキストを確認してください。ライブラリを並べ替えたい場合は、最初にその使用のコンテキストを知る必要があります。

client には、純粋な javascript ライブラリ (たとえば、javascript オブジェクトのみを処理するアンダースコアなど) や DOM ( jQuery 、AJAX は DOM の一部であるため、AJAX を使用するフレームワーク) を処理することができます。そのため、ほとんどの MVC/MVP /MVVM フレームワーク) または両方。

次に、javascript ( typescript 、 coffeescript 、 dart 、 haxe ... ) にコンパイルする言語があります。これは、言語でプログラムし、ソースをコンパイルし、最後に javascript を取得することを意味します。

于 2013-01-06T18:57:15.957 に答える