Vue vs React vs Angular

レス数が1000を超えています。これ以上書き込みはできません。
2018/12/21(金) 21:37:36.86ID:NZqrEm960

実際どうなん?
Vue
https://jp.vuejs.org/
React
https://reactjs.org/
Angular
https://angular.io/
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured
2019/03/09(土) 15:57:33.29ID:RYW8IiyE0
>>932
https://jsfiddle.net/v34njaes/
2019/03/09(土) 15:58:48.05ID:RYW8IiyE0
>>933
見当違いすぎてワロタw

HTML/CSSの世界に、Reactのものが含まれてるから
密結合だって言ってんだろ
937デフォルトの名無しさん (ワッチョイ a701-chNm)
垢版 |
2019/03/09(土) 16:02:36.25ID:e9DsS9n/0
>>936
>HTML/CSSの世界に、Reactのものが含まれてるから、密結合だって言ってんだろ。

だからそれは密結合じゃないの。君の変な定義はどうでもよろしい。
相変わらず間違いを認めないヤツだなあ。。ググってみなよ。すぐ分かる事からさ。
2019/03/09(土) 16:03:36.34ID:RYW8IiyE0
>>934
> 君の示したコンポーネント、<div class="my-component">のインターフェイス、再利用、隠蔽について答えてください。

インターフェース? 何が聞きたいのかわからんが、
my-componentの中に特定のイベントを送る。my-componentの中ではそのイベントに反応する。
インターフェースはイベントによって疎結合な状態で作ることが可能。それだけだろ。

再利用? >>838でも書いてるだろ。以下のどんなDOMの構造であっても、
jQueryのコードは再利用できてる

<div class="my-component">
 <input type="checkbox" name="switch">switch1
 <p>ここはswitch1です</p>
</div>

<div class="my-component">
 <input type="checkbox" name="switch">switch2
 <select>
  <option>1</option>
  <option>2</option>
  <option>3</option>
 </select>
</div>

<div class="my-component">
 <input type="checkbox" name="switch">switch3
 <img src="かっこいい画像.gif">
</div>

何から何を隠蔽するしたいのかわからん。jQueryのコードは状態を持ってないので
隠蔽するものはなにもない。無名関数使ってるので関数名すら隠蔽された状態だし
単にクラス名がかぶらないようにしたいってだけならプリフィックスでもつければおしまい
2019/03/09(土) 16:04:07.64ID:RYW8IiyE0
>>937
ぐぐったけど、間違いないですねw
940デフォルトの名無しさん (ワッチョイ a701-chNm)
垢版 |
2019/03/09(土) 16:05:45.02ID:e9DsS9n/0
>>936
んでさ、vue reactマスターの君はコンポーネントが全くわかってない。何も質問に何も答えられない。どうなのよマスターさん。
いろんな意味で恥ずかしいと思わんの?よくそんな妙な知識で仕事できるなあ。
同僚とか上司とかいたら注意されない?まあいれば、だけどさ。
941デフォルトの名無しさん (ワッチョイ a701-chNm)
垢版 |
2019/03/09(土) 16:06:58.43ID:e9DsS9n/0
>>939
はい、ソースだしなさいねー。嘘ついてもすぐわかりますよー。
2019/03/09(土) 16:08:25.60ID:RYW8IiyE0
どうやら>>938には反論できないから
レスするのすっ飛ばしたようだなw
943デフォルトの名無しさん (ワッチョイ a701-chNm)
垢版 |
2019/03/09(土) 16:14:51.37ID:e9DsS9n/0
>>938
やっと書いたか。本当に待ちくたびれたわい。

>インターフェース? 何が聞きたいのかわからんが、
どあほ。。。まじで言ってる??コンポーネントのインターフェイスが分からん?
よく堂々と白状できるな。。俺なら到底言えないわ。

あとさ、君のコードは再利用できてない。
それは単に、コ ピ ペ と言うの。

>何から何を隠蔽するしたいのかわからん。jQueryのコードは状態を持ってないので隠蔽するものはなにもない
もう、、、、なにを言っていいのやら。
あのね、例えばさ、外部からさ、直接 $("div.my-component input")とか、コンポーネント内部にダイレクトにアクセスできちゃ駄目なのよ。

これってコンポーネントの最低条件なんだけど、、君はどうやって勉強したんだ。
いいからこれもググってみなよ。。。うーん、だれか突っ込んであげてください。私はもう疲れました。
2019/03/09(土) 16:16:33.74ID:RYW8IiyE0
>>943
> どあほ。。。まじで言ってる??コンポーネントのインターフェイスが分からん?

じゃあ、VueからReactのコンポーネントのインターフェース書いてみろよw
2019/03/09(土) 16:17:00.95ID:RYW8IiyE0
>>943
> あのね、例えばさ、外部からさ、直接 $("div.my-component input")とか、コンポーネント内部にダイレクトにアクセスできちゃ駄目なのよ。

VueやReactでもダイレクトにアクセスできますが?
946デフォルトの名無しさん (ワッチョイ a701-chNm)
垢版 |
2019/03/09(土) 16:19:28.37ID:e9DsS9n/0
>>945
おいおいおいおいー、どこがvueマスターなの?
直接アクセスできません。インターフェイスを介してアクセスします。
わかった?OK?
2019/03/09(土) 16:21:26.12ID:RYW8IiyE0
はい、Vueでコンポーネント内部にダイレクトにアクセスできちゃいましたw

https://codepen.io/anon/pen/ywXVOW
2019/03/09(土) 16:24:13.68ID:RYW8IiyE0
確か上の方で、scopedを使えば、こういうCSSからコンポーネントを
守ることができる。コンポーネントは影響を受けないってのたまわっていたね?
やってみて

div { //CSS ダイレクトアクセス
background-color: red;
}
2019/03/09(土) 16:26:40.96ID:zxiwPMOw0
さすがに呆れたというかコメントできない…
950デフォルトの名無しさん (ワッチョイ a701-w6xA)
垢版 |
2019/03/09(土) 16:27:02.65ID:e9DsS9n/0
>>947
笑いが止まらんぞおいっっっw
今日一番だわ!!!
本当に君には驚かされるな!!!
どこまで発想がjQueryなのよ。そりゃvueと共存できるよ。注意すればね。
いやすまん、ニヤニヤが止まらんから後でちゃんと返事する。
2019/03/09(土) 16:33:17.69ID:RYW8IiyE0
結局Vueのコンポーネントは隠蔽化されてるとか言うのは
技術的にそうなってるんじゃなくて、単にフレームワークの決まりとして
外部から触らないようにしましょうと文書で書かれているだけ

それを言ったら、jQueryでは情報のやり取りには
(カスタム)イベントを使用しましょう。コンポーネントの担当者以外が
直接内部をいじってはいけません。と文書でかけば終わるわけだよ。
2019/03/09(土) 16:42:10.68ID:RYW8IiyE0
少し訂正

それを言ったら、jQueryでは "コンポーネント間" の情報のやり取りには
(カスタム)イベントを使用しましょう。コンポーネントの担当者以外が
2019/03/09(土) 17:55:48.33ID:GVs3bbIF0
header.vue 内の、header コンポーネントには、そのコンポーネントだけに適用される、HTML/CSS/JS を含み、
ユニークな属性、data-v-aaaaaa が付いている

footer.vue 内の、footer コンポーネントには、そのコンポーネントだけに適用される、HTML/CSS/JS を含み、
ユニークな属性、data-v-bbbbbb が付いている

各コンポーネントには、ユニークな属性が付いているため、お互いに影響を与えることはない(Scoped CSS)
各コンポーネントは疎結合!

従来のやり方では、3つのHTMLファイル・4つのCSSファイル・5つのJSファイルがあれば、
3 * 4 * 5 = 60通りの中から、適用される組み合わせを探すのに、時間が掛かりすぎるため破たんした!
954デフォルトの名無しさん (ワッチョイ a701-chNm)
垢版 |
2019/03/09(土) 17:57:51.41ID:e9DsS9n/0
>>952
いやすまん、ちょっと笑いすぎた。失礼しました。
ってー君もめげないなあ。。。その不屈の精神があればvue reactなんてすぐ習得できると思うぞ本当に。

>結局Vueのコンポーネントは隠蔽化されてるとか言うのは技術的にそうなってるんじゃなくて、単にフレームワークの決まりとして外部から触らないようにしましょうと文書で書かれているだけ
文章で書かれてるだけww、全然ちがうし、大体そんな事書かれてないし!
vueはフレームワークなの。jQueryと違うの。vue使ってる限りはきちんとコンポーネント化できてるよ。もし直接アクセスできたらバグだよ。

>それを言ったら、jQueryでは "コンポーネント間" の情報のやり取りには(カスタム)イベントを使用しましょう。 コンポーネントの担当者以外が直接内部をいじってはいけません。と文書でかけば終わるわけだよ。
はい気をつけまーす。でも人間は間違えるし忘れるよねぇ。うっかりアクセスする事も十分あり得るよね。
ただうっかりdocument.getElementsByClassNameなんて発行しないよなあ。そもそもdocument自体使わんし。どんなミスだそれ。

認めようよ。君のコンポーネントは不十分というか君の理解不足とスキル不足だよ。そしてvueは基準を満たす。
流石にこれは擁護できんし見逃せんわ。認めるまで議論は進まない。まあどうせスレも終わるし最後にありがとう、面白かった。
2019/03/09(土) 18:00:05.54ID:RYW8IiyE0
>>953
> 従来のやり方では、3つのHTMLファイル・4つのCSSファイル・5つのJSファイルがあれば、
> 3 * 4 * 5 = 60通りの中から、適用される組み合わせを探すのに、時間が掛かりすぎるため破たんした!

とりあえずお前はブラウザの開発者ツールを使えるようになろう。
あとはgrepも便利だぞ

そしたら今度はコンポーネントごとにグループ分けしてディレクトリ管理して
webpackやsassも使えるようになろう
2019/03/09(土) 18:00:22.08ID:RYW8IiyE0
> ってー君もめげないなあ。。。その不屈の精神があればvue reactなんてすぐ習得できると思うぞ本当に。

だから習得してるってw
2019/03/09(土) 18:00:41.76ID:RYW8IiyE0
> vueはフレームワークなの。jQueryと違うの。vue使ってる限りはきちんとコンポーネント化できてるよ。もし直接アクセスできたらバグだよ。

はい、Vueでコンポーネント内部にダイレクトにアクセスできちゃいましたw

https://codepen.io/anon/pen/ywXVOW
2019/03/09(土) 18:01:53.35ID:RYW8IiyE0
>>953
> 各コンポーネントには、ユニークな属性が付いているため、お互いに影響を与えることはない(Scoped CSS)

だからユニークな属性をつければいいと思いますよ?
2019/03/09(土) 18:05:06.61ID:GVs3bbIF0
従来のやり方では、3つのHTMLファイル・4つのCSSファイル・5つのJSファイルがあれば、
3 * 4 * 5 = 60通りの中から、適用される組み合わせを探すのに、時間が掛かりすぎるため破たんした!

これが密結合!

どこかを修正すると、別のどこかがおかしくなるため、無限に修正を繰り返すことになる!

今までの日本車のすり合わせ技術と同じ。
どこかを修正すると、別のどこかがおかしくなるため、外人よりも日本人に有利だった

これを部品ごとに疎結合にすることで、ある部品の修正が、他の部品に影響を与えないため、
すり合わせ技術がなくなり、外人でも同じ車が作れるようになった

すり合わせがあると、単独で部品が作れない・単独で働けないから、
常に全員が相談・残業して働く、日本人が有利だった
960デフォルトの名無しさん (ワッチョイ a701-w6xA)
垢版 |
2019/03/09(土) 18:09:10.56ID:e9DsS9n/0
>>957
もういい。休んでいいんだ。十分スレを楽ませてもらった。
君がいいと言うならいい。常識破りのまま、そのまま突っ走ってくれ。
2019/03/09(土) 18:10:12.37ID:RYW8IiyE0
次スレ立てました


Vue vs React vs Angular その2
https://mevius.5ch.net/test/read.cgi/tech/1552122580/
2019/03/09(土) 18:17:05.53ID:GVs3bbIF0
すり合わせは、金メダルのスピードスケート女子パシュートもそう。
常に全員が相談・残業して練習する、日本人が有利

外人は思想・人種・性格もバラバラで、長時間一緒に居れない

しかも草食動物の日本人とは違い、外人は肉食動物で自己主張が強いから、
異なる思想・人種・性格の奴とは、殴り合いのケンカになる!

外人は、日本人みたいに従順で、すぐに従ったりしないから
2019/03/09(土) 18:26:31.50ID:GVs3bbIF0
>>958
>だからユニークな属性をつければいいと思いますよ?
従来のやり方では、無理

属性を付けても、それを訂正してはずす時には、
また、3 * 4 * 5 = 60通りの中から、正しいかどうかを確かめないといけないから、時間が掛かりすぎる

密結合・すり合わせは、どこかを修正すると、別のどこかがおかしくなるため、
無限に修正を繰り返すことになる

だから、部品やプログラミングは、疎結合でないとダメ!
2019/03/09(土) 18:32:31.91ID:RYW8IiyE0
>>963
その計算になんの根拠もねーわw

コンポーネント毎にCSS定義してるから
何を探すと言ってるのかさっぱりわからない。

.my-compnent {
 [name="switch"] { }
 sonota-1 { }
 sonota-2 { }
}

JavaScriptファイルも my-compnent に関するものは
my-compnent.js に全部収められているし、

あ、なるほど、jQueryがだめと言ってる根拠は
自分がまともな管理できてないからだってことかw
2019/03/09(土) 18:35:08.58ID:GVs3bbIF0
従来のやり方では、3つのHTMLファイル・4つのCSSファイル・5つのJSファイルがあれば、
3 * 4 * 5 = 60通りの中から、適用される組み合わせを探すのに、時間が掛かりすぎるため破たんした!

さらに、これの悪い所は、3 + 4 + 5 = 12 の足し算じゃなく、掛け算になるのが最悪!
考えることが加速度的に増える

ここを修正したら、別の場所がおかしくなりましたとか、こればっかりやってる。
延々と、適用される組み合わせを探してる!
2019/03/09(土) 18:36:52.78ID:RYW8IiyE0
根拠言えないから、必死に嘘を言いまくるのねw
どっかの国の人と行動がおなじになってるよw
2019/03/09(土) 18:46:21.76ID:GVs3bbIF0
自分で属性を付けても、またそれを修正したり、訂正してはずす時には、
また、3 * 4 * 5 = 60通りの中から、正しいかどうかを確かめないといけないから、時間が掛かりすぎる

だから、各コンポーネントを別々のファイルに書くだけで、
ユニークな属性を自動的に付けてくれる、フレームワークが良い
2019/03/09(土) 18:51:07.24ID:pp+gnfPcM
>>961
荒らし行為
問答無用で出て行け
969デフォルトの名無しさん (ワッチョイ a701-w6xA)
垢版 |
2019/03/09(土) 18:55:36.80ID:e9DsS9n/0
>>961
そんなに悔しかったの?次スレってwほんと滲み出てるw
まあ頑張れよ自称vueマスターさんw。ほらテンプレに書かなきゃ。vueでdocument直接いじっちゃダメよー。逸材。
970デフォルトの名無しさん (ササクッテロ Spc7-tTzy)
垢版 |
2019/03/09(土) 18:56:19.05ID:jSVYUNoJp
jQueryおじさんネトウヨだったのかw
年齢も高そうだしな...
971デフォルトの名無しさん (ワッチョイ a701-w6xA)
垢版 |
2019/03/09(土) 19:30:08.07ID:e9DsS9n/0
jQuery君なあ。。ここまでの逸材なら色々拗らせた年齢不詳の40代かなあ。
つーか、ここまで vue react嫌うって何があったんだろ。そのくせ自称vue reactマスターなんだぜw。何その劣等感。しかもマスターならvueでもdom直接いじれるんだぜ。それでコンポーネントの垣根も超えられるって自慢するんだぜ。でも文書化で禁止すればokなんだぜ。
これで納得できるのが本当凄え。
2019/03/09(土) 19:42:14.57ID:fCQTKW9ua
jQueryおじさん、スレチなんで次スレは来ないでね
2019/03/09(土) 19:46:22.67ID:C6v7oEvsM
>>961
これ通報じゃね?
2019/03/09(土) 19:52:05.13ID:izNw5U5za
ReactはReactNativeとセットにして一スレ立ててもいいんじゃない?
975デフォルトの名無しさん (オッペケ Src7-EzoF)
垢版 |
2019/03/09(土) 20:20:05.00ID:47IMMy0/r
密結合だろうが疎結合だろうが俺の場合は右脳と左脳が同時に判断すらから何も問題がない
本当のフルスタックとはそういうものだ

しかし左脳しか機能していないお前らは、理解不能で恐ろしい存在であるデザインのためにくだらない争いをしているわけだ

レベルが低すぎてアプリ開発なんか無理だろ
2019/03/09(土) 20:20:35.21ID:GVs3bbIF0
テンプレを勝手に改変する、いつもの荒らしだろ

テンプレに、Ruby 禁止とか、jQuery・Lodash 禁止とか、
自分がわからない技術を禁止して、色々なスレを立てている奴

あちこちに、死ねとか書き込んでいる奴だろ
977デフォルトの名無しさん (ワッチョイ a701-w6xA)
垢版 |
2019/03/09(土) 20:36:11.59ID:e9DsS9n/0
jQuery君は最後っ屁していったのか。次から色々スルーするわ。
2019/03/09(土) 20:37:03.42ID:OAlfgW/Ia
>>975
疎結合のほうが理解しやすいことは確かですが理解のしやすさためだけに疎結合を目指すわけではありません
疎結合なシステムは個々のモジュールを独立にメンテナンス可能であるという点が最も重要なのです
2019/03/09(土) 20:53:08.50ID:RYW8IiyE0
例えば、HTML、CSS、JavaScript。
個々のモジュールが独立してメンテナンス可能であるということです。
2019/03/09(土) 20:59:34.50ID:RYW8IiyE0
例えばデザインですが、同じ機能を持ったコンポーネントでも
別のアプリだと違うデザインにしますよね?
そういった時にデザインのみ独立してメンテナンスします。
2019/03/09(土) 21:01:14.05ID:RYW8IiyE0
見た目をちょっと変えるだけで、別のコンポーネントとして
管理するのは馬鹿げているわけです。
2019/03/09(土) 21:07:26.91ID:izNw5U5za
渡すpropsで切り替えればいいんじゃない?
2019/03/09(土) 21:08:16.18ID:RYW8IiyE0
時代はこの先Web Componentsの時代になり、
高度なコンポーネントが増えますが、
再利用可能であるということは、別のデザインを持ったサイトでも
使えるコンポーネントでなければなりません。

機能はコンポーネントに閉じてよいですが、
デザインはコンポーネントに閉じてはだめなのです。
デザインはサイト全体で横断的に適用するものなのですから
2019/03/09(土) 21:09:18.57ID:Uscl0PAlM
荒らしは出て行け
2019/03/09(土) 21:10:57.82ID:izNw5U5za
>>975
React専用スレ立ててよ
2019/03/09(土) 21:11:12.56ID:RYW8IiyE0
>>985
了解
987デフォルトの名無しさん (オッペケ Src7-EzoF)
垢版 |
2019/03/09(土) 21:14:19.58ID:47IMMy0/r
>>978
そういうこと言ってんじゃねえよ
2019/03/09(土) 21:16:41.18ID:izNw5U5za
>>925
どうせならここじゃなくてQiitaで「jQueryの方がVueよりも優れてる理由」とかいう記事かけば誰かがお望みの回答をしてくれるんじゃないかと思うんだけどね
989デフォルトの名無しさん (ワッチョイ a701-/bUt)
垢版 |
2019/03/09(土) 21:20:38.74ID:jx9iLAiD0
> Javascript はweb制作管理板、CGI はWEBプログラミング板へ。
2019/03/09(土) 21:22:22.46ID:izNw5U5za
>>989
正直過疎板立てても仕方ないよ経験上
2019/03/09(土) 21:23:34.06ID:nmSMFs2da
Qiitaとかスレチとか、お前ら、jQueryおじさんが周りの言うこと聞くわけないだろ
エホバみたいなもんやぞ
2019/03/09(土) 21:30:52.53ID:AJ6jPa0v0
>>985
立てたぞ。>>974がセットにしてって言ってたからセットにした

React と React Native のスレ
https://mevius.5ch.net/test/read.cgi/tech/1552134567/
2019/03/09(土) 21:49:36.92ID:7ubvtRZR0
>>988
書くならもっと別物にするな
メンテナンスしやすいコーディングスタイルとか

jQueryがだめに見られてるのは、DOM要素を追加したり消したりすることであって
クラス属性を書き換えるなどして、DOM要素にかんしてはCSSで制御するようにすれば
メンテナンス性が高いことは明らかだからね
994デフォルトの名無しさん (オッペケ Src7-EzoF)
垢版 |
2019/03/09(土) 22:03:28.92ID:47IMMy0/r
Vue vs React vs Angular Part.2
http://mevius.5ch.net/test/read.cgi/tech/1552136553/

本スレPart2建てた
こっちはjQueryの話禁止にした
2019/03/09(土) 22:05:43.66ID:KVQbeC9/0
>>994
996デフォルトの名無しさん (ワッチョイ a701-w6xA)
垢版 |
2019/03/10(日) 09:10:34.18ID:q7odbdCi0
jQueryは悪くない。ただスレチ。
次スレが有意義でありますように。
2019/03/10(日) 09:50:49.25ID:5/+zyaBC0
>>976
死ね
2019/03/10(日) 10:51:49.09ID:KLmR+9gsM
結局主張のごり押しなだけで時間とスレの無駄だったな
2019/03/10(日) 10:55:35.81ID:9XIrDo2La
5chではいつもの光景
2019/03/10(日) 10:59:45.81ID:5/+zyaBC0
次スレ
Vue vs React vs Angular Part.2
http://mevius.5ch.net/test/read.cgi/tech/1552136553/
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 78日 13時間 22分 9秒
レス数が1000を超えています。これ以上書き込みはできません。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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