#概要
JSのライブラリとフレームワークについて触れます。
1,フレームワークとライブラリについての違いについて
2,JSのフレームワーク
3,Vue.jsの特徴
3,コンポーネント指向とは
#1,フレームワークとは
本来、開発する上で必ずフレームワークが必要な訳ではありません。JSだけでアプリ開発を行うことはできます。
しかし、大規模な開発を大人数ですすめているとします。そして、コードの書き方が人により少しずつ変わっているとします。
このように、書き方が少しずつ違うコードを複数人で着手するのはバグに繋がります。そこで、必要になるのがフレームワークです。
フレームワークとは、再利用可能なクラスを言います。設計・開発でよく使用するコードをフレームワークが用意してくれています。
プログラマーは、フレームワークが提供してくれる枠組みにそって開発することが出来ます。
それにより、バグが少ない設計になりより堅牢なアプリケーションとして開発することが出来ます。
ただし、現段階であまり複雑な設計で無いならば無理にフレームワークを導入する必要はありません。
#ライブラリとは
ライブラリとは、コードをより簡略的に記述することが出来ます。JSで記述する長いコードをjQueryを使用することで、より簡略的に書くことが出来ます。それにより、動作を軽くすることが出来ます。
ライブラリとはユーザーが呼び出して複数回記述するコードを効率的に記述し、開発をすすめることを目的としています。
フレームワークとはすでに用意されている骨組みを再利用して効率的に開発をすすめることを目的としています。
#2,JSのフレームワーク
Angula ▶グーグルを中心に開発されているフルスタックフレームワーク
React ▶フェイスブックが開発したビュー相当の機能を提供するフレームワーク
Vue ▶ ビューに特化したシンプルなフレームワーク
#3,Vue.jsの特徴
1,コストが低い
Vue.jsは、HTMLベースのテンプレート構文を採用しています。なので、初心者にも学習コストが低いと言われています。
2,段階的に導入することができる
例えば、規模を小さく提供したアプリケーションが拡大したため機能を追加する必要が出てきたとします。その場合に、段階にあわせてシステムを導入しやすいというメリットがあります。
アプリが大規模になり、似たようなUIが出てきたら、コンポーネントを導入することが出来ます。
また、機能が増えて明確にURLを分割することが出来ます。VueRouterを使用することが出来ます。
アプリで扱うグローバルなデータを中央管理するためのデータベースが必要になってきます。そこで使用するのが、Vuexです。
#4,コンポーネント指向
コンポーネントとはアプリを構成するUIの部分です。テンプレート、オブジェクト、スタイルの集合体です。
ある程度、規模が大きくなるとコンポーネントを組み合わせて作リます。
コンポーネントは、複数配置することも出来ます。また入れ子にすることも出来ます。