!extend:on:vvvvv:1000:512
Vue
https://jp.vuejs.org/
React
https://reactjs.org/
Angular
https://angular.io/
Svelte
https://svelte.dev/
solid.js
https://www.solidjs.com/
※前スレ
Vue vs React vs Angular vs Svelte Part.8
https://mevius.5ch.net/test/read.cgi/tech/1621744952/
Vue vs React vs Angular vs Svelte Part.9
https://mevius.5ch.net/test/read.cgi/tech/1642316774/
Vue vs React vs Angular vs Svelte Part.10
https://mevius.5ch.net/test/read.cgi/tech/1646747836/
★ここではjQuery, Ruby, C#, Blazorの話題は禁止です
★jQuery, Ruby, C#, Blazorキチガイが書き込んでも無視してください
Next, Nuxt, Sapper, Gatsby, VuePress, RedWoodなどはおk。
VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured
Vue vs React vs Angular vs Svelte Part.11
1デフォルトの名無しさん (ワッチョイ 434e-OHyh)
2022/08/20(土) 13:17:12.21ID:OuD+ytSs0257デフォルトの名無しさん (ワッチョイ 1e6d-DO7g)
2024/09/22(日) 10:55:33.23ID:kPNeBJFx0258デフォルトの名無しさん (ワッチョイ 7742-M+A0)
2024/09/23(月) 12:45:02.08ID:kXVPwjR50 vueは2~3周りの変革がググらビリティ下げてて初心者に逆にキツくなってるのが良くない
時間が解決するとは思うけど、ねえ
optionsAPIで突き進むのも差別化的にはよかったろうに、けど時流に沿うのもわからなくもないからなあ
時間が解決するとは思うけど、ねえ
optionsAPIで突き進むのも差別化的にはよかったろうに、けど時流に沿うのもわからなくもないからなあ
259デフォルトの名無しさん (ワッチョイ 72a4-7hLx)
2024/09/23(月) 13:39:10.98ID:oa5eY4290 Vueのググラビリティが低いのは中国が主戦場なせいだろう
我々日本人からするとコミュニティを置き去りにして大改造を続けてるように見えるけど、中華圏の中から見ればそうでもないのかもね
我々日本人からするとコミュニティを置き去りにして大改造を続けてるように見えるけど、中華圏の中から見ればそうでもないのかもね
260デフォルトの名無しさん (JP 0Hdf-cIDa)
2024/09/23(月) 13:53:57.31ID:ZAvpVZgFH vueは好きじゃないけどパフォーマンスの改革がすごい
今ではsvelteと変わらんくらいのパフォーマンスになってる
あとnuxtの話になるけどunjsが良い
今ではsvelteと変わらんくらいのパフォーマンスになってる
あとnuxtの話になるけどunjsが良い
261デフォルトの名無しさん (ワッチョイ 1e6d-DO7g)
2024/09/23(月) 18:01:38.02ID:kRT830++0 Next.jsよりHonoがすげえ伸びてるよな
開発者一人だけっぽいけど大丈夫なのか?
開発者一人だけっぽいけど大丈夫なのか?
262デフォルトの名無しさん (ワッチョイ 7ff0-LNR9)
2024/09/24(火) 12:53:38.69ID:25SVKRoU0 >>233
pythonでいいし
pythonでいいし
263デフォルトの名無しさん (ワッチョイ 7ff0-LNR9)
2024/09/24(火) 12:53:56.13ID:25SVKRoU0 >>261
趣味ならいいんじゃね?
趣味ならいいんじゃね?
264デフォルトの名無しさん (ワッチョイ 7ff0-LNR9)
2024/09/24(火) 12:54:47.28ID:25SVKRoU0265デフォルトの名無しさん (ワッチョイ 7ff0-LNR9)
2024/09/24(火) 12:55:15.04ID:25SVKRoU0266デフォルトの名無しさん (ワッチョイ 7ff0-LNR9)
2024/09/24(火) 12:55:32.57ID:25SVKRoU0 >>258
ChatGPTで困らない
ChatGPTで困らない
267デフォルトの名無しさん (ワッチョイ 7ff0-LNR9)
2024/09/24(火) 12:57:04.04ID:25SVKRoU0 >>257
多少面倒でもReactみたいに統一的な書き方ができる方が良いことに気がついた時には手遅れだった
多少面倒でもReactみたいに統一的な書き方ができる方が良いことに気がついた時には手遅れだった
268デフォルトの名無しさん (ワッチョイ 7ff0-LNR9)
2024/09/24(火) 12:57:43.99ID:25SVKRoU0269デフォルトの名無しさん (ワッチョイ 7ff0-LNR9)
2024/09/24(火) 12:58:18.09ID:25SVKRoU0 >>255
Remixもビミョー
Remixもビミョー
270デフォルトの名無しさん (ワッチョイ 7ff0-LNR9)
2024/09/24(火) 12:58:46.23ID:25SVKRoU0 >>253
クソだけどあるものからしか選べないのよね
クソだけどあるものからしか選べないのよね
271デフォルトの名無しさん (ワッチョイ 7ff0-LNR9)
2024/09/24(火) 12:59:11.60ID:25SVKRoU0 >>248
ゴミでもやるしかないんだよ
ゴミでもやるしかないんだよ
272デフォルトの名無しさん (ワッチョイ 1e28-DO7g)
2024/09/24(火) 14:46:15.54ID:4ZTe9NQw0 そもそもAIの時代になってもはやUIというものが無くなるからjavascriptもだんだん使われなくなっていくだろうな
273デフォルトの名無しさん (ワッチョイ 7ff0-LNR9)
2024/09/24(火) 15:46:19.24ID:25SVKRoU0 5年以内には画像から完全なフロントエンド実装を作るツールが生まれるのは間違いないだろうけど
フロントエンドもサーバーサイドに回帰してるから結局コード書けないとダメ
フロントエンドもサーバーサイドに回帰してるから結局コード書けないとダメ
274デフォルトの名無しさん (ワッチョイ 7ff0-LNR9)
2024/09/24(火) 15:47:43.57ID:25SVKRoU0 wasm gcが入るとほとんどの言語がwasmコンパイル可能になるから
新たなエデンが生まれると思う
新たなエデンが生まれると思う
275デフォルトの名無しさん (ワッチョイ 5f01-cIDa)
2024/09/24(火) 17:31:42.29ID:jWNJpVja0276デフォルトの名無しさん (ワッチョイ 77ee-MhEk)
2024/09/24(火) 18:07:06.89ID:FmaiGP410 ガワはだいたいReactだね
277デフォルトの名無しさん (ワッチョイ 7ff0-LNR9)
2024/09/24(火) 18:49:58.49ID:25SVKRoU0278デフォルトの名無しさん (ワッチョイ 127d-TqCW)
2024/09/24(火) 23:11:17.46ID:vg4kYONk0279デフォルトの名無しさん (ワッチョイ 7252-diYh)
2024/09/25(水) 00:05:02.99ID:rLLrPC9L0 サーバーサイドレンダリングのことじゃねえの?
古のMVCから変わってクライアントサイドでレンダリングするようになっていったかと思えば今度はまたNextのAppRouterよろしくSSR(orSSG)になったりと忙しない業界よな
古のMVCから変わってクライアントサイドでレンダリングするようになっていったかと思えば今度はまたNextのAppRouterよろしくSSR(orSSG)になったりと忙しない業界よな
280デフォルトの名無しさん (ワッチョイ 1ffb-L8o3)
2024/09/25(水) 00:09:03.70ID:UXiRrgGj0 >>279
単にWebベースのクライアントアプリの事を言ってると思う
単にWebベースのクライアントアプリの事を言ってると思う
281デフォルトの名無しさん (ワッチョイ a7c8-LNR9)
2024/09/25(水) 15:20:38.11ID:KipVgYfg0 まさにサーバーサイドレンダリングのことだ
結局コンポーネントに必要なデータはサーバーで取得した方が早いよねということにフロントエンドの人が気がついて
サーバーサイドの人は今更何言ってるの?みたいなる空気感
コードの共有がそれほど意味があるとは思えないし
サーバーサイドは別の速い言語で作れば良くね?って思うけどね
結局コンポーネントに必要なデータはサーバーで取得した方が早いよねということにフロントエンドの人が気がついて
サーバーサイドの人は今更何言ってるの?みたいなる空気感
コードの共有がそれほど意味があるとは思えないし
サーバーサイドは別の速い言語で作れば良くね?って思うけどね
282デフォルトの名無しさん (ワッチョイ a7c8-LNR9)
2024/09/25(水) 15:22:37.11ID:KipVgYfg0 最近はフロントエンドの人がサーバー側に口出ししてきて
今更ORMガーとか言ってて昭和かと
こっちはORM地獄を10年以上前に経験してウンザリしてるんだよ
今更ORMガーとか言ってて昭和かと
こっちはORM地獄を10年以上前に経験してウンザリしてるんだよ
283デフォルトの名無しさん (ワッチョイ 1e28-DO7g)
2024/09/25(水) 15:45:33.76ID:EcYO77Ak0 とサーバーしかしらん無知君が吠えてます
こいつ勘違いしてるというより無知だから今までのサーバーサイドレンダリングと同じだと思ってるらしい
こいつ勘違いしてるというより無知だから今までのサーバーサイドレンダリングと同じだと思ってるらしい
284デフォルトの名無しさん (ワッチョイ a7c8-LNR9)
2024/09/25(水) 16:31:31.44ID:KipVgYfg0 Twitterで騒いでるフロントエンドインフルエンサー()の方々はCSの知識がないのに調子乗ってるから本質が掴めてないんだよな
SSRなんて変な名前つけちゃってからに
SSRなんて変な名前つけちゃってからに
285デフォルトの名無しさん (ワッチョイ a7c8-LNR9)
2024/09/25(水) 16:35:31.76ID:KipVgYfg0 >>283
その発言はサーバーサイド何もわかってませんと言ってるようなもの
その発言はサーバーサイド何もわかってませんと言ってるようなもの
286デフォルトの名無しさん (ワッチョイ 1e28-DO7g)
2024/09/25(水) 16:39:07.42ID:EcYO77Ak0287デフォルトの名無しさん (ワッチョイ a7c8-LNR9)
2024/09/25(水) 16:41:31.67ID:KipVgYfg0288デフォルトの名無しさん (ワッチョイ a7c8-LNR9)
2024/09/25(水) 16:42:50.66ID:KipVgYfg0 あ、名前と所属晒すなら信じてやるけど?
289デフォルトの名無しさん (ワッチョイ 1e28-DO7g)
2024/09/25(水) 16:46:02.20ID:EcYO77Ak0290デフォルトの名無しさん (ワッチョイ a7c8-LNR9)
2024/09/25(水) 16:47:50.81ID:KipVgYfg0 >>279
フロントエンドが「これからはレンダリングはこっちでやりまっせ」みたいなノリでこっちはもうAPIだけ作ればいいのかラクチンだーと思ってたら
いきなりサーバーサイドに土足で踏み込んできて
NextダーRemixダー言い出してもうめちゃくちゃだよ
フロントエンドが「これからはレンダリングはこっちでやりまっせ」みたいなノリでこっちはもうAPIだけ作ればいいのかラクチンだーと思ってたら
いきなりサーバーサイドに土足で踏み込んできて
NextダーRemixダー言い出してもうめちゃくちゃだよ
291デフォルトの名無しさん (ワッチョイ a7c8-LNR9)
2024/09/25(水) 16:48:40.15ID:KipVgYfg0292デフォルトの名無しさん (ワッチョイ a7c8-LNR9)
2024/09/25(水) 16:50:33.98ID:KipVgYfg0 ワイらがNext.jsの運用もやりまっせ!からの面倒だからVercel使いますと言われた日には我々の怒りもピークだよ
293デフォルトの名無しさん (ワッチョイ a7c8-LNR9)
2024/09/25(水) 16:53:47.88ID:KipVgYfg0 中身のないイキリレスだけしたいなら消えてくれないか?
不愉快だし境界知能のADHDに構ってるほど暇じゃないんだ
そもそもがレスバでも俺には勝てない
感情のコントロールもできないやつの発言なんて聞くわけがないだろう
何度もいうが発言の中身だけしかみない
匿名掲示板はそういうところだ
不愉快だし境界知能のADHDに構ってるほど暇じゃないんだ
そもそもがレスバでも俺には勝てない
感情のコントロールもできないやつの発言なんて聞くわけがないだろう
何度もいうが発言の中身だけしかみない
匿名掲示板はそういうところだ
294デフォルトの名無しさん (ワッチョイ 1e28-DO7g)
2024/09/25(水) 16:57:48.51ID:EcYO77Ak0 なんだこいつ
レス連投のキチガイか
理解できないなら使わなきゃいいだろ
レス連投のキチガイか
理解できないなら使わなきゃいいだろ
295デフォルトの名無しさん (ワッチョイ 6366-Zm2Y)
2024/09/25(水) 19:02:29.97ID:5Vhwl/nZ0 連投ちゃん増えたな
296デフォルトの名無しさん (ワッチョイ 1f64-L8o3)
2024/09/25(水) 19:06:11.81ID:UXiRrgGj0 >>281
それはないね
それはないね
297デフォルトの名無しさん (ワッチョイ ef16-LNR9)
2024/09/25(水) 20:19:06.11ID:W1zkzLQM0 >>294
ケンカを売ってきたのはお前だろ
ケンカを売ってきたのはお前だろ
298デフォルトの名無しさん (ワッチョイ ef16-LNR9)
2024/09/25(水) 20:19:58.50ID:W1zkzLQM0 技術者なら中身のある批判をかけ
書けないなら黙ってろ
書けないなら黙ってろ
299デフォルトの名無しさん (ワッチョイ 5e4d-diYh)
2024/09/25(水) 20:28:21.84ID:Mp8Xmxrz0 あー、、
そもそも最近のSSRやらSSGは普通DB操作まではやらんでしょ?
最近の豪華絢爛なUIを何でもかんでもクライアント側でレンダリングできるようにすると、そのレンダリングのためのコードで転送量が爆裂する上、
クライアント側の処理能力も問題になってくるからサーバーでレンダリングした結果を渡した安定するよねって流れだと思うよ
だから相変わらずAPIは提供してやる必要がある
ぶっちゃけ、処理効率を突き詰めていくとjsonやらxml吐き出すAPI叩いて結果からレンダリングしてみたいなバケツリレーのようなマネするよか、そのままAPIから直接html吐き出した方が処理効率はいいけどね
職務分掌の意味合いが強いと思う
そもそも最近のSSRやらSSGは普通DB操作まではやらんでしょ?
最近の豪華絢爛なUIを何でもかんでもクライアント側でレンダリングできるようにすると、そのレンダリングのためのコードで転送量が爆裂する上、
クライアント側の処理能力も問題になってくるからサーバーでレンダリングした結果を渡した安定するよねって流れだと思うよ
だから相変わらずAPIは提供してやる必要がある
ぶっちゃけ、処理効率を突き詰めていくとjsonやらxml吐き出すAPI叩いて結果からレンダリングしてみたいなバケツリレーのようなマネするよか、そのままAPIから直接html吐き出した方が処理効率はいいけどね
職務分掌の意味合いが強いと思う
300デフォルトの名無しさん (ワッチョイ 1e28-DO7g)
2024/09/25(水) 21:10:16.58ID:EcYO77Ak0301デフォルトの名無しさん (ワッチョイ 7ff0-LNR9)
2024/09/25(水) 21:54:30.34ID:EyxmHrtR0 >>300
もうお前は黙ってろ
もうお前は黙ってろ
302デフォルトの名無しさん (ワッチョイ ef16-LNR9)
2024/09/25(水) 21:57:22.46ID:W1zkzLQM0 >>300
何も言ってなくて草
何も言ってなくて草
303デフォルトの名無しさん (ワッチョイ 1ef6-L8o3)
2024/09/25(水) 22:11:30.78ID:/fsA69Ud0304デフォルトの名無しさん (ワッチョイ 5e4d-diYh)
2024/09/25(水) 22:26:15.23ID:Mp8Xmxrz0 >>303
それがつまりはクライアントサイドレンダリングが持て囃されてた10年ぐらい前の思想でしょ
豪華になっていくにつれてそれじゃ問題が出てきたからAppRouterのSSR&SSGと言ったもんが出てきたわけよ
それがつまりはクライアントサイドレンダリングが持て囃されてた10年ぐらい前の思想でしょ
豪華になっていくにつれてそれじゃ問題が出てきたからAppRouterのSSR&SSGと言ったもんが出てきたわけよ
305デフォルトの名無しさん (ワッチョイ 1f8b-L8o3)
2024/09/26(木) 02:02:17.79ID:O7j1NTfr0 >>304
ばか
ばか
306デフォルトの名無しさん (ワッチョイ 7ff0-LNR9)
2024/09/26(木) 12:39:43.01ID:58bl5mE90307デフォルトの名無しさん (ワッチョイ cb09-LNR9)
2024/09/28(土) 21:18:59.88ID:ndtOzxxh0 フロントエンドのPrismaに対する過剰な評価はなんなんだろう
そもそもORMなんて20年前にサーバーサイドで死ぬほど開発され全てクソという結論に至った技術なのに
そもそもORMなんて20年前にサーバーサイドで死ぬほど開発され全てクソという結論に至った技術なのに
308デフォルトの名無しさん (ワッチョイ 5f01-cIDa)
2024/09/28(土) 22:18:23.73ID:XHRbCS6j0309デフォルトの名無しさん (ワッチョイ 7ff0-LNR9)
2024/09/28(土) 23:08:59.38ID:XzOFonI/0 >>308
RDBのインターフェースにおいて型安全という思想自体が間違ってる派だがそれは置いておいて
定義したスキーマに対して型安全に使いたいならそれこそJavaやC#でそれこそ海千山千レベルで作られた
しかしどれも使いやすくはなく最終的にはシンプルなクエリービルダー型のものだけが残った
必要なのはORMではなく単なるSQLクエリービルダーだったというのが結論
まあ歴史を繰り返すことが悪いとは言わないが
自分で実装したものもないのになんかレベル低いことやってるなあと
「wasmコンパイルした時のサイズが最小のクエリビルダーを作る」というのは技術的にかなり面白いと思うけどね
RDBのインターフェースにおいて型安全という思想自体が間違ってる派だがそれは置いておいて
定義したスキーマに対して型安全に使いたいならそれこそJavaやC#でそれこそ海千山千レベルで作られた
しかしどれも使いやすくはなく最終的にはシンプルなクエリービルダー型のものだけが残った
必要なのはORMではなく単なるSQLクエリービルダーだったというのが結論
まあ歴史を繰り返すことが悪いとは言わないが
自分で実装したものもないのになんかレベル低いことやってるなあと
「wasmコンパイルした時のサイズが最小のクエリビルダーを作る」というのは技術的にかなり面白いと思うけどね
310デフォルトの名無しさん (ワッチョイ c3dd-jIqN)
2024/09/29(日) 01:13:04.48ID:YuH+Iogz0 フロントやってる人って強い言葉で極論語りたがるってことが、
顕著に表れてる数レスだなあって思った
顕著に表れてる数レスだなあって思った
311デフォルトの名無しさん (ワッチョイ 63f0-bFHd)
2024/09/29(日) 01:47:21.26ID:xSeXse3x0 極論ではなく以下の構成が最適なのはいうまでもない
DBマイグレーションツール
+
データベース接続を抽象化するアダプターモジュール
+
SQLクエリービルダー
これこそがモダンなインターフェースなのである
DBマイグレーションツール
+
データベース接続を抽象化するアダプターモジュール
+
SQLクエリービルダー
これこそがモダンなインターフェースなのである
312デフォルトの名無しさん (ワッチョイ ff7c-PqsP)
2024/09/29(日) 02:23:06.66ID:EGkJuPay0 昔は、ローカルの開発環境ではsqlite、実環境ではDBMSとかあったからORMにもメリットがあった。
でも今ではローカルでも実環境と同じDBシステムを使えるようになってるし、調査では結局素のSQL見る必要もあるし、リプレースする際でもフロント、バックエンド、DBシステムのなかではDBシステムの変更が一番可能性は低い。
それならORM毎の違い覚えるより素のSQLを使いこなせるようになったほうが長く使えるスキルになる。
結局ほしいのは >>311 で言ってるものだな。
でも今ではローカルでも実環境と同じDBシステムを使えるようになってるし、調査では結局素のSQL見る必要もあるし、リプレースする際でもフロント、バックエンド、DBシステムのなかではDBシステムの変更が一番可能性は低い。
それならORM毎の違い覚えるより素のSQLを使いこなせるようになったほうが長く使えるスキルになる。
結局ほしいのは >>311 で言ってるものだな。
313デフォルトの名無しさん (ワッチョイ e315-v4Ln)
2024/09/29(日) 06:12:44.91ID:4S/kVkYa0 昔、SQL使えないアホの選択肢がORMだったのよ
314デフォルトの名無しさん (ワッチョイ e301-Z4n8)
2024/09/29(日) 08:21:21.24ID:Acvl9FUC0 PrimaはTypedSQLみたいなものも出してきてるし
結構面白いよ
結構面白いよ
315デフォルトの名無しさん (ワッチョイ ff53-gB8o)
2024/09/29(日) 08:29:21.92ID:IdcZrtIu0 20年ぐらいこの業界やってるけど最適化を進めて複雑なサブクエリやらWITHやらを使い始めると、
大抵ORMじゃ対応しきれなくなって結局生のクエリを実行させるようになるケースが多すぎたな
大抵ORMじゃ対応しきれなくなって結局生のクエリを実行させるようになるケースが多すぎたな
316デフォルトの名無しさん (ワッチョイ b3ba-eLKd)
2024/09/29(日) 08:41:41.79ID:8BzfSqEJ0 ぶっちゃけJSONにaxiosあたり出てきてLaravelがガワ連携実装してから、他言語フレームワークもガワ連携前提がデフォ化して自己完結主義のAngular以外ガワツールと化してる感あるな。あとは複雑だが階層は浅いフォーム制御が得意(Vue)か、単純だが階層が深いステート管理が得意(React)かで選択肢が変わる
ヨーロッパだとSvelte(イギリス生)が人気になってきてるみたいだけど、日本というかアジアはVue強いし、まだまだ普及に時間かかりそう
ヨーロッパだとSvelte(イギリス生)が人気になってきてるみたいだけど、日本というかアジアはVue強いし、まだまだ普及に時間かかりそう
317デフォルトの名無しさん (ワッチョイ e301-Z4n8)
2024/09/29(日) 09:28:52.49ID:Acvl9FUC0 svelteを採用してる企業を見たことがない
318デフォルトの名無しさん (ワッチョイ 63f0-bFHd)
2024/09/29(日) 13:04:00.66ID:xSeXse3x0319デフォルトの名無しさん (ワッチョイ 6f28-ZZKg)
2024/09/29(日) 13:08:53.67ID:sHRcN5PC0 ORMしか使えない奴ら多いよな
バックエンドエンジニアでSQL書けず最適化もできない連中ばっか
バックエンドエンジニアでSQL書けず最適化もできない連中ばっか
320デフォルトの名無しさん (ワッチョイ 63f0-bFHd)
2024/09/29(日) 13:16:26.30ID:xSeXse3x0 >>314
サーバーサイドが型合わせ不毛だよねと実質捨てた部分を今どのように再開発するのか楽しみではある
「先」に進めてくれるのだろうか
ちなみに改めてORMを調べてみたがやはり状況は大して変わっていない模様
SQLクエリービルダーは大抵の言語でかなり進化しているが型のマッピングは程々にするという妥協案
Haskellが1番面白かった
以下のようにモナディックで型安全なSQLが書ける
ここまでやれるやらありか?とは思ったが
select $ from $ \person -> do
where_ (person ^. PersonAge >. val 30)
return person
サーバーサイドが型合わせ不毛だよねと実質捨てた部分を今どのように再開発するのか楽しみではある
「先」に進めてくれるのだろうか
ちなみに改めてORMを調べてみたがやはり状況は大して変わっていない模様
SQLクエリービルダーは大抵の言語でかなり進化しているが型のマッピングは程々にするという妥協案
Haskellが1番面白かった
以下のようにモナディックで型安全なSQLが書ける
ここまでやれるやらありか?とは思ったが
select $ from $ \person -> do
where_ (person ^. PersonAge >. val 30)
return person
321デフォルトの名無しさん (ワッチョイ e36b-v4Ln)
2024/09/29(日) 16:05:49.23ID:4S/kVkYa0 SQL書けないからORMのtable単位で更新するレベルの機能で良しとするんですよ
322デフォルトの名無しさん (ワッチョイ 63f0-bFHd)
2024/09/29(日) 16:25:50.06ID:xSeXse3x0 ちなみにJavaやC#のORMで出た型付けの結論は
「オブジェクトのプロパティと実行するSQLの型を手動でマッピングする」です
マッピングは動的に変えられるので汎用性がある
テーブルの型とプログラミング言語の型を直接マッピングしないというのがミソ
「オブジェクトのプロパティと実行するSQLの型を手動でマッピングする」です
マッピングは動的に変えられるので汎用性がある
テーブルの型とプログラミング言語の型を直接マッピングしないというのがミソ
323デフォルトの名無しさん (ワッチョイ 63f0-bFHd)
2024/09/29(日) 16:38:12.07ID:xSeXse3x0 簡単に言うと実行するSQLごとに型付けをする感じ
これだと同じテーブルで型が変わる場合などでも対応できる
PrismaのTypedSQLもこれに近いものなのではないの?
Java界の奴らが10年以上かけてたどり着いた結論だから多分こうなると思うよ
これだと同じテーブルで型が変わる場合などでも対応できる
PrismaのTypedSQLもこれに近いものなのではないの?
Java界の奴らが10年以上かけてたどり着いた結論だから多分こうなると思うよ
324デフォルトの名無しさん (ワッチョイ e36b-v4Ln)
2024/09/29(日) 17:18:57.60ID:4S/kVkYa0325デフォルトの名無しさん (ワッチョイ 7f05-D2eP)
2024/09/29(日) 17:35:45.85ID:rGDHQpvA0 SQL書けなくてどうやってデータ保存してるだ?
本当にSQL書けないならSQLite辺りで覚えていったほうが良いかもね
本当にSQL書けないならSQLite辺りで覚えていったほうが良いかもね
326デフォルトの名無しさん (ワッチョイ 63f0-bFHd)
2024/09/29(日) 17:47:58.09ID:xSeXse3x0 >>324
違う
単にSQL生成を目的とするだけのモジュール
railsにおけるArelとか
以下のように複雑なSQLも構築可能
Task.where(
Arel::Nodes::NamedFunction.new(
'TO_CHAR',
[
Task.arel_table[:created_at],
Arel::Nodes.build_quoted('YYYY')
]
).eq('2023')
)
# => SELECT "tasks".* FROM "tasks" WHERE TO_CHAR("tasks"."created_at", 'YYYY') = '2023'
大抵の言語やフレームワークに似たようなモジュールが存在してそれを使ってSQLを作るというのがここ数年の流れ
もちろんN+1問題を容易に作ってしまうので結局実行時にどのようなSQLが生成されるか?は見なくてはならない
違う
単にSQL生成を目的とするだけのモジュール
railsにおけるArelとか
以下のように複雑なSQLも構築可能
Task.where(
Arel::Nodes::NamedFunction.new(
'TO_CHAR',
[
Task.arel_table[:created_at],
Arel::Nodes.build_quoted('YYYY')
]
).eq('2023')
)
# => SELECT "tasks".* FROM "tasks" WHERE TO_CHAR("tasks"."created_at", 'YYYY') = '2023'
大抵の言語やフレームワークに似たようなモジュールが存在してそれを使ってSQLを作るというのがここ数年の流れ
もちろんN+1問題を容易に作ってしまうので結局実行時にどのようなSQLが生成されるか?は見なくてはならない
327デフォルトの名無しさん (ワッチョイ b3ba-eLKd)
2024/09/29(日) 17:54:18.58ID:8BzfSqEJ0328デフォルトの名無しさん (ワッチョイ ff3c-gB8o)
2024/09/29(日) 18:05:01.99ID:/6K/Gjr+0 おぞましいことに、SELECT * FROM xxx WHERE yyy = zzzみたいな糞クエリのゴリ押しだけで全部解決しようとする新人がたまにいるのよ
明らかにJOINやサブクエリやウィンドウを使えば効率的に一度のクエリで解決する要件も、何回も何十回もクエリ発行して取りに行く
負荷試験が壊滅的だったプロジェクトに火消しを頼まれて助っ人で行ってみたらそんなザマで頭抱えたことがある
結局ほとんど俺が全部書き直した
明らかにJOINやサブクエリやウィンドウを使えば効率的に一度のクエリで解決する要件も、何回も何十回もクエリ発行して取りに行く
負荷試験が壊滅的だったプロジェクトに火消しを頼まれて助っ人で行ってみたらそんなザマで頭抱えたことがある
結局ほとんど俺が全部書き直した
329デフォルトの名無しさん (ワッチョイ ff3c-gB8o)
2024/09/29(日) 18:20:31.60ID:/6K/Gjr+0 あんなDBの使い方しかしない(できない)からORMの弊害に気付かないんだと思うわ
型安全と言っても、それテーブルの全カラムを無加工で取得したい場合ぐらいしか有効に働かないだろうに
型安全と言っても、それテーブルの全カラムを無加工で取得したい場合ぐらいしか有効に働かないだろうに
330デフォルトの名無しさん (ワッチョイ e36b-v4Ln)
2024/09/29(日) 18:29:40.63ID:4S/kVkYa0331デフォルトの名無しさん (ワッチョイ e36b-v4Ln)
2024/09/29(日) 18:36:09.04ID:4S/kVkYa0332デフォルトの名無しさん (ワッチョイ ffad-JJSI)
2024/09/29(日) 18:38:11.33ID:1Tb71lk/0 ストレートにSQL書くと、パラメーターとの文字列連結がカオスになるよ
333デフォルトの名無しさん (ワッチョイ e36b-v4Ln)
2024/09/29(日) 18:41:51.91ID:4S/kVkYa0 サブクエリに、with、一時table使ってSQL書いてるけどそんな事一度もなかったな
334デフォルトの名無しさん (ワッチョイ 63f0-bFHd)
2024/09/29(日) 18:43:50.27ID:xSeXse3x0 今回の調査で色々と調べたけど
javaのJOOQってORMやべーな
とんでないぞこのライブラリ
以下のように型がコロコロ変わる場合でもちゃんと書ける
Fieldクラスを抽象化することで静的な型チェックが可能になっている
この発想はなかった
DSLContext create = DSL.using(configuration);
Field<String> caseField = DSL.case_()
.when(field("age", Integer.class).gt(18), "adult")
.when(field("age", Integer.class).lt(18), "minor")
.otherwise("unknown");
create.select(caseField).from("users").fetch();
javaのJOOQってORMやべーな
とんでないぞこのライブラリ
以下のように型がコロコロ変わる場合でもちゃんと書ける
Fieldクラスを抽象化することで静的な型チェックが可能になっている
この発想はなかった
DSLContext create = DSL.using(configuration);
Field<String> caseField = DSL.case_()
.when(field("age", Integer.class).gt(18), "adult")
.when(field("age", Integer.class).lt(18), "minor")
.otherwise("unknown");
create.select(caseField).from("users").fetch();
335デフォルトの名無しさん (ワッチョイ 63f0-bFHd)
2024/09/29(日) 18:45:39.57ID:xSeXse3x0 caseってデータ分析ではめちゃくちゃ使うのだけど
これがこんな感じで書ける
素晴らしい
これがこんな感じで書ける
素晴らしい
336デフォルトの名無しさん (ワッチョイ 63f0-bFHd)
2024/09/29(日) 18:47:22.71ID:xSeXse3x0 >>331
昔は社内にオラクルデータベースの番人みたいなおじさんがいたなあ
昔は社内にオラクルデータベースの番人みたいなおじさんがいたなあ
337デフォルトの名無しさん (ワッチョイ b3ba-eLKd)
2024/09/29(日) 19:00:17.50ID:8BzfSqEJ0 >>328
select * from tableA join tableBとして、吐き出した全データを配列に格納、展開してたトンデモプログラムをデバッグしたことあるよ…。アスタリスクは百歩譲ってもせめて部分結合してくれ
データ数千件しかないのにフォーム処理クッソ重いと思ったらこれだよ
select * from tableA join tableBとして、吐き出した全データを配列に格納、展開してたトンデモプログラムをデバッグしたことあるよ…。アスタリスクは百歩譲ってもせめて部分結合してくれ
データ数千件しかないのにフォーム処理クッソ重いと思ったらこれだよ
338デフォルトの名無しさん (ワッチョイ 6f90-v4Ln)
2024/09/29(日) 19:25:17.35ID:Ck7eDstu0 >>332
一回のトランザクション処理につき一回だけSQL実行可とルールすればよい
おのづとサブクエリ、with、一時tableを使う事になって、SQL投げて結果でSQL投げみたいな処理を繰り返すヘボ実装が一掃される
一回のトランザクション処理につき一回だけSQL実行可とルールすればよい
おのづとサブクエリ、with、一時tableを使う事になって、SQL投げて結果でSQL投げみたいな処理を繰り返すヘボ実装が一掃される
339デフォルトの名無しさん (ワッチョイ ff3c-gB8o)
2024/09/29(日) 19:26:59.25ID:/6K/Gjr+0 >>331
たいがいそこが開発進行のボトルネックになってたけど当時は必要悪だったと思うよ
あの頃のオンプレの商用環境(しかも大抵カツカツの構成)で、クソゴミクエリぶん回そうものなら即死してサービスダウンに陥ってたもんよ
今のクラウドのマネージドDBだったらただ遅いor費用が嵩むだけで落ちるとこまで行くことはそうそうないけど、昔は死活問題だった
たいがいそこが開発進行のボトルネックになってたけど当時は必要悪だったと思うよ
あの頃のオンプレの商用環境(しかも大抵カツカツの構成)で、クソゴミクエリぶん回そうものなら即死してサービスダウンに陥ってたもんよ
今のクラウドのマネージドDBだったらただ遅いor費用が嵩むだけで落ちるとこまで行くことはそうそうないけど、昔は死活問題だった
340デフォルトの名無しさん (アウアウエー Sadf-D2eP)
2024/09/30(月) 14:16:26.25ID:5Q41gUpla 一つの処理を一つのSQLクエリならアトミックになって問題無いけど
一つの処理を複数のSQLクエリで時間差が出来るから他所からデータ割り込まれたら困るケースがあるだろ
そこまで考慮してないアホばっか
一つの処理を複数のSQLクエリで時間差が出来るから他所からデータ割り込まれたら困るケースがあるだろ
そこまで考慮してないアホばっか
341デフォルトの名無しさん (ワッチョイ 7f85-D2eP)
2024/09/30(月) 16:35:49.13ID:eyZN3jLh0 一番早いのは個々のSQL連結したをストアドなんだよなー
JOINもINNNERとRIGHTは遅いからLEFTのみ
JOINもINNNERとRIGHTは遅いからLEFTのみ
342デフォルトの名無しさん (ワッチョイ 3fd9-GmTs)
2024/09/30(月) 16:59:05.93ID:90xjyaJO0 >>341
inner使ってたけどleftのが速いんだ?
inner使ってたけどleftのが速いんだ?
343デフォルトの名無しさん (ワッチョイ 7fd8-gB8o)
2024/09/30(月) 22:19:31.77ID:x8UwNGco0 そもそも得られる結合結果が違うし、INNERのほうが効率的なケースもLEFTのほうが効率的なケースも存在するから思考停止せずにしっかり実行計画確認しろ
「何にでも~~を使う!」ってのはバカの一つ覚えってんだ
「何にでも~~を使う!」ってのはバカの一つ覚えってんだ
344デフォルトの名無しさん (ワッチョイ cfcf-KiE/)
2024/09/30(月) 22:31:07.26ID:2/RvbFVp0 left と right で速度が違うとか言ってる奴の話を真に受けんな
345デフォルトの名無しさん (ワッチョイ e36e-v4Ln)
2024/09/30(月) 23:41:53.43ID:6IhSUC9Z0 >>344
結構あるで
結構あるで
346デフォルトの名無しさん (ササクッテロ Sp47-F/l5)
2024/10/01(火) 10:17:07.05ID:tNPrHSB3p リスト構造なら違いは無いよな?
347デフォルトの名無しさん (ワッチョイ 3f4d-GmTs)
2024/10/01(火) 16:04:12.61ID:20pFp1ah0 本読んでたらNextすげーいいじゃんと思ってきた、なんか学習コストは高そうな気がするけど
remixは調べてない
remixは調べてない
348デフォルトの名無しさん (ワッチョイ 63f0-bFHd)
2024/10/01(火) 16:46:36.79ID:Ig6Tf0ue0 最近はremixの方が優勢になってきてる
ChatGPTもnext.jsだったのにremixに移行した
ChatGPTもnext.jsだったのにremixに移行した
349デフォルトの名無しさん (ワッチョイ 63f0-bFHd)
2024/10/01(火) 16:47:26.48ID:Ig6Tf0ue0 ただしremixはフルスクラッチで作り直すから
大幅に変わりそう
だから今手を出すべきかは微妙
大幅に変わりそう
だから今手を出すべきかは微妙
350デフォルトの名無しさん (ワッチョイ 3f4d-GmTs)
2024/10/01(火) 16:48:32.91ID:20pFp1ah0 どっちにしろ新規プロジェクトだからNextかなあ
351デフォルトの名無しさん (ワッチョイ 3f4d-GmTs)
2024/10/01(火) 16:49:20.05ID:20pFp1ah0 じゃないRemix
352デフォルトの名無しさん (ワッチョイ 8f1f-bFHd)
2024/10/01(火) 18:54:14.07ID:gaoRlfpT0 まあフロントエンドなんて作り直すのは基本だし
まともなCTOがいたら予算も出るからその時の流行でよろしい
画面の動きを全部サーバーサイドの結果で判断できるように作っておけば問題なし
まともなCTOがいたら予算も出るからその時の流行でよろしい
画面の動きを全部サーバーサイドの結果で判断できるように作っておけば問題なし
353デフォルトの名無しさん (スッップ Sd1f-9JCP)
2024/10/01(火) 22:29:45.75ID:V2w3Ucz+d プロダクトの性質次第だろう
SaaSだとページ数多いしビジネス要件実装のウェイトが大きいから作り直しは難しい
SaaSだとページ数多いしビジネス要件実装のウェイトが大きいから作り直しは難しい
354デフォルトの名無しさん (ワッチョイ cfcf-KiE/)
2024/10/01(火) 22:30:17.57ID:7hV/Zxp/0355デフォルトの名無しさん (ワッチョイ 8f88-v4Ln)
2024/10/01(火) 22:41:15.98ID:PxjtxeQz0 >>354
あるで調べてみ
あるで調べてみ
356デフォルトの名無しさん (ワッチョイ ff6c-gB8o)
2024/10/01(火) 22:45:51.49ID:GFljMLhp0 leftと等価なrightへの書き換え、あるいはその逆の書き方を知らないだけでは?🤔
レスを投稿する
ニュース
- 【中国外務省】日中関係悪化は高市氏に責任と名指しで非難… ★5 [BFU★]
- 【インバウンド】中国からの“渡航自粛”…ツアー1000人分の直前キャンセル「キャンセル料は免除してくれ」 ことしいっぱいキャンセルに [1ゲットロボ★]
- XやChatGPTで広範囲の通信障害 投稿や閲覧できず [蚤の市★]
- 【芸能】日中関係悪化でエンタメ業界に大ダメージ… JO1の中国でのイベント中止、邦画は公開延期、STARTOアイドルへの影響も [冬月記者★]
- 「国民の憤りを引き起こした」中国側“高市首相発言の撤回改めて要求” [どどん★]
- 【サッカー】日本代表、ボリビアに3発快勝 森保監督通算100試合目を飾る…鎌田、町野、中村がゴール [久太郎★]
- 【悲報】SANA、発言撤回拒否 [769931615]
- 米シンクタンク「アメリカは台湾問題で"あいまい戦略"を取っている。高市早苗はこの方針から逸脱している」 [603416639]
- 岡田克也「軽々しく存立危機事態とか言うべきじゃない」高市早苗「台湾で武力攻撃が発生したらどう考えても日本の存立危機事態」 [931948549]
- お前ら「サクッとオナニーするか」←何分のイメージ?
- ジャーナリストがテレビで解説「台湾問題は高市総理から言ったのではなく、立憲民主が日本の対応可能能力を暴こうとしたから」 [359572271]
- 俺性格悪いなって思った瞬間あげてけ
