Ajax以前から遡る業務アプリとJS、そしてMVC JSへ

なぜこんなにjs関連ライブラリと言語があるのかについて

発表しないこと

宿題

目次

javascript今昔物語と業務アプリ

javascript今昔物語

20世紀のjavascript

昔のjavascriptの例

かつて、javascriptを使ったWEBアプリが推奨されない時代があったらしい

時代は流れて、2005年

GmailとGoogleマップ

ページ遷移がないWEBアプリ

XMLHttpRequest

JavaScriptでHTTP通信を行うためのClass

XMLHttpRequestによる非同期通信、いわゆるAjax

こうして世の中に、ページ遷移を伴わない機能やページのあるWEBアプリが増えたとさ

そして、時代は流れて2010年台

iPhoneとAndroid

モバイルアプリの時代

WEB API化するサーバーサイドWEBアプリ

WEB API

WEB Application Programming Interface の略、一般的にはHTTPリクエストに対してXMLまたはJSON形式をレスポンスと返す

で、WEBアプリは?

モバイルアプリと合わせて、主なアプリとしての処理をJavascript(クライアントサイド)が担当、データの参照更新はWEB API(サーバーサイド)が担当するような最近の傾向

メリットは処理共通化

デメリットはJavascriptのコード肥大化による、コード品質の低下

対策は後ほど……

業務アプリとjavascript

サーバ非同期通信を行わないWEBアプリでjavascriptの主にやること

フォーム操作

HTMLのフォームは、ブラウザからサーバーにデータを送る手段を提供するセクション(コントロールともいう)

例:通販サイトでカートに商品を追加して、購入ボタン押すと、購入確認ページに遷移する。

例:通販サイトでカートに商品を追加して、購入ボタン押すと、購入確認ページに遷移する。

通知

例:通販サイトでカートに商品を追加して、購入ボタン押すと、購入確認ページに遷移する。

例:通販サイトでカートに商品を追加して、購入ボタン押すと、購入確認ページに遷移する。

入力チェック

例:通販サイトの会員ログイン画面で会員IDとパスワードを入力して、ログインボタンをクリック

例:通販サイトの会員ログイン画面で会員IDとパスワードを入力して、ログインボタンをクリック

なぜこんなにjs関連ライブラリが存在しているのか

javascriptは言語として、あまり良くないと一般的に思われている

一般的にあまり良くない言語として思われている理由1

一般的にあまり良くない言語として思われている理由2

とは言われているものの、言語としては自由度は高い

世の中の偉い人達の対策

補足:DOMとは

Document Object Model

HTML文書やXML文書をアプリケーションから利用するためのAPI JavascriptでHTML操作を支える技術

なぜこんなにjs関連ライブラリが存在しているのは、javascriptは言語としてあまり良くないと一般的に思われているが言語としての自由度が高いので、ライブラリの開発しがいがオープンソース開発者にあるから

最近のJavascript ライブラリなどの紹介

zeptojs

underscore.js

Grunt

CoffeeScript

TypeScript

Knockout.js

AngularJS

Backbone.js

jsrender