すげえぜC#
■ このスレッドは過去ログ倉庫に格納されています
0001教えて君@2ch
NGNG0002デフォルトの名無しさん
NGNG×C#
0004デフォルトの名無しさん
NGNGとりあえずWindowsでは標準的な言語になるだろうね。
0005デフォルトの名無しさん
NGNGさすがに、海外ではそれは(藁
0006デフォルトの名無しさん
NGNG0007デフォルトの名無しさん
NGNG0008お腹すいた
NGNG0009デフォルトの名無しさん
NGNG0011デフォルトの名無しさん
NGNG9はMSしかしりません。
0012デフォルトの名無しさん
NGNG設計者がDelphiと同じだもんな。
0013デフォルトの名無しさん
NGNG恥
0014和風
NGNG0015デフォルトの名無しさん
NGNG0016デフォルトの名無しさん
NGNG藁タ
0017名無しさん@お腹いっぱい。
NGNG画期的まではいかないが、まっとうなモンだと思う。
注意深いプログラマーにとっては無用かも知れんが、
注意深いプログラマーというのは、(定義上)存在しない。
0018デフォルトの名無しさん
NGNG0019デフォルトの名無しさん
NGNG0020名無しの笛の踊り
NGNGMSが言うことは話半分に聞いておかないと。
ただ言語仕様を見る限りでは、かなりイケてると思う。
0021デフォルトの名無しさん
NGNG実装はゴミという事は多々ある(多分初期バージョンでは
バグの嵐の可能性あり)ので、まあとりあえず使える程度
にはなっといて、後は様子見のつもりっす。
0022デフォルトの名無しさん
NGNG0023デフォルトの名無しさん
NGNGそれとも次は「も〜っと!C」か?
0024デフォルトの名無しさん
NGNG0025デフォルトの名無しさん
NGNGどれみちゃんかい?おじさんもみてるぞ。ドゥフフフフフ。
0026デフォルトの名無しさん
NGNGワラタ
0027デフォルトの名無しさん
NGNG0028デフォルトの名無しさん
NGNG今更ナニを言っとるのかね、キミわ。
0029デフォルトの名無しさん
NGNGなんかすっげー嫌な笑いなんですけど。
0030デフォルトの名無しさん
NGNGはー、そーゆーことだったんだ…
知らんかった。ちょっと鬱。
0031デフォルトの名無しさん
NGNGうっそー。
Java って、 C-- のようなものって、よく言われるけど、
C# 式でいうと、
Java は、 C♭ ですな。
0032デフォルトの名無しさん
NGNG0033デフォルトの名無しさん
NGNG0034デフォルトの名無しさん
NGNG(数学関係にゃ必要だと思ー)
イベントハンドらの追加を+=演算子でやるのは勘弁してくだちい。
0035デフォルトの名無しさん
NGNGわかりやすくて良いんじゃない?
0036デフォルトの名無しさん
NGNG003734じゃないけど
NGNG一番はもちろんC++の「<<」ね
0038デフォルトの名無しさん
NGNGいただきー!
0039無しさん
NGNGコンパイラベンダがやってることなんで、別にかまわんよ。
まあオレ的には
Button.AddOnClick(new EventHandler(buttonNoget_click));
を
Button.Click += new EventHandler(buttonNoget_click);
みたいに全部変更しなきゃいかんかったのがツラかったよ。
(昔のバージョンで実用アプリ作ってたから)
0040デフォルトの名無しさん
NGNG0041デフォルトの名無しさん
NGNG0042デフォルトの名無しさん
NGNGえ?ドットネットフレームワーク!?
こりゃまたでかいランタイムやなー!!
0043デフォルトの名無しさん
NGNG作れるようだが、セキュリティ上通信は一切できないように見える。
ただし、10KBのデータ保存ができるように見える。
ワタクシの英語力はクソなので
誰かヘルプ読んで追試してください。
0044デフォルトの名無しさん
NGNGベンダが率先して演算子オーバーロードの妙な使い方すると、
ヘボい連中がそれを真似するんだよぅ(涙)
0045デフォルトの名無しさん
NGNGごめんなさい、言ってる意味がよくわからならないっす。
今のJavaと基本的には同じってこと?
0047デフォルトの名無しさん
NGNG何が悪い例なんだか良く分からん。
何の問題も無いと思うが。
0048デフォルトの名無しさん
NGNG+=は直感的にわかりやすくないか?
俺はまさに+=だと思って感心したよ。
0049デフォルトの名無しさん
NGNGキミあっち行って下さい。
0050デフォルトの名無しさん
NGNG0051デフォルトの名無しさん
NGNGA labeled statement permits a statement to be prefixed by a label, and goto statements can be used to transfer control to a labeled statement.
The example
using System;
class Test
{
static void Main() {
goto H;
W: Console.WriteLine("world");
return;
H: Console.Write("Hello, ");
goto W;
}
}
0052デフォルトの名無しさん
NGNGgotoはほとんどの場合悪だが、深いネストから脱出する時に
使うのは効果的、とストラウストラップ大先生がのたまって
おられました。
0053デフォルトの名無しさん
NGNGうんそうだね。ただサンプルをああ書くそのセンスが、かなりいけてると思った。
0055デフォルトの名無しさん
NGNGたぶん、演算子のオーバーロード自体が駄目ということなんだろう。
JAVAで何故それがなくなったかわかってない!といいだげだぞ。
まあ、C#はJAVAよりもC++よりってことなのかね。
0056デフォルトの名無しさん
NGNG現在の実装だと、そのイベントハンドラーが 2回呼ばれる
ようです。これが仕様なのか、製品版で重複した設定は
無視されるようになるのかは、分かりませんが。
まぁ仕様にしてもバグにしても += じゃなくて、
Button.AddOnClick(...) とか Button.Click.AddHandler(...) とか
いう感じでやっても、動作がどうなるかが、直感的でないのは一緒だね。
個人的には、AddHandler とか AddOnClick とかいたずらに method を
増やすより、すっきりしてていいと思うのだが。
0057トリッキーの1
NGNGレスサンクスです。AddHandler()という名称にせずに、
SetHandler()みたいな形にすれば直感的に重複を許さないと思うけど、
重複させたい場合とかもあるのかなぁ……?
気が向いたらC#で実際に使ってみます。
>>55
Javaで演算子のオーバーロードがないのは、やはりfriendが必要になるから?
あくまで個人的な意見だけど、operator定義は正しく使えばかなり有用だと思います。
文字列の比較が==で「エラーは出ないが正しく比較できない」のは、どうかと思いますね。
そのくせJavaではStringになぜか+が定義されているんだよね。実にナンセンス。
0058デフォルトの名無しさん
NGNGSetHandler というのは、ダメです。というのも、複数の異なる
イベントハンドラーを設定することができるというのは、はっきり
と書いてある仕様ですから。
button.Click += new System.EventHandler(button_ClickA);
button.Click += new System.EventHandler(button_ClickB);
てな感じで、ひとつのイベントに複数のハンドラーを設定できます。
しかし、確かに同じハンドラーがひとつのイベントに際して複数回
呼ばれる必要があるという事態は考えにくい。あるのかな?
0059トリッキーの1
NGNGなるほど。仕様から来ている+=だったんですね。
AddHandlerがあるなら+=がそれに値するということはそれほどはずれていないと思うけど、
何にせよちょっとやりすぎかな。+とか=とかは全く別の定義だろうし。
色々情報サンクスです。ハンドラが複数回呼ばれると便利な状況はあると思いますよ。
0060デフォルトの名無しさん
NGNGttp://dennou.gihyo.co.jp/books/cnet/faq.html
0061デフォルトの名無しさん
NGNG覚えることが少ないから楽チン。
0062サンプリング@
NGNG0063デフォルトの名無しさん
NGNG雑誌の付録にもついてるし。
ベータ版なんで、業務用マシンには入れるなと書いてあったので
ずっと実験用マシンで使ってたが、安定してるようなので、先日
ついに常用のマシンに入れてしまった。
VS.NET のベータ版も雑誌の付録のハガキ送ったら来たよ。
0064厨房
NGNGJavaだとJREが普及していないせいもあって(GUI絡むと重いし)client-sideに広まらなかったけれど、
.NETは今後のWinodozeには組み込まれそうな気がするのでかなり普及しそうな気がする。
0066デフォルトの名無しさん
NGNG薄っぺらい、「C#入門」しかないのかな。
0067void
NGNG現在の Windows の分散オブジェクト環境も、本当に
ユーザーのためになってるとは思えない。Windows が
COMとかなくても(なかったら、ちょっと寂しいけど)、
単なる統一された32ビットAPIの GUI環境であっても、
充分使い物になってたと思う。いまの分散オブジェクト
環境は、too much だよ。IEのコンポーネントを使った
ブラウザーが続々作られるなんて、他の環境ではちょっと
考えられない。不必要なほどに複雑だからバグも多いし。
で、今度は、仮想マシンときた。もちろん すごく先進的と
いうわけではない。Javaっていうのもすでにあるし。
99%の現在の “パソコン”ユーザーにとって、Windowsの
上で仮想マシンを走らせる意義ってないし、そもそも
ユーザーにとってはそういう理屈は関係ない。
いずれ、現在のPCから離れた環境が主戦場になるというのは
まぁ自明だけど、そのための主導権の確立の手筈を今の PC上で
なんとかしとこうというのは、なんかやりきれない感じだ。
Windows NTもひところは、PowerPC,MIPS,x86,Alpha と4種類
のCPUサポートしてたし(これも今から考えると too much)。
ビルって、将来のための保険を一般のユーザーを巻き込んで
かけてるんだな。ついて行く開発者も大変。こういうの嫌で
Linux とかにゆく開発者もいるよね。(Linux とかの方面が
技術的に大変じゃないと言ってるわけではないよ。ただ、
MSについていく果ての無さの感覚はないよね。なんかもっと
着実にやれそうな感じだよね)
MSのアメリカでやる PDC に参加すると、なんかこう遠い遠い
所まで来てしまったなと思うよね。
0068デフォルトの名無しさん
NGNG実装を切り離すことで、プラグアンドプレイなソフトウェア環境を
作り上げることに成功したんですから。
それがToo MuchだというのならWindowsに限らず、現在の分散オブジェ
クト技術全部がToo Muchということになってしまいそうな気がするん
ですけど。
0069デフォルトの名無しさん
NGNG0070void
NGNG駄目だとは思ってないよ。COMの全面的な採用によって
得られた世界は、なによりワクワクするものを含んでるし、
開発効率から見た生産性の向上も多分あったはず。
で、メリット・デメリットがあったと思うけど、その
新技術のメリット・デメリットを圧倒的なシェアを背景に
一般ユーザを巻き込んで、ビジネス的に独走しながら、
まとめて引き受けてるというのが、なんかスゴイな
と思った次第。
Linux なんかより(ごめん他意はない。突っ込まれても
しょうがないが、それには対応しないよ)ある意味はるか
に挑戦的なことやってるよね、MSって。
007168
NGNGこれでもか、というくらいに提供したからですね。
# VB、VC++, Excel、Word、Access、ASP...
そういうところでは独自技術の強みがありますね。
ただ、とりあえず市場に出すことが優先されて品質が二の次とか、
標準技術を軽視するところが嫌われるところではありますね。
0072デフォルトの名無しさん
NGNG0073デフォルトの名無しさん
NGNGIEコンポーネントプラウザを作ったり使ったりしてないという話。
まあ、存在してるから、使うことはあるだろうけど、それが
IEコンポーネントを使った COMによる分散オブジェクト技術で
成り立ってるなんてことは、意識しないだろう。
で、便利なもんなら、COMでなくても、ソースコードをパクってきて
作ったものでも、適当なライブラリーを従来の方法でスタティックか
ダイナミックにリンクして作ったものでも、使うだろう。
一言でいうと、一般ユーザーが求める道具としてのパソコンに
現在の Windows が提供している分散オブジェクト環境は too much
だということだよ。
おれは、COMも .NET もありがたく、楽しく使うけどね。
007468
NGNGアクティベーションとか、透過的なドラッグ&ドロップとか。
ExcelやAccessのVBAでちょっとしたプログラムが組めるようになった
のも、COMあってこその話ですよね。
0075デフォルトの名無しさん
NGNG0076デフォルトの名無しさん
NGNG0077デフォルトの名無しさん
NGNG行えるようにするというのもメリットのひとつだと思う。
とくにAMDの64bit CPUはIntelのものと非互換みたいだし。
# C#がCPU依存の型を廃したのは英断でしょう。
MSの自社製品がすべてC#に移行したらまた複数のCPUを
サポートし始めるんじゃない。
0078サンプリング@
NGNG使われていないような気がするのですが、いかがお考えですか?やはりCOMは、
ごく普通のプログラマには難しいような気がするのですが。。。
(おっと、へたれPGであることがばれてしまう。アブアブ)
0079デフォルトの名無しさん
NGNGそれは見方がアマイだけじゃないの?
74が上げているような機能なら使用しているアプリは多いし。
(ほんとに小規模なら別。使うまでもない。
もしくはめんどくて付けなかった、などの理由もある。)
COMがプログラマに難しいかどうかは開発環境にもよる。
0080>70
NGNG0081SAGE
NGNGエクスプローラの右クリックメニュー拡張とか。
エディタのテキストをドラッグ&ドロップとか。
ショートカット作成とか。
Iriaみたいに IEに食い込むタイプのソフトとか。
DirectX 使ったゲームとか。
そこら中で見かける気がするけれど。
0082デフォルトの名無しさん
NGNGへみ猫は市ね。
0083知ったか君
NGNGCOMもOOPみたいに小規模ではどうしても煩雑なところばかり
が目立ってしまいますからね。
ただ、オンラインソフトの場合はCOMを使うとどうしてもレジストリを
触ることになるので、ユーザーにあまり好まれないからだと思います。
0084デフォルトの名無しさん
NGNGIEやExcelのコンポーネントを使うような小規模アプリは
いくらでもある。
自分のインターフェイスを提供するようなのは、少ない
と思うけどね。
Iriaみたいに、公開してくれると結構便利なんだけど。
008568=74
NGNGただインプレースアクティベーションとか構造化ストレージとかのコンテナや
コンポーネントを実装するのは結構大変ですね。
>ただ、オンラインソフトの場合はCOMを使うとどうしてもレジストリを
>触ることになるので、ユーザーにあまり好まれないからだと思います。
確かにレジストリが汚くなるのはやっかいですね。登録情報はどこかに
持たなくてはいけないので、レジストリを使うこと自体は問題ないと思う
のですが...
0086デフォルトの名無しさん
NGNG0087デフォルトの名無しさん
NGNGシステムグローバルには使えないし。
痛し痒しってとこだね。
0088デフォルトの名無しさん
NGNGってマジすごい。「COMってやりすぎじゃないの」というこのスレの
途中で出てきた議論に対して、正面から答えてる。
とりあえず、脱帽だぜ。
っつうことで、age ね。
0089デフォルトの名無しさん
NGNGつーか常識。その上で、マニアックすぎないかって言う議論だったんでしょ。
ま、プログラマにとっちゃ魅力的だけどね。
0090金持ち名無しさん、貧乏名無しさん
NGNG日付から見て、このスレにインスパイアされた可能性もあるよ。
■ このスレッドは過去ログ倉庫に格納されています