MooTools
開発元 | MooTools開発チーム |
---|---|
最新版 | 1.6 / 2016年1月14日[1] |
リポジトリ | |
プログラミング 言語 | JavaScript |
種別 | Ajaxフレームワーク / JavaScriptフレームワーク |
ライセンス | MIT License |
公式サイト | http://mootools.net |
MooTools は、オープンソースの軽量でモジュラーなオブジェクト指向 JavaScript Webアプリケーションフレームワークであり、MIT License でリリースされている。その目的は、Web開発者にブラウザから独立したエレガントで柔軟で効率的なJavaScriptを書く手段を提供することである。MooTools には、CSS、DOM要素、ネイティブなJavaScriptオブジェクト、Ajax要求などを操作する組み込み関数がある。また、詳細なAPI文書が用意されており[2]、開発の効率化に寄与する。
利点
[編集]MooToolsはネイティブなJavaScript以上の利点をユーザーに提供することを目指している。例えば、次のような利点がある。
- 拡張性があるモジュラーなフレームワークであり、開発者は使用するコンポーネントを選択できる[3]。
- オブジェクト指向の慣習とDRY原則に従う[4]。
- Flash開発者が使うような最適化された遷移を伴う特殊効果コンポーネントがある[5]。
- DOMを拡張し、開発者が容易にDOM要素を追加・更新・選択・削除できる[6]。
コンポーネント
[編集]MooToolsには多くのコンポーネントがあるが、各アプリケーションで全てをロードする必要はない。コンポーネントは以下のように分類されている。
- Core: 他のコンポーネントで必要となるユーティリティ関数の集まり[7]。
- Class: Classオブジェクト実装のための基本ライブラリ[8]。
- Natives: JavaScriptのネイティブオブジェクトの拡張。機能や互換性を強化し、新たなメソッドを追加し、コーディングを単純化している。
- Element: HTML要素オブジェクトへの各種拡張と互換性強化[9]。
- Fx: 要素のアニメーション効果のためのAPI[10]。
- Request: XHRインタフェース、クッキー、JSON、HTML検索専用ツールなどを提供[11]。
- Window: ウィンドウサイズなどのクライアント固有情報へのインタフェース(ブラウザ非依存)[12]。
ブラウザとの互換性
[編集]MooToolsは以下の各ブラウザのバージョンで評価し動作確認されている[13]。
- Safari 2+
- Internet Explorer 6+
- Mozilla Firefox 2+
- Opera 9+
- Camino 1.5+
オブジェクト指向プログラミング
[編集]MooToolsは多くのオブジェクト指向言語と似たようなしっかりしたクラス生成と継承のシステムを備えている。例えば、以下は英語版Wikipediaにあるこちらのポリモーフィズムの例と同じことをMooToolsで実現したものである。
var Animal = new Class({ initialize: function(name){ this.name = name; } }); var Cat = new Class({ Extends: Animal, talk: function(){ return 'Meow!'; } }); var Dog = new Class({ Extends: Animal, talk: function(){ return 'Arf! Arf'; } }); var Animals = { a: new Cat('Missy'), b: new Cat('Mr. Bojangles'), c: new Dog('Lassie') }; for(var animal in Animals) alert(animal.name + ': ' + animal.talk()); // alerts the following: // // Missy: Meow! // Mr. Bojangles: Meow! // Lassie: Arf! Arf!
関連項目
[編集]- JavaScript
- Ajax
- Web 2.0
- XMLHttpRequest
- リッチインターネットアプリケーション
- AngularJS(1.x,2.0α Ver)
- Aurelia.js
- Backbone.js
- Ember.js
- JavaScriptライブラリ
- Javascript framework
- JQuery
- Knockout.js
- MooTools
- Polymer
- Prototype JavaScript Framework
- Ractive.js
- React
- Riot.js
- vue.js
脚注・出典
[編集]- ^ “MooTools Blog: 1.6.0 is out!”. 2016年5月19日閲覧。
- ^ MooTools Documentation
- ^ MooTools' Core Download Page
- ^ MooTools Class Object
- ^ MooTools' Effects (FX) Class
- ^ MooTools' Element Class - A comprehensive list of Element manipulation methods.
- ^ MooTools Core
- ^ MooTools Class
- ^ MooTools Element
- ^ MooTools Fx Class
- ^ MooTools Request Class
- ^ In addition to getting the size for any Element, you can easily get the dimensions of the window.
- ^ MooTools lists its compatibility on its homepage.
外部リンク
[編集]- mootools.net - 公式サイト
- 公式ユーザーグループ
- The MooTorial
- Mootools Essentials (book)
- jQuery vs MooTools: Choosing Between Two Great JavaScript Frameworks
- Clientcide Blog and Plugins by Aaron Newton
- Guillermo Rauch - MooTools Articles, Tutorials, Tips and Plugins by Guillermo Rauch
- David Walsh Blog - MooTools Tutorials and Plugins by David Walsh
- mooforum - The Unofficial MooTools Community
- MooTools 1.1 Plugins
- Free Mootools Plugins
- A widgets library built on mootools