ふらっと C#,C♯,C#(初心者用) Part146at TECH
ふらっと C#,C♯,C#(初心者用) Part146 - 暇つぶし2ch127:デフォルトの名無しさん
19/12/21 01:46:23.53 tKqa0Mcd0.net
最初に読むべきなのは公式チュートリアル
URLリンク(docs.microsoft.com)
URLリンク(docs.microsoft.com)

128:デフォルトの名無しさん (アウアウウー Sa5b-kT4h)
19/12/21 02:36:40 zyAIfpOSa.net
ゲームは知らんけど、組み込みはほんとピンキリだよw
学者みたいに何でも知ってる人もいるけど、狭い範囲のことしか知らないくせに
コード書かせたら構造化以前なんて人もゴロゴロいる

web系は仕事内容は良く知らんけどストレス度は高そうだよねw
なんか俺は最先端のとんがったことやってるんだぞ的な自己陶酔系の人が多いように感じるのは、
そうでも思わないとたぶんやってられないんだろうなと想像

129:デフォルトの名無しさん
19/12/21 05:00:47.48 biYUElkB0.net
>>126
Unityならmacで十分だよ
Windowsでないと後々面倒というのは、会社で使うのはWindowsがほとんどだから
もし仕事にするなら、今から使い慣れてた方がいいということ
開発行為自体だと、unix系のアプリケーションならmacの方が色々揃ってるからやりやすいし
Windowsのアプリケーションなら、当然Windowsがやりやすいよ

130:デフォルトの名無しさん (ブーイモ MMbf-70ba)
19/12/21 08:35:24 elCUYmNmM.net
>>124
オプションとなるスキルが違うだけでプログラミングスキルはどの分野でもピンキリ

131:デフォルトの名無しさん (ワッチョイ 9f52-1WEo)
19/12/21 09:37:34 k+w4ikT00.net
>>124
2Dなら足し算引き算だけなんていってる人が"プログラムの真髄"なんて言っても、自分がやったことある範囲の知識がすべてなんだなって感じで説得力ゼロだぞw

132:デフォルトの名無しさん
19/12/21 12:32:00.35 W85y2T7QM.net
2Dでも三角関数使うしな

133:デフォルトの名無しさん
19/12/21 12:58:47.60 jr0+pgES0.net
プログラムかじった事ない人にいきなり三角関数必要とか言って作れると思う?
3Dは数学の知識が最低減ないと作れないけど、2Dは三角関数知らなくても作れる
分かったような口聞くな

134:デフォルトの名無しさん
19/12/21 13:15:08.24 W85y2T7QM.net
三角関数をなんだと思ってるんだよ
中学生なら習ってないからしょうがないけどさ

135:デフォルトの名無しさん
19/12/21 13:17:44.87 tKqa0Mcd0.net
>>133
>プログラムかじった事ない人にいきなり三角関数必要とか言って作れると思う?
この文章だけで頭の悪さがよく分かる
自然言語でまともな文章書けないやつに
まともなプログラム書けるやつはいない

136:デフォルトの名無しさん
19/12/21 13:31:19.22 B9cNmAcsd.net
三角関数なしに2Dゲームを作ることはできる
数学知識なしに3Dゲームも作れる
流石に加減乗除くらいは必要だが
無くても何かは作れると何を作るにも不要かどうかは別の話

137:デフォルトの名無しさん
19/12/21 17:01:18.37 jr0+pgES0.net
>>136
ほうー
3D空間を数学の計算以外でどうやって動かすのかな?
キャラクター動かないゲームかな?

138:デフォルトの名無しさん
19/12/21 17:06:21.58 ToibKenqa.net
下らない話はそのぐらいにしておいたら?
中学生じみてるよw

139:デフォルトの名無しさん
19/12/21 17:12:20.47 3iZbeqQ/0.net
Unityなんかに任せるとか?
結局使うことになるとは思うけど、使わずに済まそうと思えばなんとかなると思う。

140:デフォルトの名無しさん
19/12/21 17:20:19.27 722GI/wM0.net
テンプレ読んでください
オイコラミネオ MMab-7F0B
ワッチョイ 7707-7F0B
NG

141:デフォルトの名無しさん
19/12/21 18:47:28.86 BGAOi6L9M.net
オレのミネオはどう表示されるんだろ…

142:デフォルトの名無しさん
19/12/21 19:03:45.63 qQirr//DM.net
おれもテスト

143:デフォルトの名無しさん
19/12/21 21:45:23.13 /91O1xjY0.net
C#でコルモゴロフスミノフ検定した上で、単回帰分析とかするライブラリってありますか?
統計解析するならテキストファイルにデータ書き出して、
PythonとかRにわたすほうがいい?

144:デフォルトの名無しさん
19/12/21 21:47:47.94 q7cBKLSTd.net
>>143
そこはRubyでしょw

145:デフォルトの名無しさん
19/12/21 22:46:57.61 jv2HuDh00.net
>>143
R.NET

146:デフォルトの名無しさん
19/12/22 00:25:07.44 7hF/cDg80.net
byte[]として受け取ったmp3をファイル化せずにそのままmp3tagの読み書きを行えるライブラリはないでしょうか?
出来る限り通信のやり取りだけで済ませたいため、受け取ったmp3バイナリをそのまま処理して受け流したいと考えています。
taglibは試してみましたが、FileStreamとして渡さないと上手く機能しないようでした

147:デフォルトの名無しさん
19/12/22 00:38:07.26 GX5OjjKF0.net
Streamクラスとして抽象化されてるんじゃないの?
taglibは入力にStreamを受け入れんじゃなくて、FileStreamというより具象的な入力を受け入れるような馬鹿な設計になってるの?
byte[]をMemoryStreamでラップして渡せないの?

148:デフォルトの名無しさん
19/12/22 00:58:17.93 GX5OjjKF0.net
俺が馬鹿だったかも。書き込みも必要か。
URLリンク(docs.microsoft.com)
リサイズ可能なメモリストリーム作れるかこれ?
作れないなら、変更できるようなインメモリの独自ストリームクラス作るとか。

149:デフォルトの名無しさん
19/12/22 02:10:14.34 LPMS/GLqa.net
ビットマップを編集するライブラリがFileStrem前提になってたら馬鹿設計だけど
Exifを編集するライブラリがそうでも別に馬鹿とは思わないなあ

150:デフォルトの名無しさん (ワッチョイ 7790-MEwc)
19/12/22 04:41:32 GX5OjjKF0.net
まじで言ってる?
例えば、カメラで撮影したローカルにあるJPEG画像を投稿サイトにアップロードする機能つくるとき、EXIFを消してアップロードしたいありがちな機能。

MemoryStreamを渡せれば、元のファイル変更せずにメモリ上で修正してアップロードして破棄できる。
同じことをやるにはFileStreamだと一々コピーしないといけない。

151:デフォルトの名無しさん
19/12/22 05:57:32.35 R0LOzgYE0.net
タグ部分と同じ構造体作って該当部分のバイト配列を構造体に変換すりゃ済むんじゃないの

152:デフォルトの名無しさん
19/12/22 08:25:01.65 /NGpR+eY0.net
TaglibSharpの.net Standard版をUWPから使っているが
TagLib.File.IFileAbstractionってのを使ってストリームを操作している
自分でこのインターフェースを実装すれば割と簡単に行けると思うよ
実装してクラスをTagLib.File.Createに渡せば問題ない

153:デフォルトの名無しさん
19/12/22 12:48:45.77 d/zyo53Ma.net
>>150
それ、別にFileStreamを受け取ってStreamを吐く仕様で何も困らないのでは?

154:デフォルトの名無しさん
19/12/22 13:18:15.55 7hF/cDg80.net
>>147>>152
ありがとうございます。
IFileAbstractionを実装したクラスでCreateしていましたが、CloseStreamで内部のMemoryStreamをDisposeしてしまっていたため、挙動がおかしくなっていただけでした
TagLib.File.Save()を行うことで初めて内部のstreamにTag情報が書き込まれ、同時にCloseStreamも呼ばれるためそこでは内部のstreamを閉じずに自前の後処理を行ってから閉じることで希望の動作になりました

155:デフォルトの名無しさん
19/12/22 16:13:05.02 thbQEK090.net
ヽ(・ω・)/ズコー
まあ、バグ調べてて「俺ってバカ?」って思うことはよくあることだ
バグ作り込む気は全く無いのに、毎度あるのは何でか不思議でならない
(まあ最近は熟知してない言語で作ることが増えてきたのもあるが、COBOLごときでも一緒だったな…)

156:デフォルトの名無しさん
19/12/22 22:16:50.41 TCqgMSVE0.net
ライブラリを作ろうかと思うのですが
あるクラスをライブラリ内ではインスタンス化できるようにしたいけど
ライブラリを使う人はインスタンス化できないようにする
というようなことは可能ですか?
参考になるサイトなどありますか?
クラスのプロパティは基本的にすべて読み出しだけ可能にする予定です。

157:デフォルトの名無しさん
19/12/22 22:22:55.94 CUDsNTIh0.net
コンストラクタをinternalにする

158:デフォルトの名無しさん
19/12/22 22:28:00.73 t9cAONDx0.net
>>153
じゃあさあ。ネットワークから受け取った画像をファイルに保存せずに、そのまんまEXIF修正して別のサーバーに送り返す場合、どうするの?
と、使う方次第で色んな用件があるわけ。
実装コスト増えるならまだしも、今回のケースでは読み書きできてシークできるStreamであれば良さそうなのに、それをFileStreamに限定するの意味がわからない。

159:デフォルトの名無しさん
19/12/22 22:37:29.12 b8EKEEl60.net
この動画の人がVisual StudioでやっているAuthenticatonをオンにする設定は、dotnetコマンドではどうやるのですか?
URLリンク(youtu.be)

160:158
19/12/22 22:45:45.81 b8EKEEl60.net
すまん
自己解決しました
URLリンク(docs.microsoft.com)

161:デフォルトの名無しさん (ワッチョイ 7f0d-9COd)
19/12/23 02:14:36 CbUt8X2i0.net
c#からpythonのmatplotlibを呼んでみたらグラフ描画に10秒くらいかかった・・・
めんどくさい数値演算とかをPythonライブラリに丸投げしたかったけど厳しい
グラフ描画はwinformでやるにしても描画するための連続データを戻り値として受け渡しするのなぁ

162:デフォルトの名無しさん
19/12/23 06:05:21.41 n/5EZXjd0.net
>>161
chartじゃだめか?

163:デフォルトの名無しさん
19/12/23 06:33:23.54 TTdlQikFd.net
>>157
ありがとうございます。
難しく考えすぎてました。

164:デフォルトの名無しさん
19/12/23 08:20:32.39 AV2OtNnH0.net
>>161
その程度の何が障害なの?
ナメてるのか?

165:デフォルトの名無しさん
19/12/23 09:06:54.33 5ISBodU5M.net
>>164
食ってかかるなよ
>>161
ふーん。日記ならママにでも聞かせとけよ

166:デフォルトの名無しさん
19/12/23 14:12:00.92 CVji7Zdt0.net
自分で使う用のWinデスクトップアプリケーションを作ってみたいのですが
VScodeにC#の拡張をインストールしたところ、".net Coreが無い"というメッセージが出ました
.net frameworkを後から入れるつもりだったのですが
現在はframeworkではなくCoreを使用するのでしょうか?
軽くしらべたところ、Coreはサーバサイ用、frameworkはデスクトプ用っぽいんですが
Coreでデスクトップアプリを作成するチュートリアルもあるようでした

167:デフォルトの名無しさん
19/12/23 14:29:00.57 FZMFlrDL0.net
coreはサーバー用ではないよ
今ならデスクトップアプリでもcoreで作るけど別にframework使えないってわけでもない
古い環境への配慮とか考えなくていいならcoreでいいんじゃない?

168:デフォルトの名無しさん
19/12/23 15:12:57.52 Gp3oh3j2M.net
そして System.Drawing の移植性の無さで
泣ける。

169:デフォルトの名無しさん
19/12/23 15:38:13.00 Wyd1VJ4y0.net
WebBrowserでカスタムHeaderの送信とResponse Headerの取得ができません
.net core 3.1を使っています。バグでしょうか?

170:デフォルトの名無しさん
19/12/23 15:46:22.84 CVji7Zdt0.net
>>167
ありがとうございます
Core入れてきます

171:デフォルトの名無しさん
19/12/23 17:45:51.26 eQmrU5ERd.net
>>170
そのレベルだと、VSCodeでxaml手書きはキツいんじゃない?素直にVisual Studio使いな

172:デフォルトの名無しさん
19/12/23 18:05:28.45 oBvZW+b7M.net
今ならBlazorが簡単で良いよ
一般常識レベルのHtmlがわかってれば後は直感で作れる

173:デフォルトの名無しさん
19/12/23 18:16:31.10 +KUE/8IiM.net
C#使いたがる人ってWebに苦手意識がある人が多い印象だなあ
最初からrazor使えるような奴はそもそもC#(というかWindows開発)を選ばないと思うよ

174:デフォルトの名無しさん
19/12/23 18:22:36.62 P6gAM1Rw0.net
嫌ぁCAD+画像処理屋なので、webじゃ
やっとれんだけですよ。
SPIDERがwebに乗って実用化されたら
考える。

175:デフォルトの名無しさん
19/12/23 18:28:43.48 +KUE/8IiM.net
ほらね

176:デフォルトの名無しさん
19/12/23 18:44:33.92 kZpvALBe0.net
>>173
お前はC#スレに来て何がしたいんだ?

177:デフォルトの名無しさん
19/12/23 19:08:35.91 kDR2U+EyM.net
なにがほらねなんだろ

178:デフォルトの名無しさん
19/12/23 19:10:12.11 P6gAM1Rw0.net
法螺ね

179:デフォルトの名無しさん
19/12/24 11:17:43.39 pJ4JfZbNd.net
prism の質問もここでいいですか?

180:デフォルトの名無しさん
19/12/24 11:23:10.23 rY4O3lLw0.net
許すん

181:デフォルトの名無しさん
19/12/24 11:27:15.31 4hGbK3LLM.net
今のprismはMSとは無関係な単なる野良ライブラリの一つだからダメ

182:デフォルトの名無しさん
19/12/24 12:29:36.63 2vtH2tiGd.net
>>179
C#で使うならOK

183:デフォルトの名無しさん
19/12/24 12:45:35.02 +zwswjcb0.net
skiasharp Microsoftの純正ライブラリー
扱いなのに(nugetでは)
情報が少なくて笑える
人脈が無いとこういう扱いなのかw

184:ャfフォルトの名末ウしさん
19/12/24 13:55:17.48 rY4O3lLw0.net
流れ読まずに。
private int hoge(){
 using(/* なんか入る */){
  /* ひたすら処理 */
  return nanka;
 }
}
こういうreturnの書き方は一般的なのでしょうか?
usingの中カッコの外にreturn文がないと値の返し損ねがないか心配なのですが
VisualStudioの警告は出ないしアリなのかナシなのか諸兄のご意見をいただきたく。

185:デフォルトの名無しさん
19/12/24 14:15:20.75 4hGbK3LLM.net
>>184
普通にアリ
メソッドから戻る直前にDisposeが実行される
なお、C#8以降では以下のように書けるため、従来のusingブロックはほとんどの場合必要なくなった
using var x = new Hoge("Arial", 10.0f);
x.Foo();
// メソッドを抜けるときに自動的に x.Dispose が呼ばれる

186:デフォルトの名無しさん
19/12/24 14:42:06.62 JGZzQNV20.net
>>184
returnが無いパスがあったら警告出るよ
警告が出ないということは必ずreturnが呼ばれている

187:デフォルトの名無しさん
19/12/24 16:17:46.84 pJ4JfZbNd.net
>>182,180
ありがとう。DIコンテナにUnityを使ってて、App.xaml の RegisterTypes で RegisterSingleton で登録する共用クラスがあるんだけど、このコンストラクタに引数を渡したいです
UnityContainerの中で生成するタイミングがわからなくて渡し方がわかりません

188:デフォルトの名無しさん
19/12/24 16:20:01.66 pJ4JfZbNd.net
あ、引数はユーザーコンフィグから取得したいです

189:デフォルトの名無しさん
19/12/24 17:24:40.68 rY4O3lLw0.net
>>185,186
ありがとうございますm(_ _)m
usingの中カッコの中で変数宣言してそれを返せて終われたらいいなと思ってたのでこの書き方でやってみます

190:デフォルトの名無しさん
19/12/24 19:00:31.16 yk68HN8sM.net
>>188
コンフィグクラスかコンフィグ読み込みクラスを注入すればいいよ

191:デフォルトの名無しさん
19/12/24 19:05:38.59 0ojb25IiM.net
>>185
まじ?C#は洗練されてるね

192:デフォルトの名無しさん
19/12/25 00:57:35.17 BOYk9T8B0.net
>>190
ああそりゃそうか。DIコンテナがあるんだからインジェクションすればいいだけなんだねありがとう

193:デフォルトの名無しさん
19/12/25 21:07:41.04 nysCvhr10.net
.netライブラリでかすぎじゃね?

194:デフォルトの名無しさん (ワッチョイ f12d-vQnI)
19/12/26 03:51:48 bzjIw0U90.net
作ったプログラムをUbuntuのバックグラウンドで動かし続けたいんだけどさあ
nohup dotnet run &
だと、動かないのかすぐ終わっちゃうのかわかんないけどダメだったぜ
どうすればよかんべえな?

195:デフォルトの名無しさん
19/12/26 09:37:04.58 qmNoWNu8F.net
>>193
既にライブラリじゃないですね

196:デフォルトの名無しさん
19/12/26 10:09:04.01 Wx+k6OqqM.net
>>194
Docker使うのが簡単だしスキル的にも得るものが大きい

197:デフォルトの名無しさん
19/12/26 22:14:19.89 z0a0esehd.net
>185
1000行近い関数が沢山あるクソコードだと以前の方が便利だな(涙目)

198:デフォルトの名無しさん
19/12/26 22:19:53.43 YRIJALUmM.net
メソッド内にラノベでも書いてんのか?

199:デフォルトの名無しさん
19/12/27 23:38:38.82 rZaePzzs0.net
頻出パターンだと思うんだけど、
ツリービューとかデータグリッドを選択したら詳細を表示する画面で、詳細部分のリジョンにナビゲーションで登録する時って、
詳細のビューのコードビハインドに書くしかないのかね。
サンプルがそうなってるけど、コードビハインドに書くのに抵抗がある

200:デフォルトの名無しさん
19/12/28 00:09:08.65 L8M+Vbvra.net
React等の仮想DOMを使ったモダンなMVVM系Webフレームワークでは、コンポーネントとしてVMを階層化する。
この場合、親VMが子VMとしてツリービューVMと詳細VMを持つ形になるだろう。
そして、ツリービューの選択項目が変更されたらツリービューVMがそれを受けて親VMに通知し、親VMが詳細VMの表示対象データのプロパティを更新する。
WPFの原始的なMVVMではそのへんはあまり洗練されていないし、そもそもWPF自体誰も使ってないから特にベストプラクティスのようなものも無い。
WebのMVVMを真似するのもコードビハインドを書くのも君の自由だ。

201:デフォルトの名無しさん
19/12/28 02:11:10.25 n5/LKlnD0.net
「リジョンのナビゲーションで登録」
意味不明

202:デフォルトの名無しさん (ワッチョイ 3538-n2a0)
19/12/28 04:17:29 j+kocMTA0.net
「詳細部分のregion(領域)」までは何とか…

203:デフォルトの名無しさん
19/12/28 11:25:47.63 aAyiCa3V0.net
>>201
ごめんなさい。モジュールでレジスタービューウィズリジョンじゃなくて、レジスターフォーナビゲーションを使って登録するとこのことです
公式サンプルのベーシックリジョンナビゲーションの書き方をみての質問です

204:デフォルトの名無しさん
19/12/28 11:47:20.50 j+kocMTA0.net
クソワロタ

205:デフォルトの名無しさん
19/12/28 11:53:28.80 mKsVnGCZ0.net
そうか、よくわからないけど解決したなら良かった


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch