X



Vue vs React vs Angular Part.5
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
垢版 |
2020/07/29(水) 22:38:49.56ID:z6Fnx3oM
実際どうなん?
Vue
https://jp.vuejs.org/
React
https://reactjs.org/
Angular
https://angular.io/
※前スレ
Vue vs React vs Angular Part.4
https://mevius.5ch.net/test/read.cgi/tech/1591869705/

★ここではjQuery, Ruby, C#, Blazorの話題は禁止です
★jQuery, Ruby, C#, Blazorキチガイが書き込んでも無視してください
Svelte, Next, Nuxt, Gatsby, VuePress, RedWoodなどはおk。
0750デフォルトの名無しさん
垢版 |
2020/10/18(日) 02:13:22.35ID:u/6+iFla
例えば、アロー関数なんて使わなくても
this保存してfunctionつければ同じことができるけど
アロー関数使わなくて良い世界を知ったら元に戻れないだろ?
ほんの数行の違いでもないほうが楽なんだよ
0751デフォルトの名無しさん
垢版 |
2020/10/18(日) 02:29:10.45ID:5IG+e1ti
まさかjQueryマンセーで愚かな考えを晒すことで周りから袋叩きされる
ということを通してjQueryを貶めるという作戦か
0752デフォルトの名無しさん
垢版 |
2020/10/18(日) 03:04:15.75ID:u/6+iFla
そんな願望垂れ流してないで
メリットとデメリットの話をしろよ

jQueryがなくても頑張れるっていうだけで
jQueryをなくすメリットを言わないんだもんなw
0753デフォルトの名無しさん
垢版 |
2020/10/18(日) 03:18:45.94ID:xWXtsYNK
ハァ?jQueryバカはCSSセレクタ丸パクリのクセして自分の手柄にしてんのか。チョンみてーだな(藁
0754デフォルトの名無しさん
垢版 |
2020/10/18(日) 03:23:44.86ID:5IG+e1ti
jQueryバカが言ってるメリットはどれも小粒
なくても困らない
なら最初から利用しなければ余計なファイルを削減できる
というのが使わないメリット
0755デフォルトの名無しさん
垢版 |
2020/10/18(日) 03:36:40.28ID:u/6+iFla
>>753
もともとJavaScriptでCSSセレクタは使えなかった。
今は単に「セレクタ」というんだが、お前が言ってるように「"CSS"セレクタ」という
言葉があるのは、元々はCSSで使うものだったときの名残w

はるか昔にjQueryがJavaScrpitでCSSセレクタを実装した
その素晴らしい発想を見て、それをあとからDOM APIに
querySelectorとして使えるようにした

パクったのはDOM APIの方。それを知ってて
お前わざと>>753みたいなアホ丸出しのレスしただろ?w

しかしDOM APIがパクったのはセレクタAPIだけで
jQueryオブジェクトはパクらなかったので
DOM APIのループ処理で繰り返すという手続き的なAPIは変わらなかった
宣言的なjQueryの比べれば劣化コピーでしかない
0756デフォルトの名無しさん
垢版 |
2020/10/18(日) 03:38:05.32ID:u/6+iFla
余計なファイルを削減できる?
JavaScript使ってる時点で外部JavaScriptファイルがある
たかだか1ファイル減るだけの話
しかも結合すれば1ファイルですむ
0757デフォルトの名無しさん
垢版 |
2020/10/18(日) 03:44:26.00ID:5IG+e1ti
jQueryとかメリットなんて微々たるものなのにレガシーブラウザ対応とかで
無駄にサイズがでかいからな
減らす効果はそれなりにあるぞ
0758デフォルトの名無しさん
垢版 |
2020/10/18(日) 03:44:51.93ID:u/6+iFla
余計なファイルを削減できるというメリットは小粒
初回アクセス時に30KB読み込みができるというメリットは小粒
JavaScript処理が僅かに早く終るというメリットは小粒

jQueryをなくしたときのメリットはどれも小粒ではないか
体感上わからない程度の遅延があっても困らない
ならできる限り開発を楽にするほうがいい
というのがメリット
0760デフォルトの名無しさん
垢版 |
2020/10/18(日) 03:46:02.89ID:5IG+e1ti
バカに何言っても無駄かもしれんが
0762デフォルトの名無しさん
垢版 |
2020/10/18(日) 04:01:50.12ID:5IG+e1ti
jQueryを利用するメリットがそもそも小粒
ブラウザごとの分岐処理とかが埋め込まれてるから実行時の効率が悪い
ファイルサイズがでかい
つまりいらない
0763デフォルトの名無しさん
垢版 |
2020/10/18(日) 04:26:16.95ID:u/6+iFla
jQueryのメリットのうち小粒のものだけを抜き出したら
全部小粒だった

と言ってるのと同じだなw
0764デフォルトの名無しさん
垢版 |
2020/10/18(日) 04:27:54.23ID:xWXtsYNK
>>755
中学校を単に学校というって言ってるみたいなもんだな。バカが。
CSSのセレクタのルールそのままパクっただけの盗人。
盗んだものをもともと自分のだと主張。まさにチョン。
0765デフォルトの名無しさん
垢版 |
2020/10/18(日) 04:34:21.10ID:u/6+iFla
jQueryの価値はjQueryオブジェクトだよ
CSSセレクタなんか、素の使いづらいJavaScriptでもできるじゃんw
価値がないところだけを見て価値がないと言っても無意味だよ
もっと広い目でjQueryを見ないとwww
0770デフォルトの名無しさん
垢版 |
2020/10/18(日) 04:50:29.21ID:xWXtsYNK
CSSセレクタパクリがバレたら開き直ったjQueryガイジ。
居直り強盗で駅前一等地を占拠してパチンコで儲けるチョンと同じ。
jQuery関係ないスレで居直り占拠jQueryチョン。
0771デフォルトの名無しさん
垢版 |
2020/10/18(日) 05:21:40.18ID:5IG+e1ti
おっと
>>1
★jQuery, Ruby, C#, Blazorキチガイが書き込んでも無視してください
と書いてあったな
0772デフォルトの名無しさん
垢版 |
2020/10/18(日) 07:08:38.76ID:u/6+iFla
>>770
なんで無視したの?もう一回同じことを書く羽目になったじゃないか

もともとJavaScriptでCSSセレクタは使えなかった。
今は単に「セレクタ」というんだが、お前が言ってるように「"CSS"セレクタ」という
言葉があるのは、元々はCSSで使うものだったときの名残w

はるか昔にjQueryがJavaScrpitでCSSセレクタを実装した
その素晴らしい発想を見て、それをあとからDOM APIに
querySelectorとして使えるようにした

パクったのはDOM APIの方。それを知ってて
お前わざと>>753みたいなアホ丸出しのレスしただろ?w

しかしDOM APIがパクったのはセレクタAPIだけで
jQueryオブジェクトはパクらなかったので
DOM APIのループ処理で繰り返すという手続き的なAPIは変わらなかった
宣言的なjQueryの比べれば劣化コピーでしかない
0774デフォルトの名無しさん
垢版 |
2020/10/18(日) 07:50:51.32ID:d1Nj1iwg
言い出しっぺとして書くけど、これを数文字短くするためにjQuery使うか?

document.querySelectorAll('div.highlighted')
.forEach(ele=> Object.assign(ele.style, {color: 'red', backgroundColor: 'white'}))
0775デフォルトの名無しさん
垢版 |
2020/10/18(日) 08:00:05.71ID:0puAkJ4t
document.querySelectorAll('div.highlighted').forEach(ele=> Object.assign(ele.style, {color: 'red', backgroundColor: 'white'}))

$('div.highlighted').css({color: 'red', backgroundColor: 'white'});


一行のものはだいたい半分になる。
だがそれよりも重要なのは「宣言的」であるということ
forEachというループが無くなっている
0778デフォルトの名無しさん
垢版 |
2020/10/18(日) 08:27:01.54ID:0puAkJ4t
jQueryとレビューする点を見れば
どちらが大変かなんて明らかなのよ

document
querySelectorAll  →  $
('div.highlighted')  →  ('div.highlighted')
forEach(
ele=>
Object
assign(
ele.style,   →  css
{color: 'red', backgroundColor: 'white'}))  →  ({color: 'red', backgroundColor: 'white'});


jQueryだと4箇所見るだけですむが、DOM APIだと 9箇所もある
0779デフォルトの名無しさん
垢版 |
2020/10/18(日) 09:50:11.92ID:mPnoVdEN
コードの意図を隠してまで短くすることか?
その時点で要素があるべきなのか複数なのか何も判らん
エラーが出ない=バグがないってことならいいが
0780デフォルトの名無しさん
垢版 |
2020/10/18(日) 12:28:55.12ID:atqzb7Sw
>>739
こいつ結局Webサイトの話しかできてねえな
アホだろ

>>750
こいつやはりアホだ
アロー関数がfunctionの代用だと勘違いしてる
その認識でほんの数行変えたらバグるわけ
そもそも仕様がまったく違う
0783デフォルトの名無しさん
垢版 |
2020/10/18(日) 13:56:45.57ID:H1Ht+H/l
>>739
Web Componentsは流行らんと思うよ正直
こんな移り変わりの激しいWeb技術の世界で3年以上前から話題が上がってるにも関わらず未だに流行りにもなってないっていうのはそういう事だろ
Recoidなんて登場してから殆ど経ってないのにもうReduxを抜きつつある
Web Componentsが本当に良いものならそういう速度感で流行るもんだ

現時点で流行ってないっていうのは結局D言語みたいなものにしかならない
0786デフォルトの名無しさん
垢版 |
2020/10/18(日) 14:39:50.73ID:H1Ht+H/l
WebAssemblyに関してはWebGPUが今後流行ったら多少チャンスはあるかも知れんがそれ以外の用途では望みは薄そうだな
0787デフォルトの名無しさん
垢版 |
2020/10/18(日) 15:05:47.51ID:WlQf1Fni
Ruby, jQuery は、メソッドチェーンで関数型のように書ける。
a().b().c() みたいに

これを一々、存在チェックしてられない

return if obj = a() == nil

return if obj = obj.b() == nil

obj.c()
0788デフォルトの名無しさん
垢版 |
2020/10/18(日) 15:18:04.47ID:Yx1P9/Gs
WebAssemblyはこれからの技術
MS以外がまだまともなframeworkだしてない
JSが好きという人は少ないので必ず流行る

>>786
CPU速くなったらwasmの弱点が消えて長所だけが残るから
wasmはだんだん増えていく
0789デフォルトの名無しさん
垢版 |
2020/10/18(日) 15:32:42.61ID:nDjNgNBc
> CPU速くなったらwasmの弱点が消えて長所だけが残るから
> wasmはだんだん増えていく

そこに目的がありません
速くなったら使われると思うのはなぜか?
ウェブアプリが作れるようになったら、みんなウェブアプリを作ると思うのはなぜか?
目的がなければ、使うようにも作るようにもならない
0790デフォルトの名無しさん
垢版 |
2020/10/18(日) 15:36:35.19ID:nDjNgNBc
劣ってるから使われないって思うのは
技術者のよくある勘違いだよなw

そもそも需要がなければ使われないんだよ
0791デフォルトの名無しさん
垢版 |
2020/10/18(日) 15:38:29.83ID:nDjNgNBc
不都合な真実、ほとんどの人がwasmを試してすらいない。遅いなんて言ってる人全然いないだろ?
0794デフォルトの名無しさん
垢版 |
2020/10/18(日) 16:55:29.25ID:+DCedG5t
× JSに縛られず
○ もとからJS使わない人が使う

だからウェブ系の人は使わないし
JS使わないならネイティブアプリでいいんじゃね?ってなるんだよなw
0795デフォルトの名無しさん
垢版 |
2020/10/18(日) 17:07:08.15ID:Yx1P9/Gs
>>794
native appだけでいいってのは技術的にはそのとおり
wasmは中途半端な立ち位置だからな

ただApple, Googleで手数料30%取られるだろう?
wasmだとその手数料を回避できるから
そういうビジネスの問題考えたら価値がすごくあるわけ
0796デフォルトの名無しさん
垢版 |
2020/10/18(日) 17:09:18.69ID:H1Ht+H/l
結局ブラウザから排除されてるJavaAppletやFlashPlayerとWebAssemblyに違いなんとほぼないんだよな
0797デフォルトの名無しさん
垢版 |
2020/10/18(日) 17:12:35.13ID:Yx1P9/Gs
>>794
JSについては違う

Blazorのようなのが人気でてくると
JSしかできないフロントエンジニアの存在が不必要になる
C#プログラマーはserver sideとclient sideの両方のコードがかける

JSが必須ではなくなるということは
JSエンジニアが必要なくなる時代ってことだ
0799デフォルトの名無しさん
垢版 |
2020/10/18(日) 17:19:17.50ID:d1Nj1iwg
Web Components はとても素晴らしいけど、けっこう面倒くさい。でもライブラリとかはバックグラウンドにガリガリ使うようになって間接的に役立つだろうし、なんなら関数でラップしても良い
0800デフォルトの名無しさん
垢版 |
2020/10/18(日) 17:27:55.50ID:d1Nj1iwg
wasmでjsが消えてもDOMは残る。フレームワーク使えば別だけど、DOMから離れようとすれば遅くなり、wasmの速さは失われる
0801デフォルトの名無しさん
垢版 |
2020/10/18(日) 17:57:09.49ID:sdwhAUyo
wasm&SPAは業務系の希望になりうると思うが
業務系の複雑なUIはSPAと相性がいい
業務系エンジニアなら誰でも使えるJavaやC#がフロントでも使えたら学習コストが下がる
サーバーとクライアントでロジックを共有すればコストが下がる
0802デフォルトの名無しさん
垢版 |
2020/10/18(日) 18:11:07.46ID:Vj/rkYxM
>>797
> Blazorのようなのが人気でてくると

前提崩れだね。
十年で日本を追い抜く言ってた朝鮮はどうなりましたか?www
Silverlightwwww
0803デフォルトの名無しさん
垢版 |
2020/10/19(月) 11:19:02.29ID:FE0TPttz
なんだよまたjQueryでスレ伸びてるのか。
クライアントがブラウザである以上、jsやcss,domに原則縛られるんだよ。あとは如何に効率よくラップするかの差でしかない。好きなもの選べばいいさ。

ただ未だに生のjsやcssで組んでるやつは流石に時代遅れと自覚して欲しい。
0804デフォルトの名無しさん
垢版 |
2020/10/19(月) 11:39:18.70ID:32Wztry8
>>803
BrowserはいまだにJSに縛られると思ってるやつは流石に時代遅れと自覚して欲しい

Blazor WebAssembly使い始めたがC#だけで書けるし
Visual Studioで開発できるし最高だわ
0805デフォルトの名無しさん
垢版 |
2020/10/19(月) 11:55:34.45ID:kIQ4aN8p
>>804
期待してるけどツールがまだ追いついてなくて….razorファイルのフォーマットが崩れる問題くらいはさすがに修正してくれないと。
まあ現状はスレチなので。
0806デフォルトの名無しさん
垢版 |
2020/10/19(月) 12:14:08.56ID:5B25o4c7
Blazorはまあまあ悪くないけどソースコード編集してから画面に反映されるまでが遅いのがネックだね
0808デフォルトの名無しさん
垢版 |
2020/10/19(月) 12:38:40.38ID:FE0TPttz
>>804
それは違うなだろう。
ラップしてるだけ、意識しないだけで最終的にブラウザが対応してる要素に縛られるのは変わらん。スマホアプリとは全く違う。
フレームワークの進化に対して実行エンジンであるブラウザの進化が遅すぎるんだよな。今でもsafariだけcssの解釈が違うなんてしょっちゅうだし、土台部分の知識が無いと結局対応できん。チグハグで不安定なのがフロントの宿命なんだよ。
だから各フレームワーク、IDEには本当に感謝してる。裏でとんでもない労力かけて俺たちの労力軽減してくれて有り難うだよな。
0809デフォルトの名無しさん
垢版 |
2020/10/19(月) 19:27:14.09ID:LEqT1iP9
5GとかiphoneとかRetinaみたいな余計なことして
業界混乱させる前にやるべき事やれや
まずまともなブラウザ提供しろ
さもなくばデフォのブラウザ大人しくchromeにしとけ
0810デフォルトの名無しさん
垢版 |
2020/10/19(月) 21:13:29.51ID:32Wztry8
>>808
自分が読み書きするコードがC#ならそれでいいでしょ
どんな言語も実行前には人間が読めない形になる
0811デフォルトの名無しさん
垢版 |
2020/10/20(火) 10:15:07.36ID:pHiz9StD
機械語直接読める人も稀に居る
0814デフォルトの名無しさん
垢版 |
2020/10/22(木) 11:04:28.44ID:/VYs8fos
web componentは流行るかどうかはさておき、必然的に使う場面が出てくると思う。

今後はマイクロサービスと同様にその技術がフロントにも流れてきてマイクロフロントエンドアーキテクチャが主流になると思う。

そうなると、サービス単位で共通なコンポーネントはweb標準であるweb componentで作る必要が出てくる。

どうだろうか
0815デフォルトの名無しさん
垢版 |
2020/10/22(木) 11:08:22.84ID:/VYs8fos
jquery別に悪くないけど、今はvanilla jsで十分だし使う場面がない。

モダンフレームワーク(react,vue,etc)vs jqueryという構図をこのスレでは良くみるが意味がわからん。

正しく議論されるべきは
モダンフレーム vs web標準(web componentなど)
だと思う。
0817デフォルトの名無しさん
垢版 |
2020/10/22(木) 11:51:03.89ID:6pdR4Nyi
Web Componentsに対する批判
https://thenewobjective.com/web-development/a-criticism-of-web-components
・CSS疑似セレクターが機能しない
・ネイティブ要素と互換性がない
・Non-trivialな要素はHTMLElementを継承する必要がある
・JavaScriptが必要
・潜在的に指数関数的なフォールバック
・ポリフィルが必要
・Ariaの問題
・SEOの問題
・追加の制限
0819デフォルトの名無しさん
垢版 |
2020/10/22(木) 12:01:23.69ID:/VYs8fos
俺の頭が悪いせいかこの記事の言いたいことがいまいちわからん

plug and playの箇所解説よろ
0820デフォルトの名無しさん
垢版 |
2020/10/22(木) 12:02:25.44ID:VEHOj23m
>>815
シィーッ! (jqueryバカがよってくるから)
0822デフォルトの名無しさん
垢版 |
2020/10/22(木) 12:14:15.55ID:/VYs8fos
何と何のトレードオフ?
0823デフォルトの名無しさん
垢版 |
2020/10/22(木) 12:16:12.59ID:/VYs8fos
>>817
後で読んでみるけど、
ariaとJavaScript以外は別に問題じゃない気がするけどね
0825デフォルトの名無しさん
垢版 |
2020/10/22(木) 12:38:04.11ID:6pdR4Nyi
web非標準のreactが簡単にssr出来るのにweb標準のweb componentsが事実上無理(初期レンダリングコストはクライアント側で支払うしかない)なのはなんだかなぁ…
0827デフォルトの名無しさん
垢版 |
2020/10/22(木) 14:34:21.09ID:/VYs8fos
>>825

やろうと思えばできるけどな。shadow domを使わない場合だけど。

でも言いたいことはわかる。そこまでサポートしてから世に放てば良かったのにとは思うけどね。

https://web.dev/declarative-shadow-dom/
↑いま頑張ってやってる途中やで
0828デフォルトの名無しさん
垢版 |
2020/10/22(木) 15:31:11.95ID:6pdR4Nyi
Declarative Shadow DOM か。いいね。
試してみようと思ったらchromeでもまだオリジントライアル中か…
0829デフォルトの名無しさん
垢版 |
2020/10/22(木) 16:28:17.70ID:/VYs8fos
やりたいことは理解してるんだけど

英語力がないから何がdeclarativeのニュアンスがわからん。
0830デフォルトの名無しさん
垢版 |
2020/10/22(木) 16:32:28.10ID:S3hKE4m7
宣言的だろ? ようはループを使わないってことだよ
例えばjQueryはループを使わない
$('.selector').css({color: 'red'); このように
これがDOM APIだとループが必要な手続き的になってしまう
0831デフォルトの名無しさん
垢版 |
2020/10/22(木) 17:12:31.60ID:/VYs8fos
>>830
絶対に違うわww

宣言的=ループを使わないが違うということは俺にもわかる
0832デフォルトの名無しさん
垢版 |
2020/10/22(木) 17:25:57.82ID:/VYs8fos
宣言的なweb component

現状のweb componentのどこが非宣言的で、あのリンク先の技術が適用されるとどこが宣言的になるんだろう。イマイチわからん。web componentにおける宣言的ってなんや
0833デフォルトの名無しさん
垢版 |
2020/10/22(木) 22:57:05.06ID:/bIs3HR3
UI組み立てる系のライブラリは固定乱数でいいから
全てのDOM要素にid振っとけや
色が違うとかアイコンを変えろとかクソみたいな指示飛んでくるんだから
0835デフォルトの名無しさん
垢版 |
2020/10/22(木) 23:54:57.12ID:nuIgGdek
SPAは簡単だったけどCSSがやっぱりわからねえんだわ
SPAで作ってもデザインが古くさくなる
0839デフォルトの名無しさん
垢版 |
2020/10/23(金) 18:13:14.23ID:kxyOvtyq
>>833
乱数のid振ってどうすんだよ?
まさかidで色変えてんのか?

>>835
お前のセンスゼロだしこの先死ぬまでセンスゼロのままだからなあ

>>836
bootstrapっぽくすら不可能じゃん

>>837
センスゼロのやつは死ぬまでセンスゼロ

>>838
Googleが公式にセンスゼロ向けって謳ってるしな
ただしセンスゼロでcssスキルない奴が使うとMaterialUIすらまともに使えない
0840デフォルトの名無しさん
垢版 |
2020/10/23(金) 18:46:41.39ID:tlpc4Wom
センスゼロでもSPAはできるけど、CSSはそうもいかんからなぁ
センスゼロでも使えるライブラリを使うしかないか
逆に言えばライブラリ使えば、センスゼロでもCSS、SPA両方できるようになるわけだし、こだわり捨てればまあ、いいか
すぐに移り変わる分野だし、気楽にやろう
0841デフォルトの名無しさん
垢版 |
2020/10/23(金) 19:06:52.06ID:J0Nj+DQ7
MaterialUIなんて公式のサンプルコピペしてテーマ設定するだけでそんな酷くならんと思うが
これ以上のリッチなもの求めてて自分で勉強できないならデザイナー雇うしかない

色彩センスは今どき色選んでくれるサービスたくさんあるだろ
ttps://yumyumcolor.com/ とか
0844デフォルトの名無しさん
垢版 |
2020/10/24(土) 02:55:24.68ID:w8fcXJt9
この手のUIフレームワークは余白が多すぎて、1画面の情報量が少ない
スマホアプリ前提な感じ
0845デフォルトの名無しさん
垢版 |
2020/10/24(土) 10:43:36.04ID:6JYHV7pP
>>842
やろうと思えばできるが崩れる上にそもそもやるやつはアホでしかない

>>844
余白なんか調整すればいい
キツキツの帳票みたいなUIが好みという日本人が多いが世界中から笑われてんの未だに気づかない連中ばかりだからな
0846デフォルトの名無しさん
垢版 |
2020/10/24(土) 11:46:27.33ID:/DIUYZs9
情報をギッシリ詰め込むのは別に構わないと思うが
ダッシュボードとかでよくある
しかしジジイどもは同じ画面で入力もやらせようとするからおかしくなる
0848デフォルトの名無しさん
垢版 |
2020/10/24(土) 23:01:23.08ID:l6E2jtuo
スマホ向けのUIとPC向けのUIを同じテーマでやるのは無理ある
サイトリニューアルして昔あった機能や要素を削除して既存ユーザーから大反発食らうのがこのパターン
0849デフォルトの名無しさん
垢版 |
2020/10/24(土) 23:10:02.60ID:sB9OWN+i
>>848
いやお前に才能がないだけだろ
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況