Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
JS Framework入門(2018)
Search
airhand
April 11, 2022
Programming
0
76
JS Framework入門(2018)
Slideshareより移行
airhand
April 11, 2022
Tweet
Share
More Decks by airhand
See All by airhand
Docker 入門
airhand
0
97
ansible入門
airhand
0
260
Other Decks in Programming
See All in Programming
CSC305 Lecture 10
javiergs
PRO
0
330
なんでRustの環境構築してないのにRust製のツールが動くの? / Why Do Rust-Based Tools Run Without a Rust Environment?
ssssota
14
47k
NIKKEI Tech Talk#38
cipepser
0
340
alien-signals と自作 OSS で実現する フレームワーク非依存な ロジック共通化の探求 / Exploring Framework-Agnostic Logic Sharing with alien-signals and Custom OSS
aoseyuu
3
4.8k
SwiftDataを使って10万件のデータを読み書きする
akidon0000
0
250
AsyncSequenceとAsyncStreamのプロポーザルを全部読む!!
s_shimotori
1
190
オンデバイスAIとXcode
ryodeveloper
0
350
はじめてのDSPy - 言語モデルを『プロンプト』ではなく『プログラミング』するための仕組み
masahiro_nishimi
4
17k
CSC305 Lecture 11
javiergs
PRO
0
320
Towards Transactional Buffering of CDC Events @ Flink Forward 2025 Barcelona Spain
hpgrahsl
0
120
Go言語はstack overflowの夢を見るか?
logica0419
0
670
AI Agent 時代的開發者生存指南
eddie
4
2.2k
Featured
See All Featured
A Tale of Four Properties
chriscoyier
161
23k
Statistics for Hackers
jakevdp
799
220k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Facilitating Awesome Meetings
lara
57
6.6k
4 Signs Your Business is Dying
shpigford
186
22k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
54k
Designing Experiences People Love
moore
142
24k
Speed Design
sergeychernyshev
32
1.2k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
For a Future-Friendly Web
brad_frost
180
10k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
The Pragmatic Product Professional
lauravandoore
36
7k
Transcript
JS Framework 入門 社内勉強会資料
Webフロントエンドの世界は 流行り廃りが激しい
参考 https://medium.com/japan/2 016年にjavascriptを学ぶとこ んな感じ-b969f5767d7c
JSバージョン ECMAScript 5 ES2015 (ES6) ES2016 ...
AltJS TypeScript CoffeeScript
トランスパイラ ブラウザによっては、特定バージョンのJSをサポート していない場合があるため、Babelなどで新しい記法 をES5に変換したりする また、TypeScriptといったJSに静的型付け機能を入れ たものがある こちらもそのままではブラウザが解釈できないので、 最終的にはJSに変換される コンパイル :
ソースコード -> 実行ファイル トランスパイル : ソースコード -> ソースコード
CSS Sass(Scss) Less PostCSS
タスクランナー Grunt Gulp Webpack (どちらかというとアセットバンドラー)
皆大好きjQuery jQueryはDOMに問い合わせるクエリという意味でつ けられた 元々jSelectと命名する予定だったらしい ブラウザに依存せずに共通処理でDOMの選択が出来 て、 他にも機能が豊富に追加されたために人気を得た
jQuery <div id="foo"></div> <script> $(function(){ $("#foo").html("<p>jQueryでタグ作成</p>"); }); </script> シンプルなものならこれでも十分だが 変数が変わる度に、DOMの値を直接変更する必要が
ある ロジックと表示の管理が分離できない
多様なフレームワーク React Vue.js Angular Aurelia データバインディング機能を備えているため、 JavaScriptオブジェクトのステータスを変更するとそ れがDOMに反映される
React Facebook製。表示に特化しているのでフレームワー クというよりライブラリに近い 従来のように直接htmlを記述することはなく、JS内 にJSXというXMLに近い構文で記載する いわゆる古い実装方法とだいぶかけ離れたことをする 必要があり、学習コストが高い 一から環境を用意するのは厳しいがボイラープレート 生成ツールが用意されている
Vue.js Reactと比べて後発のフレームワーク カバーする範囲はReactに近いため、コアは表示に特 化している ECMAScript 5で動作するため、IE9以上のブラウザを 標準サポート htmlをテンプレートとして使用できるため、学習曲 線はゆるやか PHPフレームワーク
Laravelに組み込まれている
Angular Google製のフレームワーク AngularJS (v1) Angular (v2 - ) v2以降をAngularと呼称する AngularJSと互換性が保たれていなかったりする
React、Vue.jsと異なり、コアに様々な機能が搭載さ れている TypeScriptの使用が推奨されている
Aurelia AngularJSの開発者が作成したフレームワーク all-in-oneなので、Angularに近い この中では最も後発 コントリビュータの数でもAngular、Vue.jsを上回る ほどコミュニティが急成長している TypeScriptもしくは次世代のECMAScriptを使用 htmlテンプレート
demo js-framework-samples
まとめ Angular AureliaなどのAll-in-oneフレームワークは必 要な機能は大抵揃っているが、選択ができないところ がネックか React、Vue.jsだけではいろいろなアプリケーション の開発はできないので、自分で必要なものは探す必要 がある