1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Reactの代わりとなる技術について

Posted at

はじめに

アプリ制作のフロントエンドやバックエンドの事を学ぶ中でReactについて少し学習しました。今回はReactの代わりとなる技術について少し深ぼってみたのでアウトプットしたいと思います

Reactは使わなくてもよくなった?!

Reactは、Facebookが開発したJavaScriptライブラリで、ユーザーインターフェース(UI)を構築するためのツールです。
ですが、Ruby on Rails 7以降はWebpackerの代わりにインポートマップ(import maps)やesbuild、Viteなどの新しいフロントエンドツールを導入ています。
これにより、JavaScriptの依存関係をRailsアプリケーション内で直接管理できるようになり、ReactなどのJavaScriptフレームワークを必須とせずにフロントエンドを構築することが可能となっています。

早速表にまとめてみました


フレームワーク/ライブラリ
特徴 メリット デメリット 相性のいいバックエンド
Vue.js 柔軟で学習曲線が緩やか。コンポーネントベース。 ・学習しやすい
・ドキュメントが豊富
・小規模から大規模アプリまで対応
・プラグインエコシステムが少ない
・大企業のサポートが少ない
Laravel, Node.js, Rails
Angular Googleが開発。
フルスタックフレームワーク。
・フル機能を提供
・大規模アプリに適している
・強力な型安全性(TypeScript)
・学習コストが高い
・設定が複雑
Node.js, ASP.NET, Java (Spring)
Svelte コンパイル時に効率的なコードを生成。 ・パフォーマンスが高い
・コンポーネントベースで書きやすい
・設定が簡単
・エコシステムがまだ小さい
・他のフレームワークに比べて新しい
Node.js, Go, Rails
Alpine.js 軽量なJavaScriptフレームワーク。 ・非常に軽量
・シンプルで直感的
・インタラクティブなUIを簡単に構築可能
・大規模アプリには向かない
・高度な機能が少ない
Laravel, Rails, PHP
Stimulus Railsと相性の良い軽量フレームワーク。 ・Railsとの統合が簡単
・小規模なインタラクティブUIに適している
・学習コストが低い
・大規模アプリには不向き
・限られた機能セット
Rails
Lit Web Componentsに基づいたライブラリ。 ・ネイティブWeb Components対応
・高い再利用性
・小規模なプロジェクトに最適
・学習曲線がある
・他のライブラリとの統合が難しい
Node.js, Java, Rails
jQuery クロスブラウザ互換性のあるDOM操作ライブラリ。 ・学習が簡単
・豊富なプラグイン
・クロスブラウザサポート
・パフォーマンスの問題
・モダンな開発手法に不向き
PHP, Rails, Django
Backbone.js MVCアーキテクチャを採用した軽量フレームワーク。 ・シンプルで軽量
・ 高い柔軟性
・学習コストが低い
・大規模アプリには不向き
・他のライブラリと組み合わせる必要がある
Node.js, Rails, PHP

適切なフロントエンドフレームワークの選択方法

スキルレベル 推奨フレームワーク
ライブラリ
適用プロジェクト例
初心者
基本的なHTMLとCSSの知識がある。ウェブ開発始めたばかりの人
jQuery 既存サイトのインタラクティブ化、小規模なフォームバリデーションやアニメーション
同上 Alpine.js 軽量なインタラクションの追加、シンプルなモーダルウィンドウやツールチップ
中級者
中規模なウェブサイトやアプリを構築できる人
Vue.js ダッシュボード、シングルページアプリケーション(SPA)
同上 Stimulus 小規模なインタラクティブUI
上級者 Angular エンタープライズアプリケーション、複雑な業務システム
同上 Svelte 高パフォーマンスを求められるインタラクティブなユーザーインターフェース

フレームワークの公式サイト

公式サイトは全て海外版のものです。日本語版はVue.jsとAngularのみ確認できました。

日本語版はこちら

さいごに

Reactの代わりとなるフレームワークについて私個人として見やすい表の形式で紹介しました。私自身、Reactを使用しないといけない…みたいな状態にあり、ほかの人から教えてもらうことで使用しなくても作成できることを知りました。使用するフレームワークによっては見栄え等がアップしますが、私含め初心者さんは、まずは最低限を目指しましょう!

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?