ふらっとC#,C♯,C#(初心者用) Part41at TECH
ふらっとC#,C♯,C#(初心者用) Part41 - 暇つぶし2ch910:デフォルトの名無しさん
09/06/23 13:16:26
>>909
> 知ってて当たり前だった。
の割にはあまり刊行物では取り上げられなかったけどな。

911:デフォルトの名無しさん
09/06/23 13:21:59
>>910
C/C++の入門書ならほぼ間違いなく取り上げてる話題なんだが、どうよ。

912:デフォルトの名無しさん
09/06/23 13:23:56
>>911
悪い、勘違いした。
バイナリの構造って、たとえばPEヘッダとかそういうのだと思った。

913:デフォルトの名無しさん
09/06/23 13:31:43
また話がそれかかってるので燃料投下する。

C#で作ったプログラムで他のモジュールを読み込む場合、
モジュールをサブディレクトリに置いた場合に
アプリケーション設定ファイル(*.exe.config)に
<probing privatePath="libs" />
といった形で検索パスを記入するが、他の方法はどういったものが挙げられるだろうか。
いいところ、悪いところなど教えてくれると助かる。

914:デフォルトの名無しさん
09/06/23 13:52:31
>>913
API

915:デフォルトの名無しさん
09/06/23 14:05:15
URLリンク(www.atmarkit.co.jp)
を踏まえた上での話?

916:デフォルトの名無しさん
09/06/23 15:09:07
確かにPEヘッダは資料が少なくて苦労した

917:デフォルトの名無しさん
09/06/23 15:18:16
そういうのって、Linkers & Loadersが出るまでは、断片的な情報しか
手に入らなかったような気がするけど。

918:デフォルトの名無しさん
09/06/23 17:58:25
漠然とした質問ですが、
アセンブリ情報のGUIDってなんですか?
なんのためにあるんでしょう。

919:デフォルトの名無しさん
09/06/23 18:23:06
厳密名を定義するため

920:デフォルトの名無しさん
09/06/23 18:47:13
private void button1_Click(object sender, EventArgs e)
{
webBrowser1.Url = textBox1.Text;
}

エラー 1 型 'string' を型 'System.Uri' に暗黙的に変換できません。

webBrouserのURLプロパティに文字列を渡したいのですがどうすればできますか?

921:デフォルトの名無しさん
09/06/23 18:49:35
できません

922:デフォルトの名無しさん
09/06/23 18:52:30
string型をUri型に変換するメソッドを使うよ
webBrowser1.Url = New Uri(textBox1.Text);

923:デフォルトの名無しさん
09/06/23 19:01:04
>>919
何さらっと嘘書いてんだっ

924:デフォルトの名無しさん
09/06/23 19:11:56
webBrowser1.Navigateでできました。
かなり前に使ったときは別の方法を取ったのですが…

もうひとつ質問なのですがJaneの板一覧とスレ欄の間にある移動可能な敷居?はなんという名前でしょうか?

925:デフォルトの名無しさん
09/06/23 19:15:12
JaneはWinFormじゃないから同列には論じられないけどな
.NET 2.0のWinFormならSplitContainer

926:デフォルトの名無しさん
09/06/23 19:18:09
>>925
ありがとう

927:デフォルトの名無しさん
09/06/23 23:35:14
3週間経たずに埋まってしまいそうだな

928:デフォルトの名無しさん
09/06/24 00:33:30
LINQでfromが複数ある場合の挙動ってどうなるんでしょう。
情報を調べても見つけれず、実際の動作調べてはみたものの、
状況次第で動作が変わっているようなのでちょっとキモチワルイです。

 var src = { "Hoge", "Hage", "Huge" };
 var dist1 =
   from p in src
   from q in src // pから取得した値以外をqの情報源にすると...
   select new { P=p, Q=q }; // {Hoge,Hage,Huge}x{Hoge,Hage,Huge} 全組み合わせ9通りに展開される
 var dist2 =
   from p in src
   from q in p // pから取得した値をqの情報源にすると...
   select q; // 全pの中の全qの数だけ展開される。つまりH,o,g,e,H,a,g,e,H,u,g,eの12個
        // {H,o,g,e,H,a,g,e,H,u,g,e} x {Hoge,Hage,Huge}の全組み合わせ36通りにはならない

929:デフォルトの名無しさん
09/06/24 00:46:24
それぞれfrom...inの代わりにforeachで列挙してみれば分かると思うよ

930:デフォルトの名無しさん
09/06/24 00:48:02
>>929
あぁ、なるほど、納得です。ありがとうございます。

931:デフォルトの名無しさん
09/06/24 03:31:23
メソッド構文で書くとこう
var r1 = src.SelectMany(_ => src, (p, q) => new { p, q });
var r2 = src.SelectMany(p => p);
こちらのほうが実際の動作イメージはつかみやすいと思う。

932:デフォルトの名無しさん
09/06/24 04:32:33
会社でWindows 2000の縛りがあって
いつまで経っても.NET 3.0~3.5の世界に踏み込めないオレは
Linqなどグッジョブなテクノロジーがうらやましいぜ!

933:デフォルトの名無しさん
09/06/24 05:32:51
こんな時間に起きている人ってプログラマーじゃないよね?
ホビーグラマーだよね?

934:デフォルトの名無しさん
09/06/24 05:33:59
いつも5時に起きて23時に寝ていますよ

935:デフォルトの名無しさん
09/06/24 05:35:48
そんな健康的なプログラマーがいるのか

936:デフォルトの名無しさん
09/06/24 05:39:57
個人事業主ですが

937:デフォルトの名無しさん
09/06/24 05:56:36
>>936
雇ってください。年収200万で何でもします

938:デフォルトの名無しさん
09/06/24 06:02:42
ふらっとC#プログラマ始めました(初心者用) Part1

939:デフォルトの名無しさん
09/06/24 06:28:20
>>937
個人投資家ですが、ほんとうに200万でいいですか?

940:デフォルトの名無しさん
09/06/24 06:34:06
939はC#プログラマ(初心者)兼、個人付きメイドをゲットした。

941:デフォルトの名無しさん
09/06/24 06:36:54
メイド服も着れと言われれば着ます。男ですけど。
子供の時は女の子に間違われていたのでカツラも用意していただければたぶん・・・
プログラミングは最近始めたので余りお役にいは立てません

942:デフォルトの名無しさん
09/06/24 06:43:12
住民税+来年度の予定納税で 250万を超えることになって、
すでに死にかけですよ・・・orz

943:デフォルトの名無しさん
09/06/24 06:45:30
金融から200マン借りてる俺よりマシ

944:デフォルトの名無しさん
09/06/24 07:25:24
クラスは出来るだけ簡略化して多く作った方がいいとよく言われていますが
そうなんですか?

メソッドみたいな短い命令文をクラスにして大量に作るって感じでしょうか?

945:デフォルトの名無しさん
09/06/24 07:32:49
>>944
そうではなく、情報同士の依存性をなるべく減らすべき、ということ。
そして情報同士の関係性を形作る設計は、デザインパターンと呼ばれてカタログ化されている。

もっとも、.NET クラスライブラリみたいな巨大なツールセットが最初からあるから、
そもそもそのような複雑なことを考えるまでも無くかなりのことができてしまうわけだが。

946:デフォルトの名無しさん
09/06/24 11:31:18
>>944
問題は大きさとか数じゃなくて、ちゃん整理されているかどうかだよ。
どちらかと言えば簡略化すべきはクラスじゃなくてメソッドだな。
単純で確実に動くメソッドは再利用もしやすい。

947:デフォルトの名無しさん
09/06/24 11:42:44
Linqについてうまいことまとまってるサイトや書籍はないですか?
概論や入門レベルの情報はたくさん見つかるんですが、応用というか
「こういう事もできますよ」といった感じの

948:デフォルトの名無しさん
09/06/24 11:43:38
>>945
>>946
なんか奥が深そうですね

話は変わるけどプログラムする人は頭良さそうだけど
よくテレビでやってる能力テスト(知識を必要とするクイズとかじゃなくて)などはいい点取れるの?
関連のある図形を選びなさいとかの問題だとすぐ解けそうだね

949:デフォルトの名無しさん
09/06/24 11:48:16
気のせいだ

950:デフォルトの名無しさん
09/06/24 11:57:53
昔IBMのプログラマー適性検査みたいなの受けたが
まさにその図形を選んだりする、子供の時やった知能テストみたいなやつだったな。

951:デフォルトの名無しさん
09/06/24 12:10:54
すいませんC#で作ったソフトは、別途ランタイムが必要ですか?

952:デフォルトの名無しさん
09/06/24 12:18:43
>>951
いるいる

VISTA以降ならいらない

953:デフォルトの名無しさん
09/06/24 12:28:46
将来
.NetFrameWork6.7b以降が必要
なんてプログラムがでてきても

Vistaなら・・・Vistaならなんとかしてくれる!

954:デフォルトの名無しさん
09/06/24 12:30:05
>>952-953
ご丁寧にありがとうございます
Cの勉強で頑張ってみたいと思います

955:デフォルトの名無しさん
09/06/24 12:30:24
byte[] data=new byte[5000];
BitConverter.ToInt16(data,0);
これでバイナリデータを数値に変換できたんですけど

data[6]~data[7]
だけを数値にしたい場合良い方法はないでしょうか?

必要なだけ空の配列に代入しながらするのは大変なのです
こんな感じでかなりの数があるので
data[8]~data[10]
data[200]~data[204]
data[1200]~data[1204]

今はこんな感じで代入してます
num[0] = data[0x80];
num[1] = data[0x81];

956:デフォルトの名無しさん
09/06/24 12:32:54
>>955
同じような処理は関数化すればいいでそ

957:デフォルトの名無しさん
09/06/24 12:35:22
BitConverter.ToInt16(data, 6);
BitConverter.ToInt16(data, 8);
BitConverter.ToInt16(data, 200);
BitConverter.ToInt16(data, 1200);


958:デフォルトの名無しさん
09/06/24 12:36:17
Bufferクラス

959:デフォルトの名無しさん
09/06/24 12:36:23
>>952
ウソ言うなやボケ。
XPであっても、VISTAであっても、7であってもランタイムは必要。
VISTAには2.0と3.0のランタイムがすでに入っているが1.1や3.5,4.0のランタイムは含まれていないので
別途インストールしないとだめ。

960:デフォルトの名無しさん
09/06/24 12:41:53
>>956
private byte[] byteSpliter(byte[] data, int startIdx , int length)

なるほど、こんな感じかな?

>>957
これでいけましたw
それ以降全部数字に変換されると思ってました

ありがとうございます

961:デフォルトの名無しさん
09/06/24 13:02:51
職業プログラマーの適性は協調性があること、
コミュニケーションができること。

あとは腰痛などの持病がないこと。

962:デフォルトの名無しさん
09/06/24 13:05:26
プログラマは協調性が無く、女にモテなさそうだから就職しなかった

963:デフォルトの名無しさん
09/06/24 13:11:25
職業の性質上、元々問題がある奴が多いからそんな当たり前のことが言われてるだけだろ

964:デフォルトの名無しさん
09/06/24 13:15:02
未経験でプログラミングのお仕事がやりたいんですけどどのスレで助言を頂けますか?

965:デフォルトの名無しさん
09/06/24 13:15:30
助言を与える服がない

966:デフォルトの名無しさん
09/06/24 14:04:14
うちはプログラマの1/4はバイトからスタート。
2年ぐらいやってもらって見込みがあれば社員にスカウト。
あとの3/4は新卒か転職組。
いきなり未経験でプログラマーの正社員は無理じゃね?

967:デフォルトの名無しさん
09/06/24 14:07:24
マ板でやれ

968:デフォルトの名無しさん
09/06/24 14:07:53
バイトでよければ情報誌にいろいろ出てる
うちも求人出してるし

969:デフォルトの名無しさん
09/06/24 14:10:05
板違い

970:デフォルトの名無しさん
09/06/24 14:20:12
スカウトとか言ってる企業はブラック間違いなし。

971:デフォルトの名無しさん
09/06/24 14:42:49
35でプログラマ目指している俺がきましたよ

972:デフォルトの名無しさん
09/06/24 14:47:00
帰れ

973:デフォルトの名無しさん
09/06/24 16:35:18
ifを使って変数を比較したら何クロックぐらいですか?

974:デフォルトの名無しさん
09/06/24 16:38:05
>>973
ケースバイケース

975:973
09/06/24 16:44:53
変数の型によって等の条件によって違ってくるような気がしますが
平均的にはいくつぐらいになるのでしょうか 数十くらいですか?


976:デフォルトの名無しさん
09/06/24 16:45:03
>>973はツンデレ保守わかる

977:デフォルトの名無しさん
09/06/24 16:45:04
知らないなら黙っててください

978:デフォルトの名無しさん
09/06/24 16:46:34
CPUのクロックを測定するスレがあるからそっちで聞いてみたら?
昔と違って並列で動作したり、C#レベルだとJITでの最適化などで
単純に測定できないことが分かると思うから。

979:973
09/06/24 16:48:24
>>978
そうしてみます。
ありがとうございます。

980:デフォルトの名無しさん
09/06/24 16:50:21
>>975
本気で聞いているの?
全体集合(比較可能な型の全ての集合)もわからないのに,平均ってなんぞい?

正確なクロック数はわからないけど,Step by Stepの利いていないCPUでWindows環境なら
数百万回くらい比較を行うループの実行時間とQueryPerformaceFrequencyからクロック時間が割り出せそう
もちろんスレッドのコンテキストスイッチなど目にも留まらぬ速さの場合

981:973
09/06/24 17:05:22
本気で聞いています。
厳密なクロック数が知りたい訳ではなく
数十なのか、数百なのか、数千なのか、
そのぐらいのレベルで知りたいんですが。

982:デフォルトの名無しさん
09/06/24 17:10:49
980の言うように回数こなして実測が一番現実的だと思うがね。

CPUの命令レベルだったらだったら0~2クロック。
分岐予測を失敗したらストールで数十クロックとか。意味ないっしょ。
cmp EAX, EBX
jne   LABEL1

それからJITで特定の方向にしか分岐しないなら分岐命令自体が削除されることもある。

983:973
09/06/24 17:13:18
すいません。
ありがとうございました。

984:デフォルトの名無しさん
09/06/24 17:13:54
>>981
今のCPUはパイプラインだし多重キャッシュだし投機だし、正確に計るのは無理というか、
前提条件が足りなさすぎ。
とりあえずコードが最適化されてて変数の内容が32bit以下の整数値なら
レジスタに入ってるはずだからifは単純にCMP reg,reg、JE xxxxあたりに置き換えられて
合計で1.0クロック。
スレッドの遷移はifの数百倍以上のコストがかかるから外部から調べるのは困難。

詳しいことは、ここにCPUのマニュアルがあるから嫁。
INSTRUCTION LATENCY AND THROUGHPUTのところ
URLリンク(www.intel.com)

985:デフォルトの名無しさん
09/06/24 17:24:53
誰か実際にやってみれ
1億回ぐらいループ回して平均
該当部分の逆汗も頼むぜ

986:デフォルトの名無しさん
09/06/24 17:28:07
なんか難しい話してるね
俺からしたら宇宙語だわ

987:デフォルトの名無しさん
09/06/24 17:28:53
初心者スレでやるこっちゃないわな

988:デフォルトの名無しさん
09/06/24 17:29:14
>>985
言い出しっぺの法則

989:デフォルトの名無しさん
09/06/24 17:29:49
誰か次スレ立ててくれ
うちはずっと規制中で手も足も出ん

990:デフォルトの名無しさん
09/06/24 17:31:12
[>>1]>>980を踏んだ人は新スレを建てて下さい。

C#, C♯, C#相談室 Part53
スレリンク(tech板)
WPF(XAML,XBAP,.NET3.5)GUIプログラミング Part4
スレリンク(tech板)

991:デフォルトの名無しさん
09/06/24 17:41:47
構造って作った後から重複をまとめて基本クラスにするのを繰り返すのが普通なんですか?
それとも最初から基本クラスから考えて派生を作っていくんですか?
最低でも書く前にこれはベースにまとめていくのがいいと思って構造を作っていって、出来あがってからコード化するのが限界だと思うんですが
最初からベースクラスから考えられる人っているんですか?いるとしたら日本語から英語を勉強した人が頭で考えるのが英語になるぐらいすごいんですが

992:デフォルトの名無しさん
09/06/24 17:55:24
いや基本的にそういう継承の使い方は間違い

993:デフォルトの名無しさん
09/06/24 18:12:14
>>991
3行目から下、いらないと思うぞ。何が聞きたいのかポイントがボケる。

最初から継承ありきで考えるのは、大抵の場合、間違いのもと。

994:デフォルトの名無しさん
09/06/24 18:18:31
ある機能が重複するなら、その機能をクラスに括り出してそのクラスのインスタンスをそれぞれが持つようにする。継承は不要。
最近は継承よりもそういうやり方の方が良いとされてる。

995:デフォルトの名無しさん
09/06/24 18:26:20
基本的には同じ動作だけど、個性を持たせたいとか
オセロ作るときに初級AI、中級AIのために必要だなって思ったよ
でも、継承しなくてもできることはできるんだよねー
このときは継承じゃなきゃだめだってのがよくわからない

996:デフォルトの名無しさん
09/06/24 18:29:22
単純に同じ配列、リストに入れたいときくらいかなあ

997:デフォルトの名無しさん
09/06/24 18:35:47
つinterface

998:デフォルトの名無しさん
09/06/24 18:37:45
うめ

999:デフォルトの名無しさん
09/06/24 18:38:59
ポリモルフィズム使いたいときだけだな
実装の継承はまさに>>991のような難しさがあるから避けられる
そりゃControlみたいに完璧な設計ができるというならやればいい

1000:デフォルトの名無しさん
09/06/24 18:39:36
継承は最後の手段って、あれは誰の言葉だっけ。マーティンファウラー?

1001:1001
Over 1000 Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。


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