[過去ログ]
ふらっと C#,C♯,C#(初心者用) Part137 (1002レス)
ふらっと C#,C♯,C#(初心者用) Part137 http://mevius.5ch.net/test/read.cgi/tech/1523004019/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
26: デフォルトの名無しさん (ワッチョイ fe76-u9U1) [sage] 2018/04/10(火) 20:54:09.92 ID:i+408CBT0 >>25 理解が浅く説明が拙くすみません そのような事です どちらでも出来てしまいますが、使い分けのルールや指標はあるのかなと http://mevius.5ch.net/test/read.cgi/tech/1523004019/26
27: デフォルトの名無しさん (アウアウウー Sa11-lfby) [sage] 2018/04/10(火) 23:02:10.41 ID:IMFDPHVza そのパラメーターが変更可能なのかどうかでやり方がいろいろある インスタンスを作るときに最初に決めたパラメーターを変える必要がないもしくは変えたくないなら コンストラクタで渡してしまえばいい 毎回変えるかもしれないならメソッドで渡せばいい http://mevius.5ch.net/test/read.cgi/tech/1523004019/27
28: デフォルトの名無しさん (ワンミングク MM5a-1n+P) [sage] 2018/04/10(火) 23:36:50.93 ID:v03YChI+M >>26 そんなもの無い その時々で苦悩して答えを出すしかない プログラミングってそういう仕事 http://mevius.5ch.net/test/read.cgi/tech/1523004019/28
29: デフォルトの名無しさん (ワッチョイ 89e3-2FKJ) [sage] 2018/04/10(火) 23:44:32.77 ID:yYP5pHxz0 >>20 教科書的にはメソッドの引数しかありえない http://mevius.5ch.net/test/read.cgi/tech/1523004019/29
30: デフォルトの名無しさん (アウアウウー Sa11-EMs9) [sage] 2018/04/11(水) 00:46:06.20 ID:qa2FEnRqa >>26 基本的には全部引数でも間違いではない あくまで関数が主であって、オブジェクトは関数のコンテキストに過ぎない、と考えるのが今時のプログラミング 端的に言えば、毎回同じ引数を渡すのが面倒だと思うならクラスにすることを検討するというだけの簡単な話 http://mevius.5ch.net/test/read.cgi/tech/1523004019/30
31: デフォルトの名無しさん (アウアウエー Sab2-hYtV) [sage] 2018/04/11(水) 00:50:03.90 ID:mkq9MyW9a >>26 いや、プロパティとして持つべきデータかの判断は一般的にはそんなに難しくないはず。 上に例に挙げたTimerだって、Startの引数でIntervalを指定する方式だと 問題や不自然さがあることはちょっと考えれば分かるはず http://mevius.5ch.net/test/read.cgi/tech/1523004019/31
32: デフォルトの名無しさん (ブーイモ MMea-EMs9) [sage] 2018/04/11(水) 01:12:44.96 ID:KJoDibHNM >>31 別に問題も不自然さも無いよ System.Timers.TimerやSystem.Windows.Forms.Timerのインターバルがプロパティなのは、デザイナで設定できる必要があるからだ 実際、デザイナに貼れないSystem.Threading.Timerはコンストラクタかメソッドで周期を設定する (ライブラリではなく)アプリケーションの開発に関して言えば、データクラス以外でプロパティを使う必要があるケースは稀だよ データクラスを除けば、一度設定した値を取り出したくなるのは殆どの場合設計が間違っている http://mevius.5ch.net/test/read.cgi/tech/1523004019/32
33: デフォルトの名無しさん (ワイモマー MMd9-4k8A) [sage] 2018/04/11(水) 01:25:13.83 ID:nomvJ3n3M >>20 ・コンストラクタで渡す var a = new Test(1, "A"); ・メソッドで渡す var b = new Test().SetId(2).SetName("B"); ・オブジェクト初期化子で渡す var c = new Test{ id = 3, name = "C", }; 通常はコンストラクタで、メソッドチェーンはファクトリパターンでよく使う オブジェクト初期化子は閉じてるクラスの可読性を上げたいときに使う まあ統一性さえ確保出来ていればどれを選んでも大差ないよ http://mevius.5ch.net/test/read.cgi/tech/1523004019/33
34: デフォルトの名無しさん (アウアウエー Sab2-hYtV) [sage] 2018/04/11(水) 01:44:35.49 ID:mkq9MyW9a >>32 System.Threading.Timerがプロパティを持たないのは何か意図があると思うが 使ったことがないのでよくわからない。(軽量であることが「コンセンプトだから? あるいんた単に設計者の頭が古いだけかもしれない} TimerのIntervalをプロパティとして実装しなかった場合。 (1) タイマー動作時にIntervallを変更するためにはStartを実行することになるが、 OOP的に不自然 (2) そもそもTimerオブジェクトは、少なくとも動作時にはIntervalの値を保持している。 だったらこれをプロパティとして公開する方が自然 http://mevius.5ch.net/test/read.cgi/tech/1523004019/34
35: デフォルトの名無しさん (ワイモマー MMd9-4k8A) [sage] 2018/04/11(水) 02:01:15.23 ID:nomvJ3n3M >>34 動作中にIntervalの値を変えられると困る場合、 Start時のみ設定可能にするのは別に不自然でもないよ OOPの目的はメンテナンス性と事前の徹底したバグ潰しだから、値を変更できるルートを予め絞っておくことは理に適ってる http://mevius.5ch.net/test/read.cgi/tech/1523004019/35
36: デフォルトの名無しさん (アウアウエー Sab2-hYtV) [sage] 2018/04/11(水) 02:46:11.71 ID:mkq9MyW9a >>35 現実と違う仮定を置いたら何でも言える http://mevius.5ch.net/test/read.cgi/tech/1523004019/36
37: 20 (バットンキン MMd9-u9U1) [sage] 2018/04/11(水) 07:04:30.38 ID:Q5HB2TyRM 色々とアドバイスありがとうございます 統一性があれば、後はデザパタに従うか等で決定するのが一般的と解釈しました 田舎の中小1人情シスでコードレビューもされないので世間の動向が分からず参考になります 都会の大手の人は切磋琢磨し洗練されたコードを書くんだろうなと憧れます http://mevius.5ch.net/test/read.cgi/tech/1523004019/37
38: 20 (バットンキン MMd9-u9U1) [sage] 2018/04/11(水) 07:52:53.54 ID:Q5HB2TyRM >>28 あまり我流過ぎるとチーム開発の時に混乱するという心配がありまして http://mevius.5ch.net/test/read.cgi/tech/1523004019/38
39: デフォルトの名無しさん (ワンミングク MM5a-1n+P) [sage] 2018/04/11(水) 11:00:26.66 ID:uvPDHOSBM >>38 対象を無視してオレオレナントナク基準で決めるほうが我流 物事にはそれぞれ特性があり最適な答えはいつも違う それを導き出すには都度考えて議論を重ね実験を繰り返すしかないんだよ http://mevius.5ch.net/test/read.cgi/tech/1523004019/39
40: デフォルトの名無しさん (ワッチョイ f3e3-78aE) [sage] 2018/04/12(木) 20:03:06.85 ID:XQKU/nO90 見積り終わってるのに時間かけても無駄 一円の利益にもならない 今回の開発で黒字でなければ2回目はない よって一番時間がかからない方法が正義 http://mevius.5ch.net/test/read.cgi/tech/1523004019/40
41: デフォルトの名無しさん (ワントンキン MM9f-xDE7) [sage] 2018/04/12(木) 20:52:33.85 ID:bR5mzWUWM 業務系はそれでいいのかもね 保守するのは自分でも自社でもない ならどんなに汚いコードでも早くしあげたほうが勝ち ただし納品された顧客はとんでもない借金を背負うことになる 罪悪感ってないのかね http://mevius.5ch.net/test/read.cgi/tech/1523004019/41
42: デフォルトの名無しさん (ワッチョイ f3e3-78aE) [sage] 2018/04/12(木) 21:50:50.18 ID:XQKU/nO90 >>41 いや 君のやり方だって怪しいもんじゃない? 具体的に○○さんのコードは見易くてわかりやすいですねって言われた実績あるの? 無いのに勝手な妄想で自分のコードを保守しやすいと思い込んでない? http://mevius.5ch.net/test/read.cgi/tech/1523004019/42
43: デフォルトの名無しさん (ワッチョイ b317-ycE0) [sage] 2018/04/12(木) 21:55:35.29 ID:kW0JyjC+0 まーた始まった http://mevius.5ch.net/test/read.cgi/tech/1523004019/43
44: デフォルトの名無しさん (ワッチョイ f3e3-78aE) [sage] 2018/04/12(木) 21:57:30.18 ID:XQKU/nO90 >>43 お前なんか全身elseで強化した俺の敵じゃねぇ http://mevius.5ch.net/test/read.cgi/tech/1523004019/44
45: デフォルトの名無しさん (ワッチョイ b317-ycE0) [sage] 2018/04/12(木) 22:06:57.86 ID:kW0JyjC+0 >>44 ナマ言ってすみませんでした http://mevius.5ch.net/test/read.cgi/tech/1523004019/45
46: デフォルトの名無しさん (ワッチョイ f306-zmT2) [sage] 2018/04/13(金) 01:45:08.04 ID:JNl7+QPK0 VisualStrudioのC#でPS4を入力を表示するソフトを作りたいんだけども、 どんなライブラリが便利かな? http://mevius.5ch.net/test/read.cgi/tech/1523004019/46
47: デフォルトの名無しさん (ワッチョイ e3d7-E1tv) [sage] 2018/04/13(金) 06:13:51.49 ID:Om81X5Te0 >>46 PS4の入力ってなに? コントローラの事? http://mevius.5ch.net/test/read.cgi/tech/1523004019/47
48: デフォルトの名無しさん (ワッチョイ 738a-Z7Iu) [sage] 2018/04/13(金) 07:25:42.50 ID:ko86uHhA0 日本語でOK http://mevius.5ch.net/test/read.cgi/tech/1523004019/48
49: デフォルトの名無しさん (ブーイモ MMa7-5Vj6) [sage] 2018/04/13(金) 18:47:05.89 ID:GNeQyvWjM PS4を窓の外に出力する 入力すならまずはアマゾンで注文 http://mevius.5ch.net/test/read.cgi/tech/1523004019/49
50: デフォルトの名無しさん (ワッチョイ f3e3-78aE) [sage] 2018/04/14(土) 14:59:27.41 ID:x6wpDOBa0 作画ソフトを作成したいのですが 解像度より大きな領域を扱うことになりそうです 10%〜800%まで拡大縮小ができて 編集操作を行う必要があるのですが どのような造りにしたら良いのでしょうか? 自分でスクロールバーを置いて編集領域は自前で描画するのでしょうか? PictureBoxのようなコントロールでスクロール操作までできてしまうのでしょうか? http://mevius.5ch.net/test/read.cgi/tech/1523004019/50
51: デフォルトの名無しさん (ワッチョイ e3d7-E1tv) [sage] 2018/04/14(土) 15:03:33.67 ID:A6JgIv/D0 ドロー系? ペイント系? http://mevius.5ch.net/test/read.cgi/tech/1523004019/51
52: デフォルトの名無しさん (ワッチョイ f3e3-78aE) [sage] 2018/04/14(土) 15:08:53.93 ID:x6wpDOBa0 >>51 具体的には印刷すると模造紙ぐらいの大きさのでっかい回路図を作成します 保存するファイル形式はXmlです http://mevius.5ch.net/test/read.cgi/tech/1523004019/52
53: デフォルトの名無しさん (ワッチョイ 738a-Z7Iu) [sage] 2018/04/14(土) 15:26:50.36 ID:whWbsAFN0 >>49 入力酢? http://mevius.5ch.net/test/read.cgi/tech/1523004019/53
54: デフォルトの名無しさん (アウアウエー Sadf-ynAY) [sage] 2018/04/14(土) 16:20:27.70 ID:411sIKLXa >>50 自分でスクロールの機能まで実装してもいいけど、 特に理由がないならコンテナ(例えばPanel)の中にPictureBoxを入れて使うのが 普通じゃないですか http://mevius.5ch.net/test/read.cgi/tech/1523004019/54
55: デフォルトの名無しさん (ワッチョイ cf9a-ycE0) [sage] 2018/04/14(土) 17:09:28.19 ID:D8vt8UcC0 >>50 PictureBoxにスクロールバー表示するのは https://dobon.net/vb/dotnet/graphics/scrollimage.html 例ではコードでプロパティ設定しているけどデザイナで設定しても同じようにできる http://mevius.5ch.net/test/read.cgi/tech/1523004019/55
56: デフォルトの名無しさん (アウアウウー Sae7-LJHW) [sage] 2018/04/14(土) 17:16:13.98 ID:A7r7eR+xa 模造紙レベルのでっかいpitureboxで画像のまま編集は現実的じゃないけどね 実際は表示部分だけ都度計算して描画することになる ドロー系にしてもまあ普通は向いてない C++でやるような内容だよ http://mevius.5ch.net/test/read.cgi/tech/1523004019/56
57: デフォルトの名無しさん (ワッチョイ e3d7-E1tv) [sage] 2018/04/14(土) 18:55:16.11 ID:A6JgIv/D0 論理座標とワールド座標、デバイス座標をよく理解すべき http://mevius.5ch.net/test/read.cgi/tech/1523004019/57
58: デフォルトの名無しさん (ワッチョイ f3e3-78aE) [sage] 2018/04/14(土) 19:31:26.26 ID:x6wpDOBa0 >>54-57 ありがとうございます 頑張って見ます http://mevius.5ch.net/test/read.cgi/tech/1523004019/58
59: 46 (ワッチョイ f306-zmT2) [sage] 2018/04/14(土) 20:40:54.18 ID:iGVhaI1m0 すいません、PS4のコントローラをPCに接続して、 入力ボタンを表示したいのです。 http://mevius.5ch.net/test/read.cgi/tech/1523004019/59
60: デフォルトの名無しさん (ワッチョイ 738a-Z7Iu) [sage] 2018/04/14(土) 21:18:11.42 ID:whWbsAFN0 >>59 https://game.watch.impress.co.jp/docs/series/ggl/637329.html http://mevius.5ch.net/test/read.cgi/tech/1523004019/60
61: 46 (ワッチョイ f306-zmT2) [sage] 2018/04/14(土) 23:01:59.31 ID:iGVhaI1m0 配置が違うだけなのか。 でも認識させるにはDirectXのラッパーとか使うしか無さそうなのね。 http://mevius.5ch.net/test/read.cgi/tech/1523004019/61
62: 46 (ワッチョイ f306-zmT2) [sage] 2018/04/17(火) 01:46:03.23 ID:kRrGnVcd0 出来ましたー、ありがとうございます。 DirectInput http://nanoappli.com/blog/archives/4772 Xinput https://gist.github.com/kb10uy/7368358 http://mevius.5ch.net/test/read.cgi/tech/1523004019/62
63: デフォルトの名無しさん (ワッチョイ 33f9-LJHW) [sage] 2018/04/17(火) 13:28:00.94 ID:NEdohK8t0 Task.Factory.StartNew(またはTask.Run)で生成したスレッドの優先度を変える方法はあるのでしょうか。 http://mevius.5ch.net/test/read.cgi/tech/1523004019/63
64: デフォルトの名無しさん (ワッチョイ 33f9-LJHW) [sage] 2018/04/17(火) 14:11:36.85 ID:NEdohK8t0 63ですがスレッドプールを使わず、スレッドで対応することにしました。 http://mevius.5ch.net/test/read.cgi/tech/1523004019/64
65: デフォルトの名無しさん (ブーイモ MMff-v/YJ) [sage] 2018/04/17(火) 16:42:17.15 ID:joazaAE7M なぜレガシィな方向へ走るw http://mevius.5ch.net/test/read.cgi/tech/1523004019/65
66: デフォルトの名無しさん (ワッチョイ 33f9-LJHW) [] 2018/04/17(火) 17:42:06.89 ID:NEdohK8t0 >>65 Taskだと処理中に割り込み?が割と入ってきて、処理時間が遅延してしまうのです。 スレッドレベルで優先度を上げたいと思いまして。 結局Threadにして優先度を上げても割り込みは入ってくるのですが、多少マシになったような気がします。 http://mevius.5ch.net/test/read.cgi/tech/1523004019/66
67: デフォルトの名無しさん (アウアウエー Sadf-ynAY) [sage] 2018/04/17(火) 18:11:29.55 ID:xGjbcgxza どんだけタイムクリティカルな要件なのよww http://mevius.5ch.net/test/read.cgi/tech/1523004019/67
68: デフォルトの名無しさん (ワッチョイ 7fac-SNXU) [sage] 2018/04/17(火) 21:11:51.39 ID:kHPr9dOS0 パソコンぶん投げてPLCにしよう http://mevius.5ch.net/test/read.cgi/tech/1523004019/68
69: デフォルトの名無しさん (ワッチョイ 738a-Z7Iu) [sage] 2018/04/17(火) 23:58:42.15 ID:zXGef27d0 picでも使えよ http://mevius.5ch.net/test/read.cgi/tech/1523004019/69
70: デフォルトの名無しさん (ワッチョイ cfc9-ycE0) [sage] 2018/04/18(水) 00:12:24.46 ID:WXSfEMqB0 >>66 それ単にスレッド生成で遅延しているなんてオチじゃないよな? http://mevius.5ch.net/test/read.cgi/tech/1523004019/70
71: デフォルトの名無しさん (ワッチョイ 33f9-LJHW) [sage] 2018/04/18(水) 10:23:12.22 ID:+D/RfByR0 受託案件なのでC#で作らざるを得ないのです。 自分自身はファーム屋なので、マイコンでやりたいんですけどね。 >>70 まだ遅延の原因はわかってませんです 生成時だけの遅延じゃないので、違うとは思いますが・・・ http://mevius.5ch.net/test/read.cgi/tech/1523004019/71
72: デフォルトの名無しさん (ワントンキン MM9f-xDE7) [sage] 2018/04/18(水) 12:14:14.43 ID:wyULW0oVM プロセスの優先度もあげるといいらしいぞ http://mevius.5ch.net/test/read.cgi/tech/1523004019/72
73: デフォルトの名無しさん (ブーイモ MMff-v/YJ) [sage] 2018/04/18(水) 12:31:04.61 ID:WeKuLBkMM 糞多い要素群にlinqで遅延実行+ループとか? http://mevius.5ch.net/test/read.cgi/tech/1523004019/73
74: デフォルトの名無しさん (アウアウカー Sa47-d/GC) [sage] 2018/04/18(水) 18:10:56.40 ID:jY7uFFSia >>71 Win32で作る http://mevius.5ch.net/test/read.cgi/tech/1523004019/74
75: デフォルトの名無しさん (ワッチョイ ff7f-RdoA) [] 2018/04/18(水) 21:09:40.32 ID:unjr58vW0 >>71 GCやJITは対策してる? http://mevius.5ch.net/test/read.cgi/tech/1523004019/75
76: デフォルトの名無しさん (ワッチョイ 8aeb-8q6u) [sage] 2018/04/19(木) 18:59:16.22 ID:Yr3hu/ey0 ユーザーコントロールのプロパティをデザイン時のプロパティウィンドウでコンボボックスにしたく 人様のサイトで恐縮なのですが、以下をほぼコピペしました。 http://blog.okazuki.jp/entry/20070207/1170820895 が、テキストボックスのままで選択肢になりません。 公開プロパティに、なにか別の宣言が要りましたでしょうか? http://mevius.5ch.net/test/read.cgi/tech/1523004019/76
77: デフォルトの名無しさん (ワッチョイ 8aeb-8q6u) [sage] 2018/04/19(木) 19:15:06.26 ID:Yr3hu/ey0 継承ユーザーコントロールだったのですが、継承元にも [System.ComponentModel.TypeConverter(typeof(〜 が必要だっただけみたいです。 すみませんでした。 http://mevius.5ch.net/test/read.cgi/tech/1523004019/77
78: デフォルトの名無しさん (ワッチョイ 8aeb-8q6u) [sage] 2018/04/19(木) 19:48:23.98 ID:Yr3hu/ey0 引き続きすみません。 たとえばユーザーコントロールに Folder File という2つのstring型の公開プロパティを用意します。 IDEのプロパティウィンドウからFolderを設定(通常のテキストボックス)すると そのフォルダ内のファイルを舐めてFileの選択肢にしたいのです。 TypeConverterで、静的な候補が出て選択できるところまでは出来たんですが 動的に候補を変更する場合、どうするんでしょうか。 IDEのプロパティウィンドウに、どうアクセスしたらいいのか、そこが分かれば何とかなる気がしてるんですが。 http://mevius.5ch.net/test/read.cgi/tech/1523004019/78
79: デフォルトの名無しさん (ワッチョイ 4ed3-9jjH) [sage] 2018/04/20(金) 01:01:44.37 ID:xYBhqDqu0 >>78 Visual Studio .NET プロパティ ブラウザによるコンポーネントの本格的な RAD 化 https://msdn.microsoft.com/ja-jp/library/aa302334.aspx#vsnetpropbrow_topic04 このドロップダウンでできると思う http://mevius.5ch.net/test/read.cgi/tech/1523004019/79
80: デフォルトの名無しさん (ワッチョイ e7d2-B8Oq) [sage] 2018/04/20(金) 05:10:41.06 ID:OZAtcLZg0 初歩的な質問で申し訳ないのですが、 戻り値なしのメソッドと、引数なしのメソッドはどういう状況で使用するのでしょうか? 戻り値なしのメソッドは その後にどこかに代入したりする予定はなく出力が目的の場合に使用すると 読んだのですがその通りですか? 万が一、後で代入したくなった場合に備えて取り敢えず戻り値は設定しておいたりしないのでしょうか? 引数なしのメソッドは 引数がない(=変数宣言がない?)とそのメソッド自体、動いてくれないイメージがあるのですが、実際は動きますよね 何も値を与えられていないのに動くのはどうしてですか? 宜しくお願いします・・・ http://mevius.5ch.net/test/read.cgi/tech/1523004019/80
81: デフォルトの名無しさん (ワッチョイ 1781-5Fj3) [sage] 2018/04/20(金) 05:52:22.55 ID:6mS8vUfV0 >>80 オーバーロードで検索してみると良い http://mevius.5ch.net/test/read.cgi/tech/1523004019/81
82: デフォルトの名無しさん (ワッチョイ e7d2-B8Oq) [sage] 2018/04/20(金) 06:02:00.71 ID:OZAtcLZg0 >>80 例えば int Add(int a, int b) { int c; c = a + b; return c; } というメソッドですと、Add(3, 5)ならaとbにそれぞれ3、5が入りc=8となると思うのですが、 abc = xyz,Add()といった風に使用しても、cの値も何も返ってこないのに、 引数なしのコードを見かける様な・・・ http://mevius.5ch.net/test/read.cgi/tech/1523004019/82
83: デフォルトの名無しさん (ワッチョイ 578a-/Wij) [sage釣] 2018/04/20(金) 06:29:51.46 ID:wjKqEKEv0 >>80 デフォルト引数で統合しなされ http://mevius.5ch.net/test/read.cgi/tech/1523004019/83
84: デフォルトの名無しさん (ワッチョイ 4ee8-9jjH) [sage] 2018/04/20(金) 09:05:47.03 ID:3LwLCVWq0 >>80 メソッドってのは別に数値の計算だけするわけじゃない 何かの処理なので、その処理に引数が必要なら引数を渡すし その処理に結果があるなら戻り値がある http://mevius.5ch.net/test/read.cgi/tech/1523004019/84
85: デフォルトの名無しさん (ワッチョイ 1aa6-wlRc) [sage] 2018/04/20(金) 09:40:55.97 ID:9jg3Q7S00 >>84 横からごめん 処理に結果がないならそれはもう何も処理してないのと同じじゃないの? http://mevius.5ch.net/test/read.cgi/tech/1523004019/85
86: デフォルトの名無しさん (ワッチョイ 4ee8-9jjH) [sage] 2018/04/20(金) 09:50:08.64 ID:3LwLCVWq0 >>85 君がうまい説明してあげてね http://mevius.5ch.net/test/read.cgi/tech/1523004019/86
87: デフォルトの名無しさん (ワッチョイ 1aa6-wlRc) [sage] 2018/04/20(金) 10:06:30.92 ID:9jg3Q7S00 >>86 >>84の説明が間違ってると言いたいんじゃなくて 単純に理解できなかったんだけど誤解させたならごめん とはいえせっかくだから自分なりに説明を考えてみたんだけど プログラムを動かすことが目的じゃなくて人間に読ませてアルゴリズムを 分からせることが目的の場合は最終的な結果は必要ないって感じかな? http://mevius.5ch.net/test/read.cgi/tech/1523004019/87
88: デフォルトの名無しさん (スフッ Sdba-XoVt) [sage] 2018/04/20(金) 11:57:10.77 ID:DKeEixVwd >>80 メソッドは外注さんへの作業手順書みたいなもん 引数は、その作業に必要な情報がある場合に外部から渡すための窓口 情報不要なら省略できる 引数なし=こっちから情報渡さなくても作業できるよね?みたいな感じ メソッド内で作業が完了したあと、なんか返事してほしい場合は戻り値をつかう 返事不要の場合void 戻り値なし=作業さえしてくれたら結果レポートいらね! メソッドコール(外注さんへ仕事依頼)したら作業はちゃんとされるので、結果のレポートを使って、さらになんか作業をしたいなら戻り値よこせよ!って作業手順書に書いておけばいいし、仕事さえしてくれたら、返事不要なら戻り値いらない http://mevius.5ch.net/test/read.cgi/tech/1523004019/88
89: デフォルトの名無しさん (スプッッ Sd5a-BoQL) [sage] 2018/04/20(金) 11:59:20.85 ID:o6RSJKQdd >>80 コントロールにupdateってメソッドがあるだろ? これは自身の再描画をするだけのメソッドなんだから引数を取りようがない また再描画するだけなのに失敗するわけないんだから戻り値もいらない 無理やり成否を返すこともできるが、失敗する可能性があるメソッドに様変わりし、呼び出し元で失敗を意識した実装にしなきゃいけないから負担を強いることになる って感じかな http://mevius.5ch.net/test/read.cgi/tech/1523004019/89
90: デフォルトの名無しさん (オッペケ Sr3b-goBS) [] 2018/04/20(金) 12:23:49.11 ID:9v7e203Yr 引数のとりようも戻り値の返しようもなんぼでもあるわ へんな忖度みたいな真似すんなボケ http://mevius.5ch.net/test/read.cgi/tech/1523004019/90
91: デフォルトの名無しさん (ワッチョイ 1aa6-wlRc) [sage] 2018/04/20(金) 12:38:55.75 ID:9jg3Q7S00 >>88 作業が行われればレポートは要らないというのは例えば殺し屋みたいな? でもコンピューター上でそれを再現するならターゲットもターゲットの生死も0と1のデータなんじゃないの? だとしたらそのデータはどこに消えるの??? >>89 同じようなことばっかり聞いて悪いんだけど再描画の結果も0と1のデータなんじゃないの? それがメモリに残らないのに再描画は成功という意味がわからない >>90 戻り値の返しようがあるというのは返さない選択肢もあるということ??? 戻り値を返さないプログラムに人間に読ませる以上の価値があるとすればそれを教えて欲しい http://mevius.5ch.net/test/read.cgi/tech/1523004019/91
92: デフォルトの名無しさん (ドコグロ MM83-xI9k) [sage] 2018/04/20(金) 12:44:06.99 ID:yZlfbYWOM オブジェクトとは何かね http://mevius.5ch.net/test/read.cgi/tech/1523004019/92
93: デフォルトの名無しさん (ブーイモ MMba-Mp6C) [sage] 2018/04/20(金) 12:52:07.95 ID:wBOVlPyYM >>91 横からで悪いけどたとえ話がおかしいし 言ってることが伝わらない もっとまとめてから書くべき http://mevius.5ch.net/test/read.cgi/tech/1523004019/93
94: デフォルトの名無しさん (アウアウエー Sa52-PKj8) [sage] 2018/04/20(金) 12:58:41.12 ID:luJyaFhBa >>80 まあ、一言でいうと愚問だねw そんなこと考えても時間のムダ。 真面目な話、その疑問はそのまま放置して前に進む方がいいと思う。 http://mevius.5ch.net/test/read.cgi/tech/1523004019/94
95: デフォルトの名無しさん (ワッチョイ 1aa6-wlRc) [sage] 2018/04/20(金) 13:08:12.31 ID:9jg3Q7S00 >>92 オブジェクト指向ってやつか! オブジェクトを使うと結果がない処理にも意味があるってこと? >>93 まとめるなら「結果がない処理の価値がわからない」って感じかなあ >>94 詰め込み教育への皮肉だと思うけど正直分かりにくいかも もし本気で言ってるならさすがに時代遅れだから考え直したほうがいいよ http://mevius.5ch.net/test/read.cgi/tech/1523004019/95
96: デフォルトの名無しさん (アウアウエー Sa52-PKj8) [sage] 2018/04/20(金) 13:26:58.95 ID:luJyaFhBa >>95 経験が足りないために起こる疑問は経験を詰むことでしか解決しない。 構造化プログラミングの意義もOOPの意義も、体感できるのは 実際にコードを自分でコードが書けるようになってから。 本で読んだだけで最初からそれが分かるのは一部の天才だけ。 逆にいえば、>>80の疑問は頭の良い人が考えた難しい理論を理解しないと 解決しないような問題じゃなく、誰でも体験すれば自然と分かる程度の話ってこと http://mevius.5ch.net/test/read.cgi/tech/1523004019/96
97: デフォルトの名無しさん (スプッッ Sd5a-BoQL) [sage] 2018/04/20(金) 13:48:46.74 ID:o6RSJKQdd >>91 0と1?何を言ってるのかわからん 14時に集合ってメール出して、全員からわかったみたいな返信きてもうざいだろ? だから、14時集合(返信不要)ってメールをおくる方が受け取る側も返信しなくていいし、送る側も無駄な受信を減らせるしでwinwin この辺りは経験だったりセンスだろうな http://mevius.5ch.net/test/read.cgi/tech/1523004019/97
98: デフォルトの名無しさん (ワッチョイ 9a06-Mp6C) [sage] 2018/04/20(金) 14:03:32.43 ID:0EVFmTU60 >>95 成否の観点では単にフィールドの値を設定するメソッドを鑑みても メモリに書き込み失敗の概念があっても、代入に失敗の概念はない 設定前の値を返すにしても、わざわざ退避する処理を強制するのか? 想定外の発生は基本的に例外をぶん投げるものだし 常人が気にしない様な事を考えて躓いてそうである http://mevius.5ch.net/test/read.cgi/tech/1523004019/98
99: デフォルトの名無しさん (ワッチョイ 1ad2-1SSC) [sage] 2018/04/20(金) 19:05:49.61 ID:W6WTRmLV0 関数型プログラミングの才能があるな http://mevius.5ch.net/test/read.cgi/tech/1523004019/99
100: デフォルトの名無しさん (ワッチョイ fa27-ZOCN) [sage] 2018/04/20(金) 20:30:59.54 ID:kti4nAgp0 >>95 戻り値がないのは常に「成功」を返す関数と考えて良い C#では失敗した場合は例外を投げるので、成否を戻り値で判定することはない C言語とかgoみたいに例外という概念がない言語は、成功したかどうかが戻り値に入ってることが多い それでも絶対に失敗しないか、失敗したらプログラムが強制終了するような処理は戻り値がない場合もある http://mevius.5ch.net/test/read.cgi/tech/1523004019/100
101: デフォルトの名無しさん (ワッチョイ e717-9jjH) [sage] 2018/04/20(金) 21:05:01.73 ID:Yi5F0BBw0 >C#では失敗した場合は例外を投げるので、成否を戻り値で判定することはない えぇ… http://mevius.5ch.net/test/read.cgi/tech/1523004019/101
102: デフォルトの名無しさん (ワッチョイ 9a7f-fvqh) [] 2018/04/20(金) 21:14:39.58 ID:7WlEIf700 >>100 > C#では失敗した場合は例外を投げるので、成否を戻り値で判定することはない ケースバイケース。何でもかんでも例外にしちゃ駄目。 http://mevius.5ch.net/test/read.cgi/tech/1523004019/102
103: デフォルトの名無しさん (ワッチョイ 1aa6-wlRc) [sage] 2018/04/20(金) 21:42:51.61 ID:9jg3Q7S00 >>96 とりあえず>>94が本気なのとそれが思考停止の詰め込み教育信奉じゃないのは分かったよ 偉そうなこと言ってごめん >>97 自分もちゃんとは理解してないけどコンピューターは0と1だけで動いてるらしい でも初心者用スレで出す話ではなかったと反省 メール送信の例は分かりやすい!と思ったけど本当に結果が何もないと送信済みマークも付かないのでは・・・? >>98-102 詳しい人でも意見が割れるくらい難しい問題なのね >>99は皮肉なんだろうけど意味どころか自分に向けられた言葉なのかも分からないから反応に困る・・・ http://mevius.5ch.net/test/read.cgi/tech/1523004019/103
104: デフォルトの名無しさん (ワッチョイ 9a7f-fvqh) [sage] 2018/04/20(金) 21:52:31.13 ID:7WlEIf700 >>103 元の発言の「結果が無い」って言葉を勘違いしてる。 関数で処理した結果を返り値と言う形で関数の呼び出し元に伝える必要が無いって意味だ。 ちゃんと意味のある結果は発生している。 http://mevius.5ch.net/test/read.cgi/tech/1523004019/104
105: デフォルトの名無しさん (ワッチョイ fa27-ZOCN) [sage] 2018/04/20(金) 22:00:49.23 ID:kti4nAgp0 >>101-102 書き方が変だった C言語やgoと比べて成否を例外で処理することが多いから戻り値がなくても良い場合が多い程度の意味で言った >>103 メール送信の結果は戻り値ではない方法で返しているというだけ C#には例外やイベントのように色々な機構があるから、とりあえず細かいことは気にせず先に進んだ方がいい http://mevius.5ch.net/test/read.cgi/tech/1523004019/105
106: デフォルトの名無しさん (ブーイモ MM26-9jjH) [sage] 2018/04/20(金) 22:22:51.74 ID:UaVetxYYM 関数という言葉に惑わされてるということかな メソッドは数学で言う関数そのものじゃない (y=x+1とかそういうのじゃない) やることを順番に書いてあるもの サブルーチン 戻り値が定義されてたそれを返すだけ ほかの言語で戻り値がないものは関数と区別してる言語もあるけど わざわざ二種類つくるより戻り値なしで共通にしてある http://mevius.5ch.net/test/read.cgi/tech/1523004019/106
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 896 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.319s*