[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 04/13 15:36 / Filesize : 249 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

ふらっとC#,C♯,C#(初心者用) Part44



1 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 14:57:21 ]
このスレッドは
「どんなにくだらないC#プログラミングに関する発言でも誰かが優しくレスをしてくれるスレッド」です。
ほかのスレッドでは恐ろしくて書き込めないような低レベル、もしくは質問者自身なんだか意味がよく分からない質問など、
勇気をもって書き込んでください。
内容に応じて、他スレ・他板へ行くことを勧められる、あるいは誘導される場合がありますがご了承下さい。

>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。

前スレ
ふらっとC#,C♯,C#(初心者用) Part43
pc12.2ch.net/test/read.cgi/tech/1248573707/

2 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 14:58:19 ]
-----関連スレ

C#, C♯, C#相談室 Part54
pc12.2ch.net/test/read.cgi/tech/1250911923/

WPF(XAML,XBAP,.NET3.5)GUIプログラミング Part4
pc12.2ch.net/test/read.cgi/tech/1245384489/

----参考サイト

www.google.co.jp/
msdn.microsoft.com/ja-jp/library/default.aspx
homepage3.nifty.com/midori_no_bike/CS/
www.atmarkit.co.jp/fdotnet/dotnettips/index/index.html
dobon.net/vb/dotnet/
jeanne.wankuma.com/tips/
www.labasp.net/CsharpNote/

3 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 15:39:52 ]
>>1


4 名前:デフォルトの名無しさん [2009/08/28(金) 15:51:24 ]
tryとcatch、
どういう背景でこのような呼び方をするのですか?
エラー、ノットエラーみたいな呼び方でいいのに…。

5 名前:デフォルトの名無しさん [2009/08/28(金) 15:55:41 ]
データセットに溜め込まれたの内容を、CSVテキストに書き出すにはどうすればよいでしょうか。
リストボックスの内容を書き出す方法は、本に書いていましたが…。

6 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 16:10:40 ]
>>4 おれも日本語で
監視


確保


ーがいいと思う

7 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 16:11:50 ]
>>5
なんて本?

8 名前:デフォルトの名無しさん [2009/08/28(金) 17:17:07 ]
>>7
うちの、
秀和かソシム?の逆引き向けの本です。
今、歯医者にいますので、うちに着いたら正式なタイトルを書きます。


9 名前:デフォルトの名無しさん [2009/08/28(金) 18:11:16 ]
今から覚えるなら、C♯のWindowsフォーム、C♯のWPFアプリケーション、java、パワービルダーのどれがいいですか?

10 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 18:32:56 ]
初心者向けの日本語情報が沢山あるWinFormsにしとけ
WPFは必要性を感じるまでやんなくていい



11 名前:デフォルトの名無しさん [2009/08/28(金) 18:55:55 ]
デリゲートって、一体、どういう必要性があるときに使用するの?
本屋のC♯の本を全て見たけど、どれも内容だけ書いていて、メリットや用途について書いていなかったです。
教えてください(>_<)。

12 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 19:06:37 ]
普通知らないうちに使ってるよ。


13 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 19:13:54 ]
デリゲートを使うと「関数を引数に取る関数」を作ることができます。
慣れないうちは意識して明示的に使うことは無いかもしれませんが,
イベントやLINQの裏方として多用されています。

14 名前:デフォルトの名無しさん [2009/08/28(金) 19:20:50 ]
>>13
自分でコーディングしたことないけど使ってるの?
もしかして別のクラスにコード記述がなされてるの?

15 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 19:33:56 ]
たとえば,Form1のbutton1をダブルクリックすると,Form1.Designer.csにこんな行が作られる。
button1.Click += new EventHandler(button1_Click);
これがまさしくデリゲート。EventHandlerデリゲートのオブジェクトを作って
button1.Clickイベントに渡している。

16 名前:デフォルトの名無しさん [2009/08/28(金) 20:08:36 ]
>>15
ありがとうo(^-^)o。
僕たちが直にコーディングするときもあるの?

17 名前:デフォルトの名無しさん [2009/08/28(金) 20:10:28 ]
>>10
javaとC♯ではどちらがお勧め?

18 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 20:22:22 ]
あーみんな死んじゃえ

19 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 20:24:56 ]
>>16
イベントハンドラを手で登録することはよくある。
明示的な「関数を引数に取る関数」の例は,list.RemoveAll(x => x.IsHoge) みたいなのがある。
x => x.IsHoge という関数をRemoveAllの引数に渡してるわけ。これにもデリゲートが使われてる。

>>17
Windows限定なら断然C#

20 名前:デフォルトの名無しさん [2009/08/28(金) 20:27:56 ]
>>19
…どういうときに…意識的にデリゲートを使うのだろうか…。
おいおい分かってくるのだろうか…。



21 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 20:44:34 ]
処理を差し替えたいときに使うんだよ
void Hoge(Action<Foo> 差し替え可能な処理) {
var foo = 共通の前処理();
差し替え可能な処理(foo);
共通の後処理(foo);
}
みたいな

22 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 20:45:57 ]
初心者にラムダ式見せて無用に混乱させるラムダ厨

23 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 21:04:04 ]
たとえば、客に料理を出してもてなすクラスを考える
class Host
{
public delegate Meal MakeMealDelegate();
public MakeMealDelegate MakeMeal;
void Serve(Guest guest)//客をもてなす
{
Meal meal = MakeMeal(); //料理を作る。
Cater(guest, meal); //料理を客に出す。
}
}
ここで、3つの料理法があったとする。
Meal MakeItalian(){.......}
Meal MakeFrench(){......}
Meal MakeJapanese(){......}
すると、
Host host = new Host();
host.MakeMeal = MakeFrench; //フランス料理でもてなす。
//host.MakeMeal = MakeItalian;//イタリア料理でもてなす。
//host.MakeMeal = MakeIJapanese;//日本料理でもてなす。
host.Serve(guest);
というように、delegateを使うと、どの料理方法を使って料理を
作るかをHostに対して指定できるようになる。



24 名前:デフォルトの名無しさん [2009/08/28(金) 21:08:50 ]
>>23
あなた素晴らしい人だよ。
一緒に仕事したい。

25 名前:デフォルトの名無しさん [2009/08/28(金) 21:19:05 ]
入金管理システムを作りたいと思います。
日付入力欄がたくさん必要ですが、
いろんな入力パターンに対しても受け入れたいと考えています。
例えば2009年9月1日ならば、

20090901
090901
0901
2009.09.01
2009.09.1
2009.9.01
2009.9.1
09.09.01
09.09.1
09.9.01
09.9.1
9.09.01
9.09.1
9.9.01
9.9.1
9.1

(.がスラッシュのときも同様に認識)

H210901
H21.09.01
H21.09.1
H21.9.01
H21.9.1
(.がスラッシュのときも同様に認識)

このとき、一般的にどのような仕組みが作られているのでしょうか?

26 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 21:21:47 ]
カレンダー系のコントロールで入力させる

27 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 21:23:08 ]
あんまりいい例じゃないと思うけどねw

少なくとも俺が>>23的なデリゲートの使い方があまり好きになれない理由の一つは、
>23の例で言えば、例えば「今どの料理を出すモードか?」を表すプロパティが
必要になったときスマートにいかないからだね。

恐らくほとんどのプログラマは認めないと思うが、
こんな場合は泥臭くてもswitchで分岐した方が結局分かりやすいように思える。

そういう必要がない純粋なディスパッチャーを記述する場合にはデリゲートで
いいと思うんだけど。

28 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 21:27:01 ]
>>25 正規表現

29 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 21:45:31 ]
いや、わかりやすさ、うんぬんの話ではなくて、
Hostクラスに料理に関してどれほどの自由度を与えるか、の問題だね。
イタリア料理、日本料理、フランス料理の調理能力をHostに与えたとして、
いざ、中華をださなきゃならんというときに、Hostクラスをいじくらなきゃならなくなる。
それならいっそのこと最初からdelegeteの形で外部から料理人を雇ってしまおう、
という発想だね。



30 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 22:00:00 ]
>>29
言いたいことは分かるけど、
それならComparison<T>の使われ方みたいな例を挙げた方がよかったんじゃないのかな。

現実問題、>>23みたいな話でそれほどの柔軟性が必要性な例はあまりないと思う。



31 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 22:19:34 ]
どっからかBuilderパターンの説明文をコピペしてきて
デリゲートに書き換えただけのような感じがする

32 名前:デフォルトの名無しさん [2009/08/28(金) 22:43:10 ]
>>28
正規表現って何?

33 名前:デフォルトの名無しさん [2009/08/28(金) 22:53:57 ]
正規表現…これは日付取得の方法として常識なんだろうか。

34 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 23:01:55 ]
パターン化可能な文字列に対するマッチングが正規表現であって別に日付に限らないよ

35 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 23:15:46 ]
いずれにせよ面倒くさいコーディングになるな

36 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 23:22:25 ]
そんな所で頭使う前に、決め打ちで完成させてから考えることだな。


37 名前:デフォルトの名無しさん mailto:sage [2009/08/28(金) 23:35:35 ]
君はもう少し頭を使って日本語を書くべきじゃないかと思うんだ

38 名前:デフォルトの名無しさん [2009/08/29(土) 00:16:32 ]
TreeView tv = (TreeView) sender;
というコーディングの、(TreeView)は何を意味しているのですか?


39 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 00:17:42 ]
型だよ!クラスだよ!

40 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 00:20:57 ]
イベントだったらルートクラスにキャストされた参照を元のクラスにキャストしなおしているのでは?



41 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 00:28:52 ]
ラムダ式って何のメリットあるん?

42 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 00:31:41 ]
書きやすい、まぁまぁ見やすい
expression tree にできる

43 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 00:31:57 ]
LINQ使わないならそこまで恩恵ないような

44 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 00:43:10 ]
書くのがdelegateよりも楽。
慣れるとdelegateよりも見るのが楽。

45 名前:デフォルトの名無しさん [2009/08/29(土) 01:07:59 ]
private Color _BorderColor;
[Category("表示")]
[DefaultValue(typeof(Color), "Black")]
[Description("あああ")]
public Color BorderColor
{

というコードの中の、
[・・・]
は何を意味しているのですか?


46 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 01:11:54 ]
属性(メタデータ)

47 名前:デフォルトの名無しさん [2009/08/29(土) 01:17:43 ]
>>46
属性…どういうときに使うの?
本に書いていないんです(+_+)。

48 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 01:19:49 ]
例えば45の場合はそれらのメタデータ読み取ってVSがフォームデザインする時に使っている

49 名前:デフォルトの名無しさん [2009/08/29(土) 01:21:05 ]
10進数を36進数に変換し、
0〜Zまでの表示にしたいと思っています。
このような場合、どのようなコーディングが適しているでしょうか。
よろしくお願いします。

50 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 01:24:44 ]
宿題か何かか?



51 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 01:26:24 ]
動いてるコードが適してるコーディングなんだよ馬鹿野郎。
書いてから寝言言えボケカスゴミクズ

52 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 01:27:13 ]
落ち着けって

53 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 01:38:05 ]
宿題は自分でやろうな
どうしても分からない所だけ聞いたらいいよ

54 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 01:40:20 ]
宿題スレなら親切な人が1から10まで教えてくれるよ




たまに罠仕込む奴がいるが

55 名前:デフォルトの名無しさん [2009/08/29(土) 01:48:54 ]
>>51
ところで、あなたは開発経験どれくらいですか?

56 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 01:53:25 ]
親クラスの親クラスがよべない糞言語はここですね

57 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 01:59:24 ]
privateじゃない限り、ダウンキャストすれば呼べるでしょ。
頭悪いのかな

58 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 02:05:41 ]
教科書通りに10進数を36で割って商と余りを云々ってのをやってけばいいんでない?

59 名前:デフォルトの名無しさん [2009/08/29(土) 02:14:39 ]
データセットのデータをテキストに書き出すことはできますか?
データグリッドビューのデータを書き出すのは本に書いていました。

60 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 02:21:19 ]
ぐぐれ



61 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 02:27:10 ]
static string encode32(ulong n)
{
string str = string.Empty;
char[] d = {'0', '1','2','3','4','5','6','7','8','9',
'a','b','b','d','e','f','g','h', 'i','j','k','l','m','n','o','p','q','r','s','t','u','v'};
ulong _base = 32;

do
{
str += d[n % _base];
}
while ((n /= _base) != 0);
char [] strArray = str.ToCharArray();
Array.Reverse( strArray );
return new string( strArray );

}
このサイトのCをC#に焼きなおしてみた。
paranoids.sakura.ne.jp/kaworu/2008-06-14-2.php
ケチのつけどころは多々あるが、そこは適当に直してくれ。
サイトの結果を信じるならば、これであってるはず。

62 名前:デフォルトの名無しさん [2009/08/29(土) 02:38:48 ]
>>61
なるほど。
24進数でも36進数でも応用が効くね。

63 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 02:42:25 ]
先が思いやられるな

64 名前:デフォルトの名無しさん [2009/08/29(土) 02:47:22 ]
>>63
貴殿ならどうやるか示せ。

65 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 02:51:24 ]
わけねーだろ

66 名前:デフォルトの名無しさん [2009/08/29(土) 03:01:59 ]
>>65
もったいぶらないで教えてよ。

67 名前:デフォルトの名無しさん [2009/08/29(土) 03:08:33 ]
皆さんはVS歴どれくらいなんですかね。
私は1ヶ月ですが。

68 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 03:16:01 ]
こいつVSスレにいた荒らしだろ

69 名前:デフォルトの名無しさん [2009/08/29(土) 04:44:08 ]
>>68
つやつやリキッドファンデーションでも塗っとけ。

70 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 09:39:16 ]
Accessのファイルに複数のクライアントアプリから同時に接続できるんですか?



71 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 10:07:59 ]
出来るけど接続多過ぎるとmdb破壊
破壊の目安はぐぐれ

72 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 11:10:46 ]
>>49
>>58で剰余をyield returnしてLSDから順に取りだす。
得られたシーケンスをReverse, Select, ToArrayして、String.Concat

73 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 11:19:49 ]
宿題はC風に書け
でないと先生が読めない

74 名前:デフォルトの名無しさん [2009/08/29(土) 12:16:22 ]
PL1とCOBOLのみの経験者です。
「オブジェクト指向」の意味を本で調べましたが、
何を読んでも、

COBOLなどの「サブルーチン」や「共通ルーチン」に、デザイン上の汎用コントロールを付け加えたもの

という意味を言っているように見えて仕方がないんです。
けどCOBOLはオブジェクト指向ではありませんし…。
オブジェクト指向言語とCOBOLとの決定的なちがいは何でしょうか?

75 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 12:33:57 ]
何を読んだら
> COBOLなどの「サブルーチン」や「共通ルーチン」に、デザイン上の汎用コントロールを付け加えたもの
に見えてしまうんだ?

76 名前:デフォルトの名無しさん [2009/08/29(土) 12:41:23 ]
Panelの外観(Backgroundimage)に画像が追加されたソリューションを友人からもらいました。

しかし、そのBackgroundimageプロパティが「System.Drawing.Bitmap」という汎用的な定義になっており、
かつ、その画像のありかが分かりません。

これは、ソース一式をくれた彼が、画像をリソースに追加せずにローカルPCの画像を
Backgroundimageに表示させていたからこうなったのでしょうか。

同じような経験をお持ちの方、教えていただけないでしょうか。

77 名前:デフォルトの名無しさん [2009/08/29(土) 12:42:56 ]
>>75
結局オブジェクト指向は、
「共通部分をパッケージ化する」みたいな意味合いに見えるんです。
なので、サブルーチンのようなものではないかと…。
けど、それだったら昔からあるCOBOLもオブジェクト指向になってしまいますもんね
(-_-;)。

78 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 13:04:34 ]
オブジェクト指向はゴールじゃなくて「手法」。君が言ってるのは目的の一つ。

79 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 13:05:50 ]
オブジェクト指向というか、クラスの概念は「データとそれを触る処理をパッケージ化する」です。
なのであるデータがどう弄られているかを知りたい時、そのデータが所属するクラス内を見るだけで済みます。
オブジェクト指向言語で無い場合、スコープの範囲で調べる必要がでます。

80 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 13:13:37 ]
>>77
まず「クラスとは何者か?」を理解する。

「オブジェクト指向とは何か」を考えるのはそれからでいい、というより、
君がノイマンみたいな天才でもない限り、いきなり抽象論から理解しようとするのは
無理がある。



81 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 13:26:08 ]
オブジェクト指向は経験的な手法を整理したものだから触ってりゃそのうちわかる

>>76
それ実行したら画像は表示されるの?

82 名前:デフォルトの名無しさん [2009/08/29(土) 13:31:10 ]
>>81
もらった状態でデバッグすると画像は表示されますが、一度、画像「なし」にしたり、他の画像に変えてしまうと、元にもどらなくなってしまうんです。

83 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 13:34:14 ]
VS のバージョンにもよるかも知れないが…resx ファイルの
中にバイナリが Base64 あたりで入ってるかと。

84 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 13:38:41 ]
COBOLみたいにデータを処理する手続きの集まりでプログラムを作るんじゃなくて、
クラスというかオブジェクトが何かをするという、そのオブジェクトの組み合わせでプログラムが動くイメージ。
でもこんな書き方で誤解なく意図が伝わるのは元々ちゃんと理解出来てるやつだけなので意味なし。


85 名前:デフォルトの名無しさん [2009/08/29(土) 13:59:59 ]
>>83
ありがとうございます。
resxファイルの中に、3つのGIFファイルがありました。
これら全てをリソースにインポートしてみましたが、
どのファイルを指定しても、元には戻りません…。

86 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 14:11:33 ]
>>85
何がしたくて何を困ってるのかいまいちよく理解できないが、
とありあえず(手を入れる前の)元のコードのInitializeComponent()の
中のコードはちゃんと見た上で言ってるの?

87 名前:デフォルトの名無しさん [2009/08/29(土) 14:26:26 ]
>>86
元のコードのInitializeComponent()を見ても、
どの画像を引用しているかが記述されていません。
リソースファイルではなく、画像が埋め込まれている…のかもしれませんが、
その埋め込まれている画像をリソースファイルに格納し、他のコントロールでも活用したいんです。

88 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 14:42:44 ]
コードで指示されてない画像が本当に表示されているのなら、
質問はプログラム板じゃなくてオカルト板ですべき。

89 名前:デフォルトの名無しさん [2009/08/29(土) 15:05:00 ]
>>88
うむ。
存在しない画像を読み込むわけがない。
組み込み画像とリソースファイルの区別は俺も全く理解できていないが。
というか難しい。

90 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 15:09:54 ]
複数のユーザーコントロールを作ったんですが、お互いのコントロールクラスの中で使っているインスタンスを使用してそのクラスの関数までを他のユーザーコントロールから実行するにはどうすればいいんですか?
GetMainForm().funk();
のようなことがしたいんです
どうやって親のメインフォームでインスタンスを作ってある複数のユーザーコントロールにアクセスすればいいんですか?




91 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 15:11:41 ]
class UC1{
funk(){
GetMainForm().UC2.funk();
}
}
間違えましたやりたいのはこれです。

92 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 15:20:06 ]
それやっちゃうとユーザーコントロールに分けた意味が無くなるんだよね
ユーザーコントロールのコンストラクタに親のインスタンスを渡したりすればできるけど,
基本的にはそういうことをしなくていいように作るべき

93 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 16:02:50 ]
>>91
どうして、「しなくていいように作るべき」なのかを説明しといたほうがいい。

>>90
ユーザコントロールから他のコントロールの処理を呼び出すというのは、その
コントロールが「閉じていない」という証拠。他のコントロールの仕様を変えた
ときにこっちのコントロールまで影響が出る。
くわしくは「オープンクローズドの原則」という用語をググってくれ。

んで、ダメダメな設計の見本のようなものだから、そもそも設計から見直せ
と言われているわけだ。俺も見直せと、そう思う。

94 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 16:03:21 ]
基本的には、じゃなくて絶対にそうだよw
>>90はプログラミングのセンスなさ過ぎる。

95 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 16:08:27 ]
なんかオープンクローズドの原則ともちょっと違うか。
まあ、設計の見直しが必要ということには変わりない。

96 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 16:12:31 ]
皆、最初は通る道じゃないか。
どこが悪いかだけ書けばいいのであって人格攻撃は問題だと思う。

97 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 16:26:41 ]
>>96
それはない。
もちろん最初からダメな理由に言葉を与えることまではできないと思うが、
それなりに適性がある人間なら、グラフでいう枝がなるべく少なくなるような
コードを書いた方が理解しやすいことは最初から直感的にわかる。

98 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 17:28:00 ]
最初からは分からないだろ普通。
例えばボタンコントロール。
押された時他のクラスのメソッドを呼び出したい
と思っても何の不思議もない。

もちろん直接参照はできないからイベントを使うというように
閉じたままで実現する手法があるわけだが、
ボタンを押したときに他のクラスの処理が呼ばれるという
事実そのものに問題があるわけではない。

そりゃ元質問者がそういったところを理解できるようになるかは分からんが、
今の段階じゃ単に望ましい実現手法や考え方を知らないだけかもしれない。

.NETでのプログラミング歴がそれなりにあったうえでこの質問だと
ちょっと怪しいけどな。


99 名前:デフォルトの名無しさん mailto:sage [2009/08/29(土) 17:35:04 ]
まあVBだと Form1.textBox1.Text = "ABC" みたいなとんでもないコードの方が普通なわけだが

100 名前:デフォルトの名無しさん [2009/08/29(土) 18:19:46 ]
パネルを9枚、ドックで敷き詰めているんだ。
けど、ある一つを最背面にしたら、めちゃくちゃになった。
これってzオーダーって言うんだよね。
皆さんはどうやって直してますか?








[ 続きを読む ] / [ 携帯版 ]

次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<249KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef