Vue vs React vs Angular vs Svelte Part.11
>>49
おう初心者が来てやったぞ
2日かけてVue3イジって出た結論が『これから初心者がやるならReactの方がマシ』だ
リリースから3年も経ってるのに主要なnpmパッケージがろくにバージョンアップされてない時点で終わってるの丸出しなんよ
せいぜいVue2の時はnpm経由でやれてたことをガチャガチャ書いててくんな
Vue3なんてVue2のEOLで頓死してるVueラーがバンザイ突撃するだけのもんで初心者が付き合うモンじゃねーわ Vueは明らかにjQuery利用者の後釜狙ってるのはわかる、vuetifyを整備したのはその布石。Reactと競合しようとは考えてないだろうな
競合考えてたら、ViteはReactサポート打ち切る
だが、いい加減CDNでscript setup使えるようにした方がいい。いつまで初心者にあのボイラープレート書かせる気だ >>55
Vue2?
あんなオブジェクトの分割代入もできない、イベントバス使ったAPIでしか兄弟コンポーネントにステート送れなかった
AngularJS時代のレガシーに毛が生えたもの使い続けても未来なんてなかったからな
けどな、Reactもクラスコンポーネントと関数コンポーネントの過渡期で、Reactは関数コンポーネント、React Nativeは
クラスコンポーネントで書かされたという二元管理強いられた、鬱陶しい過去があるからそこはお互い様だ svelte5でrunesとかいうのが追加されるみたい ワイ、おっさんなんやが、reactやって、vueやってからsvelteやったんだが、
1番わかりやすかったのがsvelteだった。
reactの時代は続くだろうけど、正直継ぎ足して機能が増えてる印象があるんやが、若い人は覚えていけるのすごいと思う。 react と vue を都合好く混ぜたのが svelte だと思っている。 ワイは、reactとvueを使った時、なんと言っていいかわからんが、なんか回りくどい感じがしてたんやが
svelte使って、すごい直感的やな、と思ったで。 残念ながらどこも使ってない
あくまでもスベルトはお遊び学習用 Svelteは柔軟に見えてJSへの制約ガチガチなんだよな。ストアやディスパッチ使ったらわかる。見た目以上の鬱陶しさが
>>59
useReducerすら使いこなせない人がReact触ってるからな。フックも今や21あるけど何人が全部マスターしてることやら フックは都度必要に応じて作るもんじゃないの?
うちのプロジェクトのフック置き場に山ほど転がってんだけど クラスの継承みたいにフックの多さが可読性やら何やら下げる要因にはならんのかい? jsxの時代になってからweb開発始めたからsvelteの構文そんな馴染み無いんたよな Flutterと連動するWebアプリを開発しようとして、
Dartで書いたViewModelやModelをjavascriptに書き直しただけのコードをそのまま流用できるフレームワークを探したら、
Angularに行き着いた
Flutterの自由度が低いから、Angularの自由度が低くても釣り合うだろう(適当) Flutterと連動するWebアプリを開発しようとして、
Dartで書いたViewModelやModelをjavascriptに書き直しただけのコードをそのまま流用できるフレームワークを探したら、
Angularに行き着いた
Flutterの自由度が低いから、Angularの自由度が低くても釣り合うだろう(適当) Angularはstandalone APIになってから自由度めちゃくちゃ高くなったよ
もともと記述自体の自由度は高いフレームワークなんだけどね Angularって大きいSPAでもないと使う候補に挙がらないから使える人が増えないんだよね
Reactは小さいブログにも使われてるのに 業務はエンジニアのリクルートの都合でReactが優勢だと思う
Angularで求人をかけるとマジで人が集まらない 業務はエンジニアのリクルートの都合でReactが優勢だと思う
Angularで求人をかけるとマジで人が集まらない 5chでAngular.jsの質問したらVue.jsを薦められた
納得してそれ以降Angularは使ってない AngularよりVueを採用する最大のメリットはレンダリング速度かな
単純に開発者の数で言えばまだ互角だろうし しかし数年前のreduxってあれなんだったんだろうな。。今も使ってるやついるんか? Next.jsが出てからだいぶ変わったからなReact環境は redux系の状態以上ライブラリ自体はまだ進化してるけど
reduxをそのまま使ってる人はもうそんなにいないだろう Next.jsとApache+Laravelってどっちのほうが処理速度速いの?
MySQLも使う やることによるのでは
ApacheはNextjsより速いだろうけどLaravelはNextjsより遅いよ Next13から覚えて使ってみたけど、Turbopackの再ロードの遅さなんとかならんのあれ
Viteに慣れるとあの遅さはストレスになる
>>79
ReduxにしろVuexにしろ、あれはコンテクスト遷移ができなかった頃のドリブル回避用データ管理アイテム
ReactとSvelteはcontext関係のメソッドあるし、VueとAngularはprovideとinjectがあるから
不要とまでは言い切らんがお役御免になってきた。データはフロントエンドで管理すること多いし どこかの開発系サイトでその表現を見たんだが単なる思い違いかも知れん。すまん
要はバケツリレーのような非効率なコンポーネント間のデータ受け渡し >>85
やっぱりルーティングって処理重くなるんだな
ルーティングを前提に設計されてるやつとはちがいあるのか >>88
バケツリレーの事か
しかしコントロールをキチンと設計して単体テスト入れると
おのずとそうなるから苦にはならんなーー 今のredux使ってるサービスの技術的負債感えぐい AppleのドキュメントやWebサービスはReactもVueもSvelteも使われてた ドキュメントなんてそんな複雑でもないしなんでもいいんだよは もうこのSPAフレームワークの形で今後30年は使いそう
React出てからすでに10年経過してるけど フロントエンドライブラリでtemplate要素って使うの?
表示するコンテンツの雛形自体をファイルで用意するイメージなの? Million.jsってすごいね
仮想DOMでこのパフォーマンスが出せるものなのか Million.jsってすごいね
仮想DOMでこのパフォーマンスが出せるものなのか Vue.jsでやるにしてもJSXとstyled-components使いたい styled componentsなんてReactでも使われなくなってきてるのに… >>101
え、そうだったの!?
styled componentsかTailwindの二強だと思ってた >>101
え、そうだったの!?
styled componentsかTailwindの二強だと思ってた 剥がす前提なんだ
CSS Modulesが無難ってことか 最近のCSSinJSはEmotionがよく使われてるんじゃないの
RSCのせいでEmotionも使えなくなってくるからまた変わるだろうけど Emotionっていうのが流行りなんだ
勉強になります Vueって単純に出来が悪いわ
この書き方面倒だろうけどフレームワークの都合だから合わせてくれな!ってのが多すぎて気持ち悪い
ビジネスロジックに集中できん ref、reactiveとか.valueとか大変ですよね 記述の手間はReactも一緒だけどuseRefで変数定義すればいいのねって覚えたらそれで終わりなんだよな
Vueは思ってたのと違う挙動が多発して内部実装の都合を探る大冒険が待ってる >>111
思ってたのと違う挙動って例えばどんなのがある? reactは言語ライブラリーの出力結果だから
言語的に知らん機能でもIDEのサジェスト機能とか効くし結果も予測できるけど
vueは決め事だから
そんなの誰が決めたねん!とか、何処にそんな機能あるねん!とかなる JSXもVueもエディタサポート必要だからそんなに変わらんぞ >>115
そりゃ概念的には違うと思うが、実用面で大きく違うとは思わないけどなぁ…
型チェックの話されるなら理解もできるが
そもそもそんなの誰が決めたって話になるとフレームワーク全般そうなるんよ 変数バインドできます
イベント処理できます
フレームワーク本体に求めてるのって結局これだけなんだよね
だけどVueはここがずっと迷走してるから辛いんよ すいませんVue3(options)で確認したいのですが
v-forで複製した要素(コンポーネント)に
個別にDOM操作をかけたいのですが
$refsにindex指定とかで取得できたりしますでしょうか。
コンポーネントにpropsでデータをbindして渡して
コンポーネント側で変更処理させる事は複雑だと思い
親側で子のDOM操作すれば良いと思いました。 一通りやったけど、Angular一択だと思う。
Vueは論外。
Reactは予想不能な動作が多すぎる。
OnLoad時にサーバにアクセスしてデータを受け取るのを待って描画っていう一番ありがちなシチュエーションを簡単に書けないのもReact
だいたいScriptの中にHTMLが入り乱れるJSXとかあり得ない。
完全に分離できてるのがAngular
さすがGoogle様や コード理屈わかって書けない人には
Reactは無理よ
UIライブラリーとかめちゃくちゃ作りやすい
プロ指向なのがReact
因みに日本人エンジニアにプロの割合はかなり低い Reactはデータが更新されたら画面も更新するっていうシンプルな設計だから
画面に表示されたときにデータを取得するような設計は本来の使い方とは違うんだよね 正直すまなかった。
そもそもAngularとReactを比べるのは間違いなのね
Angularと比べるならNextjsか。
Reactに相当するものはAngularには無い Angularとかvue.jsは
上位エンジニアの成果物を使って
下位エンジニアが作業するスタイル
が故に想定しているエンジニアの対象も異なる フレームワーク使わなくてもjsxは使いたいって言われる時代なのに jQueryの頃からライブラリで使われてる便利機能をバニラが落とし込む仕組みはやってるしね
prototypeでDOM操作はキツイ 俺はある程度の規模まではVueのoptions APIで良い派
規模がデカくなる場合はNuxtへ
間違っても単体のVueでコンポーネントは使うべきじゃない このスレでMillion.js知ったんだけどこれ使うだけでReactのパフォーマンスめっちゃ上がるんだな
もうpreactいらないやん React 19でやっとmemoしなくてよくなるみたいだな
ようやくsvelteに追いついたか options APIなんぞ捨てろ。次の3.4で非推奨になる可能性大だ。setup書けるようになっとけ。初代composition APIよりずっと書きやすいし
理屈もわかりやすい。あとprovideとinjectとuseRouteとuseRouterだけは覚えとけ
refとreactiveの用途の違いがわからん?そんな奴はrefだけ使っとけばいい
>>130
そのSvelteは5でKITメインになってデフォルトでSSG化するみたいだが。Rune試そうとしたら、まずそこから理解しなくちゃなんないのでかなり焦った >>128
むしろVueはLaravelのフロントで用いるケースが増えてる気がする。Vite+Vue+Vuetify+Laravel+αあたりが鉄板化してる。Laravelのフォーム制御、cakeよりショボいからうまく相互補完できてる
Reactは逆にNextのためのツールになりつつあるな。NextはViteにデフォルト対応していないのがむず痒いが(Turobopackはロードが遅くてモヤる) >>121
Angularも17になって脱テンプレートで、かなり書き方変わってますますAngularJS、Vue.jsとの血脈が薄くなったと思った
いよいよ、次の18でクラスコンポーネント解体に向かうんじゃないかと思ってる 規模を考えるような規模の時点でVueを使うこと自体がストレス要素にしかならんわ
コンポーネントって単語が頭を過ぎった時点で選択肢から外したほうが確実 規模を考えるほどのプロジェクトになったらもはやAngular一択では。Reactは少人数で開発するにはいいけど共同開発を考えて設計されてない
あとデザイナーから煙たがられてるし
Vueは自由度が高い反面、高すぎて素人がトンデモ開発して世界中から嫌われてた一時のPHPみたくなってる気もする
縛りが少ないから、設計能力のない人が触ると絶妙なスパゲッティになるのも共通してる >>132
Next使わないならReact使うメリットが薄くなってきたね
完全にサーバーサイドフレームワークになりつつある
エコシステムも周りに合わせる感じがなくなってきた >>135
テンプレート廃止マジ?
JSXみたいな感じになる訳?
うーむテンプレートの何が嫌なのか理解できない
サーバーサイドではテンプレートが至高という結論が出て実際それが1番描きやすいのに ほぼジジイだけどLaravel+vueとReact+NextでWebアプリ作ったらフリーランスで生きていけるかな?
サンプルとなるWebシステムのポートフォリオ作って応募に出せば採用してくれそう? >>135
一択と言われてもな
新規にAngular採用してるの見たことないが >>137
JSXというよりSvelteとかLaravelみたいな式埋め込みになってる
ng-templateが煩雑だったからそこをスッキリさせてる。廃止というより脱却というスタンスだからどっちも使えるけどね 今まではお互いライバルだったけど、axios出てきてから完全に本来の本分を果たす独自進化の段階に入ってる
Vue→Laravelとタッグでフロントエンド専
React→Vercelと蜜月で、サーバーサイド専
Angular→単体アプリ専
【以下はチラシの裏】
Vue→フォーム制御がPHPでは限界があった。簡単にフォーム制御できるAngularJS作ったけど、ソースがスパゲッティ
Googleは大規模化したAngular2にしたけど、簡潔さがなくなった→開発者の1人がVueを作った
一時はReact、Angularに対抗して状態管理のVuexとか作ったけど、大規模化には限界がある
ECMA5に対応するためにcompositionAPI、TypeScriptに対応するためにsetup、
更にシェアを増やすためにVite作った。爆速起動ビルドすげえってことで欧米で、Vueも注目を浴び始めた
処理の遅いLaravelがVueに目をつけてタッグを組んだ(標準ライブラリ化)。他のバックエンドもVueと連携できるように
今のVueはLaravelだけでなくRails、DjangoにJAVAなどまで対応した万能フロントエンドツールへ
React→自社で作ってたFacebookの制御用、フォーム制御というより細かなステート管理用に作った。けど、ビルド遅かった
Next.jsが出てきてから遅い問題クリア。デプロイ不要なんでSSG最高や!Herokuとか最初からいらんかったんや!!
GatsbyにAstroも出てきて、サーバーサイド一択、React Nativeも過去の遺物になりつつある
Angular→AngularJSはもうあかん→JSフレームワークだけでフルスタック化→操作が複雑でReactにシェア奪われていく
12のバグで致命的に→13からリベンジ開始(13でフォーム制御改善、14でスタンドアロン化、15でインジェクタ実装、
16でシグナル、17で脱テンプレ)
モジュールの互換性uzee→最初から一通り揃ったAngular、実は悪くないんじゃね、という見直しの動きもちらほら
大規模な専用アプリ開発用に特化 vueとangularはいつからかパフォーマンスめっちゃ速くなってる
仮想DOMはオーバーヘッドなんて言われたりするけど仮想DOMを使ってるsvelteとかと大差無くなってきている
まあシェアナンバーワンのReactがまだ遅いんですけどね
React 19で改善するといいね >>143
文章見直した方が良いぞ
チラシの裏でももう少しまともな日本語を使う >>143
チラシの裏だから校正するのめんどかっただけ。まとめた結果が上の三行
ReactはNextで動かす分にはパフォーマンス問題ない気もする。特に13になってからすごいわかりやすくなった どのフレームワークもパフォーマンスはテンプレートエンジンのように使えば大差ないんだよな
問題はDOM操作よ
Reactはこれがとんでもなく重い
Million.JS使おうね このスレで Alpine.js 検討している人いる?
GitHubの星数すごいし
CDNでサクッと使える簡易版Vueみたいな印象。
個人的にはJQueryの後継になるのではと
期待している。 alpineは小さいだけでパフォーマンスは最悪だぞ
こんなんで大規模アプリなんて作るな ちなみに alpine linux もサイズを小さくしてるだけで、パフォーマンスはDebianなどより良いわけではない。
Debianならスリム版があるので通常ではコンテナはそちらを選ぶほうが良い。 まず使われているサイトを見たことがないsolid.js
litはそこそこ広まってきてるけれど 海外ではInferno.jsとかPreactとかVanillaとか日本ではあまり名前も見ないまま消えそうなものも多い。Alpineも二の舞になりそう
Laravelに全部駆逐されたPHPフレームワークみたいに、泡沫JSライブラリも山程
Solidも普及率がせめてSvelteぐらい数字出てこないと覚える気になれん
SvelteもSSGデフォルト化しようとしたり、Runeがα版のまま開発止まってたりで迷走してるし
日本だとR社がSvelteに力入れてたけど >>156
個人的に最強だと思ってるんだけど
なぜか全く流行らない 似たような語法のライブラリは覚えやすいどころか、知識が混濁するリスクがあるから手を付けにくい
Reactで得た知識と紛れやすいから自分はあまり手を出したくない
AstroとGatsbyも同じ理由で手を付けにくいんだよな スレチかもしれないんだけど良かったら答えてほしい
nodejsでWebAPI作る場合、Webフレームワークはなに使うのがいいと思う?
expressで作るのが一般的みたいだけどnestjsの方が機能も豊富だし応用効かせやすそうなので迷ってる
それともNextjsとかRemixみたいなフレームワークでWebAPIも作ってたりする?
単純なAPI機能だけを想定してる 個人的にはRemixが第1候補でnestjsが第2候補
理由は、今後Webアプリを作る時にRemixを使おうと思っていて、トータルの学習コストが低くなることを期待してWebAPIもRemixで作れると嬉しいということ
nestjsはRemixに比べて早いとかなにかメリットがあるならnestjsもありかと思ってるけど、なにかメリットデメリットあったら教えてほしいです nestjsはexpressの資産を使えるのがいいのかなと思って候補にあります
Remixがセキュリティをどうやって担保しているのかわかってないので迷っている感じです nestjsなんてもうほぼメンテされてないだろ
使うのはない
かと言って生expressもない
消去法でnextjsしかない
しかしこのフレームワークはWebAPI用のフレームワークではないから
気軽に使えるものではない
Reactを使う前提のフレームワークだ
WebAPIを簡単に作りたいなら他言語の方が良いのではないかと思う
どうしてもJSが良いのなら止めはしないが なるほど
JSでやるならNextjsか
Remixはまだ情報少なすぎる感じですか?
NextjsはWeb標準じゃないから気乗りしないんですよね Remixは流行るかどうかも未知数過ぎる
情報もnextjsに比べたら少ないので変なところハマるとキツイ Nextjsだとt3スタックとかtRPCとかもできるみたいだけどWeb標準じゃないのだけが本当にネック 確かにそれは大きいですよね
大人しくNextjsやるかな… nextjsですら致命的なバグがちょこちょこ見つかってるからな
どのフレームワークにしてもリスク込みで使うべし そうですね
Nextjsにします
ありがとうございました! remixはもうsvelteと同じくらいには使われてそうだけどな これからNextjsやろうとするなら13以降と12以前は別ものと心得るべし。でないと混乱するぞ
>>171
RemixよりはまだGatsbyでは? Gatsbyってもう新規に採用する理由が無い気がするけども
Remixより多いなんてことあるのかな
既存システムも含めるならそりゃGatsbyのほうが多いだろうけど NextのApp Routerがなんか合わなくてRemixに移行するってのが最近多い app routerでよく言われてるのはCDN使おうとすると微妙みたいな
勝手にキャッシュして制御できないから Nextは次のバージョンでキャッシュをデフォルト無効にするみたいだぞ SolidStartが遂にバージョン1.0になった
これでsolidが伸びてくるかもしれない angularのシェアがvueに抜かれたらしい
vueが伸びたというよりangularが落ちてるせいだが Angular はv18になって少しマシになった感じ
だが進化が遅すぎたな