ASP.NETのBlazorのスレッド part2です。
ASP.NET
https://dotnet.microsoft.com/apps/aspnet
ASP.NETは、クロスプラットフォーム対応、無料、オープンソースのフレームワーク
Free. Cross-platform. Open source.
A framework for building web apps and services with .NET and C#.
Introduction to ASP.NET Core Blazor
https://docs.microsoft.com/en-us/aspnet/core/blazor/?view=aspnetcore-5.0
【本命】Blazor スレ1【真打】
http://mevius.5ch.net/test/read.cgi/tech/1595255796/
探検
Microsoft ASP.NET Blazor #02
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2020/11/22(日) 05:30:30.13ID:kDrPKY9d216デフォルトの名無しさん
2020/12/22(火) 14:30:43.23ID:Vz3OkUO2217デフォルトの名無しさん
2020/12/22(火) 14:32:57.24ID:Vz3OkUO2218デフォルトの名無しさん
2020/12/22(火) 16:09:21.58ID:3BPmpE5D219デフォルトの名無しさん
2020/12/22(火) 16:42:02.20ID:QfeqeAq5 >>216
なぜ選択されないのかというとWEB系ウェーイの連中がスクリプト布教活動に熱心だからだよ
やつらがnode最高です、ruby最高ですとひたすら布教するので、引っかかったユーザーがどんどん増える
C#erは布教活動にはあまり熱心ではないね
自分らが有効に活用できればOKという考え方なので、ユーザーを増やすことには興味がない
もしかするとウェブ系ウェーイみたいに雑魚が流入してくるリスクを懸念してるのかも
なぜ選択されないのかというとWEB系ウェーイの連中がスクリプト布教活動に熱心だからだよ
やつらがnode最高です、ruby最高ですとひたすら布教するので、引っかかったユーザーがどんどん増える
C#erは布教活動にはあまり熱心ではないね
自分らが有効に活用できればOKという考え方なので、ユーザーを増やすことには興味がない
もしかするとウェブ系ウェーイみたいに雑魚が流入してくるリスクを懸念してるのかも
220デフォルトの名無しさん
2020/12/22(火) 20:12:23.02ID:lwpoOL3+ 毎度すぐレス返してきてお前暇なんか?言うてジジイ煽ってみたら案の定何も書き込まなくなりおった
なんちゅう打たれ弱さや…チンケなプライドが足枷になってること理解しとるんか?
なんちゅう打たれ弱さや…チンケなプライドが足枷になってること理解しとるんか?
221デフォルトの名無しさん
2020/12/22(火) 20:54:55.78ID:Vz3OkUO2 なんだこのエセ関西弁…このスレはなんでこうイロモノ揃いなのか
>>219
たしかにやつらは得た技術を発信することを良しとしてるよな。
Web系ならではのオープンな感じ。
SIerがやったら自社ノウハウを流出させたから減給とかなりそう。
それで情報が少ないから人気のない言語、フレームワークと捉えられるのは悲しいなあ。
>>219
たしかにやつらは得た技術を発信することを良しとしてるよな。
Web系ならではのオープンな感じ。
SIerがやったら自社ノウハウを流出させたから減給とかなりそう。
それで情報が少ないから人気のない言語、フレームワークと捉えられるのは悲しいなあ。
222デフォルトの名無しさん
2020/12/22(火) 21:14:00.98ID:QfeqeAq5 そもそもASP.NETの人気がないというのが嘘だろう
個人ブログ等の記者が主観で語ってるだけのいわゆる僕が考えたフレームワークランキングだと無視されがちだけど
ちゃんとした測定を元にランキングを出してるとこだとPHPの次ぐらいにASP.NETが入ってるものが多い
個人ブログ等の記者が主観で語ってるだけのいわゆる僕が考えたフレームワークランキングだと無視されがちだけど
ちゃんとした測定を元にランキングを出してるとこだとPHPの次ぐらいにASP.NETが入ってるものが多い
223デフォルトの名無しさん
2020/12/22(火) 22:12:00.01ID:yCNDLhUz >>221-222
ASP.NETはWeb Frameworkとしては1位だ
https://www.wappalyzer.com/technologies/web-frameworks/
>>220
無視されたことに気付かないバカ
ASP.NETはWeb Frameworkとしては1位だ
https://www.wappalyzer.com/technologies/web-frameworks/
>>220
無視されたことに気付かないバカ
224デフォルトの名無しさん
2020/12/22(火) 22:21:19.03ID:yCNDLhUz >>223のURLはもっと知名度あっていい。
node.jsが人気ないのもわかるだろ
Expressもシェア落として6%になった。
Expressはフルスタックではなく貧弱なやつだからな
node系のフルスタックはゴミみたいなのしかない
web frameworkは迷わずASP.NETでいい。
C#できないちょい無能はLaravelかRails
ガチ無能はバックエンドさわってはいけない。事故の元
node.jsが人気ないのもわかるだろ
Expressもシェア落として6%になった。
Expressはフルスタックではなく貧弱なやつだからな
node系のフルスタックはゴミみたいなのしかない
web frameworkは迷わずASP.NETでいい。
C#できないちょい無能はLaravelかRails
ガチ無能はバックエンドさわってはいけない。事故の元
225デフォルトの名無しさん
2020/12/22(火) 22:22:23.43ID:lwpoOL3+ ほらな、逃げた言うて煽ったらすぐ書き込みにきよる
何より笑えるのはわいが煽って以降、ジジイがレスに草生やさなくなったことやw
要するにな、オンプレジジイはいい歳して己が確立してない精神的未熟児なんやね
他人に抗うことしか行動原理が無い、それこそが唯一のアイデンティティ…なんとも悲しくて哀れで虚しい話やないか!?
……おいちゃんな、ほんまはジジイの力になりたいんや!真剣にそう思ってる
ジジイがクラウド本気で勉強するつもりならわいが一から手取り足取り教えたる、blazorに関してもジジイと違っておいちゃんはプロやから正しい使い方伝授したるよ?どや、ええ話やろ?
何より笑えるのはわいが煽って以降、ジジイがレスに草生やさなくなったことやw
要するにな、オンプレジジイはいい歳して己が確立してない精神的未熟児なんやね
他人に抗うことしか行動原理が無い、それこそが唯一のアイデンティティ…なんとも悲しくて哀れで虚しい話やないか!?
……おいちゃんな、ほんまはジジイの力になりたいんや!真剣にそう思ってる
ジジイがクラウド本気で勉強するつもりならわいが一から手取り足取り教えたる、blazorに関してもジジイと違っておいちゃんはプロやから正しい使い方伝授したるよ?どや、ええ話やろ?
226デフォルトの名無しさん
2020/12/22(火) 22:58:45.41ID:Vz3OkUO2 名探偵コナンの服部みたいな嘘くさい関西弁
227デフォルトの名無しさん
2020/12/22(火) 23:57:17.69ID:lwpoOL3+ お前もおいちゃんと友だちになりたいんか…?
わいは全然構へんのやけどジジイが嫉妬してまうかもしれんからジジイの返答待ちやな
ほなまた明日
わいは全然構へんのやけどジジイが嫉妬してまうかもしれんからジジイの返答待ちやな
ほなまた明日
228デフォルトの名無しさん
2020/12/23(水) 00:26:15.53ID:JHNEfXdY こんなこと書いてても、昼間はBlazorWasmを自在に操って、洗練されたピザの販売サイトや天気の一覧が出てくる画面を作ってるんだろうなあ
229デフォルトの名無しさん
2020/12/23(水) 01:54:16.30ID:Kc0L3Url >>228
オンプレ爺さんは?
オンプレ爺さんは?
230デフォルトの名無しさん
2020/12/23(水) 07:14:04.95ID:y+ivgknh 雑談スレらしく活気があってイイネ!
231デフォルトの名無しさん
2020/12/23(水) 08:14:07.90ID:L0gYl8Ji >>229
さあ…でもたぶんオンプレ爺さんは、己を育ててくれたBlazorに感謝しているのは間違い無いだろうから、
感謝のカウントアップをしてるんじゃね。
毎日一万回、カウントボタンをクリックし、スクショを取り、エクセルに貼り付けてる。
さすがにそこまでしないか。八千回かな。
さあ…でもたぶんオンプレ爺さんは、己を育ててくれたBlazorに感謝しているのは間違い無いだろうから、
感謝のカウントアップをしてるんじゃね。
毎日一万回、カウントボタンをクリックし、スクショを取り、エクセルに貼り付けてる。
さすがにそこまでしないか。八千回かな。
232デフォルトの名無しさん
2020/12/23(水) 08:25:24.23ID:5MtFrMbi いい話だなァ(;_;)
233デフォルトの名無しさん
2020/12/23(水) 08:34:59.21ID:L0gYl8Ji ついでに恥を偲んで聞くんだが、
よくWeb系の奴らが、型があるって素晴らしいですね♪的なことQiitaとかに書いてるけど
奴らが言う型って、もしかしてC#で言うところのクラスのこと?
よくWeb系の奴らが、型があるって素晴らしいですね♪的なことQiitaとかに書いてるけど
奴らが言う型って、もしかしてC#で言うところのクラスのこと?
234デフォルトの名無しさん
2020/12/23(水) 08:43:14.91ID:iOQdV6uo TypeScriptのことだよ
235デフォルトの名無しさん
2020/12/23(水) 08:58:24.15ID:L0gYl8Ji え、言語なのか…
236デフォルトの名無しさん
2020/12/23(水) 10:03:58.22ID:h+qkHPqF237デフォルトの名無しさん
2020/12/23(水) 12:04:39.47ID:L0gYl8Ji >>236
し、C#の経験がありますっ
し、C#の経験がありますっ
238デフォルトの名無しさん
2020/12/23(水) 12:24:52.39ID:qFmqxSAt C#やってて型が何かわからないってどゆこと?
C#ではclass, struct, enum, interface, delegate, arrayが型
型があるって素晴らしいですね♪的なのは見たことないけど
動的言語でも型がない言語は実質ないから
静的型チェックっていいですねくらいの意味じゃないのかな
C#ではclass, struct, enum, interface, delegate, arrayが型
型があるって素晴らしいですね♪的なのは見たことないけど
動的言語でも型がない言語は実質ないから
静的型チェックっていいですねくらいの意味じゃないのかな
239デフォルトの名無しさん
2020/12/23(水) 12:28:36.82ID:h+qkHPqF240デフォルトの名無しさん
2020/12/23(水) 12:33:43.74ID:J8E3P1ZQ >>239
TypeScriptは言語ですよ?
TypeScriptは言語ですよ?
241デフォルトの名無しさん
2020/12/23(水) 12:41:43.57ID:h+qkHPqF242デフォルトの名無しさん
2020/12/23(水) 12:53:44.25ID:L0gYl8Ji243デフォルトの名無しさん
2020/12/23(水) 13:26:24.61ID:4FZ7yNJk 文脈的にTypeScriptでも合ってるような気がする。
244デフォルトの名無しさん
2020/12/23(水) 14:06:10.99ID:Kc0L3Url 文脈的にはTypeScriptはすばらしいということだね
245デフォルトの名無しさん
2020/12/23(水) 14:12:41.92ID:aoAgDZ6q >>242
変数が定義時に型を結び付けられていて、途中で別の型の値を代入すると
コンパイル段階でエラーにしてくれることを
「型があるって素晴らしい」
と言っているのだろう。例えば、C++では
int a = 5;
とした場合、aに文字列や浮動小数点値やクラスオブジェクトは代入できない。
auto a = 5;
としても、autoがintのように解釈されてaがint型の変数になるだけで
aに文字列や浮動小数点値やクラスオブジェクトは代入できない。
ところが、JSだと、
let a = 5;
とすると、aには文字列でも浮動小数点値でもオブジェクトでも何でも
代入できてしまう。
これがバグの原因になりやすいから。
変数が定義時に型を結び付けられていて、途中で別の型の値を代入すると
コンパイル段階でエラーにしてくれることを
「型があるって素晴らしい」
と言っているのだろう。例えば、C++では
int a = 5;
とした場合、aに文字列や浮動小数点値やクラスオブジェクトは代入できない。
auto a = 5;
としても、autoがintのように解釈されてaがint型の変数になるだけで
aに文字列や浮動小数点値やクラスオブジェクトは代入できない。
ところが、JSだと、
let a = 5;
とすると、aには文字列でも浮動小数点値でもオブジェクトでも何でも
代入できてしまう。
これがバグの原因になりやすいから。
246デフォルトの名無しさん
2020/12/23(水) 14:17:08.23ID:O5AY10nM typescriptは厳密すぎるとは思うけどね
もうちょっと緩くする的な議論もあると聞く
もうちょっと緩くする的な議論もあると聞く
247デフォルトの名無しさん
2020/12/23(水) 14:45:16.52ID:4FZ7yNJk ウェブ系で型があるって素晴らしいってことは、型が無い世界に居たって事で。
Javascriptつこてて、TypeScriptに出会った感が強い。
Javascriptつこてて、TypeScriptに出会った感が強い。
248デフォルトの名無しさん
2020/12/23(水) 15:20:49.21ID:qFmqxSAt >>242
それはC#における型はわかってても
言語に依存しない型という概念を理解してないってことだったりしない?
JS使ってる人たちが言う型とC#の型に違いがあるかというと違いはない
型の種類や適用されるルールに違いがあるだけで型という概念は同じ
それはC#における型はわかってても
言語に依存しない型という概念を理解してないってことだったりしない?
JS使ってる人たちが言う型とC#の型に違いがあるかというと違いはない
型の種類や適用されるルールに違いがあるだけで型という概念は同じ
249デフォルトの名無しさん
2020/12/23(水) 18:02:10.45ID:L0gYl8Ji250デフォルトの名無しさん
2020/12/23(水) 18:45:31.75ID:aoAgDZ6q >>249
[追加]
JSの場合、オブジェクトは、
let a = {
age : 12;
};
として作製するが、ageを書き間違えて
a.aga = 13;
などとすると、何のエラーも出ず、aga という新しいプロパティーが
追加されてしまう。その結果、
a.age と a.aga の二つのメンバが出来、
a = {
age : 12;
aga : 13;
}
としたような状態になってしまう。
JSに限らず多くのスクリプト言語は同様の現象がおき、ミスに対する
フェイルセイフが出来ておらず非常に危険なので、大規模開発に
向いていないと言われている。
[追加]
JSの場合、オブジェクトは、
let a = {
age : 12;
};
として作製するが、ageを書き間違えて
a.aga = 13;
などとすると、何のエラーも出ず、aga という新しいプロパティーが
追加されてしまう。その結果、
a.age と a.aga の二つのメンバが出来、
a = {
age : 12;
aga : 13;
}
としたような状態になってしまう。
JSに限らず多くのスクリプト言語は同様の現象がおき、ミスに対する
フェイルセイフが出来ておらず非常に危険なので、大規模開発に
向いていないと言われている。
251デフォルトの名無しさん
2020/12/23(水) 18:52:45.56ID:qnDToIG0 それ型と直接関係なくね?
確かにtsだとそれを防ぐ型とか作れるけども…
確かにtsだとそれを防ぐ型とか作れるけども…
252デフォルトの名無しさん
2020/12/23(水) 19:09:45.60ID:aa3pY4zz なぜ型と関係ないと思うwww
253デフォルトの名無しさん
2020/12/23(水) 19:26:43.15ID:L0gYl8Ji >>250
全部dynamic型!みたいな言語だな。
こんなの自分一人でもだめだわ。破綻するわ。
これの利点ってなんなんだろ…
あとよくサーバーとフロントで型を共有できて嬉しいですよね♪みたいなこと書いてるブログもみるんだが
それができてない場合ってこうなる?
サーバー側:sexはなんか卑猥だからgenderにしたれ!
フロント側:sexに何も挿入されない…
全部dynamic型!みたいな言語だな。
こんなの自分一人でもだめだわ。破綻するわ。
これの利点ってなんなんだろ…
あとよくサーバーとフロントで型を共有できて嬉しいですよね♪みたいなこと書いてるブログもみるんだが
それができてない場合ってこうなる?
サーバー側:sexはなんか卑猥だからgenderにしたれ!
フロント側:sexに何も挿入されない…
254デフォルトの名無しさん
2020/12/23(水) 21:34:43.30ID:qFmqxSAt >>250
それはDictionaryに新しいkey/valueペアを追加してるのと同じだからね
そういうのでバグ出しちゃうのは基本的にテスト書かない人
チーム開発で動的言語使ってまともなプログラムを作るためには
静的言語の場合よりも高い技術スキルとコミュニケーション能力が求められる
なのでソフトウェアの規模というよりチームの規模が大きくなればなるほど不利
それはDictionaryに新しいkey/valueペアを追加してるのと同じだからね
そういうのでバグ出しちゃうのは基本的にテスト書かない人
チーム開発で動的言語使ってまともなプログラムを作るためには
静的言語の場合よりも高い技術スキルとコミュニケーション能力が求められる
なのでソフトウェアの規模というよりチームの規模が大きくなればなるほど不利
255デフォルトの名無しさん
2020/12/23(水) 21:52:55.12ID:O5AY10nM 無能爺が出しゃ張らないだけで、雑談スレでもここまで建設的なスレになるんだね
256デフォルトの名無しさん
2020/12/23(水) 21:53:23.50ID:qFmqxSAt >>253
サーバーとクライアントで違う言語を使ってても
swaggerとかでインターフェース定義してそれぞれコード生成すればいい
C#でも同じだと思うんだけど?
逆に同じ言語を使ってるからといってやり取りするデータを定義した
クラスライブラリを共有するのはアーキテクチャ的にはかなり微妙
特に外部に公開するようなサービスでは
サーバーとクライアントで違う言語を使ってても
swaggerとかでインターフェース定義してそれぞれコード生成すればいい
C#でも同じだと思うんだけど?
逆に同じ言語を使ってるからといってやり取りするデータを定義した
クラスライブラリを共有するのはアーキテクチャ的にはかなり微妙
特に外部に公開するようなサービスでは
257デフォルトの名無しさん
2020/12/23(水) 22:03:15.12ID:92W7nQMG258デフォルトの名無しさん
2020/12/23(水) 22:27:01.33ID:92W7nQMG >>256
連投すまん
そのswaggerはサーバー側の型に変更があったらクライアント側で気づくことができるんだろうか。
blazorのプロジェクトの構成ならコンパイラが教えてくれるよね。
外部に公開しないシステムで二回型定義するのは、ツールに頼ったとしてもめんどくさいとおもってしまうんですよ
連投すまん
そのswaggerはサーバー側の型に変更があったらクライアント側で気づくことができるんだろうか。
blazorのプロジェクトの構成ならコンパイラが教えてくれるよね。
外部に公開しないシステムで二回型定義するのは、ツールに頼ったとしてもめんどくさいとおもってしまうんですよ
259デフォルトの名無しさん
2020/12/24(木) 00:11:53.93ID:61P3AxB9260デフォルトの名無しさん
2020/12/24(木) 00:38:15.61ID:cDdTcWWQ Unityがなんで勝ったか、を考えれば答えは見えてるだろ
261デフォルトの名無しさん
2020/12/24(木) 00:59:13.90ID:z4h3nURn262デフォルトの名無しさん
2020/12/24(木) 01:05:39.49ID:cu9CRgEK 最近はミクロサービスもやっぱ駄目だったってんでモノリスに回帰してきてるらしいな
263デフォルトの名無しさん
2020/12/24(木) 06:31:15.50ID:qBLsz+9E Docker は、1コンテナに、1アプリのマイクロサービス
今の基幹技術だろw
流行りまくっている
今の基幹技術だろw
流行りまくっている
264デフォルトの名無しさん
2020/12/24(木) 08:12:52.16ID:Lxgk3nTO265デフォルトの名無しさん
2020/12/24(木) 08:34:44.70ID:tvAmDhsP >>261
すまん前提が書けてなかった。
うちは企業内アプリをメインに作ってて、他の外部apiには殆どアクセスしない。
バックもフロントも自チーム内で完結する。
横に座ってる奴がサーバー側の型を変更して急用ができて帰ったとする
フロントやってるやつがそのことに気づかずにリリースしてしまうなんてことが起こるようなら本末転倒だなと。
それで原因はテストコードが足りないとか、コミュニケーションが足りないとかいうのもおかしいよねと考えている。
Blazorのプロジェクト構成ならビルド時に気づくよね。
swaggerを使うことで、フロント側がすぐに型変更を検知できるような仕組みがあるんならいいんだけど、気づかないよね?困るよね?現にお困りではないでしょうか?
と聞きたかった。
すまん前提が書けてなかった。
うちは企業内アプリをメインに作ってて、他の外部apiには殆どアクセスしない。
バックもフロントも自チーム内で完結する。
横に座ってる奴がサーバー側の型を変更して急用ができて帰ったとする
フロントやってるやつがそのことに気づかずにリリースしてしまうなんてことが起こるようなら本末転倒だなと。
それで原因はテストコードが足りないとか、コミュニケーションが足りないとかいうのもおかしいよねと考えている。
Blazorのプロジェクト構成ならビルド時に気づくよね。
swaggerを使うことで、フロント側がすぐに型変更を検知できるような仕組みがあるんならいいんだけど、気づかないよね?困るよね?現にお困りではないでしょうか?
と聞きたかった。
266263
2020/12/24(木) 08:39:38.18ID:qBLsz+9E AWS の構成図を見てみろ。
ほとんど、マイクロサービスだろ
何十もの、Lambda, SQS(Queue), SNS(通知)をつなげてるの、ばっかりだろ
クラスメソッドの動画を見ろ
会社全体で、AWS の資格を800持っていて、
全12資格を持つ・ジェダイマスターが7人もいる!
ほとんど、マイクロサービスだろ
何十もの、Lambda, SQS(Queue), SNS(通知)をつなげてるの、ばっかりだろ
クラスメソッドの動画を見ろ
会社全体で、AWS の資格を800持っていて、
全12資格を持つ・ジェダイマスターが7人もいる!
267デフォルトの名無しさん
2020/12/24(木) 08:40:41.97ID:BsodnxpD268デフォルトの名無しさん
2020/12/24(木) 08:53:01.08ID:Lxgk3nTO >>266
そりゃアマゾンは大手のクラウド事業者だからあたりまえだろ
自社の提供するサービスをそのまま使ってるだけ
サービスの広告にもなる
一般法人がそれを採用することが合理的かは別の話だ。
デメリットを理解せず、流行ってるからいいという
アホな価値観だからそういう思考になる
そりゃアマゾンは大手のクラウド事業者だからあたりまえだろ
自社の提供するサービスをそのまま使ってるだけ
サービスの広告にもなる
一般法人がそれを採用することが合理的かは別の話だ。
デメリットを理解せず、流行ってるからいいという
アホな価値観だからそういう思考になる
269デフォルトの名無しさん
2020/12/24(木) 08:58:23.93ID:nIBEXBhK こいつはホンマにいつも5chやっとるな
270デフォルトの名無しさん
2020/12/24(木) 09:04:12.11ID:Lxgk3nTO >>266
おまえいつもKENTAの話ばっかりしてるやつだろw
クラスメソッドw
俺は初心者向けスクールなんていかない。
会社全体の資格者数なんて何の意味もないし
ベンダー資格なんてすぐに取れるんだよw
スクールだから宣伝のために講師に取らせてることも理解できないって
頭悪すぎだぞ
スクールの講師に優秀なエンジニアいないぞ
簡単にとれる資格でだまされてるやつw
KENTAとかスクールとか情弱ビジネスに釣られすぎ
おまえいつもKENTAの話ばっかりしてるやつだろw
クラスメソッドw
俺は初心者向けスクールなんていかない。
会社全体の資格者数なんて何の意味もないし
ベンダー資格なんてすぐに取れるんだよw
スクールだから宣伝のために講師に取らせてることも理解できないって
頭悪すぎだぞ
スクールの講師に優秀なエンジニアいないぞ
簡単にとれる資格でだまされてるやつw
KENTAとかスクールとか情弱ビジネスに釣られすぎ
271263
2020/12/24(木) 09:33:54.56ID:qBLsz+9E クラスメソッドは、AWS パートナー・オブ・ザ・イヤーとか取ってる、最上位の会社
米国年収で、
Ruby on Rails 1,300万円
Node.js 900万
VMware 1,400万
AWS Solution Architect 1,500万
もう、AWS資格が、Railsを超えてる!
米国年収で、
Ruby on Rails 1,300万円
Node.js 900万
VMware 1,400万
AWS Solution Architect 1,500万
もう、AWS資格が、Railsを超えてる!
272デフォルトの名無しさん
2020/12/24(木) 09:52:41.32ID:tvAmDhsP ついでに聞いとこ。
クラスメソッドくんは普段なんのフレームワークで開発してるんだい?
クラスメソッドくんは普段なんのフレームワークで開発してるんだい?
273デフォルトの名無しさん
2020/12/24(木) 10:54:27.41ID:cDdTcWWQ >>266
その構成が複雑化しすぎて多くの場合でデメリットがメリットを上回ってしまう
よっぽど巨大で複雑なシステムでもない限りモノリスのほうがシンプルでイイネ
っていうふうにトレンドが移り変わろうとしてるところ
その構成が複雑化しすぎて多くの場合でデメリットがメリットを上回ってしまう
よっぽど巨大で複雑なシステムでもない限りモノリスのほうがシンプルでイイネ
っていうふうにトレンドが移り変わろうとしてるところ
274デフォルトの名無しさん
2020/12/24(木) 11:28:27.57ID:TzdYJrci KENTAはコテ付けるべきでは?
275デフォルトの名無しさん
2020/12/24(木) 12:08:12.79ID:tvAmDhsP >>273
これほんとにそうだと思う。
こういうのが必要なのって相当巨大なシステムだけなんじゃないのか
トレンドだからとDockerだか、Kubernetesだかに手を出して
気づかず消耗してるんじゃないだろうか。
クリーンアーキテクチャについてもそうおもうし、
なんならrest apiもそうなんじゃないだろうかと疑っている。
rpcでよかったのにrestにしちゃったケースもあると思うんだよなあ
これほんとにそうだと思う。
こういうのが必要なのって相当巨大なシステムだけなんじゃないのか
トレンドだからとDockerだか、Kubernetesだかに手を出して
気づかず消耗してるんじゃないだろうか。
クリーンアーキテクチャについてもそうおもうし、
なんならrest apiもそうなんじゃないだろうかと疑っている。
rpcでよかったのにrestにしちゃったケースもあると思うんだよなあ
276デフォルトの名無しさん
2020/12/24(木) 12:24:48.60ID:61P3AxB9277デフォルトの名無しさん
2020/12/24(木) 12:37:13.88ID:tvAmDhsP278デフォルトの名無しさん
2020/12/24(木) 13:32:36.53ID:FJvlKwaS >>275
Dockerは別にいいと思う
あれはどんな依存関係でも簡単にパッケージできるのと環境を汚さないで済むという強力なメリットがある
K8Sまで行くとやりすぎで本当にK8Sが必要なのか慎重に考えないといけない
クリーンアーキテクチャは悪くない
モノリスに回帰してきているとは言ってもコードを汚く書いていいわけじゃない
あくまでも悪いのはミクロサービスであってアプリケーション内部をクリーンアーキテクチャで綺麗に構造化するのは依然として良いことだ
RPCはそのとおり
APIだけじゃぜんぜん駄目だったのでgRPCなどが普及し始めた
DDDの文脈で綺麗にシステムを作ろうとするとAPIよりRPCが肝要となる
Dockerは別にいいと思う
あれはどんな依存関係でも簡単にパッケージできるのと環境を汚さないで済むという強力なメリットがある
K8Sまで行くとやりすぎで本当にK8Sが必要なのか慎重に考えないといけない
クリーンアーキテクチャは悪くない
モノリスに回帰してきているとは言ってもコードを汚く書いていいわけじゃない
あくまでも悪いのはミクロサービスであってアプリケーション内部をクリーンアーキテクチャで綺麗に構造化するのは依然として良いことだ
RPCはそのとおり
APIだけじゃぜんぜん駄目だったのでgRPCなどが普及し始めた
DDDの文脈で綺麗にシステムを作ろうとするとAPIよりRPCが肝要となる
279デフォルトの名無しさん
2020/12/24(木) 13:35:03.72ID:61P3AxB9 >>277
サービスレベルで設計してないって事ね。
サービスレベルで設計してないって事ね。
280デフォルトの名無しさん
2020/12/24(木) 13:56:01.24ID:RIrJysKy 単純なマスタメンテみたいなアプリでもなけりゃサーバーとクライアントで扱うモデルって一致しなくない?
セキュリティとかプライバシーに関わるようなデータでも平気でネットワークに流しちゃう感じ?
セキュリティとかプライバシーに関わるようなデータでも平気でネットワークに流しちゃう感じ?
281デフォルトの名無しさん
2020/12/24(木) 14:00:28.72ID:VTM9inIm ドットネッターはコンテナに拒否反応示す人が多いよね
.NET Coreでせっかくモダンなスタイルのデプロイが可能になったと思ったら、
井の中の蛙なユーザーに迎合してIIS統合とかFDD強化とか変なことに力入れてどんどん退行してるし
.NET Coreでせっかくモダンなスタイルのデプロイが可能になったと思ったら、
井の中の蛙なユーザーに迎合してIIS統合とかFDD強化とか変なことに力入れてどんどん退行してるし
282デフォルトの名無しさん
2020/12/24(木) 15:31:58.25ID:GGlRJfww Windowsコンテナが実用レベルになったら起こしてくれ
283デフォルトの名無しさん
2020/12/24(木) 17:59:56.32ID:tvAmDhsP284デフォルトの名無しさん
2020/12/24(木) 18:17:21.72ID:61P3AxB9285デフォルトの名無しさん
2020/12/24(木) 18:32:45.65ID:z4h3nURn >>265
それってコンパイルエラーになるような変更なら気がつくけど
それ以外の変更なら不具合が起こってても気が付かないてことでしょ?
結局テスト書いてないだけじゃない?
swaggerとかインターフェース定義ファイルからそれぞれのスタブを自動生成するようなやつは
定義が変わればそりゃ検知できるけど検知できて新しい定義に対応したところで
その変更によって不具合が起こってないことはテストしないとわからないよね
それってコンパイルエラーになるような変更なら気がつくけど
それ以外の変更なら不具合が起こってても気が付かないてことでしょ?
結局テスト書いてないだけじゃない?
swaggerとかインターフェース定義ファイルからそれぞれのスタブを自動生成するようなやつは
定義が変わればそりゃ検知できるけど検知できて新しい定義に対応したところで
その変更によって不具合が起こってないことはテストしないとわからないよね
286デフォルトの名無しさん
2020/12/24(木) 18:36:25.33ID:cDdTcWWQ287デフォルトの名無しさん
2020/12/24(木) 18:46:02.72ID:PofLudrU さらにF#の型プロバイダをBlazorで利用すると、バックエンドが.NETでない場合でも、型安全なI/Oモデルを手に入れることができる
インターフェース定義、コード生成要らないので、とても楽ちん
インターフェース定義、コード生成要らないので、とても楽ちん
288デフォルトの名無しさん
2020/12/24(木) 18:53:41.80ID:tvAmDhsP289デフォルトの名無しさん
2020/12/24(木) 19:15:50.43ID:EoOpc5fU >>283
型共有は工数削減効果が非常に高いので積極的に利用して良いよ
型共有は工数削減効果が非常に高いので積極的に利用して良いよ
290デフォルトの名無しさん
2020/12/24(木) 19:26:12.20ID:yLXHVLdF swaggerがどうのこうの言ってる人はミスリードを狙ってそうな気配がする
swaggerはメソッドを定義することはできないからblazorの型共有とはそもそもまったくの別物だよ
swaggerはメソッドを定義することはできないからblazorの型共有とはそもそもまったくの別物だよ
291デフォルトの名無しさん
2020/12/24(木) 19:34:01.95ID:yLXHVLdF blazorの型共有は単にAPIのDTOを共有するといったつまらないユースケース留まらない(もちろんDTOとしても非常に便利ではあるが)
例えば単価、税率、個数から消費税込み価格を計算するメソッドがプレゼンテーション層とドメイン層の両方で必要になった場合
blazorならC#で1回だけメソッドを実装すればいい
バックエンドとフロントが異なる言語だと同じ処理を異なる言語で2回実装しなければならない
もちろん仕様変更が発生した場合には両方ともプログラムを修正、テストをしなければならない
テスト定義もバックエンドの言語とフロントエンドの言語で2回書かなければならない
片方の仕様変更を忘れてもテストが更新されなければアラートは鳴らないので
慎重に2つの言語を調べ尽くして実装漏れがないかどうか確認しなければならない
例えば単価、税率、個数から消費税込み価格を計算するメソッドがプレゼンテーション層とドメイン層の両方で必要になった場合
blazorならC#で1回だけメソッドを実装すればいい
バックエンドとフロントが異なる言語だと同じ処理を異なる言語で2回実装しなければならない
もちろん仕様変更が発生した場合には両方ともプログラムを修正、テストをしなければならない
テスト定義もバックエンドの言語とフロントエンドの言語で2回書かなければならない
片方の仕様変更を忘れてもテストが更新されなければアラートは鳴らないので
慎重に2つの言語を調べ尽くして実装漏れがないかどうか確認しなければならない
292デフォルトの名無しさん
2020/12/24(木) 20:36:59.38ID:NdJ7CDDg 画面の金額と実際の請求金額に差異が出たりしたら偉い人が顧客に土下座するレベルの重大事故だろ
さすがにそこはサーバーサイドに投げるわ
コード共有などという小手先レベルの共通化は少々バグっても笑って許される程度の機能のちょっとしたUX改善程度にとどめておくべきで、
重要なものはアーキテクチャ上差異が発生しないように作る
さすがにそこはサーバーサイドに投げるわ
コード共有などという小手先レベルの共通化は少々バグっても笑って許される程度の機能のちょっとしたUX改善程度にとどめておくべきで、
重要なものはアーキテクチャ上差異が発生しないように作る
293デフォルトの名無しさん
2020/12/24(木) 20:48:02.28ID:yJIcrLfM294デフォルトの名無しさん
2020/12/24(木) 20:58:24.94ID:KjzzoxRm295デフォルトの名無しさん
2020/12/24(木) 21:06:28.06ID:cW3QBX++ >>292
自分の設計だとバリデーション含めて
ロジックは全部(表示フォーマットも)サービス側ですね。
ローカルにあるロジックと応答速度で遜色ないですよ。
サービス側は全部単体テスト対象なんで
安心感もあります。
リリース後にバグ出すと、
なんで単体テストを通過したのか始末書もんです。
自分の設計だとバリデーション含めて
ロジックは全部(表示フォーマットも)サービス側ですね。
ローカルにあるロジックと応答速度で遜色ないですよ。
サービス側は全部単体テスト対象なんで
安心感もあります。
リリース後にバグ出すと、
なんで単体テストを通過したのか始末書もんです。
296デフォルトの名無しさん
2020/12/24(木) 21:23:01.51ID:IhbSA9yU >>295
思想としては正しいと思う
.NETな人って表面的なコードの共有は大好きなのにデプロイメントをDRYにするという意識が希薄な人が多くて、
ビジネスロジックのDLLをWebとバッチで安易に共通化したりしてデプロイをミスってトラブル起こすケースが多いんだよね
思想としては正しいと思う
.NETな人って表面的なコードの共有は大好きなのにデプロイメントをDRYにするという意識が希薄な人が多くて、
ビジネスロジックのDLLをWebとバッチで安易に共通化したりしてデプロイをミスってトラブル起こすケースが多いんだよね
297デフォルトの名無しさん
2020/12/24(木) 21:32:29.46ID:cW3QBX++ View側に業務ロジック混ざると、
コードが読めなくなること多いですからね。
いろんな人が出入りするし。
フロントなんて持って数年、
システムの統廃合やリプレース時にも楽ですよ。
コードが読めなくなること多いですからね。
いろんな人が出入りするし。
フロントなんて持って数年、
システムの統廃合やリプレース時にも楽ですよ。
298デフォルトの名無しさん
2020/12/24(木) 21:48:16.63ID:BMlK5S4S Blazor Serverでファイルのアップロード処理をしたいのですが、
アップロード時に、ローカルにファイルが存在するかチェックするにはどうすればよいでしょうか?
アップロード時に、ローカルにファイルが存在するかチェックするにはどうすればよいでしょうか?
299デフォルトの名無しさん
2020/12/24(木) 21:51:51.36ID:zHK1POmy >>298
ローカル側の処理なんでJavaScript書かないと仕方ないんじゃないの
ローカル側の処理なんでJavaScript書かないと仕方ないんじゃないの
300デフォルトの名無しさん
2020/12/24(木) 21:59:31.17ID:BMlK5S4S301デフォルトの名無しさん
2020/12/24(木) 22:00:26.68ID:cDdTcWWQ302デフォルトの名無しさん
2020/12/24(木) 22:05:56.79ID:cDdTcWWQ >>295
それはいままで簡単にフロントエンドとバックエンドでロジックを共有できなかったからそうするしかなかっただけ
型共有がなかったからコードを重複させるか些細なことでもバックエンドにリクエストを出すしかなかった
どちらもやりたいことにたいして実装と実行のオーバーヘッドが大きい
型共有が可能なblazorでは無駄なエンドポイント実装、APIコール実装を削減することにより生産性の向上が期待できる
また無駄なラウンドトリップを避けることによりより良いユーザー体験が期待できる
それはいままで簡単にフロントエンドとバックエンドでロジックを共有できなかったからそうするしかなかっただけ
型共有がなかったからコードを重複させるか些細なことでもバックエンドにリクエストを出すしかなかった
どちらもやりたいことにたいして実装と実行のオーバーヘッドが大きい
型共有が可能なblazorでは無駄なエンドポイント実装、APIコール実装を削減することにより生産性の向上が期待できる
また無駄なラウンドトリップを避けることによりより良いユーザー体験が期待できる
303デフォルトの名無しさん
2020/12/24(木) 22:08:01.69ID:cDdTcWWQ >>296
昨今ではデプロイメントは自動化されるので間違えることはない
昨今ではデプロイメントは自動化されるので間違えることはない
304デフォルトの名無しさん
2020/12/24(木) 22:09:26.12ID:cDdTcWWQ305デフォルトの名無しさん
2020/12/24(木) 22:25:28.29ID:Lxgk3nTO306デフォルトの名無しさん
2020/12/24(木) 22:50:48.81ID:cFK/Qw2G 実際どちらのことを書いてるんだろう
Serverかな
しかしwasmとserverでほんと全然ものが違うよな。
共通点はフロントをc#でかけるってだけで。
MSの名前の付け方は本当に適当だと思う。
Serverかな
しかしwasmとserverでほんと全然ものが違うよな。
共通点はフロントをc#でかけるってだけで。
MSの名前の付け方は本当に適当だと思う。
307デフォルトの名無しさん
2020/12/24(木) 22:59:35.56ID:z4h3nURn 同一言語で作ってる同一プロジェクト内で型を参照することを
”型共有”って言うのは相当違和感あるね
誰が使い始めたのかしらないけど
”型共有”って言うのは相当違和感あるね
誰が使い始めたのかしらないけど
308デフォルトの名無しさん
2020/12/24(木) 23:11:34.69ID:F9/YVp9N では何と言うべきか?
309デフォルトの名無しさん
2020/12/24(木) 23:24:38.23ID:cFK/Qw2G Qiita や個人のブログを貼るのはアレなので
クラスメソッドの記事を…
https://dev.classmethod.jp/articles/typescript-front-server/
interfaceを共有することで 型安全な開発ができます
これのことかな。
クラスメソッドの記事を…
https://dev.classmethod.jp/articles/typescript-front-server/
interfaceを共有することで 型安全な開発ができます
これのことかな。
310デフォルトの名無しさん
2020/12/24(木) 23:50:47.46ID:cDdTcWWQ Blazorはinterfaceの共有もできるがそれだけに限らない
interface、class、struct、、、何でも共有できる
それらを総称するとなんと言うか?それは型だ
だから型を共有していると言うより適切な表現はないのではないかな
interface、class、struct、、、何でも共有できる
それらを総称するとなんと言うか?それは型だ
だから型を共有していると言うより適切な表現はないのではないかな
311デフォルトの名無しさん
2020/12/25(金) 00:08:08.33ID:vv0pxJyE >>309
このケースはリポジトリとして定義した型をサーバーとクライアントで共有してるというのは違和感ないな
RESTのAPIで切り離されてるからかな
(APIが返す型情報を元にしてないから微妙なところがあるけど)
ASP.NET MVCで言えば同じビューモデルの定義を参照してるからって
ビューとコントローラーで”型共有”してるとは普通言わないよね?
このケースはリポジトリとして定義した型をサーバーとクライアントで共有してるというのは違和感ないな
RESTのAPIで切り離されてるからかな
(APIが返す型情報を元にしてないから微妙なところがあるけど)
ASP.NET MVCで言えば同じビューモデルの定義を参照してるからって
ビューとコントローラーで”型共有”してるとは普通言わないよね?
312デフォルトの名無しさん
2020/12/25(金) 00:14:35.63ID:K5aqSQYy >>311
言い回しとして普及してるかどうかは知らんが型を共有してるのは正しい
言い回しとして普及してるかどうかは知らんが型を共有してるのは正しい
313デフォルトの名無しさん
2020/12/25(金) 00:24:51.99ID:Z26lwPgE >>311
Blazor wasmのプロジェクト構成では
Shareプロジェクトにモデルを定義して
ClientプロジェクトのRazorページでShareプロジェクトを参照している
同じくServerプロジェクトのコントローラーでもShareプロジェクトを参照している
これはなんていうんだろう。
どちらにせよサーバーとクライアントで同じ型を使うという目的に対して手段が違うだけであって、別にまずくはないと思うんだけどどうだろう。
Blazor wasmのプロジェクト構成では
Shareプロジェクトにモデルを定義して
ClientプロジェクトのRazorページでShareプロジェクトを参照している
同じくServerプロジェクトのコントローラーでもShareプロジェクトを参照している
これはなんていうんだろう。
どちらにせよサーバーとクライアントで同じ型を使うという目的に対して手段が違うだけであって、別にまずくはないと思うんだけどどうだろう。
314デフォルトの名無しさん
2020/12/25(金) 08:42:56.78ID:uurLZNKt サーバーとフロントで型を共有?できた方が大半はうれしい。
OpanAPIが必要なシステムではそこに固執しなくてもよいということで。
じゃあこの板でもたまにやたらと推してくる奴がいる言語、rubyやpythonって静的型付け言語じゃないよね。
てことは型の共有もくそもないと。
そういう言語で中規模以上のWebシステムを作ろうとするとやはり苦労する?
推してくるやつはその事実をわかっていない?
静的型付け言語しかしらない俺にとってはなんであんな推してくるのかとても気になる。
OpanAPIが必要なシステムではそこに固執しなくてもよいということで。
じゃあこの板でもたまにやたらと推してくる奴がいる言語、rubyやpythonって静的型付け言語じゃないよね。
てことは型の共有もくそもないと。
そういう言語で中規模以上のWebシステムを作ろうとするとやはり苦労する?
推してくるやつはその事実をわかっていない?
静的型付け言語しかしらない俺にとってはなんであんな推してくるのかとても気になる。
315デフォルトの名無しさん
2020/12/25(金) 09:13:17.07ID:JfQSa+1c >>314
OpenAPIじゃメソッド(処理)を共有できないよ
フロントエンドとバックエンドで言語を揃えることにより今まで複数言語で書くかリモート実行するしかなかった問題が解決した
OpenAPIは複数言語で書く手間を軽減できるがリモート実行するしかないという問題には未だに無力
OpenAPIじゃメソッド(処理)を共有できないよ
フロントエンドとバックエンドで言語を揃えることにより今まで複数言語で書くかリモート実行するしかなかった問題が解決した
OpenAPIは複数言語で書く手間を軽減できるがリモート実行するしかないという問題には未だに無力
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【日中対立】在日本中国大使館、サンフランシスコ講和条約「不法かつ無効な文書」とSNSに投稿 高市首相が党首討論で引用 ★2 [ぐれ★]
- 【芸能】「加害の歴史を直視しない政治家が国の顔に」 宍戸開の批判に議論勃! 高市発言で揺れる芸能界… [冬月記者★]
- 糖尿病疑い全国で1100万人、8年で100万人増…厚労省推計 [蚤の市★]
- 拳銃24丁を中国から日本国内に輸入した疑い 中国人の46歳の男逮捕 1丁約3000円で販売 [七波羅探題★]
- ドリフトは「危険運転」、法改正で処罰対象に追加へ…「極めて危険だが規定がない」事態解消 [七波羅探題★]
- 【文春】AKB48『紅白歌合戦』出場へ! 前田敦子&大島優子が限定復活! 『ヘビロテ』など黄金期メドレー披露 神7の多くが出場 [冬月記者★]
- ホリエモン「家賃ケチって1時間かけて通勤する人は、給料の20%を失っているわけだけど、気づいてる?」 [315293707]
- 高市を逐一擁護していたJSF、さすがに高市の「戦艦」発言に耐えきれず批判 ネトウヨ発狂へ [165981677]
- 財務省の総務課長が現場に直接「改ざん」を指示したメールを次々と発見! 新たな開示で公文書は5万4000枚に【森友 [861717324]
- 【悲報】人気VTuberの天音かなたさん、ホロライブ卒業★5 [485689427]
- 【動画】普通の日本人「日本出身だと言うとこういうリアクションが来るw」 [394133584]
- 石破茂「日章旗振り回し、絶叫するのが保守ではない。地域や歴史、伝統文化を大切にし、違う意見を聞き入れる寛容さこそ、保守の本質だ」 [256556981]
