miriwoのブログ

IT系の技術や少し趣味よりのことも投稿してゆくよ😊

JavaScriptが全然わかってない問題(備忘録と独り言多数)

目的

  • 正直ちんぷんかんぷんなJavaScriptの超基礎の基礎を調べたのでかんたんにメモする

ことの発端

  • 最近お仕事でPHPを書かせてもらっています。Laravelを使った既存サービスのユーザーインタフェース変更の歳にビューにJSを用いた動きのある表示をすることとになりました。
  • bladeファイルに直接 script要素 で記載してもJSが当たらなかったりそもそも書き方がわからなかったりでよく考えたらJSがどういうものでよく聞くReact.jsとかNode.jsとかAngularとかVue.jsとかがJSをどう絡んでいるのかがイマイチわかっていないことに気がつく。

よく聞くReact.jsとかは全部JSのフレームワークだと思ってた

  • サーバサイド言語に触れ始めて1年ちょっと、PHP Laravelに触れ始めて半年で超絶初心者な自分ですがそもそもの勘違いをしていました。
  • 〇〇.jsは全部JSのフレームワークだと勘違いしていました。(ちなみに筆者のフレームワークに対する認識は「素の言語でアプリ作るより色々用意されているから便利なやつ」程度です。)
  • ちなみにReact.jsはライブラリらしい、PHP Laravelで言うところの$ composer installでインストールするパッケージとかに近いのかな?
  • AngularJSはフレームワークらしい、だからPHPで言うところのLaravel、RubyでいうところのRailsみたいな感じかな?

最近のよく聞く〇〇.jsの分類

ちょっとだけ〇〇.jsを調べてみた

JQuery

  • 古の頃からのロングセラーなJSライブラリで簡単に書けるから学習コストが低いらしい
  • JSの定番中の定番のライブラリ

React.js

Node.js

  • サーバサイド用のJS非同期で処理するから大量の同時接続などを処理できるライブラリ
  • 多くの人が同時にアクセスするSNSとかに向いてそう

AngularJS

  • Googleが開発したフロントエンド向けフレームワーク、大企業向けらしい
  • MVCパターンをサポートしているらしい、

Angular

  • AngularJSの後継らしい、けど仕様はめっちゃ変更されているっぽい
  • JSじゃなくてTypeSctiptで作られているらしい(TypeScriptはJSに色々機能追加した言語)

Vue.js

調べてみての感想

  • LaravelのAPI実装の勉強をしているときにJSONを言語だと勘違いしていたことを思い出した。(調べてみたら「そうだったのか」というもやもやが晴れる感じ)
  • 勝手な偏見だが未経験エンジニアの中でモダンなJSのフレームワークは流行っている気がする。流行っているときに自分自身JSはほぼ書いたことなかったのでものすごく苦手意識がある。そしてあえて避けていた感もある。
  • 今回調べてみて「Vue.js」がフレームワークであり「JQuery」がライブラリなどの整理ができただけでも理解に一歩近づいた気がする。