Vue vs React vs Angular
レス数が950を超えています。1000を超えると書き込みができなくなります。
1デフォルトの名無しさん (ワッチョイ 5f9f-WCtl)
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
876デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 11:30:18.17ID:RYW8IiyE0 >>875
嘘はいかんよ
Vue.component('my-component',{
template:`
<div class="my-component" :class="{active:isActive}">
<input type="checkbox" v-model="isActive">{{val}}
</div>
`,
data:function(){
return{
isActive:false
}
},
props:["val"]
})
new Vue({el: '#app'})
VueのJavaScriptの中にHTMLが埋め込まれてしまってる
嘘はいかんよ
Vue.component('my-component',{
template:`
<div class="my-component" :class="{active:isActive}">
<input type="checkbox" v-model="isActive">{{val}}
</div>
`,
data:function(){
return{
isActive:false
}
},
props:["val"]
})
new Vue({el: '#app'})
VueのJavaScriptの中にHTMLが埋め込まれてしまってる
877デフォルトの名無しさん (ワッチョイ a701-chNm)
2019/03/09(土) 11:43:48.95ID:e9DsS9n/0 >>873
馬鹿野郎。。。それは最初のv-bindとv-modelのサンプルだろうが。
コンポーネントはこっちだ。
https://codepen.io/hinoragi/pen/YgVQjK
何度も何度も行ったがhtmlは分離できるぞ。ちったー勉強しろよ。
んでさ、修正点があるなら自分で書けばいいじゃない。別に複雑なコードじゃない。たった数行だぜ?コードに異論があるならコードで示す。当たり前だと思うがjQuery君は違うのかな?
それすら出来ず、vueが分からないからオウム返しのようにクソ呼ばわりする。それただのバカって言うんだよ。いい加減自覚しろ。
君に少しでもプライドがあるなら、君の思ったとおりに動作するvueのコード上げてみな。時間はかかってもいいからさ。
馬鹿野郎。。。それは最初のv-bindとv-modelのサンプルだろうが。
コンポーネントはこっちだ。
https://codepen.io/hinoragi/pen/YgVQjK
何度も何度も行ったがhtmlは分離できるぞ。ちったー勉強しろよ。
んでさ、修正点があるなら自分で書けばいいじゃない。別に複雑なコードじゃない。たった数行だぜ?コードに異論があるならコードで示す。当たり前だと思うがjQuery君は違うのかな?
それすら出来ず、vueが分からないからオウム返しのようにクソ呼ばわりする。それただのバカって言うんだよ。いい加減自覚しろ。
君に少しでもプライドがあるなら、君の思ったとおりに動作するvueのコード上げてみな。時間はかかってもいいからさ。
878デフォルトの名無しさん (アウアウウー Sac3-cVal)
2019/03/09(土) 11:45:53.12ID:OAlfgW/Ia >>876
埋め込んだのだからそれは仕方ないでしょう
ちなみに私はVueの真の利点はMVVMによるViewとViewModelの分離であると考えています
世の人々はコンポーネント志向に興味を惹かれているようですがそれはオマケです
私はVueを使ったとしてもhtml/cssとjsを同居させることはありません
それにjQueryでもコンポーネント化しようとすればテンプレートの埋め込みになる筈です
埋め込みを拒否した場合はhtmlのコピペになるでしょう
その点についてはVueもjQueryも同じことです
なので問題はVueではなくコンポーネント志向の方にあることがわかります
埋め込んだのだからそれは仕方ないでしょう
ちなみに私はVueの真の利点はMVVMによるViewとViewModelの分離であると考えています
世の人々はコンポーネント志向に興味を惹かれているようですがそれはオマケです
私はVueを使ったとしてもhtml/cssとjsを同居させることはありません
それにjQueryでもコンポーネント化しようとすればテンプレートの埋め込みになる筈です
埋め込みを拒否した場合はhtmlのコピペになるでしょう
その点についてはVueもjQueryも同じことです
なので問題はVueではなくコンポーネント志向の方にあることがわかります
879デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 11:47:01.74ID:RYW8IiyE0 > 何度も何度も行ったがhtmlは分離できるぞ。ちったー勉強しろよ。
だったら分離してくださいよ。
"分離できるぞ" と言ってるからには、今のコードは分離されてないってことでしょ
それをしないのは、分離すると余計に長くなるってことなんでしょ?
だったら分離してくださいよ。
"分離できるぞ" と言ってるからには、今のコードは分離されてないってことでしょ
それをしないのは、分離すると余計に長くなるってことなんでしょ?
880デフォルトの名無しさん (ワッチョイ 162c-1cTK)
2019/03/09(土) 11:47:56.22ID:GVs3bbIF0 Vue, React は、コンポーネント指向。
デザイナー・プログラマーの分業体制
jQuery は、そういう観点ではない!
デザイナー・プログラマーの分業体制
jQuery は、そういう観点ではない!
881デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 11:48:33.65ID:RYW8IiyE0 >>878
> それにjQueryでもコンポーネント化しようとすればテンプレートの埋め込みになる筈です
ならない。なんのためにHTMLにテンプレートタグ <template> が出来たと思ってるんだ?
> それにjQueryでもコンポーネント化しようとすればテンプレートの埋め込みになる筈です
ならない。なんのためにHTMLにテンプレートタグ <template> が出来たと思ってるんだ?
882デフォルトの名無しさん (アウアウウー Sac3-cVal)
2019/03/09(土) 11:49:39.85ID:OAlfgW/Ia883デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 11:53:02.83ID:RYW8IiyE0 >>882
これがjQueryのコードなんだが
どこが結びついてるの?
$('.my-component [name="switch"]').change(function() {
$(this).closest('.my-component').toggleClass('active', this.checked);
});
これがjQueryのコードなんだが
どこが結びついてるの?
$('.my-component [name="switch"]').change(function() {
$(this).closest('.my-component').toggleClass('active', this.checked);
});
884デフォルトの名無しさん (ワッチョイ 96bb-Giku)
2019/03/09(土) 11:53:04.50ID:QoZVVHuY0 ツマンネーよ
885デフォルトの名無しさん (アウアウウー Sac3-cVal)
2019/03/09(土) 12:00:56.94ID:OAlfgW/Ia >>881
それはテンプレートの置き場を変えただけです
テンプレートをjavascriptからhtmlへ追い出すだけならVueでも可能です
しかしコンポーネント志向場合はテンプレートをhtmlに追い出しても意味はありません
異なるページでコンポーネントを再利用する場合を考えればそれが無意味であることがわかります
それはテンプレートの置き場を変えただけです
テンプレートをjavascriptからhtmlへ追い出すだけならVueでも可能です
しかしコンポーネント志向場合はテンプレートをhtmlに追い出しても意味はありません
異なるページでコンポーネントを再利用する場合を考えればそれが無意味であることがわかります
886デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 12:03:54.96ID:RYW8IiyE0 >>885
> それはテンプレートの置き場を変えただけです
だからお前がjQueryだと埋め込むしか無いっていったから、
置き場を変えてやったんだろうが
置き場を変えることでデザイナが自由にHTMLを変更できるようになる
プログラマは、中身がどう変わろうが意識する必要がなくなる
これが分業だろうが
> それはテンプレートの置き場を変えただけです
だからお前がjQueryだと埋め込むしか無いっていったから、
置き場を変えてやったんだろうが
置き場を変えることでデザイナが自由にHTMLを変更できるようになる
プログラマは、中身がどう変わろうが意識する必要がなくなる
これが分業だろうが
887デフォルトの名無しさん (ワッチョイ 1202-LbCk)
2019/03/09(土) 12:04:02.87ID:N2GlqC3/0 もう「jQuery vs Vue」みたいなスレでも立ててそっちでやれよ
888デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 12:05:41.67ID:RYW8IiyE0889デフォルトの名無しさん (ワッチョイ a701-chNm)
2019/03/09(土) 12:06:04.85ID:e9DsS9n/0 >>879
君は本当に面白いな。俺には君の不満点が全部見えない。当たり前だよな他人だし。だから修正したコードを君自身が書くことに意味がある訳さ。勉強にもなる。それに君は俺が何を書いても文句を言うだろう。後付で色々言われるのは面倒だ。
だったら、君の素晴らしいコードと、俺の糞コードを比較すればいいじゃん?君の正当性はコードでしか証明できないんだぞ。
たった数行の修正だし簡単だからトライしてみなって。それを見て意見出し合おうや。
君は本当に面白いな。俺には君の不満点が全部見えない。当たり前だよな他人だし。だから修正したコードを君自身が書くことに意味がある訳さ。勉強にもなる。それに君は俺が何を書いても文句を言うだろう。後付で色々言われるのは面倒だ。
だったら、君の素晴らしいコードと、俺の糞コードを比較すればいいじゃん?君の正当性はコードでしか証明できないんだぞ。
たった数行の修正だし簡単だからトライしてみなって。それを見て意見出し合おうや。
890デフォルトの名無しさん (ブーイモ MM32-4xo3)
2019/03/09(土) 12:07:36.71ID:flOfKdeWM891デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 12:07:52.12ID:RYW8IiyE0892デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 12:08:40.26ID:RYW8IiyE0893デフォルトの名無しさん (アウアウウー Sac3-cVal)
2019/03/09(土) 12:12:57.48ID:OAlfgW/Ia >>883
>>>882
>これがjQueryのコードなんだが
>どこが結びついてるの?
>
>$('.my-component [name="switch"]').change(function() {
> $(this).closest('.my-component').toggleClass('active', this.checked);
>});
・適応対象のname属性がswitchでありクラス名がmy-componentの要素の子孫であること
・適応対象がchangeイベントをサポートしていること
・適応対象の直近のクラス名がmy-componentの要素がactiveクラスをサポートしていること
少なくともこの3つの物理的な条件をjsプログラマが知ってなければなりません
さらにhtml/cssデザイナはjsプログラマがこれらの条件を期待していることを知っていなければなりません
Vue(MVVM)ならばそのような仮定は全く必要ありません
Viewとは独立してただ単にViewModelの属性のブール値を切り替えるだけです
>>>882
>これがjQueryのコードなんだが
>どこが結びついてるの?
>
>$('.my-component [name="switch"]').change(function() {
> $(this).closest('.my-component').toggleClass('active', this.checked);
>});
・適応対象のname属性がswitchでありクラス名がmy-componentの要素の子孫であること
・適応対象がchangeイベントをサポートしていること
・適応対象の直近のクラス名がmy-componentの要素がactiveクラスをサポートしていること
少なくともこの3つの物理的な条件をjsプログラマが知ってなければなりません
さらにhtml/cssデザイナはjsプログラマがこれらの条件を期待していることを知っていなければなりません
Vue(MVVM)ならばそのような仮定は全く必要ありません
Viewとは独立してただ単にViewModelの属性のブール値を切り替えるだけです
894デフォルトの名無しさん (ワッチョイ a701-chNm)
2019/03/09(土) 12:14:08.39ID:e9DsS9n/0895デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 12:17:29.40ID:RYW8IiyE0896デフォルトの名無しさん (ブーイモ MM32-4xo3)
2019/03/09(土) 12:17:40.62ID:flOfKdeWM897デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 12:18:35.13ID:RYW8IiyE0 >>894
> スクリプトからはdomのクラスやセレクタなぞ、可能な限り知る必要はないってこと理解できない?
DOMのクラスやセレクタを使わないでやるなら
HTMLに直接React用のコードを埋め込むしか無いやんw
> スクリプトからはdomのクラスやセレクタなぞ、可能な限り知る必要はないってこと理解できない?
DOMのクラスやセレクタを使わないでやるなら
HTMLに直接React用のコードを埋め込むしか無いやんw
898デフォルトの名無しさん (アウアウウー Sac3-cVal)
2019/03/09(土) 12:18:44.76ID:OAlfgW/Ia >>886
デザイナは自由ではありません
jQueryコードを理解してプログラムを破壊しないように作業しなければなりません
プログラムを破壊しないための条件は明確にはなっていません
そもそもあなたはコンポーネントの意味を理解していないようです
template tagを使用しても別の画面では再利用できません
それはコンポーネントではありません
コンポーネントはテンプレートとロジックが1つのブロックとして再利用可能な形態になっている必要があります
デザイナは自由ではありません
jQueryコードを理解してプログラムを破壊しないように作業しなければなりません
プログラムを破壊しないための条件は明確にはなっていません
そもそもあなたはコンポーネントの意味を理解していないようです
template tagを使用しても別の画面では再利用できません
それはコンポーネントではありません
コンポーネントはテンプレートとロジックが1つのブロックとして再利用可能な形態になっている必要があります
899デフォルトの名無しさん (アウアウウー Sac3-cVal)
2019/03/09(土) 12:21:48.66ID:OAlfgW/Ia900デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 12:23:08.25ID:RYW8IiyE0 >>896
jQueryプログラマ「この動きがほしい所に my-componentというクラス名をつけてください」
デザイナ「はいわかりました。昔からあるLightBoxみたいなやつですよね。
aタグに特定の属性をつけるだけで画像のポップアップができて簡単ですよね」
jQueryプログラマ「この動きがほしい所に my-componentというクラス名をつけてください」
デザイナ「はいわかりました。昔からあるLightBoxみたいなやつですよね。
aタグに特定の属性をつけるだけで画像のポップアップができて簡単ですよね」
901デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 12:24:33.39ID:RYW8IiyE0 >>899
> あなたの最初の主張は完全に理を失いました
意味わからん。逆だろ
お前がjQueryでもコードの中にHTMLを埋め込むしか無い!って
jQueryを貶めようとしたから、それは間違いって言ってるんだが。
俺がいつjQueryの理だといったよw
マッピポンプしてるんじゃねーよ
> あなたの最初の主張は完全に理を失いました
意味わからん。逆だろ
お前がjQueryでもコードの中にHTMLを埋め込むしか無い!って
jQueryを貶めようとしたから、それは間違いって言ってるんだが。
俺がいつjQueryの理だといったよw
マッピポンプしてるんじゃねーよ
902デフォルトの名無しさん (ワッチョイ a701-chNm)
2019/03/09(土) 12:24:59.58ID:e9DsS9n/0 >>891
うわあ。。性格ネジ曲がりすぎだろ。すっごく君のためを考えて言ったんだがなあ。
俺が書いてもvueを何も知らない君がどう評価するの?まさか文字数カウントして終わりか?
君の言ってるのはこういう事。
vueしりませーん、よめませーん。かきませーん。おぼえませーん。でもvueクソだわ!!
通用するわけねーだろ。どあほう。
うわあ。。性格ネジ曲がりすぎだろ。すっごく君のためを考えて言ったんだがなあ。
俺が書いてもvueを何も知らない君がどう評価するの?まさか文字数カウントして終わりか?
君の言ってるのはこういう事。
vueしりませーん、よめませーん。かきませーん。おぼえませーん。でもvueクソだわ!!
通用するわけねーだろ。どあほう。
903デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 12:26:05.91ID:RYW8IiyE0 >>902
評価してやるからグダグダ言ってないでかけや
評価してやるからグダグダ言ってないでかけや
904デフォルトの名無しさん (アウアウウー Sac3-cVal)
2019/03/09(土) 12:28:51.73ID:OAlfgW/Ia >>895
完全に依存性がなくなったわけではありませんがべったり依存していません
Vue(MVVM)ではViewは明確に定義されたViewModelのインターフェースのみに依存します
ViewModelの実装からは完全に隔離されます
ViewModelのインターフェースがViewとViewModelの疎結合を保証する境界になっています
逆にjQueryではjs側がどのような実装を行っているか厳密に理解していなければViewを定義できません
そ
ViewとLogicを隔てる境界はありません
完全に依存性がなくなったわけではありませんがべったり依存していません
Vue(MVVM)ではViewは明確に定義されたViewModelのインターフェースのみに依存します
ViewModelの実装からは完全に隔離されます
ViewModelのインターフェースがViewとViewModelの疎結合を保証する境界になっています
逆にjQueryではjs側がどのような実装を行っているか厳密に理解していなければViewを定義できません
そ
ViewとLogicを隔てる境界はありません
905デフォルトの名無しさん (ワッチョイ a701-chNm)
2019/03/09(土) 12:31:29.70ID:e9DsS9n/0906デフォルトの名無しさん (ワッチョイ a701-chNm)
2019/03/09(土) 12:33:31.50ID:e9DsS9n/0907デフォルトの名無しさん (ブーイモ MM32-4xo3)
2019/03/09(土) 12:36:22.72ID:flOfKdeWM908デフォルトの名無しさん (アウアウウー Sac3-cVal)
2019/03/09(土) 12:38:01.89ID:OAlfgW/Ia >>901
Vueでコンポーネントを実装するとhtml/cssとjsが1箇所に記述されるため強い結合が生じるというのがあなたの最初の主張です
ここには暗黙的に1つの前提がありました
html/cssを別のファイルに定義しないという前提です
しかしあなたは続く投稿でその前提を自ら覆しました
あなたはtemplate tagを提示してhtml/cssを別のファイルに記述する手段があるならしてもよいとしてしまいました
前提が崩れたためあなたの最初の主張の理もまた失われたのです
Vueでコンポーネントを実装するとhtml/cssとjsが1箇所に記述されるため強い結合が生じるというのがあなたの最初の主張です
ここには暗黙的に1つの前提がありました
html/cssを別のファイルに定義しないという前提です
しかしあなたは続く投稿でその前提を自ら覆しました
あなたはtemplate tagを提示してhtml/cssを別のファイルに記述する手段があるならしてもよいとしてしまいました
前提が崩れたためあなたの最初の主張の理もまた失われたのです
909デフォルトの名無しさん (アウアウウー Sac3-4dCE)
2019/03/09(土) 12:38:30.60ID:izNw5U5za910デフォルトの名無しさん (ワッチョイ a701-chNm)
2019/03/09(土) 12:44:02.36ID:e9DsS9n/0 >>900
あーそうだ、jQuery君に肝心な事聞き忘れてた。
君がmy-componentをコンポーネントと言うなら答えられるはず。
1、そのコンポーネントのインターフェイスは?
2、再利用は?
3、内部をどう隠蔽して部品化する?
これコンポーネントの最低条件だから。本当はもっとある。
一つでも満たさない場合少なくとも仕事でコンポーネントと言ってはだめよ。
まあ保守するのが君一人ならオレオレコンポーネントでもいいんだけど。
あーそうだ、jQuery君に肝心な事聞き忘れてた。
君がmy-componentをコンポーネントと言うなら答えられるはず。
1、そのコンポーネントのインターフェイスは?
2、再利用は?
3、内部をどう隠蔽して部品化する?
これコンポーネントの最低条件だから。本当はもっとある。
一つでも満たさない場合少なくとも仕事でコンポーネントと言ってはだめよ。
まあ保守するのが君一人ならオレオレコンポーネントでもいいんだけど。
911デフォルトの名無しさん (ワッチョイ a701-chNm)
2019/03/09(土) 13:16:35.03ID:e9DsS9n/0 >>897
>DOMのクラスやセレクタを使わないでやるなら
>HTMLに直接React用のコードを埋め込むしか無いやんw
やっぱりここにjQuery君の根本的な勘違いがあるな。
jQueryってのは基本密結合なんだよ。密結合ってのは、相手を明確に知ってないといけないという事。端的に言えばセレクタが元凶。密結合が好ましくないってことは知ってるよね。
んでさ、また君の不得意なvueですまんけどさ、疎結合ってのはこういう事。
<div v-show="isShow"><div>
script側は変数isShowを切り替えるのみ。
違い分かるかな?スクリプト側からはdomを知らない&触れてない事。
メリットがとてつもなく大きな事も分かってるはず。いや分かれ。だったらデザイナに教えるなり、君が骨組み作ればいいだけ。。。いやそれができればこんな話になってないかああ。スレも残り少ないのに不毛だぜ。。
>DOMのクラスやセレクタを使わないでやるなら
>HTMLに直接React用のコードを埋め込むしか無いやんw
やっぱりここにjQuery君の根本的な勘違いがあるな。
jQueryってのは基本密結合なんだよ。密結合ってのは、相手を明確に知ってないといけないという事。端的に言えばセレクタが元凶。密結合が好ましくないってことは知ってるよね。
んでさ、また君の不得意なvueですまんけどさ、疎結合ってのはこういう事。
<div v-show="isShow"><div>
script側は変数isShowを切り替えるのみ。
違い分かるかな?スクリプト側からはdomを知らない&触れてない事。
メリットがとてつもなく大きな事も分かってるはず。いや分かれ。だったらデザイナに教えるなり、君が骨組み作ればいいだけ。。。いやそれができればこんな話になってないかああ。スレも残り少ないのに不毛だぜ。。
912デフォルトの名無しさん (ワッチョイ 162c-1cTK)
2019/03/09(土) 13:25:46.15ID:GVs3bbIF0 コンポーネントは、HTML/CSS/JS を、1つの .vue ファイルにまとめる。
そして、header 用、footer 用などとして、再利用する。
各コンポーネントには、data-v-aaaaaa などのユニークな属性が付くので、区別できる(Scoped CSS)
さらに、JSX 記法を使うと、JS 関数内に、HTML も書けるから、可読性が高い
new Vue({
el: '#app',
render: function(h) {
return <div>Foo</div>;
},
});
return <div>Foo</div>;
の部分が、以下の関数に変換される。
return h('div', null, 'Foo');
そして、header 用、footer 用などとして、再利用する。
各コンポーネントには、data-v-aaaaaa などのユニークな属性が付くので、区別できる(Scoped CSS)
さらに、JSX 記法を使うと、JS 関数内に、HTML も書けるから、可読性が高い
new Vue({
el: '#app',
render: function(h) {
return <div>Foo</div>;
},
});
return <div>Foo</div>;
の部分が、以下の関数に変換される。
return h('div', null, 'Foo');
913デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 13:28:20.83ID:RYW8IiyE0 まだVue側のコードは出てないのか
914デフォルトの名無しさん (アメ MMdb-cVal)
2019/03/09(土) 14:01:33.87ID:JGH8xftfM コンポーネントを理解できてないってことだよな
915デフォルトの名無しさん (オッペケ Src7-EzoF)
2019/03/09(土) 14:19:02.54ID:47IMMy0/r デザイナー兼プログラマーの俺様なら全て解決する問題だな
jquery使うのはWordPressのみ
Webアプリ系はvueかReactで作る
てかデザイナーとフロント分けたほうが効率いいとかいう輩どもはこれでわかったんじゃねえの
まったく解決できてねえじゃん
むしろ悪化してる
jquery使うのはWordPressのみ
Webアプリ系はvueかReactで作る
てかデザイナーとフロント分けたほうが効率いいとかいう輩どもはこれでわかったんじゃねえの
まったく解決できてねえじゃん
むしろ悪化してる
916デフォルトの名無しさん (ワッチョイ a701-chNm)
2019/03/09(土) 14:22:14.84ID:e9DsS9n/0917デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 14:22:18.32ID:RYW8IiyE0918デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 14:22:58.79ID:RYW8IiyE0919デフォルトの名無しさん (ワッチョイ a701-chNm)
2019/03/09(土) 14:35:46.09ID:e9DsS9n/0 >>918
ほう昨日はnew Vue()すら知らなかった君が、たった一日でマスターしたのか。しかもreactも。って冗談でも笑えねえぞこら。
あとまあ、、一応聞いとくか、、
> VueもReactも密結合になるだけでメンテナンスしづらくなり
どのへんが密結合なんでしょうvue reactマスターさん?
まだまだ私も勉強中なので参考までに教えてください。
まずは密結合の意味からお願いします。
ほう昨日はnew Vue()すら知らなかった君が、たった一日でマスターしたのか。しかもreactも。って冗談でも笑えねえぞこら。
あとまあ、、一応聞いとくか、、
> VueもReactも密結合になるだけでメンテナンスしづらくなり
どのへんが密結合なんでしょうvue reactマスターさん?
まだまだ私も勉強中なので参考までに教えてください。
まずは密結合の意味からお願いします。
920デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 14:37:44.00ID:RYW8IiyE0921デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 14:39:02.01ID:RYW8IiyE0 もう少しわかりやすく言えば、
見た目(デザイン)を変更しようと思った時に、JavaScriptを全く知らない人に
担当させられないのが密結合の証拠です。
見た目(デザイン)を変更しようと思った時に、JavaScriptを全く知らない人に
担当させられないのが密結合の証拠です。
922デフォルトの名無しさん (アウアウウー Sac3-qzYw)
2019/03/09(土) 14:46:41.07ID:aSIxwjYia コンポーネントぶち殺すマン
923デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 14:50:50.25ID:RYW8IiyE0 >>922
コンポーネントと見た目(デザイン)は別の概念です。
VueやReactを使うとコンポーネントに見た目(デザイン)が蜜に結合してしまって
再利用しづらいコンポーネントになってしまうと自白しているようなもんですね。
同じコンポーネントでも見た目(デザイン)は別のものに変更できるようになってないと
いけません。テーマとかスキンという言葉を使えば理解できますか?
コンポーネントと見た目(デザイン)は別の概念です。
VueやReactを使うとコンポーネントに見た目(デザイン)が蜜に結合してしまって
再利用しづらいコンポーネントになってしまうと自白しているようなもんですね。
同じコンポーネントでも見た目(デザイン)は別のものに変更できるようになってないと
いけません。テーマとかスキンという言葉を使えば理解できますか?
924デフォルトの名無しさん (アウアウウー Sac3-4dCE)
2019/03/09(土) 14:55:21.16ID:izNw5U5za 正直行数が少ない方が正義って思う人はjQuery使ってていいんじゃないかと思うよ
925デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 14:57:22.21ID:RYW8IiyE0 行数よりも、HTMLとCSSとJavaScriptが
明確に分離できてるのがjQueryの強みですけどね
明確に分離できてるのがjQueryの強みですけどね
926デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 15:16:00.82ID:RYW8IiyE0 というかVueの方が行数が長くなると認めたレスなのかw
927デフォルトの名無しさん (アウアウエー Saaa-W5A6)
2019/03/09(土) 15:19:43.98ID:/2BHRI8Ma 動的にタグの数が変わるようなものはjqueryでどう書くのでしょうか?
928デフォルトの名無しさん (オッペケ Src7-EzoF)
2019/03/09(土) 15:22:05.65ID:47IMMy0/r ほんとエンジニアって使えねえなあ
行数ごときで争ってるバカどもw
WebアプリなんだからUIUXもシステムで作るんだから右脳左脳両方使って効率よく作り出せよ
デザインセンスゼロだから行数で言い合うしかねえんだろ
お絵描き教室からはじめろ
行数ごときで争ってるバカどもw
WebアプリなんだからUIUXもシステムで作るんだから右脳左脳両方使って効率よく作り出せよ
デザインセンスゼロだから行数で言い合うしかねえんだろ
お絵描き教室からはじめろ
929デフォルトの名無しさん (ブーイモ MM32-4xo3)
2019/03/09(土) 15:25:37.25ID:flOfKdeWM930デフォルトの名無しさん (アウアウエー Saaa-W5A6)
2019/03/09(土) 15:33:47.36ID:/2BHRI8Ma 動的にタグの数が変わるものはjqueryでどう書くのでしょうか?
タグをjsに書いたりしないですよね
タグをjsに書いたりしないですよね
931デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 15:44:26.89ID:RYW8IiyE0 > タグをjsに書いたりしないですよね
当たり前だろ。そんな事したらJavaScriptの中に
タグが埋め込まれてしまってデザインが用意に変更しづらくなるだろ
当たり前だろ。そんな事したらJavaScriptの中に
タグが埋め込まれてしまってデザインが用意に変更しづらくなるだろ
932デフォルトの名無しさん (アウアウエー Saaa-W5A6)
2019/03/09(土) 15:48:30.46ID:/2BHRI8Ma >>931
それは知っていますよ。どう書くのでしょうか?
それは知っていますよ。どう書くのでしょうか?
933デフォルトの名無しさん (ワッチョイ a701-chNm)
2019/03/09(土) 15:55:06.21ID:e9DsS9n/0 >>919
まあ予想してたと思うけど、、ちょっと長いよ。2つに分ける。
>見た目(デザイン)を変更しようと思った時にJavaScriptのコードを変更しなければいけないのが密結合です。
違います。
Javascriptのコードと言うからややこしくなるんです。データ駆動という言葉を知っていますか?
例えばform。form全体の状態を保持するjsonAがあるとしましょう。この場合、formの"見た目"はjsonAの鏡となっていなければなりません。リアクティブは鏡に例えてよく説明されますよね。
で次にjsonA.isActive=trueなら、対応するUIはそれが"どんな要素であれtrueの状態である”という事です。鏡ですからね。
逆に<input type="checkbox" v-model="isActive">をクリックすれば、jsonA.isActiveも自動的に変更され従って他の要素も自動的に反映されます。
データ駆動ではこの様に、直接触れない(疎結合な)鏡の相手に対して、無意識に、自動的に(鏡の様に)反映されます。
でもね、もしかしたら君は今でもこう思ってるでしょう。
v-model="isActive" <<< 密結合じゃねえの?
違うのですよ。domはisActiveが何者か知らないのです。isActiveという名前の何か、なんです。name="isActive"じゃないんですよ。
ただただ自分の状態を反映する鏡の相手を指定しているだけなんです。この違い、わかりますか?
逆に密結合というのは、
<input type="checkbox" name="checkbox">
これです。自分をname=checkboxだと宣言し、それに対してアクセスするよう指示しています。アクセスするのはjQueryそしてセレクタですが。
先程の例で言えば、isActiveを変更したい場合、domのnameを知らないと何もできません。
この状態というか処理系を、密に結合している、というのです。つまりjQueryを使う限り大部分は密結合なんですよ。驚きですね!!
さてこれが本当の意味の、疎結合、密結合です。少なくともWEB業界ではそうです。
それにしてもコンポーネントといい、君は本当に勝手な解釈をしますね。もっと勉強しましょう。
まあ予想してたと思うけど、、ちょっと長いよ。2つに分ける。
>見た目(デザイン)を変更しようと思った時にJavaScriptのコードを変更しなければいけないのが密結合です。
違います。
Javascriptのコードと言うからややこしくなるんです。データ駆動という言葉を知っていますか?
例えばform。form全体の状態を保持するjsonAがあるとしましょう。この場合、formの"見た目"はjsonAの鏡となっていなければなりません。リアクティブは鏡に例えてよく説明されますよね。
で次にjsonA.isActive=trueなら、対応するUIはそれが"どんな要素であれtrueの状態である”という事です。鏡ですからね。
逆に<input type="checkbox" v-model="isActive">をクリックすれば、jsonA.isActiveも自動的に変更され従って他の要素も自動的に反映されます。
データ駆動ではこの様に、直接触れない(疎結合な)鏡の相手に対して、無意識に、自動的に(鏡の様に)反映されます。
でもね、もしかしたら君は今でもこう思ってるでしょう。
v-model="isActive" <<< 密結合じゃねえの?
違うのですよ。domはisActiveが何者か知らないのです。isActiveという名前の何か、なんです。name="isActive"じゃないんですよ。
ただただ自分の状態を反映する鏡の相手を指定しているだけなんです。この違い、わかりますか?
逆に密結合というのは、
<input type="checkbox" name="checkbox">
これです。自分をname=checkboxだと宣言し、それに対してアクセスするよう指示しています。アクセスするのはjQueryそしてセレクタですが。
先程の例で言えば、isActiveを変更したい場合、domのnameを知らないと何もできません。
この状態というか処理系を、密に結合している、というのです。つまりjQueryを使う限り大部分は密結合なんですよ。驚きですね!!
さてこれが本当の意味の、疎結合、密結合です。少なくともWEB業界ではそうです。
それにしてもコンポーネントといい、君は本当に勝手な解釈をしますね。もっと勉強しましょう。
934デフォルトの名無しさん (ワッチョイ a701-chNm)
2019/03/09(土) 15:55:34.80ID:e9DsS9n/0 >>919
> 見た目(デザイン)を変更しようと思った時に、JavaScriptを全く知らない人に担当させられないのが密結合の証拠です。
もちろん違います。
name="checkbox"がv-model="checkbox"になるだけです。スクリプトの要素はありません。
テキストのバインディグも {{name}} とするだけです。スクリプトの要素はありません。他にもありますが、デザイナが新たに覚える文法は多くないです。
デザイナの教育、指示はむしろエンジニアの腕の見せ所ですよ。負担となるかは大部分が君次第。フレームワークだけのせいにしないように。
詳しくはvue公式を読みましょう。とてもわかり易くておすすめです。
>>923
ところで、君はコンポーネントの質問に答えてないですよね?
君の示したコンポーネント、<div class="my-component">のインターフェイス、再利用、隠蔽について答えてください。
言ってる意味さえ分からないかもしれませんが。。それなら質問しましょうね。
> 見た目(デザイン)を変更しようと思った時に、JavaScriptを全く知らない人に担当させられないのが密結合の証拠です。
もちろん違います。
name="checkbox"がv-model="checkbox"になるだけです。スクリプトの要素はありません。
テキストのバインディグも {{name}} とするだけです。スクリプトの要素はありません。他にもありますが、デザイナが新たに覚える文法は多くないです。
デザイナの教育、指示はむしろエンジニアの腕の見せ所ですよ。負担となるかは大部分が君次第。フレームワークだけのせいにしないように。
詳しくはvue公式を読みましょう。とてもわかり易くておすすめです。
>>923
ところで、君はコンポーネントの質問に答えてないですよね?
君の示したコンポーネント、<div class="my-component">のインターフェイス、再利用、隠蔽について答えてください。
言ってる意味さえ分からないかもしれませんが。。それなら質問しましょうね。
935デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 15:57:33.29ID:RYW8IiyE0936デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 15:58:48.05ID:RYW8IiyE0937デフォルトの名無しさん (ワッチョイ a701-chNm)
2019/03/09(土) 16:02:36.25ID:e9DsS9n/0 >>936
>HTML/CSSの世界に、Reactのものが含まれてるから、密結合だって言ってんだろ。
だからそれは密結合じゃないの。君の変な定義はどうでもよろしい。
相変わらず間違いを認めないヤツだなあ。。ググってみなよ。すぐ分かる事からさ。
>HTML/CSSの世界に、Reactのものが含まれてるから、密結合だって言ってんだろ。
だからそれは密結合じゃないの。君の変な定義はどうでもよろしい。
相変わらず間違いを認めないヤツだなあ。。ググってみなよ。すぐ分かる事からさ。
938デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
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のコードは状態を持ってないので
隠蔽するものはなにもない。無名関数使ってるので関数名すら隠蔽された状態だし
単にクラス名がかぶらないようにしたいってだけならプリフィックスでもつければおしまい
> 君の示したコンポーネント、<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のコードは状態を持ってないので
隠蔽するものはなにもない。無名関数使ってるので関数名すら隠蔽された状態だし
単にクラス名がかぶらないようにしたいってだけならプリフィックスでもつければおしまい
939デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 16:04:07.64ID:RYW8IiyE0 >>937
ぐぐったけど、間違いないですねw
ぐぐったけど、間違いないですねw
940デフォルトの名無しさん (ワッチョイ a701-chNm)
2019/03/09(土) 16:05:45.02ID:e9DsS9n/0 >>936
んでさ、vue reactマスターの君はコンポーネントが全くわかってない。何も質問に何も答えられない。どうなのよマスターさん。
いろんな意味で恥ずかしいと思わんの?よくそんな妙な知識で仕事できるなあ。
同僚とか上司とかいたら注意されない?まあいれば、だけどさ。
んでさ、vue reactマスターの君はコンポーネントが全くわかってない。何も質問に何も答えられない。どうなのよマスターさん。
いろんな意味で恥ずかしいと思わんの?よくそんな妙な知識で仕事できるなあ。
同僚とか上司とかいたら注意されない?まあいれば、だけどさ。
941デフォルトの名無しさん (ワッチョイ a701-chNm)
2019/03/09(土) 16:06:58.43ID:e9DsS9n/0 >>939
はい、ソースだしなさいねー。嘘ついてもすぐわかりますよー。
はい、ソースだしなさいねー。嘘ついてもすぐわかりますよー。
942デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 16:08:25.60ID:RYW8IiyE0 どうやら>>938には反論できないから
レスするのすっ飛ばしたようだなw
レスするのすっ飛ばしたようだなw
943デフォルトの名無しさん (ワッチョイ a701-chNm)
2019/03/09(土) 16:14:51.37ID:e9DsS9n/0 >>938
やっと書いたか。本当に待ちくたびれたわい。
>インターフェース? 何が聞きたいのかわからんが、
どあほ。。。まじで言ってる??コンポーネントのインターフェイスが分からん?
よく堂々と白状できるな。。俺なら到底言えないわ。
あとさ、君のコードは再利用できてない。
それは単に、コ ピ ペ と言うの。
>何から何を隠蔽するしたいのかわからん。jQueryのコードは状態を持ってないので隠蔽するものはなにもない
もう、、、、なにを言っていいのやら。
あのね、例えばさ、外部からさ、直接 $("div.my-component input")とか、コンポーネント内部にダイレクトにアクセスできちゃ駄目なのよ。
これってコンポーネントの最低条件なんだけど、、君はどうやって勉強したんだ。
いいからこれもググってみなよ。。。うーん、だれか突っ込んであげてください。私はもう疲れました。
やっと書いたか。本当に待ちくたびれたわい。
>インターフェース? 何が聞きたいのかわからんが、
どあほ。。。まじで言ってる??コンポーネントのインターフェイスが分からん?
よく堂々と白状できるな。。俺なら到底言えないわ。
あとさ、君のコードは再利用できてない。
それは単に、コ ピ ペ と言うの。
>何から何を隠蔽するしたいのかわからん。jQueryのコードは状態を持ってないので隠蔽するものはなにもない
もう、、、、なにを言っていいのやら。
あのね、例えばさ、外部からさ、直接 $("div.my-component input")とか、コンポーネント内部にダイレクトにアクセスできちゃ駄目なのよ。
これってコンポーネントの最低条件なんだけど、、君はどうやって勉強したんだ。
いいからこれもググってみなよ。。。うーん、だれか突っ込んであげてください。私はもう疲れました。
944デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 16:16:33.74ID:RYW8IiyE0945デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 16:17:00.95ID:RYW8IiyE0 >>943
> あのね、例えばさ、外部からさ、直接 $("div.my-component input")とか、コンポーネント内部にダイレクトにアクセスできちゃ駄目なのよ。
VueやReactでもダイレクトにアクセスできますが?
> あのね、例えばさ、外部からさ、直接 $("div.my-component input")とか、コンポーネント内部にダイレクトにアクセスできちゃ駄目なのよ。
VueやReactでもダイレクトにアクセスできますが?
946デフォルトの名無しさん (ワッチョイ a701-chNm)
2019/03/09(土) 16:19:28.37ID:e9DsS9n/0947デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 16:21:26.12ID:RYW8IiyE0948デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 16:24:13.68ID:RYW8IiyE0 確か上の方で、scopedを使えば、こういうCSSからコンポーネントを
守ることができる。コンポーネントは影響を受けないってのたまわっていたね?
やってみて
div { //CSS ダイレクトアクセス
background-color: red;
}
守ることができる。コンポーネントは影響を受けないってのたまわっていたね?
やってみて
div { //CSS ダイレクトアクセス
background-color: red;
}
949デフォルトの名無しさん (ワッチョイ 9732-4xo3)
2019/03/09(土) 16:26:40.96ID:zxiwPMOw0 さすがに呆れたというかコメントできない…
950デフォルトの名無しさん (ワッチョイ a701-w6xA)
2019/03/09(土) 16:27:02.65ID:e9DsS9n/0 >>947
笑いが止まらんぞおいっっっw
今日一番だわ!!!
本当に君には驚かされるな!!!
どこまで発想がjQueryなのよ。そりゃvueと共存できるよ。注意すればね。
いやすまん、ニヤニヤが止まらんから後でちゃんと返事する。
笑いが止まらんぞおいっっっw
今日一番だわ!!!
本当に君には驚かされるな!!!
どこまで発想がjQueryなのよ。そりゃvueと共存できるよ。注意すればね。
いやすまん、ニヤニヤが止まらんから後でちゃんと返事する。
951デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 16:33:17.69ID:RYW8IiyE0 結局Vueのコンポーネントは隠蔽化されてるとか言うのは
技術的にそうなってるんじゃなくて、単にフレームワークの決まりとして
外部から触らないようにしましょうと文書で書かれているだけ
それを言ったら、jQueryでは情報のやり取りには
(カスタム)イベントを使用しましょう。コンポーネントの担当者以外が
直接内部をいじってはいけません。と文書でかけば終わるわけだよ。
技術的にそうなってるんじゃなくて、単にフレームワークの決まりとして
外部から触らないようにしましょうと文書で書かれているだけ
それを言ったら、jQueryでは情報のやり取りには
(カスタム)イベントを使用しましょう。コンポーネントの担当者以外が
直接内部をいじってはいけません。と文書でかけば終わるわけだよ。
952デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 16:42:10.68ID:RYW8IiyE0 少し訂正
それを言ったら、jQueryでは "コンポーネント間" の情報のやり取りには
(カスタム)イベントを使用しましょう。コンポーネントの担当者以外が
それを言ったら、jQueryでは "コンポーネント間" の情報のやり取りには
(カスタム)イベントを使用しましょう。コンポーネントの担当者以外が
953デフォルトの名無しさん (ワッチョイ 162c-1cTK)
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通りの中から、適用される組み合わせを探すのに、時間が掛かりすぎるため破たんした!
ユニークな属性、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は基準を満たす。
流石にこれは擁護できんし見逃せんわ。認めるまで議論は進まない。まあどうせスレも終わるし最後にありがとう、面白かった。
いやすまん、ちょっと笑いすぎた。失礼しました。
ってー君もめげないなあ。。。その不屈の精神があればvue reactなんてすぐ習得できると思うぞ本当に。
>結局Vueのコンポーネントは隠蔽化されてるとか言うのは技術的にそうなってるんじゃなくて、単にフレームワークの決まりとして外部から触らないようにしましょうと文書で書かれているだけ
文章で書かれてるだけww、全然ちがうし、大体そんな事書かれてないし!
vueはフレームワークなの。jQueryと違うの。vue使ってる限りはきちんとコンポーネント化できてるよ。もし直接アクセスできたらバグだよ。
>それを言ったら、jQueryでは "コンポーネント間" の情報のやり取りには(カスタム)イベントを使用しましょう。 コンポーネントの担当者以外が直接内部をいじってはいけません。と文書でかけば終わるわけだよ。
はい気をつけまーす。でも人間は間違えるし忘れるよねぇ。うっかりアクセスする事も十分あり得るよね。
ただうっかりdocument.getElementsByClassNameなんて発行しないよなあ。そもそもdocument自体使わんし。どんなミスだそれ。
認めようよ。君のコンポーネントは不十分というか君の理解不足とスキル不足だよ。そしてvueは基準を満たす。
流石にこれは擁護できんし見逃せんわ。認めるまで議論は進まない。まあどうせスレも終わるし最後にありがとう、面白かった。
955デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 18:00:05.54ID:RYW8IiyE0 >>953
> 従来のやり方では、3つのHTMLファイル・4つのCSSファイル・5つのJSファイルがあれば、
> 3 * 4 * 5 = 60通りの中から、適用される組み合わせを探すのに、時間が掛かりすぎるため破たんした!
とりあえずお前はブラウザの開発者ツールを使えるようになろう。
あとはgrepも便利だぞ
そしたら今度はコンポーネントごとにグループ分けしてディレクトリ管理して
webpackやsassも使えるようになろう
> 従来のやり方では、3つのHTMLファイル・4つのCSSファイル・5つのJSファイルがあれば、
> 3 * 4 * 5 = 60通りの中から、適用される組み合わせを探すのに、時間が掛かりすぎるため破たんした!
とりあえずお前はブラウザの開発者ツールを使えるようになろう。
あとはgrepも便利だぞ
そしたら今度はコンポーネントごとにグループ分けしてディレクトリ管理して
webpackやsassも使えるようになろう
956デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 18:00:22.08ID:RYW8IiyE0 > ってー君もめげないなあ。。。その不屈の精神があればvue reactなんてすぐ習得できると思うぞ本当に。
だから習得してるってw
だから習得してるってw
957デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 18:00:41.76ID:RYW8IiyE0 > vueはフレームワークなの。jQueryと違うの。vue使ってる限りはきちんとコンポーネント化できてるよ。もし直接アクセスできたらバグだよ。
はい、Vueでコンポーネント内部にダイレクトにアクセスできちゃいましたw
https://codepen.io/anon/pen/ywXVOW
はい、Vueでコンポーネント内部にダイレクトにアクセスできちゃいましたw
https://codepen.io/anon/pen/ywXVOW
958デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 18:01:53.35ID:RYW8IiyE0959953 (ワッチョイ 162c-1cTK)
2019/03/09(土) 18:05:06.61ID:GVs3bbIF0 従来のやり方では、3つのHTMLファイル・4つのCSSファイル・5つのJSファイルがあれば、
3 * 4 * 5 = 60通りの中から、適用される組み合わせを探すのに、時間が掛かりすぎるため破たんした!
これが密結合!
どこかを修正すると、別のどこかがおかしくなるため、無限に修正を繰り返すことになる!
今までの日本車のすり合わせ技術と同じ。
どこかを修正すると、別のどこかがおかしくなるため、外人よりも日本人に有利だった
これを部品ごとに疎結合にすることで、ある部品の修正が、他の部品に影響を与えないため、
すり合わせ技術がなくなり、外人でも同じ車が作れるようになった
すり合わせがあると、単独で部品が作れない・単独で働けないから、
常に全員が相談・残業して働く、日本人が有利だった
3 * 4 * 5 = 60通りの中から、適用される組み合わせを探すのに、時間が掛かりすぎるため破たんした!
これが密結合!
どこかを修正すると、別のどこかがおかしくなるため、無限に修正を繰り返すことになる!
今までの日本車のすり合わせ技術と同じ。
どこかを修正すると、別のどこかがおかしくなるため、外人よりも日本人に有利だった
これを部品ごとに疎結合にすることで、ある部品の修正が、他の部品に影響を与えないため、
すり合わせ技術がなくなり、外人でも同じ車が作れるようになった
すり合わせがあると、単独で部品が作れない・単独で働けないから、
常に全員が相談・残業して働く、日本人が有利だった
960デフォルトの名無しさん (ワッチョイ a701-w6xA)
2019/03/09(土) 18:09:10.56ID:e9DsS9n/0961デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 18:10:12.37ID:RYW8IiyE0962953 (ワッチョイ 162c-1cTK)
2019/03/09(土) 18:17:05.53ID:GVs3bbIF0 すり合わせは、金メダルのスピードスケート女子パシュートもそう。
常に全員が相談・残業して練習する、日本人が有利
外人は思想・人種・性格もバラバラで、長時間一緒に居れない
しかも草食動物の日本人とは違い、外人は肉食動物で自己主張が強いから、
異なる思想・人種・性格の奴とは、殴り合いのケンカになる!
外人は、日本人みたいに従順で、すぐに従ったりしないから
常に全員が相談・残業して練習する、日本人が有利
外人は思想・人種・性格もバラバラで、長時間一緒に居れない
しかも草食動物の日本人とは違い、外人は肉食動物で自己主張が強いから、
異なる思想・人種・性格の奴とは、殴り合いのケンカになる!
外人は、日本人みたいに従順で、すぐに従ったりしないから
963953 (ワッチョイ 162c-1cTK)
2019/03/09(土) 18:26:31.50ID:GVs3bbIF0 >>958
>だからユニークな属性をつければいいと思いますよ?
従来のやり方では、無理
属性を付けても、それを訂正してはずす時には、
また、3 * 4 * 5 = 60通りの中から、正しいかどうかを確かめないといけないから、時間が掛かりすぎる
密結合・すり合わせは、どこかを修正すると、別のどこかがおかしくなるため、
無限に修正を繰り返すことになる
だから、部品やプログラミングは、疎結合でないとダメ!
>だからユニークな属性をつければいいと思いますよ?
従来のやり方では、無理
属性を付けても、それを訂正してはずす時には、
また、3 * 4 * 5 = 60通りの中から、正しいかどうかを確かめないといけないから、時間が掛かりすぎる
密結合・すり合わせは、どこかを修正すると、別のどこかがおかしくなるため、
無限に修正を繰り返すことになる
だから、部品やプログラミングは、疎結合でないとダメ!
964デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
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
その計算になんの根拠もねーわw
コンポーネント毎にCSS定義してるから
何を探すと言ってるのかさっぱりわからない。
.my-compnent {
[name="switch"] { }
sonota-1 { }
sonota-2 { }
}
JavaScriptファイルも my-compnent に関するものは
my-compnent.js に全部収められているし、
あ、なるほど、jQueryがだめと言ってる根拠は
自分がまともな管理できてないからだってことかw
965953 (ワッチョイ 162c-1cTK)
2019/03/09(土) 18:35:08.58ID:GVs3bbIF0 従来のやり方では、3つのHTMLファイル・4つのCSSファイル・5つのJSファイルがあれば、
3 * 4 * 5 = 60通りの中から、適用される組み合わせを探すのに、時間が掛かりすぎるため破たんした!
さらに、これの悪い所は、3 + 4 + 5 = 12 の足し算じゃなく、掛け算になるのが最悪!
考えることが加速度的に増える
ここを修正したら、別の場所がおかしくなりましたとか、こればっかりやってる。
延々と、適用される組み合わせを探してる!
3 * 4 * 5 = 60通りの中から、適用される組み合わせを探すのに、時間が掛かりすぎるため破たんした!
さらに、これの悪い所は、3 + 4 + 5 = 12 の足し算じゃなく、掛け算になるのが最悪!
考えることが加速度的に増える
ここを修正したら、別の場所がおかしくなりましたとか、こればっかりやってる。
延々と、適用される組み合わせを探してる!
966デフォルトの名無しさん (ワッチョイ 1f14-uGU8)
2019/03/09(土) 18:36:52.78ID:RYW8IiyE0 根拠言えないから、必死に嘘を言いまくるのねw
どっかの国の人と行動がおなじになってるよw
どっかの国の人と行動がおなじになってるよw
967953 (ワッチョイ 162c-1cTK)
2019/03/09(土) 18:46:21.76ID:GVs3bbIF0 自分で属性を付けても、またそれを修正したり、訂正してはずす時には、
また、3 * 4 * 5 = 60通りの中から、正しいかどうかを確かめないといけないから、時間が掛かりすぎる
だから、各コンポーネントを別々のファイルに書くだけで、
ユニークな属性を自動的に付けてくれる、フレームワークが良い
また、3 * 4 * 5 = 60通りの中から、正しいかどうかを確かめないといけないから、時間が掛かりすぎる
だから、各コンポーネントを別々のファイルに書くだけで、
ユニークな属性を自動的に付けてくれる、フレームワークが良い
968デフォルトの名無しさん (ブーイモ MMdb-4xo3)
2019/03/09(土) 18:51:07.24ID:pp+gnfPcM969デフォルトの名無しさん (ワッチョイ a701-w6xA)
2019/03/09(土) 18:55:36.80ID:e9DsS9n/0970デフォルトの名無しさん (ササクッテロ 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なんだぜ。
これで納得できるのが本当凄え。
つーか、ここまで vue react嫌うって何があったんだろ。そのくせ自称vue reactマスターなんだぜw。何その劣等感。しかもマスターならvueでもdom直接いじれるんだぜ。それでコンポーネントの垣根も超えられるって自慢するんだぜ。でも文書化で禁止すればokなんだぜ。
これで納得できるのが本当凄え。
972デフォルトの名無しさん (アウアウカー Sa6f-2Y9w)
2019/03/09(土) 19:42:14.57ID:fCQTKW9ua jQueryおじさん、スレチなんで次スレは来ないでね
973デフォルトの名無しさん (アメ MMdb-F75Q)
2019/03/09(土) 19:46:22.67ID:C6v7oEvsM >>961
これ通報じゃね?
これ通報じゃね?
974デフォルトの名無しさん (アウアウウー Sac3-4dCE)
2019/03/09(土) 19:52:05.13ID:izNw5U5za ReactはReactNativeとセットにして一スレ立ててもいいんじゃない?
975デフォルトの名無しさん (オッペケ Src7-EzoF)
2019/03/09(土) 20:20:05.00ID:47IMMy0/r 密結合だろうが疎結合だろうが俺の場合は右脳と左脳が同時に判断すらから何も問題がない
本当のフルスタックとはそういうものだ
しかし左脳しか機能していないお前らは、理解不能で恐ろしい存在であるデザインのためにくだらない争いをしているわけだ
レベルが低すぎてアプリ開発なんか無理だろ
本当のフルスタックとはそういうものだ
しかし左脳しか機能していないお前らは、理解不能で恐ろしい存在であるデザインのためにくだらない争いをしているわけだ
レベルが低すぎてアプリ開発なんか無理だろ
レス数が950を超えています。1000を超えると書き込みができなくなります。
ニュース
- 【和訳付き】レーダー照射問題 中国軍と自衛隊との“音声データ”公開 中国国営メディア [♪♪♪★]
- 【YouTuber】バイク事故で入院のゆたぼん、振込で「お見舞金」募る [muffin★]
- 「中国側も日本機のレーダーを感知していた」 中国メディアが報道 [♪♪♪★]
- 中国とロシアの爆撃機、日本周辺で共同飛行 [少考さん★]
- 堀江貴文、キャッシュレス非対応の店にモヤッ 『PayPay』立ち上げの人物にまさかの直談判「現金決済しかできないんだけど…」 [冬月記者★]
- 高市早苗首相、消費税減税に後ろ向き 足かせはレジシステム? 「責任ある積極財政」期待高いが [蚤の市★]
- 【悲惨】中国軍が自衛隊に「事前通告」し自衛隊も返答した音声が公開されてしまうwwwこれは高市チェックアウトゕ★2 [597533159]
- 【悲惨】中国軍が自衛隊に「事前通告」し自衛隊も返答した音声が公開されてしまうwwwこれは高市チェックアウトゕ★3 [597533159]
- 【高市筋肉】筋トレおじさん、爆増wwwwwwwwwwwwwステロイド使用も増 [308389511]
- 【悲報】JA「全然米が売れなくて倉庫を圧迫してる。助けて!」米卸売り業者「安売りしたら赤字になる…助けて!」 [802034645]
- 俺が突拍子もないレスするとスクリプト扱いされるの不満なんだが
- 中国の日本向けレアアースの輸出止まる、高市のせいで日本終了のお知らせ [931948549]
