Fresopiya
場所にもお金にも時間にも、何にも縛られない自由な状態になったら一体人間は何をしてどこに向かうのか。

まずはとにかく自由を目指すエンジニアのブログです。
「哲学」と「プログラミング」と「政治経済」、「ブログ」がメインになるかと。
JavaScript

【JavaScript】フレームワーク・ライブラリ一覧

どうも、とがみんです。

以前の記事でJavaScriptとはどういうもので何ができるのかについてざっくりと紹介しました。


この記事ではJavaScriptで書かれた、フレームワークとライブラリについて紹介していきます。

JavaScriptのフレームワークの紹介

JavaScriptのフレームワークについて簡単に紹介します。

フレームワーク:アプリケーション開発に置いて、その土台として機能させるソフトウェアのこと。

Angular.js

「Angular.js」は、Google社とコミュニティが開発する、フロントエンドWebアプリケーションのJavaScriptフレームワークです。


Backbone.js

「Backbone.js」は、CoffeeScriptの作者としても知られているJeremy Ashkenasによって作られた、クライアントMVCモデルを実現するためのフレームワークの一つです。

Angular.jsは、フルスタックで様々な機能が用意されているのに対し、Backbone.jsはMVCモデルを実装するための骨組みのみを用意しています。


CoffeeScript:MVCモデル:Model(ビジネスロジックを担当する部分)、View(表示・出力を担当する部分)、Controller(入力を受け取りModelとViewをつなぐ部分)に分けてプログラムを記述する設計手法の一つ。

>Backbone.js 使い方メモ

Ember.js

「Ember.js」は2013年5月1日にVer1.0.0がリリースされた、JavaScriptのフロントエンドフレームワークです。

Ember.jsの特徴は第一に「フルスタックである」ということがあげられ、アプリケーション開発に必要な仕組みを全て提供することを目指し開発されています。

そのため、他のライブラリと比較して、初期学習コストが高くなってしまっています。


Vue.js

「Vue.js」はGoogleにおいてAngularJSを使用した開発に携わったエヴァン・ヨーによって開発され、2014年2月にリリースされた、WebアプリケーションにおけるUIを構築するためのフレームワークです。

導入や習熟のしやすさ、日本語のドキュメントが充実していることが特徴としてあげられます。

>Vue.js|Wikipedia


他のフレームワークとの比較が以下の記事に詳しく書かれています。

>他のフレームワークとの比較|Vue.js

Nuxt.js

「Next.js」は、「Vue.js」が提供しないUI以外の機能をまとめて、提供するフレームワークです。

「Vue.js」の機能はUIに特化しており、サーバーサイドレンダリング等、Web構築に有用なUI以外の機能は提供していないため、「Nuxt.js」にてそれを提供しています。


>Vue.jsで作られたフレームワーク「Nuxt.js」でできること

サーバーサイドレンダリング:ブラウザではなく、サーバー側で描画し、それをブラウザに直接送信する方法。ページ表示時の速度や、完成されたコンテンツがクローラで読み込まれるため、SEOに強い。

>Vue.js サーバサイドレンダリングガイド

Next.js

「Next.js」はReactにて、サーバーサイドレンダリングを可能にするフレームワークです。


JavaScriptのライブラリの紹介

JavaScriptのライブラリについて紹介していきます。

ライブラリ:使いたい部品が入っている道具箱のようなもの。

Knockout.js

「Knockout.js」は、リッチでレスポンシブなデザインの開発を助けるライブラリで、比較的大規模な開発であっても、簡潔なデータモデルを保つことができるJavaScriptライブラリです。

動的に変更されるUIを作成する際に、よりシンプルに保守しやすいように実装することができるようになります。


>Knockoutの機能とメリット

>Knockkout日本語ドキュメント

jQuary

「jQuery」はWebブラウザ用のJavaScriptコードを容易に記述できる用にするために設計されたライブラリです。


D3

「D3」は、Data-Driven Documentsのことで、データをヴィジュアライズするためのライブラリです。


React

ReactはFacebookとそのコミュニティによって開発されているUIを構築するためのライブラリです。


>早く・それなりの UI を実現する React コンポーネントセット 16 選

Polymer

Googleの開発社とコントリビューターによって開発が進められている、Webアプリケーションを作成するためのオープンソースライブラリです。


その他

Node.js

「Node.js」は、フレームワークや、ライブラリではなく、JavaScript環境でサーバーサイドの開発もできるようにしたアプリケーションのプラットフォームです。


まとめ

JavaScriptを用いたフレームワークやライブラリを紹介しました。

それぞれのフレームワークの比較については、以下参考文献を参考にしてください。

参考文献

>2018年も業界標準!知っておくべきJavaScriptフレームワーク&ライブラリの基本の”キ”

>JavaScript|MDN web docs

>Backbone.JSからAngular2まで、全9大JavaScriptフレームワークを書き比べた!

>他のフレームワークとの比較|Vue.js