バニラJavaScriptを選択する

2014年2月19日

jQueryを用いて書いたコードと同等な働きをするコードをjQuery抜きで書くとどのようになるのかを示したWebサイト「You Might Not Need jQuery」(jQueryは必要ないかも)が先日話題になりました(はてなブックマークも180以上付いています)。

ちょうどこのWebサイトを話題にした記事「Choosing Vanilla JavaScript」が、Webデザイナ向けに情報発信をしている著名なWebサイト、A List Apartに掲載されていました。

Vanilla JavaScriptとは、要するに何もトッピングされていないバニラアイスクリームのように、jQueryなどのライブラリを使わない素のJavaScriptのことを示しています。

この記事は何でもjQueryを使うのではなく、正しい選択をしようというテーマの内容になっており、参考になりそうだったので翻訳しました(A List Apartの翻訳は許可されています)。

Choosing Vanilla JavaScript ∙ An A List Apart Blog Post

Choosing Vanilla JavaScript

著者:ANTHONY COLANGELO

私を含む世の中の多くのJavaScriptデベロッパーはjQueryが好きだ。それは優れたツールがそうであるように、とても役に立つし、なにか大きなWebアプリケーションで多くのフロントエンドコードを開発するときに、jQueryはとてもパワフルな役割を果たしてくれる。

けれども、比較的小規模から中規模な開発を行おうとするときには、バニラなJavaScriptを使うことをまじめに検討すべきだ。ときにそれはまるで古い手仕事のように思われるかも知れないけれども。

You Might Not Need jQuery(jQueryは必要ないかも)というWebサイトは、こうした場面に対する素晴らしい情報源だ。jQueryを使ったコードに対応するバニラなJavaScriptコードを教えてくれる。これによってjQueryがどんな動作なのかも、直接的に知ることができるだろう。

それぞれのコードを並べてみることは、どちらの立場にとっても有用だ(「jQueryは必要ないかも」であって「jQueryは必要ない」ではない点に注意)。要素を選択するだけなら、jQueryを使うかバニラなJavaScriptを使うかは、アニメーションのコードほど大きな違いがでることはない。だからもし、あなたが要素を選択することを多用しているのなら、バニラなJavaScriptを採用すればよい。もしもあなたがアニメーションを多用しているのであれば、jQueryは正しい選択だ。

歴史的に見て、jQueryは優れたツールだった。あらゆるクロスブラウザの問題を解決してくれたからだ。しかしYou Might Not Need jQueryの作者は次のように説明している。

Some developers believe that jQuery is protecting us from a great demon of browser incompatibility when, in truth, post-IE8, browsers are pretty easy to deal with on their own.

jQueryはブラウザ間の非互換性という大きな怪物から身を守るものだと、信じているデベロッパーは一定数いるけれども、実際にはIE8以後のブラウザでは、そうした問題は以前より扱いやすくなっている。

もしもjQueryを使わないのであれば、自分でブラウザの非互換性を解決するか、あるいはプログレッシブエンハンスドのユーザー体験を構築するかを選ぶことができる。いずれにせよ、利用者の稼働環境としてJavaScriptを要求するべきではないけれど。

バニラなJavaScriptを書く工数(およびjQueryをロードしないことによるリクエストやデータの減少)と、いくつかのブラウザにおいて完全なユーザー体験を保証しかねる点を秤にかけ、ほかのあらゆる仕事と同様に、あなたやチームや何を作るかによって正しい選択をしよう。

著者:Anthony Colangelo
Anthony ColangeloはフィラデルフィアのHappy Cogで働くデベロッパーで、同社のハイブリッドフロントアンドバックエンドデベロッパーであり、レスポンシブデザインからオブジェクト指向プログラミングまでのどの技術も好きである。彼とはTwitterで開発について対話できる。

このエントリーをはてなブックマークに追加
Bookmark this on Delicious

タグ : JavaScript , jQuery

≪前の記事
[PR]Linuxビジネスを成長させたエンジニア上がりのリーダーが語る、ビジネスがうまく行かないリーダーのための処方箋

Loading...

Blogger in Chief

photo of jniino Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。新しいオンラインメディアの可能性を追求しています。
詳しいプロフィール


新サイト「Publickey Topics」始めました!


Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
RSSリーダーで : Feed





アクセスランキング - 過去7日間

  1. NetAppのオールフラッシュストレージアレイ、参考価格2930万円がたった550円で販売! 1台限定で。ネットワールド
  2. x86サーバの開発に取り組むマイクロソフトとx86サーバの事業を手放すIBMと
  3. Software-Defined Storage、これからのストレージ技術が実現する世界とはどのようなものか?
  4. バニラJavaScriptを選択する
  5. [PR]Linuxビジネスを成長させたエンジニア上がりのリーダーの、リーダーシップ実践論とは?
  6. モバイルBaaSのStackMobが5月でサービス終了を発表。買収されたPayPalのモバイル強化へ注力
  7. Gitクライアントの「SourceTree for Windows」、日本語化された最新版が無償公開、アトラシアン
  8. Windows AzureがOracle DatabaseとWebLogicのプリロードVM提供、3月12日開始。1時間あたりOracleで113円から
  9. [PR]Linuxビジネスを成長させたエンジニア上がりのリーダーが語る、ビジネスがうまく行かないリーダーのための処方箋
  10. エンタープライズ向けのアプリストアを次々に発表するヒューレット・パッカード。DWHのVertica向けアプリストアを発表。企業向けモバイルアプリストア、SDNアプリストアも
  11. サーバ市場でシェア2位のIBMがx86サーバ事業をレノボに売却し、メインフレームとPowerサーバを持ち続ける理由
  12. IT系上場企業の平均給与を業種別にみてみた 2013年版 ~ パッケージベンダ、SIer、ホスティング企業編
  13. JenkinsとSeleniumでJavaScriptのテスト自動化、最初の一歩。第1回 日本Seleniumユーザーコミュニティ勉強会
  14. Fusion-ioがオールフラッシュストレージアレイ「ION Accelerator」とハイブリッドストレージアレイ「ioControl Hybrid Storage」発表。エンタープライズ市場で本格的に戦う姿勢を示す
  15. Publickey Smar

Publickey 最新記事 10本

Publickey Topics 最新記事 10本


PR - Books


fig

fig

fig

fig



blog comments powered by Disqus