5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

C# vs Delphi Round 1

1 :デフォルトの名無しさん:02/05/16 21:05
ヘジとその信者を同時に奪われたDelphiは
やっぱり死滅しちゃいますか?

2 :manko chinko:02/05/16 21:05
>ヘジとその信者を同時に奪われたDelphiは
>やっぱり死滅しちゃいますか?
しません。

3 :デフォルトの名無しさん:02/05/16 21:06
C#とDelphi。
腹違いの兄弟みたいなもんだ。


4 :デフォルトの名無しさん:02/05/16 21:06
>>2
Del厨ハケーン

5 :manko chinko:02/05/16 21:07
>>4
>Del厨ハケーン
Delphiはフリーなバージョンをちょっと触ったことがあるだけです。

6 :デフォルトの名無しさん:02/05/16 21:09
関連スレ

Delphi VS VB.NET
http://pc.2ch.net/test/read.cgi/tech/1020258278/l50

.NET大ブーム2
http://pc.2ch.net/test/read.cgi/tech/1020703159/l50

VBをばかにするな!
http://pc.2ch.net/test/read.cgi/tech/1021038130/l50

7 :デフォルトの名無しさん:02/05/16 21:10
.NET厨、Del厨以外の普通の人は放置願います。
よろしくお願いします。

8 :デフォルトの名無しさん:02/05/16 21:12
>>5
まともな人は一切触りません。

9 :manko chinko:02/05/16 21:14
>>8
>まともな人は一切触りません。
へー

「ということにしたい」ですか:)

10 :デフォルトの名無しさん:02/05/16 21:15
Kusakabeハケーン!!

11 :shige:02/05/16 21:15
>>9
>「ということにしたい」ですか:)

ということにしたいのですね? :)

12 :デフォルトの名無しさん:02/05/16 21:15
栄枯盛衰は世の習い

13 :manko chinko:02/05/16 21:16
>>11
>Kusakabeハケーン!!
それって誰?

14 :manko chinko:02/05/16 21:16
>>11
>>「ということにしたい」ですか:)
>
>ということにしたいのですね? :)

思考停止ですか?

15 :デフォルトの名無しさん:02/05/16 21:16
>>11
>>「ということにしたい」ですか:)

>ということにしたいのですね? :)


ということにしたいのですね? :)


16 :デフォルトの名無しさん:02/05/16 21:18
>>15
>>「ということにしたい」ですか:)

>ということにしたいのですね? :)


>ということにしたいのですね? :)

ということにしたいのですね? :)

17 :デフォルトの名無しさん:02/05/16 21:40
つか round 1 じゃないだろ...
Del厨ってどこでも出てくるし...

18 :デフォルトの名無しさん:02/05/16 21:41
>>17
あなたのようなどこにでも現れるアンチDelには迷惑しています。
C#プログラマより。

19 :デフォルトの名無しさん:02/05/16 21:48
>>18
Del厨は (・∀・)カエレ!!

20 :デフォルトの名無しさん:02/05/16 21:50
>>19の視点

○★%&’”#$%&$%〜|)`@:Del+”▲□’”#$%&$
’”#$%&$$%

21 :デフォルトの名無しさん:02/05/16 21:55
おいおいおいおい(;´Д`)
またDelphiスレかよ...
いいかげん引き際ってのを覚えたほうがいいんじゃない?

22 :デフォルトの名無しさん:02/05/16 21:56
VB使いはどこで愚痴をすればいいのですか?

23 :デフォルトの名無しさん:02/05/16 21:56
>>21
うれしいくせに(藁

ところであんたが最後に使った言語って何?


24 :デフォルトの名無しさん:02/05/16 21:57
これはdelphiスレっつうよりもC#スレだろ。1を見る限りは。

25 :デフォルトの名無しさん:02/05/16 21:57
>>22
【35才】VB.NETがさっぱりわかりません【定年】
http://pc.2ch.net/test/read.cgi/tech/1021218036/l50

こことかは?

26 :デフォルトの名無しさん:02/05/17 00:20
C#マンセー

27 :デフォルトの名無しさん:02/05/17 04:41
あげ

28 :デフォルトの名無しさん:02/05/17 10:21
>>1
これだけの差がついたらどちらを選ぶかは自明の理だな。

言語仕様
C#>>>>>>>Delphi
開発環境
C#(VS.NET)>>>>>>>>>>>>>>>Delphi
クラスライブラリ
C#>>>>>>>>>>>>>>>>>>>>>>>>Delphi
マルチプラットフォーム(予定)
C#>>>>>>>>>>>>>>Delphi
開発者人口
C#>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>Delphi
将来性
C#>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>Delphi

29 :デフォルトの名無しさん:02/05/17 10:36
 じゃあ CSV ファイルを D&D したら 表形式のHTMLにして保存 IEを立ち上げて終了

というアプリをDelphiとC#で作ってみますか?

30 :デフォルトの名無しさん:02/05/17 10:46
>>29
今時CSVですか?
表形式のHTML?XMLを吐き出してXSLTで整形とかいう考えは浮かばないの?

アプリ以前の問題で時代遅れ臭がただよってるね。(プ

31 :デフォルトの名無しさん:02/05/17 10:47
>>30 それでもいいですよ。
XMLにするなら CSVの最初の1行はタイトル行という事にしましょうか

32 :デフォルトの名無しさん:02/05/17 10:49
<XML>
 <SINE>
  Del厨にXMLは使いこなせない。これ定説。(嘲笑激藁
 </SINE>
</XML>

33 :デフォルトの名無しさん:02/05/17 10:53
>>31
そういう問題じゃなくて、始めからXMLのデータとXSLを用意しておけばIEで表示して終わりということ。
アプリそのものが必要ない。

34 :デフォルトの名無しさん:02/05/17 11:00
C#の人は全員そういう考え方をするのですか?
アプリそのものが必要ないなら、それを作る道具も人間も必要ないですね。

35 :デフォルトの名無しさん:02/05/17 11:03
>>34
( ´,_ゝ`)プッ
DelphiよりもXMLの基礎を学んだ方がいいんじゃないの?(w

36 :デフォルトの名無しさん:02/05/17 11:08
Del厨マジでやばいな

37 :デフォルトの名無しさん:02/05/17 11:17
>>34
アプリを作るだけの人間は必要ないけど、
問題解決出来る人は必要になるのではないでしょうか。
そうでない人は淘汰されるでしょうね。

38 :29:02/05/17 11:27
ええと、 煽るくらいだから、よほどのC#の使い手なんでしょう?

なら、同じ目的のコードをどれだけ速く、そしてキレイに書けるのかを
競ってみましょうという趣旨ですから、問題はそちらが出して下さってかまいませんよ

39 :デフォルトの名無しさん:02/05/17 12:51
また、嘲笑激藁厨房のお出ましか。。(嘲笑激藁

 

40 :デフォルトの名無しさん:02/05/17 13:37
挑戦者居ないみたいね

CSV -> XML なら JAVA の例があるので
http://www-6.ibm.com/jp/developerworks/xml/000811/j_xmlexpert-csv.html
http://www-106.ibm.com/developerworks/library/xmlexperts-csv/csvparser-src.html

C#にとってそう難しいコードとは思わないのだけどね

41 :デフォルトの名無しさん:02/05/17 14:04
ホント、コード書いて見せろって事になるといつも沈黙

時間帯からみて学生さんじゃないのでしょ? というか学生さんならこれくら
いの課題はこなせるでしょうしね。
もしかして、どっかの人売会社の営業さんがVB使いじゃ売れないくて困って
人材確保用に煽ってるとか?


42 :デフォルトの名無しさん:02/05/17 15:55
>>41
自分は出来ないくせに人のことを笑う。
そんな人間として問題のある生物に構うのはやめなさい。

43 :デフォルトの名無しさん:02/05/17 16:10
コードさえ書けばよいと思ってるDel厨は下層末端奴隷PGの典型ですね。(嘲笑激藁

44 :デフォルトの名無しさん:02/05/17 16:22
>>43
状況証拠はそろっている。
少しコードを書けば疑いを晴らすことが出来るんだ。
それをやらずに(嘲笑激藁とか逝ってるんだからねぇ。(嘲笑激藁

45 :デフォルトの名無しさん:02/05/17 16:30
Delphiしか書けない奴とDelphi・C#両方書ける奴が争っても意味ないじゃん。

46 :デフォルトの名無しさん:02/05/17 16:33
だから、C#のコードが書けるのかどうか 見せてから煽れよ

文法もライブラリも C#の方が上なんでしょ? なら簡単なんでしょ? なら書いてみせてくれ

47 :デフォルトの名無しさん:02/05/17 16:33
>>45
そらそうだ。
でも、煽ってるのは(嘲笑激藁だけ。

このスレの癌だなw

48 :デフォルトの名無しさん:02/05/17 16:37
あれ? C#ってXMLに特化したんじゃないの?
ならCSV から XMLへの変換くらい数行で書けるんじゃないの?
違うの?


49 :デフォルトの名無しさん:02/05/17 16:40
お前らDel厨ごときにC#を使うまでもなし。VB.NETで相手してやるよ。

50 :デフォルトの名無しさん:02/05/17 16:44
じゃ課題は?

51 :デフォルトの名無しさん:02/05/17 16:44
exit(1);

52 :デフォルトの名無しさん:02/05/17 16:45
C#って俺VisualStudioのオトコンプ-がねーと使えねーよ(泣

53 :デフォルトの名無しさん:02/05/17 16:51
課題>>29 は Delphiコードは既に CSVスレに提出済

課題>>31 はDelphiのコードは殆ど同じ形式になるので面白くはないと思います

54 :デフォルトの名無しさん:02/05/17 16:55
>>53
だから、スマートな.NET使いはそんなことでわざわざコード書かないんだっての。
分かってないねー。

55 :デフォルトの名無しさん:02/05/17 16:57
>>54
お前はそれに該当しないな。
書けないんだし。

56 :デフォルトの名無しさん:02/05/17 16:59
確かに、スマートな.NET使いさんには ワレたExcelで HTMLに変換がお似合いです

57 :デフォルトの名無しさん:02/05/17 17:00
>>55
実際殆ど真面目にコーディングしなくてもカチカチやってるといけちゃう
んだよ。ただし、、、、役に立たないプログラムはね!(w

58 :デフォルトの名無しさん:02/05/17 17:00
Del厨は設計もろくに考えずコードばかり書いてることが判明しました。

59 :デフォルトの名無しさん:02/05/17 17:05
>>58 設計しながらコード書けるのが RAD ツールじゃなかったのか?

60 :デフォルトの名無しさん:02/05/17 17:06
>>58
日本語出来ない人よりましです。

61 :デフォルトの名無しさん:02/05/17 17:09
このスレ、Del厨しかいないことにまだ気づいてないみたいだね。
こんな時間に課題くれなんて言ってる落ちこぼれは自覚がないみたいだ。(嘲笑激藁

62 :デフォルトの名無しさん:02/05/17 17:10
Delは正直俺が個人的に := が嫌いだとか直接文字列操作しにくかったりとか
一々interface, implementation とか書くのウザイとかのPascal的な部分で
どうも苦手だったんだけど、同じような環境が脱Pascalしてくれただけでも俺
はうれしーよ。

63 :デフォルトの名無しさん:02/05/17 17:12
>>62
だね。
自分の好きな言語で同じ物が出来るんだから.NETは偉大だ。

64 :デフォルトの名無しさん:02/05/17 17:14
両方できる奴が入ると話が一気に終了してしまうヨカソ・・・

65 :デフォルトの名無しさん:02/05/17 17:19
だから 両方出来るんなら コード書いてみせてよ

66 :デフォルトの名無しさん:02/05/17 17:19
だって俺Pascalに執着ないし。
まともな言語仕様で自由度の高いRADツールがDelphiしかなかっただけ。
(どっかのVなんちゃらは問題外でした。)
で、現在.NETって言う当時のDelphi系RADと似たコンセプトの標準環境が出た。
俺は現状ではC#がもっとも.NETに適していると思ったからC#を選んだ。
それだけだよ。きっとみんなも。
(違うぞって言うDelphi厨はどんどん反論してくれ。)

67 :デフォルトの名無しさん:02/05/17 17:24
いいものを使いたいからこそ、数年前はDelphiを選び、今はC#を選んでるだけ。
どうしてこんな単純なことも分からないのだろう。

68 :デフォルトの名無しさん:02/05/17 17:27
>>67
まぁ、1プログラマ1言語制を取ってる人種には到底理解できないことなのかもね。


69 :62:02/05/17 17:27
上読んでないのでわからんのだが、何でDel厨はさっきからコード書け書け
と小学生の「しょーこみせろー」みたいに繰り返してんの? つーか2ch
の環境でで何を書けと?

70 :デフォルトの名無しさん:02/05/17 17:29
>>69
上読んでくれ。お題出てる。

71 :デフォルトの名無しさん:02/05/17 17:45
>>66 違うと思うよ。

プログラムというのは著作物だ。
著作物は既にあるものや、他人が簡単に作れるものは殆ど無価値。
だから自分の技量を十分発揮出来る道具が一つあればそれで十分。

キミに取って C# がソレというのは結構な事だけど、他人に薦めたい
ぜひ広めたいと思うなら、C#のお陰で、自分ならこんなことが出来たっ
て所を見せておくれよ。 話はそれからじゃないの?

結局、道具以上に大事なのは、自分の能力を磨く事じゃないの?
少なくとも言語に関係なく自分オリジナルのコードを書かないとさ、
マニュアル読んでるだけじゃ、コーダかクラッカにしかなれないよ

72 :デフォルトの名無しさん:02/05/17 17:48
>>71
分かってないねー。自分の能力を磨いてるから偏見抜きで.NETにもチャレンジしてるんだよ。
まあ君らみたいにアンチM$だけがモチベーションじゃ意義のある行動は起こせないだろうけどね。(プッ

73 :デフォルトの名無しさん:02/05/17 17:48
>>71
いや、別に普及させようって意図はないよ。
自分が使いやすければいい。それが可能なのが.NETなわけだし。

まぁ、放っておいても普及する。

74 :デフォルトの名無しさん:02/05/17 17:50
正直、PascalやRubyの構文は見にくい

75 :デフォルトの名無しさん:02/05/17 17:51
正直、begin〜end;は見にくい

76 :デフォルトの名無しさん:02/05/17 17:51
>>75
まだ言うかw

77 :デフォルトの名無しさん:02/05/17 17:52
好きな言語を好きなときに使えるのが.NETの利点なわけで。
Pascalが好きな人は当然Delになるのが当然なんでは?
ただ72よ何故煽る?

78 :デフォルトの名無しさん:02/05/17 17:53
>>77
煽り屋だから

79 :デフォルトの名無しさん:02/05/17 17:55
>>77
そらそうだ。
問題は会社とかでどの言語に統一する!令が発令されたりしそうだ。
VBとC#はどっちかが淘汰されるんじゃない?

80 :62(77は付け忘れ、、):02/05/17 17:56
ところで。XMLスキーマはGUIなんだがDel厨房な方々はその事はわかってるのかね?

81 :デフォルトの名無しさん:02/05/17 17:57
>>79
Delphi.NETが淘汰されると思うよ

82 :62:02/05/17 17:58
>>79
仕事はもともと言語選べないだろ。

83 :デフォルトの名無しさん:02/05/17 17:59
>>81
そらね。よっぽど良いもの出してこない限りObjectPascal.net以上の評価は受けないだろう。

で、アフォな>>81にはわからんと思うが>>79は言語的機能も守備範囲もかぶっている両者は
どちらが生き残るだろうかと言う話だ。

84 :デフォルトの名無しさん:02/05/17 18:00
>>82
だから

「.NETで組んでくれんか?」

ってオファーの場合、我が社ではソースの統一もかねて、特殊な用途でない限りはC#を使う。
みたいな。

85 :62:02/05/17 18:02
>>84
ああ、なるほど。

86 :Del厨房no71:02/05/17 18:03
>>80
それぞれの単語の意味は判るのですが、全体の意味がさっぱり判りません

スキーマと GUI の関連は何なのでしょう?

87 :62:02/05/17 18:04
>>86
XMLファイルをGUIで設計するってだけです。大したこっちゃない

88 :Del厨房no71:02/05/17 18:09
>>84 大丈夫 自分が必要とされる場面では 道具は自分が指定しますから

89 :62:02/05/17 18:10
>>88
うらやましいなー

90 :デフォルトの名無しさん:02/05/17 18:11
C# > VB.NET >>>>>>>>>>>>>>>>>>> Delphi ってのを痛感させるスレだなあ(ワラ

91 :62:02/05/17 18:12
>>90
お前俺のレス意図的に無視して煽ってるだろ。

92 :デフォルトの名無しさん:02/05/17 18:16
煽り屋はage。これ常識。

93 :Del厨房no71:02/05/17 18:16
>>89 なんで 羨ましい?

俺は道具指定されて、指定された時間働いてたら金貰える方が羨ましいよ

94 :デフォルトの名無しさん:02/05/17 18:20
予想通り、Del厨対元Del厨の内乱スレになりましたね。(嘲笑激藁

95 :62:02/05/17 18:21
いや、現在の俺にとっての敵は90=94だけだよ。

96 :デフォルトの名無しさん:02/05/17 18:21
>>93
じゃVBつかってね。

97 :デフォルトの名無しさん:02/05/17 18:33
>>95
同意。

98 :デフォルトの名無しさん:02/05/17 18:34
>>96
それこそクソ言語ですね。(嘲笑激藁


99 :デフォルトの名無しさん:02/05/17 18:35
>>98
Delphiより機能は上だよ

100 :デフォルトの名無しさん:02/05/17 18:36
>>99
具体的に頼む。

101 :デフォルトの名無しさん:02/05/17 18:38
>>100
デスクトップアプリ以外も作れること

102 :デフォルトの名無しさん:02/05/17 18:39
フリーで使えるDBの種類をあげてみれ

103 :デフォルトの名無しさん:02/05/17 18:39
>>101
訂正。

デスクトップアプリ以外も「無料のツールで」作れること

104 :デフォルトの名無しさん:02/05/17 18:39
>>101
>デスクトップアプリ以外も作れること
正気か?

105 :デフォルトの名無しさん:02/05/17 18:40
>>103
Delphi側の話なら理解できるがVBでそれ言ってるなら・・・痛いな。

106 :デフォルトの名無しさん:02/05/17 18:41
>>105
Delphi Personalじゃ作れないじゃん。

107 :デフォルトの名無しさん:02/05/17 18:42
Personal版はGPL強制だからクソ。

108 :デフォルトの名無しさん:02/05/17 18:42
>>106 何を? どんなアプリの事よ

109 :デフォルトの名無しさん:02/05/17 18:43
>>108
コンソールアプリとかCGIとか。

110 :デフォルトの名無しさん:02/05/17 18:43
>>107
ソースは?

111 :デフォルトの名無しさん:02/05/17 18:44
>>106
Delphi Personalじゃ作れないじゃん。(ウィザードないし。)

だったり

Delphi Personalじゃ作れないじゃん。(よく知らないし。)

だと思われ。

112 :デフォルトの名無しさん:02/05/17 18:44
みんな思うままに釣られてるなあ(ワラ

113 :デフォルトの名無しさん:02/05/17 18:45
>>107
それはデマだって何度も逝ってるでしょ〜が

114 :デフォルトの名無しさん:02/05/17 18:45
Personal版はアクティベーション強制で個人情報を吸い取っているからクソ。

115 :デフォルトの名無しさん:02/05/17 18:46
>>114
M$のアクチはクソじゃないのけ?

116 :デフォルトの名無しさん:02/05/17 18:47
>>114
VSのアカデミック版にも言ってくれ。


117 :デフォルトの名無しさん:02/05/17 18:47
僕のところにもPersonal版の登録をして以来、スパムメールが来るようになりました。

118 :デフォルトの名無しさん:02/05/17 18:47
>>109
ファイル 新規作成 その他 でコンソールアプリというのがあるから試してみてね

119 :62:02/05/17 18:47
アホスレ認定

120 :デフォルトの名無しさん:02/05/17 18:47
>>119←MVP

121 :デフォルトの名無しさん:02/05/17 18:48
>>107=114=117
デマばっか流してんじゃないよM$社員

122 :デフォルトの名無しさん:02/05/17 18:48
>>115-116
あれはプロダクトキー取得とは違います。

123 :デフォルトの名無しさん:02/05/17 18:49
>>122
そう、はるかにタチが悪い

124 :デフォルトの名無しさん:02/05/17 18:49
>>123
どういう風に?

125 :デフォルトの名無しさん:02/05/17 18:50
自作ユーザーの敵

126 :デフォルトの名無しさん:02/05/17 18:50
週末の夜に何やってるんだか・・・

127 :デフォルトの名無しさん:02/05/17 18:51
>>125
確かに、WindowsXPはOEM買えばある程度は済むけどね。

128 :デフォルトの名無しさん:02/05/17 18:51
Delphiの場合、パーソナルでも普通にアプリ作って
 {$APPTYPE CONSOLE}

をどこかに書けば、その時からコンソールアプリになる。
read writeでコンソール入出力が出来る。

だからGUIな画面を持ちながらコンソールアプリにするのも簡単

129 :デフォルトの名無しさん:02/05/17 18:52
>>126
平日もしくは昼間ならやって言い理由は?

130 :デフォルトの名無しさん:02/05/17 18:52
Perosonal版ではウェブサービスが作れない。

131 :デフォルトの名無しさん:02/05/17 18:58
>>130
で、VBではどのエディションから出来るの?
CGI位ならDelphiでも作れるが。

132 :デフォルトの名無しさん:02/05/17 19:00
確かにEnterpriseでしか作れない。

しかし .NET もマトモに構築しようと思えば相当な金が必要なのは同じだろう


133 :デフォルトの名無しさん:02/05/17 19:01
VBで標準入出力やリダイレクトってあったっけ?

134 :デフォルトの名無しさん:02/05/17 19:04
>>133 言語仕様には無くても直接
AllocConsole GetStdHandle ReadFile すれば可能でしょう


135 :デフォルトの名無しさん:02/05/17 19:05
>>131 CGI とウエブサービスとは違うよ XML と ウェブサービス でgoogle検索してみて

136 :デフォルトの名無しさん:02/05/17 19:12
D6パソナでもやれない事は無いけど。

ttp://www.wwlnk.com/boheme/delphi/techdoc/dad0080.html

137 :デフォルトの名無しさん:02/05/17 19:13
>>135
ところで、アンチDelphiの人は全員10数万円出してからバカにしてるってことで良いの?


138 :135:02/05/17 19:27
ん? 俺は Del厨だよ  便利な道具らしいC# やるより、
不便な道具らしいDelでそっちの勉強した方が身に付くと思うから勉強中

139 :デフォルトの名無しさん:02/05/17 19:49
>>138
まぁ同意。
CなりPascalなりまともな構造化手続き型言語知ってる方がいいな。


140 :デフォルトの名無しさん:02/05/17 20:00
>>131
.NETランタイムだけでできるよ。無料。

141 :デフォルトの名無しさん:02/05/17 20:01
>>134
VB6で話をそらさないように。VB.NETならあるよ。

142 :96:02/05/17 20:02
>>98
おい、変な風に話し進めるなよ。
俺はDel厨の>>93
> 俺は道具指定されて、指定された時間働いてたら金貰える方が羨ましいよ
っていってるから、会社でVB指定されるのが羨ましいのかっていってるんだよ。

143 :デフォルトの名無しさん:02/05/17 20:04
>>142
VBでも何でもずっと雇って貰えて、人並みに給料もらえるなら有り難い事じゃないか

144 :96:02/05/17 20:06
>>143
道具を自由に選択できるのよりか?

145 :デフォルトの名無しさん:02/05/17 20:10
C#ってC++のこと?

146 :デフォルトの名無しさん:02/05/17 20:25
>>145
C++++のこと

147 :デフォルトの名無しさん:02/05/17 20:27
Del厨って口だけだな

148 :Del厨房no71:02/05/17 20:33
>>144 それで苦労なく食べていけるなら羨ましいです
 道具まで選ぶという事はそれだけの責任も伴いますし、
 お金儲けの面からはだいぶ損してるという自覚もあります


149 :shige:02/05/17 20:34
Ruby > C# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Delphi


150 :デフォルトの名無しさん:02/05/17 20:37
>>148
じゃ苦労するだろうけどVBつかってね。他の人はDelphiわかんないんだ。会社命令だから。

151 :62:02/05/17 20:46
普通はどんな言語でもとりあえず適当に齧っておくでしょ?
この先何やらされるか分かったもんじゃないし、自分がリーダになったとき
もある程度広く浅く知ってないと他人に割り当てする時アウトだし。

152 :デフォルトの名無しさん:02/05/17 21:26
で、コード対決はどうなったの?

153 :デフォルトの名無しさん:02/05/17 21:30
始めよう!C#
http://software.nikkeibp.co.jp/software/backno/02csmook1.html

154 :デフォルトの名無しさん:02/05/17 21:39
>>152
Del厨が嫌がって対決になりません。

155 :デフォルトの名無しさん:02/05/17 21:40
>>154
先手打てば?さっさと。
そうすれば堂々とお前たちの勝利を宣言できる。

156 :デフォルトの名無しさん:02/05/17 21:46
じゃあ、お題その1。

このスレをダウソしてローカルファイルに保存せよ。

157 :デフォルトの名無しさん:02/05/17 21:48
>>156
.NETなら10行切るな・・・。

158 :デフォルトの名無しさん:02/05/17 21:51
using System.Net;
class a
{
static void main()
{
WebClient b = new WebClient();
b.DownloadFile("http://めんどいから省略〜","c:\a.html");
}
}

159 :Delフサギコ ◆zE1iiRdQ :02/05/17 21:56

 ∧,,∧     / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
ミ ゚Д゚ミ ∫< ゾヌ作者DaxタンのTips
.(ミ  ミっ-~  \__________
〜ミ,,⊃ミ⊃ ああ、ありがたや!

http://members.jcom.home.ne.jp/monazilla/document/indytips.html

160 :デフォルトの名無しさん:02/05/17 21:57
お題その2

メールを送信するプログラムを作成せよ。

161 :デフォルトの名無しさん:02/05/17 21:57
unit MyHttp;

interface

uses Winsock,classes,Windows,SysUtils;

type
TMyHTTP = class
private
wsa :TWSAData;
function MyConnect(URL :string) :Integer;
public
Port :Integer;
Options :TStringList;
constructor Create;
destructor Destroy;override;
function Get(URL :string) :string;
end;

implementation

//接続
//引数:ホスト名
//返値:ソケット
function TMyHTTP.MyConnect(URL :string) :Integer;
var
sock :TSocket;
addr :TSockAddrIn;
hostent :PHostEnt;
begin

162 :デフォルトの名無しさん:02/05/17 21:57
sock := socket(AF_INET,SOCK_STREAM,0);
addr.sin_family := AF_INET;
addr.sin_port := htons(Port);
hostent := gethostbyname(PChar(URL));

addr.sin_addr.S_addr := PInteger(HostEnt.h_addr^)^;

connect(sock,addr,sizeof(addr));

Result := sock;
end;


constructor TMyHTTP.Create;
begin
Port := 80;
Options := TStringList.Create;

WSAStartup(MAKEWORD(1, 1),wsa);
end;


destructor TMyHTTP.Destroy;
begin
WSACleanup;
Options.Free;
inherited;
end;



163 :デフォルトの名無しさん:02/05/17 21:58
//GETメソッド
//引数:URL
//返値:リプライメッセージ
function TMyHTTP.Get(URL :string) :string;
var
sock :TSocket;
host :string;
fil :string;
data :array[0..2048] of char;
data2 :array[0..2048] of char;
recvbyte :Integer;
begin
host := Copy(URL,0,Pos('/',URL) - 1);
fil := Copy(URL,Pos('/',URL),length(URL));

StrCopy(data,PChar('GET ' + fil + ' HTTP/1.0'#13#10 + Options.Text + #13#10#13#10));

sock := MyConnect(host);

send(sock,data,2048,0);

while(true) do
begin
recvbyte := recv(sock,data2,2048,0);

if(recvbyte = 0) then
break;

data2[recvbyte] := #0;


164 :デフォルトの名無しさん:02/05/17 21:58
Result := Result + data2;
end;

closesocket(sock);
end;

end.

晒してみる。

165 :デフォルトの名無しさん:02/05/17 22:03
>>160

using System.Web.Mail;

class AAA {
 public static void Main() {
  MailMessage msg = new MailMessage();
  msg.To = "〜";
  msg.Subject = "テスト";
  msg.Body = "テスト送信します。";
  SmtpMail.Send(msg);
 }
}

166 :デフォルトの名無しさん:02/05/17 22:08
C#はどれも10行程度か。

167 :デフォルトの名無しさん:02/05/17 22:10
>>166
後発かつインターネットでの連携を考慮したライブラリだからね。

168 :デフォルトの名無しさん:02/05/17 22:12
Delphi駄目じゃん。
begin〜end読みにくい
静的変数(static)使えない
varの所でしか宣言できない
厨っぽい

169 :Delフサギコ ◆zE1iiRdQ :02/05/17 22:13
  ,,,,,,,,,,,,,,,,∧,,∧   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
〜′,,,,,,,,,,ミ,,゚Д゚彡 < けっこう、強力やなー
  UU"""" U U[大阪弁]__________
メール送信って、Indyではどや?
NMPOPだとニポン語エンコド問題が
非常にネクになってたので、やりずらかったはず。

170 :Del厨房no71:02/05/17 22:13
Delでもこういうライブラリ作れば

function GetHttp(url:string):string;
var hSession:HINTERNET;
hService:HINTERNET;
var rsiz:DWORD;
buf:string;
begin
Result:='';
setlength(buf,$10000);
hSession := InternetOpen( 'MyApp', INTERNET_OPEN_TYPE_DIRECT, nil,nil, 0 );
if assigned( hSession) then try
hService := InternetOpenUrl( hSession, PChar(url), nil, 0, 0, 0 );
if assigned( hService ) then try
repeat
InternetReadFile( hService , PChar(buf) , length(buf)-10 , rsiz );
Result:=Result+copy(buf,1,rsiz);
until rsiz=0;
finally InternetCloseHandle(hService) ; end;
finally InternetCloseHandle(hSession) ;end;
end;

//////// ほら1行書くだけ ///////
procedure TForm1.FormCreate(Sender: TObject);
begin
Memo1.Lines.Text:= GetHttp('http://pc.2ch.net/test/read.cgi/tech/1021550705/');
end;


171 :デフォルトの名無しさん:02/05/17 22:15
まぁ、ライブラリ使えば大体の言語は1行で終わるわなw
かといってAPIで負しても仕方ないしな。

>>168
正直にわからないと言いなさいw

172 :デフォルトの名無しさん:02/05/17 22:15
〜だったら、〜であれば
はナシってことで

173 :デフォルトの名無しさん:02/05/17 22:17
実際に行数・読みやすさでもC#の圧勝じゃん。
Del厨も何か有利なお題出してみたら?

174 :デフォルトの名無しさん:02/05/17 22:19
>>173
ソース出さなかった奴に限ってよく吠えるw

175 :Del厨房no71:02/05/17 22:23
メール送信は、簡単に書こうとすると ShellExecute かMAPIのコンポ貼り付けになってしまうので完敗を認めます

ShellExecute の場合でも エンコードコードが必要なので1レスで書くのは厳しいです

176 :デフォルトの名無しさん:02/05/17 22:24
>168
それならBCBの圧勝ですか?

177 :デフォルトの名無しさん:02/05/17 22:25
>>175
CDO使えばいいじゃん。

178 :Delフサギコ ◆zE1iiRdQ :02/05/17 22:27
>メール送信は、簡単に書こうとすると ShellExecute かMAPIのコンポ貼り付けになってしまうので完敗を認めます

   ∧,,∧∩  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  ミ*゚Д゚*ミ < どやってか、コソーリ教えれ
  (ミ   ミ   \____________
 〜ミ ,,, ミ
   し' `J
ShellExecuteでメーラー起動ならわかるんだが…(藁

179 :Del厨房no71:02/05/17 22:32
>>178 ShellExecuteもMAPIもメーラにお願いする方式です。 SMTP直ではありません

180 :Delフサギコ ◆zE1iiRdQ :02/05/17 22:37
    ∧ ∧  ・・・・。
    ミ ゚Д゚彡
  〜ミ,,,,uuミ

    ∧ ∧ ショボーン 
    ミ,,。_。彡  
  〜ミ,,,,uuミ

メーラー起動なら…
procedure TForm1.Button2Click(Sender: TObject);
var
MailAddress, Subject, Body, CommandLine: String;
begin
 MailAddress := 'delfusagiko@infoseek.jp';
 Subject := 'メールのタイトル';
 Body := StringReplace( Memo1.Text, #13#10, '%0D%0A', [rfReplaceAll]) ;
{ #13#10は'%0D%0A'のようにエスケープしる。 }
CommandLine :=
  Format('mailto:%s?subject=%s&body=%s', [MailAddress, Subject, Body]);

ShellExecute(Handle, nil, PChar(CommandLine), nil, nil, SW_SHOWNORMAL);
end;

181 :Del厨房no71:02/05/17 22:41
>>180
 エンコードはもっとしっかりやらないと化ける元かも
 速度考えないで書いたのは

function EncodeStr(const s:string):string;
var i:integer;
begin
Result:='';
i:=1;
 while i<=length(s) do
  begin
  case s[i]of
  #0..#31,'"','''',',','&','%':
      Result:=Result+'%'+IntToHex(ord(s[i]),2);
  else begin
    Result:=Result+s[i];
    end;
  end;
   inc(i);
  end;
end;


182 :デフォルトの名無しさん:02/05/17 22:45
Del厨が恥知らずなコードを晒すスレはここですか?

183 :デフォルトの名無しさん:02/05/17 22:46
>>182
コード晒さない奴がコード晒す奴をバカにする権利はない。

184 :Del厨房no71:02/05/17 22:48
もちろん SMTPを使う方法もあります。 TNMSMTPとか
http://www.nifty.ne.jp/forum/fdelphi/samples/01302.html

185 :デフォルトの名無しさん:02/05/17 22:51
じゃあ、かなりの難題。

プログラムからHello Worldプログラム(コンソールアプリ)のソースを出力し、
コンパイルし、できたexeを実行せよ。

186 :デフォルトの名無しさん:02/05/17 22:52
>>185
書いても良いんだけどそれは難題か?
もしかしてDelphiコマンドラインコンパイラ無いとか思ってる?

187 :デフォルトの名無しさん:02/05/17 22:53
>>185
お前の日本語が難解だよ。

188 :Delフサギコ ◆zE1iiRdQ :02/05/17 22:53
  ∧,,∧   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  ミ,,゚Д゚ミ < テキストファイル出力して
  ミ   ミ   \ShellExecuteでdcc.exeに渡して
〜ミ,UU_ミ    その結果をShellExecuteするんすか?
こりゃまた....

189 :デフォルトの名無しさん:02/05/17 22:56
>>185
却下。.NETに有利すぎる。(w

190 :デフォルトの名無しさん:02/05/17 23:01
なんかさっきから.NETに有利なお題しか出てないぞ。

191 :デフォルトの名無しさん:02/05/17 23:02
>>190
Delphiが試されてるんだからそれでいいんじゃないの?

192 :デフォルトの名無しさん:02/05/17 23:03
それが狙いよ!!フェッフェッ。

193 :デフォルトの名無しさん:02/05/17 23:04
つぅか圧倒的なライブラリ差で.NETが勝つのは当然だけどね。

わざわざCとMFC戦わせてるようなもん。

194 :デフォルトの名無しさん:02/05/17 23:10
>>188
Delphiだとそういう原始的な手段しかない。
.NETの方はソース生成もコンパイルも実行も、ライブラリの範囲内でエレガントにできてしまう。

195 :デフォルトの名無しさん:02/05/17 23:10
uses Windows; {$APPTYPE CONSOLE}
procedure Exec(const Cmd: PChar);
var SInfo: STARTUPINFO; PInfo: PROCESS_INFORMATION;
begin
 GetStartupInfo(SInfo);
 CreateProcess(nil, Cmd, nil, nil, False, 0, nil, nil, SInfo, PInfo);
 WaitForSingleObject(PInfo.hProcess, INFINITE);
end;
var F: Text;
begin
 Assign(F, 'b.pas'); Rewrite(F);
 Write(F, 'begin Write(''Hello World'') end.');
 Close(F);
 Exec('dcc32 -cc b.pas'); Exec('b.exe');
end.

196 :デフォルトの名無しさん:02/05/17 23:11
>>194
>原始的な手段
逆に永遠に生き続けると言うことだよ。w


197 :デフォルトの名無しさん:02/05/17 23:11
つーかCodeDomでしょ?

198 :デフォルトの名無しさん:02/05/17 23:12
>193
VCLはへっぽこライブラリという事ですね。

199 :デフォルトの名無しさん:02/05/17 23:14
煽るのが目的だからコードなんか見ちゃいないという。

200 :デフォルトの名無しさん:02/05/17 23:14
>>194
でもそれやると行数食うよ

201 :デフォルトの名無しさん:02/05/17 23:15
まあ、あれだな。コイズムと同じ幻想だな。

202 :デフォルトの名無しさん:02/05/17 23:16

☆ チン     マチクタビレタ〜
                         マチクタビレタ〜
        ☆ チン  〃  Λ_Λ   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
          ヽ ___\(\・∀・) <  次のお題まだー?
             \_/⊂ ⊂_ )   \_____________
           / ̄ ̄ ̄ ̄ ̄ ̄ /|
        | ̄ ̄ ̄ ̄ ̄ ̄ ̄|  |

203 :デフォルトの名無しさん:02/05/17 23:17
vs Javaか?

204 :デフォルトの名無しさん:02/05/17 23:18
>>202
円周率を100桁求めて下さい。

205 :Delフサギコ ◆zE1iiRdQ :02/05/17 23:19
    ∧ ∧  ・・・・。
    ミ ゚Д゚彡
  〜ミ,,,,uuミ

マジでそんなに簡単にできんの?
自分でエディタ作ったとして、
秀マクロみたいなのが、簡単に作れるってわけざんすか

C#移行か…
さっさと、Delphi.NETしてホスイですね。

206 :デフォルトの名無しさん:02/05/17 23:19
次のお題の前に>>29>>185の C# のコードは?

207 :デフォルトの名無しさん:02/05/17 23:20
>>206
CodeDOMなんか実装してたら日が暮れます。

208 :デフォルトの名無しさん:02/05/17 23:21
>>204 それ前にDelphiで作った どこかにコード落とした筈

209 :デフォルトの名無しさん:02/05/17 23:21
CSVがでてたので、次は
XMLファイルを構造体/クラス/レコードに読み込むプログラム。

<Person>
 <Name>フサギコ</Name>
 <Age>6</Age>
 <Job>
  <Title>遊び人</Title>
 </Job>
</Person>

構造体はC風に書くと

struct Person {
 char* name;
 int age;
 struct Job* job;
};
struct Job {
 char* title;
}:

こんな感じで。やりやすい格好であればいいです。

210 :195:02/05/17 23:22
C#でエレガントにできるというならそれを見せて頂けませんか?
ひょっとして.NETだとコンパイラ作るのが楽?興味ありありです。

211 :デフォルトの名無しさん:02/05/17 23:24
CodeDOM関係はまだ全部は実装されていない筈

212 :デフォルトの名無しさん:02/05/17 23:27
>>211
確かECMAには初めから盛り込まれてなかったね。

>>194ははったりなんですか?


213 :デフォルトの名無しさん:02/05/17 23:28
だから耳学問で実装なんかした事無いんだから。無茶言わないでよ!

214 :デフォルトの名無しさん:02/05/17 23:28
簡単だエレガントだと言って、それを使いこなせてないんじゃしょうがないね >C#

215 :デフォルトの名無しさん:02/05/17 23:31
.NET派の皆さん。あなたのUSER_AGENT名を教えて下さい。

http://taruo.net/e/

とか参照して。

216 :Del厨房no71:02/05/17 23:35
>>215
 ん? ,NET 嫌いだけど 評価の為に買ってるよ

Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.0.3705)


217 :デフォルトの名無しさん:02/05/17 23:39
みんなここからお題探してるだろ。(w
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1003826049

>>209なんか.NETで何の変換作業もいらないじゃん。

218 :デフォルトの名無しさん:02/05/17 23:40
>>217
分っててやってるんですが(笑い
Delphiでは、まあDOMパーザはどっかから持ってくるとして、
そこからシコシコ取り出すしかないですよね?

219 :Del厨房no71:02/05/17 23:45
ちゃんとパーサーを使えといわれたら大変だけど

XML はDTDで必ずフィールドがあるように出来るから、
delphiでも pos関数で探して取り出す方法で取り出しても問題ないよ
そしてたぶんその方法が早くて簡単・・・でも面白くない

220 :デフォルトの名無しさん:02/05/17 23:46
>>209
XMLの先頭行に
<?xml version="1.0" encoding="Shift_JIS"?>
が必要。

using System.Xml;
using System.Xml.Serialization;

public class AAA {
  public static void Main() {
    XmlSerializer s = new XmlSerializer(typeof(Person));
    XmlTextReader r = new XmlTextReader("data.xml");
    Person p = (Person)s.Deserialize(r);
    r.Close();
  }
}

public class Person {
  public string Name;
  public int Age;
  public Job Job;
}

public class Job {
  public string Title;
}

221 :195:02/05/17 23:46
僕はProfessional版ユーザーなんですけど、Delphi6のEnterprise版って
XMLファイルからやりとり用インターフェース生成する機能ありませんでした?ダイレクトメールに書いてあった記憶が…

222 :デフォルトの名無しさん:02/05/17 23:48
つかDelphiってリフレクション相当の機能ってあるの?

223 :デフォルトの名無しさん:02/05/17 23:51
コンパイル速度はどうなの?

224 :Del厨房no71:02/05/17 23:55
>>220 もしかして
Delphi用語で実行時型情報でプロパティ名を探して一致するプロパティがあれば自動的に格納される
というような感じですか?

面白そうですね。そういう関数作ってみようかな

225 :デフォルトの名無しさん:02/05/17 23:56
使ってみればわかる。

226 :195:02/05/17 23:56
>>222
クラス参照とpublishedフィールドがあります。

227 :デフォルトの名無しさん:02/05/17 23:57
>>226
だとするならXmlSerializerみたいなのも作れるのかな。やったね!

228 :デフォルトの名無しさん:02/05/17 23:59
盛り上がってまいりました!

229 :195:02/05/18 00:10
Delphi6のヘルプの新機能紹介でEnterprise版のXML機能について書かれている部分です。
これが本当なら何の苦もなくXML処理できそうなのですけど、実際のとこ教えてくれませんか?→Enterprise版持っている人
---------------------
XML データバインディングウィザード

この新しいウィザードは,XML データファイルのアクセスと更新を行うための非常に簡単な方法を提供する Delphi コードを生成します。
生成されるコードは,自然で直感的なプロパティベースのプログラミングモデルなので,Delphi コンポーネントのプログラミングと同じような感覚で XML データを操作できます。
XML データバインディングは,XML ドキュメントオブジェクトモデル(DOM)インターフェースを使う場合に必要な複雑なコーディングに代わるもので,検証された XML ドキュメントを操作するアプリケーションに最適です。

XML ドキュメントのプログラミング

XML データバインディングは,新しい TXMLDocument コンポーネントとその関連インターフェース IXMLDocument/IXMLNode に基づいています。
このコンポーネントは,XML データ処理用の DOM インターフェースの簡略版を提供します。TXMLDocument をフォームに配置し,その FileName プロパティを設定し,Active を true を設定するだけで,すべての XML データに簡単にアクセスできるようになります。

クロスプラットフォーム/ベンダーに依存しない DOM プログラミング

XML ドキュメントプログラミングサポートの最下位レベルにあるのが,新しい xmldom.pas インターフェースユニットです。
このインターフェースユニットは,クロスプラットフォームでベンダーに依存しない,W3C DOM Level 2 仕様に準拠したプログラミングを可能にするインターフェースのセットを提供します。
オープンアーキテクチャで設計されたこれらのインターフェースは,既存の DOM ベースの XML ソリューションに簡単に組み込むことができます。

データベースアプリケーションでの XML の使用

一連の新しいコンポーネントにより,XML ドキュメントを製品のデータベースアーキテクチャに組み込むことが可能になります。
コンポーネントは,任意の XML ドキュメントとクライアントデータセットのデータパケットとの間のマッピングを定義するための設計時ツールである
XML マッパーによって生成されたトランスフォーメーションファイルを使用します。

230 :デフォルトの名無しさん:02/05/18 00:22
じゃ >>224があるとして

uses 224;
type
TJob = class
published
property Title:string;
end;
TPerson=class
published
property   Name:string;
property  Age:Integer;
property  Job:TJob;
end;
TPersonClass = class of TPerson;
var dlist:TList;
i:Integer;
begin
with TStringList.Create do try
LoadFromFile('file.XML');
dlist:= XmlSerialize(text,TPersonClass) ; //結果はTList型で帰る
  for i:=0 to dlist.Count-1 do begin
   //ここで必要な処理
  end;
 finally free;end;
end;



231 :デフォルトの名無しさん:02/05/18 01:00
だからコンパイル速度はどうなの?


232 :デフォルトの名無しさん:02/05/18 01:00
つーかデリミタが記号のC#と英文字のPASCAL。
遠くから見ても分割が一目でわかるのは絶対にC#だと思う。
それが幼稚だという人もいるかも知れんが、幼稚でも仕事が速いほうが良い。

233 :デフォルトの名無しさん:02/05/18 01:09
幼稚というか…

234 :デフォルトの名無しさん:02/05/18 01:11
構文強調表示されてるから別に見ずらいと思った事内野。

235 :デフォルトの名無しさん:02/05/18 01:15
>>229
そんなアヤシイものより、MSXMLのほうがいいだろ。
最新版ダウソできるし、定期的にバグ修正版出してるし。
簡易HTTPまでついてるから、クライアントサイドはこれだけでOK。

236 :デフォルトの名無しさん:02/05/18 01:16
>>234
2chでは再現できない部分だね
Delが最初から予約語を太字で表現できたのに対し
VSは.NETになってからじゃなかったっけ

237 :デフォルトの名無しさん:02/05/18 01:18
>>185
こういうのを想定してたのかな?

using System;
using System.CodeDom;
using System.CodeDom.Compiler;
using System.IO;
using System.Reflection;
using System.Text;

class Test
{
  public static void Main() {
    // CodeDomを取得
    CodeCompileUnit unit = GenerateCompileUnit();

    // 言語を決定
    CodeDomProvider provider = new Microsoft.CSharp.CSharpCodeProvider();
//   CodeDomProvider provider = new Microsoft.VisualBasic.VBCodeProvider();
//   CodeDomProvider provider = new Microsoft.JScript.JScriptCodeProvider();

    // ソースを出力
    using ( StreamWriter w = new StreamWriter("Hello.cs", false, Encoding.GetEncoding("Shift_JIS")) ) {
      ICodeGenerator gen = provider.CreateGenerator();
      gen.GenerateCodeFromCompileUnit(unit, w, null);
    }

    // コンパイル
    CompilerParameters param = new CompilerParameters();
    param.GenerateExecutable = true;
    param.OutputAssembly = "Hello.exe";

    ICodeCompiler compiler = provider.CreateCompiler();
    compiler.CompileAssemblyFromDom(param, unit);

    // 実行
    AppDomain.CurrentDomain.ExecuteAssembly("Hello.exe");
  }

238 :デフォルトの名無しさん:02/05/18 01:18

  // Hello WorldプログラムのCodeDomを生成する。
  public static CodeCompileUnit GenerateCompileUnit() {
    CodeCompileUnit unit = new CodeCompileUnit();

    CodeNamespace ns = new CodeNamespace();
    unit.Namespaces.Add(ns);

    CodeTypeDeclaration hello = new CodeTypeDeclaration("Hello");
    hello.TypeAttributes = TypeAttributes.NotPublic;
    ns.Types.Add(hello);

    CodeEntryPointMethod main = new CodeEntryPointMethod();
    hello.Members.Add(main);

    CodeMethodInvokeExpression write_line = new CodeMethodInvokeExpression();
    write_line.Method = new CodeMethodReferenceExpression( new CodeTypeReferenceExpression(typeof(Console)), "WriteLine" );
    write_line.Parameters.Add( new CodePrimitiveExpression("Hello World!!") );
    main.Statements.Add(write_line);

    return unit;
  }
}

239 :デフォルトの名無しさん:02/05/18 01:29
#さん降臨か?

240 :デフォルトの名無しさん:02/05/18 01:37
>>238
Delphi以上に文字打つのが面倒そう。

コンパイルに何秒ぐらいかかりましたか?

241 :デフォルトの名無しさん:02/05/18 01:38
>>240
1秒もかからないよ

242 :デフォルトの名無しさん:02/05/18 01:41
>>240
>Delphi以上に文字打つのが面倒そう。
確かに。Javaと同程度かな。


243 :Delフサギコ ◆zE1iiRdQ :02/05/18 01:51

   ∧,,∧    /なにげに、>>195さんのコードの動作確認。
  ミ;゚Д゚彡 < ………神っ!!!
   ミつ つ゛  \
 @ミ  ミ      なにゆえこんな芸当が...!!
   ∪''∪     このスレで神の領域を見るとは...アリガタヤアリガタヤ

           このコード...どんなDelphiソースでもコンパイル化なの?

244 :デフォルトの名無しさん:02/05/18 01:57
>>185 原始バージョン

using System;
using System.IO;
using System.Text;
using Microsoft.CSharp;

class Test
{
  public static void Main() {
    // ソース定義
    StringWriter s = new StringWriter();
    s.WriteLine("using System;");
    s.WriteLine("");
    s.WriteLine("class Hello {");
    s.WriteLine(" public static void Main() {");
    s.WriteLine(" Console.WriteLine(\"Hello World\");");
    s.WriteLine(" }");
    s.WriteLine("}");
    s.Close();

    // ソース生成
    using ( StreamWriter w = new StreamWriter("Hello.cs", false, Encoding.Default) ) {
      w.Write( s.ToString() );
    }

    // コンパイル
    Compiler.Compile(
      new string[] { s.ToString() },
      new string[] { "Hello.cs" },
      "Hello.exe",
      null,
      null
    );

    // 実行
    AppDomain.CurrentDomain.ExecuteAssembly("Hello.exe");
  }
}

245 :Delフサギコ ◆zE1iiRdQ :02/05/18 02:12
      ∧,,∧    / ̄ ̄ ̄ ̄ ̄ ̄ ̄
     ミ   彡  < どっちの厨も
     (ミ   ミ)    \_______
      ミ   ミ 
      ∪ ∪


      ∧,,∧ サッ  / ̄ ̄ ̄ ̄ ̄ ̄ ̄
     ミ,,゚Д゚ミ  < だまっちゃいました。
    ⊂   Om   \_______
     ミ、,, ミ,
      .しヾJ




       ∧,,∧  ま゙
      ミ゚Д゚,,彡  仲良くやんなさい。
     ⊂   ミ)
       ミ   ミ
       ∪''∪  言語の進化が促されて
            面白くなってきたよね。
          .NETフレームワークにもDelphi.NETにも期待してよし。


          で。次のお題はぁ??

246 :195:02/05/18 02:14
コンパイルが終わるのを待つためにCreateProcess & WaitForSingleObject を使っただけで
>>188でフサギコさんが言ったのと同じことやってるんですけど… マアワルイキハシマセンガ

247 :デフォルトの名無しさん:02/05/18 02:15
PASCAL.NETは出るのでしょうか?

248 :Delフサギコ ◆zE1iiRdQ :02/05/18 02:28
             _______________
  ,,,,,,,,,,,,,∧,,∧   /ほんとにやっちまうとは主輪なんだ。
〜′,,,,,,,ミ,,゚Д゚彡<  んで、あんなに簡単にやるとも主輪なんだ。
  UU""" U U   \_>>195さんカコイイ・・
              C#ソースも、コンパイラをオブジェクトで扱えるのも
              かなり素敵ネ。CodeDomよりソース綺麗じゃ。

そしたら..
b.exeと元プロジェクトのexeとの通信が出来たら...
WM_COPYDATAとか、DDEあたりで、、。。
否、、リダイレクソンとかで可能なのかな?
.
とりあえず、それが出来たら
アプリケーションユーザーに
Delphiソースでマクロ書いてもらったら
ExeやDLLにして元アプリの動作を変更できたりするのかな?

…って。アプリユーザーにもDelphiコンパイラが
必要なのか...まあ。仕方ない無料だしダウソしてもらうのがスジか。

249 :195:02/05/18 02:55
色々つぶやいてから寝ます…

237-238すごいなー。
とりあえず244がコンパイルできないんですけど("Compiler"が見つからない)どうすればいいのかな…

Pascal系言語.NETは既に2種類ぐらい出てますよ。Delphi.NETが出たらもうひとつ増えることになりますね。
OberonよりObjectPascalが好きなのでDelphi.NET期待です。

マクロ目的ならそんな面倒なことしなくてもBPL作ってもらえばDelphi IDEみたいにできるのでは…

229にDelphi使いが返事くれないということは、ここにEnterprise使ってる人はいないってことですか…
自分もそうだから何も言いませんけど。

…それにしても静かだ。皆さん寝てしまったのかな。けっこう良スレになっちゃいましたね、ここ。

250 :Delフサギコ ◆zE1iiRdQ :02/05/18 03:12
         _________
  ∧,,∧   / Indyのメーラーサンプルは
 ミ,,゚Д゚彡<  こんなソースでした。
 ミつ[お手紙])  いまさらながら。
〜ミ  ミ.     ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  U U  これを使えばデラ簡単にメール送信可でした

D6ProIndyメーラーサンプルのコピペ
procedure TfrmMessageEditor.bbtnOkClick(Sender: TObject);
begin
 with IdMsgSend do
 begin
  Body.Assign(Memo1.Lines);
  From.Text := UserEmail;
  Recipients.EMailAddresses := edtTo.Text; { To: header }
  Subject := edtSubject.Text; { Subject: header }
  Priority := TIdMessagePriority(cboPriority.ItemIndex); { Message Priority }
  CCList.EMailAddresses := edtCC.Text; {CC}
  BccList.EMailAddresses := edtBCC.Text; {BBC}
  if chkReturnReciept.Checked then
  begin {We set the recipient to the From E-Mail address }
   ReceiptRecipient.Text := From.Text;
  end
  else
  begin {indicate that there is no receipt recipiant}
   ReceiptRecipient.Text := '';
  end;
 end;

 {authentication settings}
 case SmtpAuthType of
  0: SMTP.AuthenticationType := atNone;
  1: SMTP.AuthenticationType := atLogin; {Simple Login}
 end;
 SMTP.UserID := SmtpServerUser;
 SMTP.Password := SmtpServerPassword;

 {General setup}
 SMTP.Host := SmtpServerName;
 SMTP.Port := SmtpServerPort;

 {now we send the message}
 SMTP.Connect;
 try
  SMTP.Send(IdMsgSend);
 finally
  SMTP.Disconnect;
 end;
end;

         _________
  ∧,,∧   / 
 ミ,,゚Д゚彡<  BPLってDLLでしたっけ。
  ミつ つ  \ 
〜ミ  ミ.     ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  U U  世の中ややこしい事でイパーイね。


251 :デフォルトの名無しさん:02/05/18 03:12
>>249
cscompmgd.dllを参照すべし。

252 :デフォルトの名無しさん:02/05/18 03:33
>>29の一部だけ。あとはGUIでD&D対応すればいいだけ。

using System.Diagnostics;
using System.IO;
using System.Text;
using System.Web.UI;

class Test
{
  public static void Main() {

    // CSVの読み込み
    string csv_text = null;
    using ( TextReader r = File.OpenText("data.csv") ) {
      csv_text = r.ReadToEnd();
    }

    // HTMLの書き込み
    using ( TextWriter w = new StreamWriter("table.html", false, Encoding.Default) ) {
      HtmlTextWriter w2 = new HtmlTextWriter(w, " ");

      w2.WriteFullBeginTag("html");
      w2.WriteLine();

      w2.Indent++;
      w2.WriteFullBeginTag("body");
      w2.WriteLine();

      w2.Indent++;
      w2.WriteBeginTag("table");
      w2.WriteAttribute("border", "1");
      w2.Write(HtmlTextWriter.TagRightChar);
      w2.WriteLine();

253 :デフォルトの名無しさん:02/05/18 03:35

      // CSVのデータを1行づつ読み込む
      using ( TextReader r = new StringReader(csv_text) ) {
        string record = null;
        w2.Indent++;
        while ( (record = r.ReadLine()) != null ) {
          w2.WriteFullBeginTag("tr");
          w2.WriteLine();

          string[] columns = record.Split( new char[] { ',' } );
          w2.Indent++;
          foreach (string s in columns) {
            w2.WriteFullBeginTag("td");
            w2.Write(s);
            w2.WriteEndTag("td");
            w2.WriteLine();
          }

          w2.Indent--;
          w2.WriteEndTag("tr");
          w2.WriteLine();
        }
      }

      w2.Indent--;
      w2.WriteEndTag("table");
      w2.WriteLine();

      w2.Indent--;
      w2.WriteEndTag("body");
      w2.WriteLine();

      w2.Indent--;
      w2.WriteEndTag("html");
      w2.WriteLine();

      w2.Close();
    }

    // ブラウザ起動
    Process.Start("table.html");
  }
}

254 :デフォルトの名無しさん:02/05/18 08:49
>>252
 うーん たとえ短いテストプログラム作る時でも、ある程度は構造化した方がいいよ。 
 それVB使いや古いCプログラマみたい

対抗するDelのコードはこれだね
http://pc.2ch.net/test/read.cgi/tech/1021596367/19

このスレ全体にDel使いは比較的構造化してるのが印象的

255 :デフォルトの名無しさん:02/05/18 08:56
>>254
生まれたときから構造化ですからw
原因を考えてみる。

・イベントメソッドなどで関数とか手続きとか見慣れてる。
・Cか何かで構造化を学んでからDelphiに魅入られた。



256 :デフォルトの名無しさん:02/05/18 09:53
pascalは関数内関数書けるし、 objectPascalはモジュール化し易いから構造化するのが楽しいんだよね

それに好きな所で変数宣言出来ないのも構造化しなければならない事に繋がるし

>>252 のコードも
 string[] columns = record.Split( new char[] { ',' } );

とここで変数宣言出来ないなら ここで別メソッドにするだろうし

257 :デフォルトの名無しさん:02/05/18 10:08
>>254
>function f(fname:string):TStrings;

でも俺、こんなソース書くヤツと仕事したくないけど・・・。


258 :デフォルトの名無しさん:02/05/18 10:10
それ以外にも引数のfnameを使わずに paramsを呼び出してるとか

259 :デフォルトの名無しさん:02/05/18 10:16
じゃ 双方未完成という事で
納得出来るものを提出出来る迄のバトルを


260 :デフォルトの名無しさん:02/05/18 10:17
つか、些細な突っ込みやめれ。>>254が変なこと言い出すから・・・。

261 :254:02/05/18 10:22
スマン 短時間で書けるかどうか勝負してるんなら構造化してるヒマはないだろし 余計なチャチャだった

262 :voke:02/05/18 12:40
Del厨はまじでしねよ

263 :デフォルトの名無しさん:02/05/18 13:38
ドーカツですか? ムネオ先生のように2人くらい殺った人じゃないと滑稽ですよ



264 :デフォルトの名無しさん:02/05/18 14:10
正しいドーカツのやり方
ttp://sun.freehost.ne.jp/~planetj/munemune/nakagawa3.htm


265 :デフォルトの名無しさん:02/05/18 14:48
>>254
でも出力されるHTMLはきれいに整形されてるよ。

266 :252:02/05/18 15:11
よく考えてみれば、XHTMLに近いものを吐き出してるのだから、
HtmlTextWriterじゃなくてXmlTextWriterが使えるんだった。

ということで、ちょっと修正。あいかわらず構造化はしてないけど。(藁

using System.Diagnostics;
using System.IO;
using System.Text;
using System.Xml;

class Test
{
  public static void Main() {

    // CSVの読み込み
    string csv_text = null;
    using ( TextReader r = File.OpenText("data.csv") ) {
      csv_text = r.ReadToEnd();
    }

    // HTMLの書き込み
    XmlTextWriter w = null;
    try {
      w = new XmlTextWriter("table.html", Encoding.Default);
      w.Formatting = Formatting.Indented;
      w.Indentation = 2;

      w.WriteStartElement("html");
      w.WriteStartElement("body");
      w.WriteStartElement("table");
      w.WriteAttributeString("border", "1");

267 :252:02/05/18 15:11

      // CSVのデータを1行づつ読み込む
      using ( TextReader r = new StringReader(csv_text.ToString()) ) {
        string record = null;
        while ( (record = r.ReadLine()) != null ) {
          w.WriteStartElement("tr");

          string[] columns = record.Split( new char[] { ',' } );
          foreach (string s in columns) {
            w.WriteStartElement("td");
            w.WriteString(s);
            w.WriteEndElement();
          }

          w.WriteEndElement();
        }
      }

      w.WriteEndElement();
      w.WriteEndElement();
      w.WriteEndElement();
    }
    finally {
      if (w != null) w.Close();
    }

// ブラウザ起動
Process.Start("table.html");
  }
}

268 :デフォルトの名無しさん:02/05/18 15:30
短く書ければ偉いってものではないよ。
分かりやすさも大事。

269 :デフォルトの名無しさん:02/05/18 15:35
C#には CSVを読み書きする CommaTextみたいなのは無いの?

270 :デフォルトの名無しさん:02/05/18 15:39
>>268
ない。性器表現を使うのかな。

271 :デフォルトの名無しさん:02/05/18 15:41
>string[] columns = record.Split( new char[] { ',' } );

これだと正常に読めないファイルが結構でそうだね。

272 :デフォルトの名無しさん:02/05/18 15:41
HTMLを1行に直書きしてる連中が「構造化の美学」ですか。(嘲笑激藁

273 :デフォルトの名無しさん:02/05/18 15:43
>>272
一行にはならないよ。

274 :252:02/05/18 15:47
>>271
"〜" で囲まれたケースまでは対応してないです。 

275 :デフォルトの名無しさん:02/05/18 15:53
HtmlTextWriterってウェブコントロールのレンダリングに使うやつでしょ?
やっぱソースが汚くなるねえ・・・。


276 :デフォルトの名無しさん:02/05/18 15:55
C#側は一通り揃ったな。
あとはDelphi側の>>209を待つのみ。

277 :Del厨房no71:02/05/18 16:56
作ろうか?
でも >>224は撤回 Delではプロパティに使える名前に日本語が使えない

だから、TStringsで渡したのと一致するかを検索する方式にしようと思う

与えるのは文字列は
Person.Name
Person.Age
Person.Job.Title

で、XMLを再帰的に調べていって検索して一致する都度コールバックさせる
という仕様の関数でいい?

278 :デフォルトの名無しさん:02/05/18 16:59
>>277
そこまで小難しいお題じゃないと思うよ。
構造体を定義して、XMLを読み込んでインスタンス作るだけでいいんじゃないの?

279 :195:02/05/18 17:16
XML→dfmができたらTStream.ReadComponentで読めるな…とか思っちゃいました。

TJob = class(TPersisitent)
published
 property Title: string;
end;

TPerson = class(TComponent)
published
 property Name: string;
 property Age: Integer;
 property Job: TJob;
end;

"BizSnap"なるものが使えたらひょっとしてこれが自動で…とか思いますけど、Enterprise版持ってる人がいなさそうなのが惜しい…

280 :Delフサギコ ◆zE1iiRdQ :02/05/18 18:08
           _____________
   ∧,,∧    /D6が出たころ
  ミ,,゚Д゚彡 < どっかのスレで書きましたが
   U  つ   \
 @ミ  ミ       ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
   ∪''∪ およそ、1年前だっけ。

D6の案内状パンフからの飲尿
エンプラ版だけどね。

> たとえば、次のようなXMLデータがあると、
> <customer id=1>
>   <name>Borland</name>
>   <phone>03-5353-9380</phone>
> </customer>
> データバインディングウィザードは、次のような
> インターフェースを自動生成します
>
> ICustomer = interface(IXMLNode)
>  property id: Integer read Getid write Setid
>  property name: DOMString read Getname write Setname;
>  property phone: DOMString read Getphone write Setphone;
>  function Getid: Integer;
>  function Getname: DOMString;
>  function Getphone: DOMString;
>  procedure Setid(Value: Integer);
>  procedure Setname(Value: DOMString);
>  procedure Setphone(Value: DOMString);
> end;
> また、生成されたインターフェースは
> XMLDocumentコンポーネントとともにプログラムで用意に利用できます。
> データベースアプリケーションの中でXMLを使いたい場合は、
> XMLマッパーによって生成される変換ファイルを使う新しいコンポーネントを
> 利用できます。
>

281 :Del厨房no71:02/05/18 18:10
作りかけたけど、案外長くなりそうなので検索して見つけた
ttp://hpcgi2.nifty.com/KENCH/filer/dw.cgi?page=Main&dir=/Source/TMToken

これを uses して
var MToken:TMToken;
begin
MToken:=TMToken.Create('');
  try
  MToken.Text:=Memo1.Lines.Text;
 Person.Name:= MToken.GetToken('Person.Name');
 Person.Age :=StrToInt( MToken.GetToken('Person.Age') );
 Person..Job.Title:=MToken.GetToken('Person..Job.Title');
  finally MToken.Free;end;
end

MToken.ItemList で全トークンの一覧が出ますから
ギコBASICでやってるようなプロパティ検索処理を入れれば自動的にプロパティに入れるのは出来そうですね


282 :Del厨房no71:02/05/18 18:27
プロパティへの書き込み方法ですが

gikoBas.pas の

function Bunkatu(str:string):TStringList;
  |
  |
function SetPropVar(obj:TObject;str:string;numVar:Variant):boolean; 
  |
end; までをコピペして

with MToken.ItemList do try
 for i:=0 to Count-1 do begin
  Token:=MToken.GetToken( Strings[i] );
  SetPropVar( Form1 , Strings[i] , Token );
 end;
finally free;end;
とすれば、Form1のpublishedなプロパティに一致する名前があれば自動的にセットされます

283 :Del厨房no71:02/05/18 18:37
実験は

<Caption>フサギコ</Caption>
<Left>10</Left>

とやって  フォームのキャプションと 左位置が変更された事を確認しました

284 :Del厨房no71:02/05/18 19:05
さらに情報
gikoBas.pas の SetPropVarだと pulishedなプロパティのみにしか自動セット出来ません
ですから、フォームに貼り付けたボタンとかのCaptionには書き込めません
pulished なクラスに書き込むには
 FieldAddress でも検索する必要があるようです


285 :デフォルトの名無しさん:02/05/18 19:16
次のお題はウェブブラウザにでもします?

286 :Del厨房no71:02/05/18 19:28
ギコBASIC拡張計画
http://pc.2ch.net/test/read.cgi/prog/961558082/
の方に >>284 の改良情報を書き込んでおきました

287 :デフォルトの名無しさん:02/05/18 19:45
エンプラ版って幾ら?

288 :デフォルトの名無しさん:02/05/18 19:52
>>285
壮大すぎるので却下。

289 :デフォルトの名無しさん:02/05/18 22:00
なんか料理の鉄人みたいになってきたな。
次スレはそれっぽいタイトルで頼む。

290 :デフォルトの名無しさん:02/05/18 22:13
とりあえずお題は1時間ぐらいで作れるレベルで。

291 :デフォルトの名無しさん:02/05/18 22:19
使っていいコンポ、ライブラリの指定あり

292 :デフォルトの名無しさん:02/05/18 23:58
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/lounge/index.html

ここにソース置き場専用スレ立てる?

293 :デフォルトの名無しさん:02/05/19 00:01
確かに>>285は壮大だが、
2chブラウザならどうだ?しかもマ板用。
具体的にはソースの強調表示機能つきのな。
どの言語で書かれたか判別するのは無理だろうから、
ユーザーが指定したレスないし選択した部分を強調。

294 :デフォルトの名無しさん:02/05/19 00:03
>>293
未完成ならC#用あるよ。

295 :デフォルトの名無しさん:02/05/19 00:25
しかしBorlandの販売戦略は糞だ…
最近ではC Builder Personal版無料にしなかったこと
いかに学生を取り込むかが将来使ってもらえるかの鍵となるのに…
(せめて学術関係者には無料とかすればよかったのに・・・)
VSのアカデミック版のあの価格設定及び上位版との機能の違いは正直うまいと思う。
VSアカデミックはいろんな言語ついて3万円。上位版との違いは使いやすいツールがあるか否か
Delアカデミック(Professional版及びその他)は…
機能
http://www.borland.co.jp/delphi/del6/features.html

価格
ttp://216.239.35.100/search?q=cache:4Dfe5oMeRdcC:www.borland.co.jp/sales/delphi.html+delphi++%83A%83J%83f%83~%83b%83N%81%40%89%BF%8Ai&hl=ja&lr=lang_ja

296 :デフォルトの名無しさん:02/05/19 00:33
>>295
VSにはWindowsXPも付いてくる。


297 :デフォルトの名無しさん:02/05/19 00:36
>>295
なんだかんだ言って自分が欲しいだけでしょ?

298 :デフォルトの名無しさん:02/05/19 00:37
ここはプログラミングの話題にしてほすぃ

299 :デフォルトの名無しさん:02/05/19 00:38
つか、BCB Personalってめちゃくちゃ安いんだし。
それに BCC もあるんだし本気でやろうとするヤツには
十分すぎる環境だと思うけどね >>295

300 :デフォルトの名無しさん:02/05/19 00:52
>>299
本気じゃない奴は学校からVS買わされます。

>>296
正直そのソース教えてください。VSまじでほすぃMEだから無理…?と思っていたので

301 :デフォルトの名無しさん:02/05/19 00:56
>>300
MSDN付きならWin2KServerとXP Pro(開発用途での使用に限る)が付いてくるはず。
開発用途でマシンに負荷をかけるためにゲームを起動したり、
自前のクリップボードユーティリティのテストのためにワードやエクセル使っても良い。
\23kでOS+言語3(4)つ。お得過ぎ。

302 :デフォルトの名無しさん:02/05/19 00:57
VC#, VB.NETの一番安い箱ではコンポーネント作れないって本当ですか?
使う側としては、他の人が作ったコンポーネントは貼り付けて使えます?

…もし作れない&使えないなら、入門者からOOPを覚える機会を奪っているMSの飼い殺し作戦と認定する

303 :デフォルトの名無しさん:02/05/19 00:59
>>302
SDKレベルでは作れるのでは?と個人的には認識。

304 :デフォルトの名無しさん:02/05/19 01:00
>>302
大丈夫です。VB5 CCE がフリーで落ちてます!

305 :デフォルトの名無しさん:02/05/19 01:01
>>304
まだ落ちてるの?あの体験版w

306 :デフォルトの名無しさん:02/05/19 01:04
あれって何かの拍子でスプラッシュが Professional 版になるんだよな、、>CCE

307 :デフォルトの名無しさん:02/05/19 01:09
>>304 いや、.NETのコードじゃないと…ほら、継承とかできませんし…

308 :デフォルトの名無しさん:02/05/19 01:11
>>307
ネタにマジレス、カコ悪い。

309 :302=307:02/05/19 01:21
DelphiならPersonal版でもコンポーネントを作れます&使えます。
入門者にとって、RADでクラスが扱えるのは、クラスの意義を目に見える形で学んでいるようなものです。
コンポーネントを作るという作業はOOPやその言語を強制的に覚えさせられることになりますし、
人の作ったコンポーネントを使うということは使いやすいクラス設計を体感することになります。
でそれらが制限されているとすれば…>>302の結論となります。

…で、結局のとこどうなの?SDKレベルで作ったとして、それは取り込んで使えるわけ?

310 :デフォルトの名無しさん:02/05/19 01:24
コンポーネントを作るという作業はOOPやその言語を
強制的に覚えさせられることになりますし、

 ↓

プログラムを作るという作業はOOPやその言語を
強制的に覚えさせられることになりますし、

311 :デフォルトの名無しさん:02/05/19 01:45
ム板専用ブラウザ。30分ちょっとで作成。

using System;
using System.Drawing;
using System.Reflection;
using System.Runtime.InteropServices;
using System.Windows.Forms;
using AxSHDocVw;

class BrowserForm : Form
{
  AxWebBrowser webBrowser;
  ToolBarButton back;
  ToolBarButton forward;
  ToolBarButton refresh;
  ToolBarButton home;
  ToolBar toolBar;

  public BrowserForm() {
    webBrowser = new AxWebBrowser();
    webBrowser.Dock = DockStyle.Fill;
    webBrowser.HandleCreated += new EventHandler(this.webBrowser_HandleCreated);
    webBrowser.NewWindow2 += new DWebBrowserEvents2_NewWindow2EventHandler(this.webBrowser_NewWindow2);
    webBrowser.TitleChange += new DWebBrowserEvents2_TitleChangeEventHandler(this.webBrowser_TitleChange);

    back = new ToolBarButton("←");
    forward = new ToolBarButton("→");
    refresh = new ToolBarButton("更新");
    home = new ToolBarButton("巣");

    toolBar = new ToolBar();
    toolBar.Appearance = ToolBarAppearance.Flat;
    toolBar.ButtonClick += new ToolBarButtonClickEventHandler(this.toolBar_ButtonClick);
    toolBar.Buttons.AddRange(new ToolBarButton[] { back, forward, refresh, home });

    this.Size = new Size(768, 530);
    this.Controls.AddRange(new Control[] { webBrowser, toolBar });
  }

  private void GoHome() {
    object o = Missing.Value;
    webBrowser.Navigate("http://pc.2ch.net/tech/", ref o, ref o, ref o, ref o);
  }

312 :デフォルトの名無しさん:02/05/19 01:46

  private void webBrowser_HandleCreated(object sender, EventArgs e) {
    this.GoHome();
  }

  private void webBrowser_NewWindow2(object sender, DWebBrowserEvents2_NewWindow2Event e) {
    BrowserForm f = new BrowserForm();
    f.Visible = true;

    e.ppDisp = f.webBrowser.GetOcx();
  }

  private void webBrowser_TitleChange(object sender, DWebBrowserEvents2_TitleChangeEvent e) {
    this.Text = e.text;
  }

  private void toolBar_ButtonClick(object sender, ToolBarButtonClickEventArgs e) {
    ToolBarButton button = e.Button;

    try {
      if (button == back) {
        webBrowser.GoBack();
      }
      else if (button == forward) {
        webBrowser.GoForward();
      }
      else if (button == refresh) {
        object o = Missing.Value;
        webBrowser.Refresh2(ref o);
      }
      else if (button == home) {
        this.GoHome();
      }
    }
    catch (COMException) {
    }
  }

  [ STAThread ]
  public static void Main() {
    Application.Run(new BrowserForm());
  }
}

313 :デフォルトの名無しさん:02/05/19 02:06
IEコンポーネント使ったこと無かったので、練習も兼ねて移植させていただきました。

unit UMain;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, OleCtrls, SHDocVw, ComCtrls, ToolWin;

type
 TForm1 = class(TForm)
  ToolBar1: TToolBar;
  BackButton: TToolButton;
  ForwardButton: TToolButton;
  RefreshButton: TToolButton;
  GoHomeButton: TToolButton;
  WebBrowser1: TWebBrowser;
  procedure WebBrowser1NewWindow2(Sender: TObject; var ppDisp: IDispatch; var Cancel: WordBool);
  procedure WebBrowser1TitleChange(Sender: TObject; const Text: WideString);
  procedure FormCreate(Sender: TObject);
  procedure RefreshButtonClick(Sender: TObject);
  procedure GoHomeButtonClick(Sender: TObject);
  procedure BackButtonClick(Sender: TObject);
  procedure ForwardButtonClick(Sender: TObject);
 private
  { Private 宣言 }
  procedure GoHome;
 public
  { Public 宣言 }
 end;

var
 Form1: TForm1;

314 :デフォルトの名無しさん:02/05/19 02:08
implementation

{$R *.dfm}

procedure TForm1.GoHome;
begin
 WebBrowser1.Navigate('http://pc.2ch.net/tech/');
end;

procedure TForm1.WebBrowser1NewWindow2(Sender: TObject; var ppDisp: IDispatch; var Cancel: WordBool);
begin
 with TForm1.Create(Application) do
 begin
  ppDisp := WebBrowser1.OleObject;
  Show;
 end;
end;

procedure TForm1.WebBrowser1TitleChange(Sender: TObject; const Text: WideString);
begin
 Caption := Text
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
 GoHome
end;

procedure TForm1.RefreshButtonClick(Sender: TObject);
begin
 WebBrowser1.Refresh2
end;

procedure TForm1.GoHomeButtonClick(Sender: TObject);
begin
 GoHome
end;

procedure TForm1.BackButtonClick(Sender: TObject);
begin
 WebBrowser1.GoBack
end;

procedure TForm1.ForwardButtonClick(Sender: TObject);
begin
 WebBrowser1.GoForward
end;

end.

315 :デフォルトの名無しさん:02/05/19 02:12
object Form1: TForm1
 Left = 192
 Top = 107
 Width = 696
 Height = 480
 Caption = 'Form1'
 Color = clBtnFace
 Font.Charset = SHIFTJIS_CHARSET
 Font.Color = clWindowText
 Font.Height = -12
 Font.Name = 'MS Pゴシック'
 Font.Style = []
 OldCreateOrder = False
 Position = poDefault
 OnCreate = FormCreate
 PixelsPerInch = 96
 TextHeight = 12
 object ToolBar1: TToolBar
  Left = 0
  Top = 0
  Width = 688
  Height = 29
  ButtonHeight = 20
  ButtonWidth = 31
  Caption = 'ToolBar1'
  Flat = True
  ShowCaptions = True
  TabOrder = 0

316 :デフォルトの名無しさん:02/05/19 02:12
  object BackButton: TToolButton
   Left = 0
   Top = 0
   Caption = '←'
   ImageIndex = 0
   OnClick = BackButtonClick
  end
  object ForwardButton: TToolButton
   Left = 31
   Top = 0
   Caption = '→'
   ImageIndex = 1
   OnClick = ForwardButtonClick
  end
  object RefreshButton: TToolButton
   Left = 62
   Top = 0
   Caption = '更新'
   ImageIndex = 2
   OnClick = RefreshButtonClick
  end
  object GoHomeButton: TToolButton
   Left = 93
   Top = 0
   Caption = '巣'
   ImageIndex = 3
   OnClick = GoHomeButtonClick
  end
 end
 object WebBrowser1: TWebBrowser
  Left = 0
  Top = 29
  Width = 688
  Height = 424
  Align = alClient
  TabOrder = 1
  OnTitleChange = WebBrowser1TitleChange
  OnNewWindow2 = WebBrowser1NewWindow2
  ControlData = {
   4C0000001B470000D22B00000000000000000000000000000000000000000000
   000000004C000000000000000000000001000000E0D057007335CF11AE690800
   2B2E126208000000000000004C0000000114020000000000C000000000000046
   8000000000000000000000000000000000000000000000000000000000000000
   00000000000000000100000000000000000000000000000000000000}
 end
end

317 :デフォルトの名無しさん:02/05/19 02:29
ちょっと前にC#にコンパイルさせるコードが載っていましたが、
このとき、コンパイルルーチン(中間コード?)がリンクされて、
スタンドアロンコンパイラが作られるって事でしょうか?

318 :デフォルトの名無しさん:02/05/19 02:33
COMが絡むと対決の意味があまりないな・・・。

319 :デフォルトの名無しさん:02/05/19 03:51
対決も何も、C系(C#やC++、Javaも含む)は宣言順序が
開発向けじゃなく、既に出来あがったコードの清書に向いてるんじゃ?
プログラム考える時、変数名や関数名決めるより先に型決めるか?普通。
どちらも使ってるけど、明らかにPascal系のほうが、Cよりも
新しいプログラム書く時は生産効率良い。その代わり、CやC++で
清書しないとPascal系で書かれたコード、再利用するのは大変
コンポーネント化はともかく、再利用性(ライブラリ化)はC系のほ
うが遥かに優れてるようなきがする。

320 :デフォルトの名無しさん:02/05/19 04:09
>>319
なに言っているのかわかりません。

321 :age:02/05/19 04:26
>>319
デムパな文章age!!!

322 :デフォルトの名無しさん:02/05/19 09:38
>>319
何となくわかる。

String data

data :String
の差でしょ?

俺も久々にCファミリーの言語触って違和感感じた。

dataというString型変数。

String型のdataという変数。

頭の切り替えが必要だね。


323 :デフォルトの名無しさん:02/05/19 10:12
では、C#のバイナリ処理能力を見たいので、原始的ながらバイナリダンプ。(色もちゃんと変えてね)

program Dump;

{$APPTYPE CONSOLE}
uses Windows, SysUtils;

function GetAttribute(var F: Text): Word;
var
 Info: CONSOLE_SCREEN_BUFFER_INFO;
begin
 GetConsoleScreenBufferInfo(TTextRec(F).Handle, Info);
 Result := Info.wAttributes
end;

procedure SetAttribute(var F: Text; Attr: Word);
begin
 Flush(F);
 SetConsoleTextAttribute(TTextRec(F).Handle, Attr)
end;

procedure WriteData(Data: array of Char; Next: Char);
var
 I: Integer;
 OrdAttr: Word;
begin
 for I := Low(Data) to High(Data) do
  Write(IntToHex(Ord(Data[I]), 2), ' ');

 Write('': (16 - Length(Data)) * 3);

 OrdAttr := GetAttribute(Output);
 SetAttribute(Output, FOREGROUND_GREEN);
 Write(': ');
 SetAttribute(Output, OrdAttr);

 for I := Low(Data) to High(Data) do
  if Data[I] in [#$20..#$7e, #$80..#$fe] then
  begin
   Write(Data[I]);
   if (I = High(Data)) and (Data[I] in LeadBytes) and (Next in [#$20..#$ff]) then
    Write(Next)
  end
  else
  begin
   OrdAttr := GetAttribute(Output);
   SetAttribute(Output, FOREGROUND_RED);
   Write('.');
   SetAttribute(Output, OrdAttr)
  end;

 WriteLn
end;

324 :デフォルトの名無しさん:02/05/19 10:13
var
 F: File;
 Data: array[0..15] of Char;
 Count, NextCount: Integer;
 Next: Char;
begin
 Assign(F, ParamStr(1));
 FileMode := fmOpenRead or fmShareDenyNone;
 Reset(F, SizeOf(Char));
 BlockRead(F, Data, SizeOf(Data), Count);
 BlockRead(F, Next, SizeOf(Next), NextCount);
 while Count > 0 do
 begin
  WriteData(Slice(Data, Count), Next);
  Count := 0;
  if NextCount > 0 then
  begin
   Data[0] := Next;
   BlockRead(F, Data[1], SizeOf(Data) - SizeOf(Char), Count);
   Inc(Count);
   BlockRead(F, Next, SizeOf(Next), NextCount)
  end
 end;
 Close(F)
end.

325 :デフォルトの名無しさん:02/05/19 13:09
バイナリダンプの部分だけ作ってみた。賢いロジックじゃないけど。
色の変え方はよく分からん。

using System;
using System.IO;
using System.Text;

class BinaryDump {

  public static void Main(string[] args) {
    if (args.Length == 0) {
      return;
    }

    using (Stream s = File.OpenRead(args[0])) {
      byte[] buf = new byte[16];
      int read = 0;
      int index = 0;

      while ((read = s.Read(buf, 0, buf.Length)) > 0) {
        // バイトのインデックス表示
        Console.Write("{0:X8}", index);
        index += 16;

        Console.Write(" ");

326 :デフォルトの名無しさん:02/05/19 13:10

        // 16進表示
        for (int n = 0; n < read; n++) {
          Console.Write("{0:X2}", buf[n]);

          // 区切り文字の表示
          if (n == 7) {
            Console.Write('-');
          }
          else {
            Console.Write(' ');
          }
        }
        // 最終行の帳尻合わせ
        for (int n = 16; n > read; n--) {
          Console.Write("  ");
        }

        Console.Write(" ");

        // 内容表示
        string text = Encoding.GetEncoding("Shift_JIS").GetString(buf, 0, read);
        for (int n = 0; n < text.Length; n++) {
          // 制御文字の置き換え
          if (Char.IsControl(text[n])) {
            Console.Write('.');
          }
          else {
            Console.Write(text[n]);
          }
        }

        Console.WriteLine();
      }
    }
  }
}

327 :デフォルトの名無しさん:02/05/19 13:51
>319
設計無しでコード書くんですか?

328 :デフォルトの名無しさん:02/05/19 14:57
文字色を変えるためのクラス

using System;
using System.Runtime.InteropServices;

sealed class Interop {

  // 標準出力のハンドル取得用
  [DllImport("kernel32.dll")]
  internal static extern IntPtr GetStdHandle(uint nStdHandle);

  internal const uint STD_OUTPUT_HANDLE = unchecked((uint)-11);

  // コンソールの情報取得用
  [DllImport("kernel32.dll")]
  internal static extern bool GetConsoleScreenBufferInfo(
    IntPtr hConsoleOutput, ref CONSOLE_SCREEN_BUFFER_INFO lpConsoleScreenBufferInfo);

  [StructLayout(LayoutKind.Sequential)]
  internal struct CONSOLE_SCREEN_BUFFER_INFO {
    public COORD dwSize;
    public COORD dwCursorPosition;
    public ushort wAttributes;
    public SMALL_RECT srWindow;
    public COORD dwMaximumWindowSize;
  }

  [StructLayout(LayoutKind.Sequential)]
  internal struct COORD {
    public short X;
    public short Y;
  }

  [StructLayout(LayoutKind.Sequential)]
  internal struct SMALL_RECT {
    public short Left;
    public short Top;
    public short Right;
    public short Bottom;
  }

  // 文字色設定用
  [DllImport("kernel32.dll")]
  internal static extern bool SetConsoleTextAttribute(IntPtr hConsoleOutput, ushort wAttributes);

  internal const int FOREGROUND_GREEN = 0x0002;
  internal const int FOREGROUND_RED = 0x0004;
}

329 :デフォルトの名無しさん:02/05/19 18:30
うむ。ちゃんと変わってるね。

using System;
using A = Interop;

class Test {

  public static void Main() {
    IntPtr h = A.GetStdHandle(A.STD_OUTPUT_HANDLE);

    A.CONSOLE_SCREEN_BUFFER_INFO info = new A.CONSOLE_SCREEN_BUFFER_INFO();
    A.GetConsoleScreenBufferInfo(h, ref info);

    ushort orgAttr = info.wAttributes;

    A.SetConsoleTextAttribute(h, A.FOREGROUND_GREEN);
    Console.Write("緑");
    A.SetConsoleTextAttribute(h, A.FOREGROUND_RED);
    Console.Write("赤");
    A.SetConsoleTextAttribute(h, orgAttr);
    Console.WriteLine("白");
  }
}

330 :デフォルトの名無しさん:02/05/19 18:39
DelphiってライブラリでサポートしてないWin32API使うときってどうやるの?

331 :デフォルトの名無しさん:02/05/19 18:44
>>330
↓こんな感じだす
interface
function FindExecutable(lpszFile, lpszDir, lpszResult: PAnsiChar): HINST; stdcall;
implementation
function FindExecutable; external shell32 name 'FindExecutableA';

332 :323:02/05/19 18:46
>>325 ShiftJISの文字が途中で切れた時の処置を>>323ではしてますよ〜♪
>>330 function WWW(XXX: YYY): ZZZ; external 'DLL名' name '内部名'; …要するに大差無し。

333 :デフォルトの名無しさん:02/05/19 19:06
>>331-332
ほうほう。Declare Function〜みたいなものか。

334 :デフォルトの名無しさん:02/05/19 21:11
CSVファイルをExcel形式に変換するプログラムを作成せよ。

335 :デフォルトの名無しさん:02/05/19 21:13
>>334
取りあえずお手本を見せてくれ。

336 :デフォルトの名無しさん:02/05/19 22:13
Excel形式って公開されてるの?
公開されてるならやってみたい。

337 :323:02/05/19 22:24
もしオートメーション使って、というのであれば、先のブラウザ同様どちらも同じ構造のコードになるのであまり面白く無いかと。
C#, Delphi共通で使えるものが無いお題がいいな。
XMLデータベースなんかどうでしょう。DelphiにはMyBaseがあるし、.NETにも同様の機能があった筈。
…Excelのファイルフォーマットが公開されているのであればごめんなさい。

ところでC#でSliceやbuf[1]からの読み込みをどうやるのか見たくて出した先のお題なのですけれど、
使ってくれなかったので、誰か方法だけでも教えてくれませんか?

338 :デフォルトの名無しさん:02/05/19 22:27
>>334
Excel2000使用。こういうのはブビの方がいいかもね。

using System;
using System.IO;
using System.Reflection;
using Excel;

class CSV2Excel {

  public static void Main(string[] args) {
    if (args.Length == 0) {
      return;
    }

    string csv_name = Path.GetFullPath(args[0]);
    string xls_name = Path.GetDirectoryName(csv_name) +
      @"\" + Path.GetFileNameWithoutExtension(csv_name) + ".xls";

    _Application app = null;
    _Workbook book = null;
    object o = Missing.Value;

    try {
      app = new ApplicationClass();
      book = app.Workbooks.Open(csv_name, o, o, o, o, o, o, o, o, o, o, o, o);
      book.SaveAs(xls_name, XlFileFormat.xlExcel7, o, o, o, o, 0, o, o, o, o);
    }
    catch (Exception x) {
      Console.WriteLine(x.Message);
    }
    finally {
      if (book != null) book.Close(o, o, o);
      if (app != null) app.Quit();
    }
  }
}

339 :デフォルトの名無しさん:02/05/19 22:31
SliceなんてC#で使えるのか?

340 :デフォルトの名無しさん:02/05/19 22:32
>>337
XMLデータベースなら、ObjectSpaceという非公開のライブラリを使ったサンプルを前に作ってるよ。
とりあえずこんな感じ。

http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1003826049&res=38&fi=no
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1003826049&res=39&fi=no

341 :デフォルトの名無しさん:02/05/19 22:38
>>339
splitならある。

342 :デフォルトの名無しさん:02/05/19 22:46
>>337
buf[1]からの読み込みならこんな感じ。

  // 第2引数 : 読み込み開始位置
  s.Read(buf, 1, buf.Length - 1);

343 :デフォルトの名無しさん:02/05/19 22:49
何だかんだいいながらコードが出てくると対抗して作ってしまうあたりがDel房。

program CSV2Excel;
{$APPTYPE CONSOLE}
uses ActiveX, SysUtils, Variants, ComObj;
var
 F: TFileName;
 Excel, Book: OleVariant;
begin
 F := ExpandFileName(ParamStr(1));
 CoInitialize(nil);
 try
  Excel := CreateOleObject('Excel.Application');
  try
   Book := Excel.Workbooks.Open(F);
   Book.SaveAs(ChangeFileExt(F, '.xls'), $00000027);
   Book.Close
  finally
   Excel.Quit
  end
 finally
  CoUninitialize
 end
end.

344 :デフォルトの名無しさん:02/05/19 23:01
>>341 それは文字列ですよね。オープン配列の概念が無いみたいなのでやはり必要な部分だけコピーするしか無いのでしょうか。
>>342 成程。ってリファレンス見ればわかる内容ですね。すいません。

345 :デフォルトの名無しさん:02/05/19 23:04
VB.NETでもやってみる。

Option Strict Off

Imports System
Imports System.IO
Imports Microsoft.VisualBasic

Class CSV2Excel

  Public Shared Sub Main(ByVal args As String())

    Dim csv As String = Path.GetFullPath(args(0))
    Dim xls As String = Path.GetDirectoryName(csv) + _
      "\" + Path.GetFileNameWithoutExtension(csv) + ".xls"

    Dim app As Object

    Try
      app = Interaction.CreateObject("Excel.Application")

      Dim book As Object = app.WorkBooks.Open(csv)
      book.SaveAs(xls, &H0027)
      book.Close()
    Catch x As Exception
      Console.WriteLine(x.Message)
    Finally
      If Not app Is Nothing Then
        app.Quit()
      End If
    End Try

  End Sub

End Class

346 :デフォルトの名無しさん:02/05/19 23:36
JScript.NETでも。

import System;
import System.IO;

var args : String[] = Environment.GetCommandLineArgs();

var csv : String = Path.GetFullPath(args[1]);
var xls : String = Path.GetDirectoryName(csv) + "\\" + Path.GetFileNameWithoutExtension(csv) + ".xls";
var app : Object;

try {
  app = new ActiveXObject("Excel.Application");

  var book : Object = app.WorkBooks.Open(csv);
  book.SaveAs(xls, 0x0027);
  book.Close();
}
catch (x : Exception) {
  Console.WriteLine(x.Message);
}
finally {
  if (app != null) app.Quit();
}

347 :デフォルトの名無しさん:02/05/20 00:31
しつもーん。
ここに載ってるDelphiのコードってPersonalで全部動くの?

348 :デフォルトの名無しさん:02/05/20 00:33
>>347
変なコンポーネント使っている場合を除いて動くだろう。

349 :デフォルトの名無しさん:02/05/20 01:41
このスレのためにDel Personal落として入れたぞ(゚Д゚)ゴルァ
お前らも代わりに.NETのランタイムぐらい入れろ(゚Д゚)ゴルァ

350 :デフォルトの名無しさん:02/05/20 01:48
>>349
お前らって誰?

351 :デフォルトの名無しさん:02/05/20 01:50
>>350
Del厨

352 :デフォルトの名無しさん:02/05/20 01:54
Delphiのヘルプ使いづらい。今どき.hlpはないだろ。

353 :デフォルトの名無しさん:02/05/20 02:05
俺は今のHTMLベースのヘルプよりWinヘルプの方が好きだが。

354 :デフォルトの名無しさん:02/05/20 02:07
>>353
ページの移動とか面倒でない?

355 :デフォルトの名無しさん:02/05/20 03:18
Delphiは確かにコンパイルは速いんだが、あの奇妙な文法にはどうしてもなじめん・・・

356 :デフォルトの名無しさん:02/05/20 03:36
>>355
Delphi知らないんですが、どのへんが奇妙ですか?

357 :デフォルトの名無しさん:02/05/20 03:37
>>337
.NETでのSliceの代わりはArray.Copy

358 :デフォルトの名無しさん:02/05/20 03:39
そういえばプロトタイプ宣言の仮引数の名前が違っただけで
エラーになるとか、それどころか片方だけ途中で改行すると
だめだとか、ちょっと作りが荒いところがあるな。

359 :デフォルトの名無しさん:02/05/20 03:41
{コメント}

↑これにはすごい違和感がある。C系言語やってる人間には。

360 :糞スレと思って見てみたら:02/05/20 03:43
良スレの実感・・・

361 :デフォルトの名無しさん:02/05/20 03:46
2chの低級自縛霊であるところの煽り専門の奴らは
コードが出てくると黙っちゃうからねえ。

362 :デフォルトの名無しさん:02/05/20 03:47
>>359
//これ使えなかった?>Delphi
{これがコメントはたしかに違和感あり}

363 :デフォルトの名無しさん:02/05/20 03:51
ANSI Pascalみたいな規格があって、
それに準拠するには{こんなコメントをサポートしないといけないのかも。}
既にむちゃくちゃ独自仕様だからこだわること無いと思うけど。

364 :デフォルトの名無しさん:02/05/20 03:51
代入の :=
文字列の '〜'
end だったり end; だったり end. だったり迷う

365 :デフォルトの名無しさん:02/05/20 03:55
セミコロンはカンマと同様、区切りだから、
end elseのように
一本の文として繋がるとこには置かない。

366 :デフォルトの名無しさん:02/05/20 03:59
:=は結構普通だと思う。
VBみたいに代入と比較の=が同じなのはなんかやだし。
分けてるって事は意味解析も必要なさそう。
'〜'←unix系のsh使いならそれほど違和感ないかも。
end←そもそもbegin〜endが気持ち悪いね。

367 :デフォルトの名無しさん:02/05/20 04:01
最近Delphi始めましたが、Pascalの表記はなじめそうもありません。
とりあえずコンソールアプリを作ってみたものの、
readlnの仕様とかヘルプ見てもよくわかんなかった。
整数を期待する入力にアルファベット入力してみたら、あっさり死んで萎え〜。

368 :デフォルトの名無しさん:02/05/20 04:03
Delphiのフリーカーソルも違和感あり

369 :デフォルトの名無しさん:02/05/20 04:05
Delphi始めて真っ先にフリーカーソルを殺す方法をgoogleで検索した。

370 :デフォルトの名無しさん:02/05/20 04:06
>>367
クラスに属さないグローバル関数というのもいやん。

371 :みの:02/05/20 04:09
じゃあ、Delphiはカス、ということでファイナルアンサー?

372 :出川:02/05/20 04:10
ファイナルアンサー!!!!!

373 :みの:02/05/20 04:10

・・・・・・・・・せいかい!

374 :デフォルトの名無しさん:02/05/20 04:13
このスレの趣旨はバージョンを6つも重ねたDelphiがすでに初バージョンのC#に
追いつかれ追い越され状態なのを確認するスレです。

375 :デフォルトの名無しさん:02/05/20 04:14
出川必死だな(w

376 :デフォルトの名無しさん:02/05/20 04:36
C#陣営のコードはIDE使ってないような気がする。
SDK+エディタでゴリゴリ?

377 :デフォルトの名無しさん:02/05/20 04:44
フリーカーソルの方が便利だよ。

C#のIDEってフリーカーソルに出来るのでしょうか?

378 :デフォルトの名無しさん:02/05/20 04:50
>>377
なんでそうやって無理するの?
い・い・か・げ・ん・直せ>Borland

379 :デフォルトの名無しさん:02/05/20 04:55
>>368
で、どうやるの?

380 :デフォルトの名無しさん:02/05/20 04:56
>>368
ごめん、>>369だった。

381 :デフォルトの名無しさん:02/05/20 05:01
フリーカーソル無効化アドイン
ttp://homepage1.nifty.com/fuu/
フリーカーソル反対!

382 :デフォルトの名無しさん:02/05/20 05:09
フリーカーソルってのがいまいち分からん。
なにがフリーカーソルで、なにがそうでなくて、
フリーカーソルの利点と欠点をだれか教えてくれ。

383 :デフォルトの名無しさん:02/05/20 05:34
 フリーカーソル派 = トランクス派
反フリーカーソル派 = ブリーフ派

384 :デフォルトの名無しさん:02/05/20 06:07
>>383
(・∀・)イイ!

385 :デフォルトの名無しさん:02/05/20 07:22
>>358 引数の名前は、入力支援でも使われるし、同じに統一する事を強制する方がいいと思うけど?
>>367 例外が出るのを 死ぬと表現するのは違和感あるよ

386 :デフォルトの名無しさん:02/05/20 07:42
コードが出るのがちっとでもとぎれると待ってましたと厨房があふれるという罠。

387 :デフォルトの名無しさん:02/05/20 08:19
(*
そういえばプロトタイプ宣言の仮引数の名前が違っただけで
エラーになるとか、それどころか片方だけ途中で改行すると
だめだとか、ちょっと作りが荒いところがあるな。
*)

ワラタ、けなすならPascalの生まれた経緯と歴史くらい勉強してくれ。


388 :デフォルトの名無しさん:02/05/20 11:44
寝て起きたら荒れてる…

Pascalは歴史的にキーボードへの配慮で (* = { で (. = [ となってます。
仮引数名は上下で合せないといけませんが(つーか変えたいなんて言ってる人初めて見ました)、改行は別におっけーだった筈…。

で、C#のIDE(VisualStudio.NET)はフリーカーソルにできますか?(←知りたい)
.NET SDKは英語版の正式版が出た段階で入れ、日本語版、SP 1とキッチリ追いかけてますよ〜。

次のお題は…Windows APIだけで作られた (DelphiならVCL/CLXを、C#ならWindows.Formsを使わずに)
保存と読み込みだけできる簡易メモ帳、とかどうでしょう?
(Delphiに有利過ぎ?でもXML周辺は明らかにC#有利でしたからこの位…w)

389 :デフォルトの名無しさん:02/05/20 11:48
>>388
>で、C#のIDE(VisualStudio.NET)はフリーカーソルにできますか?(←知りたい)

フリーカーソルじゃないけどなかなかインテリジェント。

390 :Delフサギコ ◆zE1iiRdQ :02/05/20 13:01
  ,,,,,,,,,,,,,∧,,∧   /
〜′,,,,,,,ミ,,゚Д゚彡< ここで動いてるC#コードって
  UU""" U U   \Pascal.NETでも同じように記述できるん?

391 :デフォルトの名無しさん:02/05/20 14:12
試したことは無いけど、出来ると思うよ

392 :デフォルトの名無しさん:02/05/20 14:57
>>381
サンクスコ
大分使いやすくなった。

VBの場合予約語や宣言した変数は入力すると勝手に大文字小文字をうまく合わせてくれるじゃん?
Delphiにもその機能があったらいいなぁと思う。
小文字だけはソースが汚いし、Shift押してやるのも面倒。

393 :Delフサギコ ◆zE1iiRdQ :02/05/20 15:06
  ,,,,,,,,,,,,,∧,,∧   /
〜′,,,,,,,ミ,,゚Д゚彡< >>392 賛成でし。
  UU""" U U   \ 有名なG-エキスパってアドインで対応できんのかな?
  BorlandはIndyとかと同じように
  ユーザーサイドの周辺ソフト&ライブラをガシガシ標準環境に
  取り込んで欲しいです。
  そうしないと、マンパワーでどうしたってMSには勝てんだろうし。

フリカ無効化アドインとかも
標準でついてるべき機能だよなー

394 :デフォルトの名無しさん:02/05/20 15:11
>>392
VB.NETってそれ無くなってない?

395 :デフォルトの名無しさん:02/05/20 15:53
動くとしたところで、フサギコは.NETランタイム入れてるのか?

396 :デフォルトの名無しさん:02/05/20 18:02
C#で作ったアプリって重くない?

397 :デフォルトの名無しさん:02/05/20 18:14
>>396
起動がワンテンポ遅れる感じ
ただし遅いPCだけかもしれないけど(漏れのはPV650だからはっきり分かる)

398 :デフォルトの名無しさん:02/05/20 18:37
.NETのランタイムがOSに完全に融合して
常時ロードされるようになれば
アプリの起動が速くなったりして。

Sleepし続けるアプリでも常駐させとけば?

399 :デフォルトの名無しさん:02/05/20 18:42
またOSのメモリ消費が増えるのか。

400 :デフォルトの名無しさん:02/05/20 18:42
>>388
C#版これから作るけど、多分ここに載せきれない分量になるよ。
どこかアプできるとこない?

401 :デフォルトの名無しさん:02/05/20 18:50
>>400
置き場所作ってみました
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1021888173&res=1


402 :デフォルトの名無しさん:02/05/20 18:58
じゃ その次の課題 
"0〜9 + - * / ( ) "を含む 文字列を引数にして 演算し
 整数又は浮動小数点数を返す関数を書け

なんか .NET ってそういうの得意そうじゃない?

403 :デフォルトの名無しさん:02/05/20 19:13
>>402
>なんか .NET ってそういうの得意そうじゃない?
依怙贔屓と取ってよろしいか?

404 :デフォルトの名無しさん:02/05/20 19:38
>>402
jscript.netのevalのこと?

405 :デフォルトの名無しさん:02/05/20 19:50
JScript.NETだとこれだけ。

import System;
var args : String[] = Environment.GetCommandLineArgs();
Console.WriteLine(eval(args[1]));


406 :デフォルトの名無しさん:02/05/20 20:03
>>403
つか、Delphiの力って大体把握してるから、
.NETで書くとどうなるかって方が興味深い・・・。

407 :デフォルトの名無しさん:02/05/20 20:17
これだけ強力なクラスライブラリが完備されてると
そのうち配列の途中に要素を挿入するアルゴリズム(藁
を知らないドットネッターなんてのが出てきそうだな。

408 :デフォルトの名無しさん:02/05/20 20:45
今でも腐るほどいるから気にするな。

409 :デフォルトの名無しさん:02/05/20 20:52
>>402
Delphiのコード、やっぱりこの板のどこかに書いた筈・・・

転載されてた 
http://pc.2ch.net/tech/kako/1003/10035/1003559977.html

の 4

410 :デフォルトの名無しさん:02/05/20 21:53
Delphi版簡易メモ帳完成。
>>401のとこにソースを置きたいのですが、あっちはタブとか空白とかはどうなるのでしょう。
やっぱり全角空白に直さないと駄目?

411 :デフォルトの名無しさん:02/05/20 22:13
0〜9 + - * / ( ) 以外の記号や演算はちゃんとエラーにしてエラーの種類も報告せよ、となるとevalを使うにしても難しい気が…

412 :400:02/05/20 22:33
途中版うpです。これだけですでに死にそう・・・。

http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1021888173&res=2&fi=no

413 :388=410:02/05/20 23:05
この時間帯混み合って回線切れまくりです。ようやくUPできた…。
http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1021888173&res=3&fi=no
無駄にUNICODEアプリケーション(w
*.exeサイズ、ランタイム不要独立実行で19kバイト。DelphiはSysUtilsを使わなければ最小です。(これだけはC++にも負けない)

C#メモ帳試してみます。機能で負けてたら追加するかも。

414 :デフォルトの名無しさん:02/05/20 23:13
海の向こうは盛り上がってるようだ。
http://www.zdnet.co.jp/enterprise/0205/20/02052001.html

415 :デフォルトの名無しさん:02/05/20 23:24
C#のコード、Cで書くのとほとんど変わらないな。(w
しかもヘッダの部分も自前で用意しなきゃならないし。

416 :デフォルトの名無しさん:02/05/20 23:37
uses
 Windows, CommDlg, Messages;

を禁止されてるようなものか。

417 :デフォルトの名無しさん:02/05/20 23:47
N88-BASICってフリーカーソルでしたっけ?
N88-BASIC→BorlandのIDEと使ってきたので、
VZエディタとか使い始めたとき、めちゃ違和感があった。

学者系が非フリーカーソル、
ホビー系はフリーカーソルなのかな?

MS-DOSのラインエディタやIBMのXエディタあたりが
非フリーカーソルの祖先なのでしょうかね。


418 :デフォルトの名無しさん:02/05/20 23:49
>>417
>学者系が非フリーカーソル、
Pascalは教育用言語ですが何か?

419 :教育用言語≠ObjectPascal:02/05/20 23:54
混同し過ぎ。

420 :デフォルトの名無しさん:02/05/20 23:54
うーん、でもBorlandってFortranは出していないよね?
だから教育用途は目指していなかったのでは?


421 :デフォルトの名無しさん:02/05/20 23:56
非フリーカーソル派って、N88-BASICでのプログラミング経験が無いのかな?



422 :デフォルトの名無しさん:02/05/20 23:58
>>421
あるけど、その前にWindows派だったからメモ帳がデフォルト。
確か一太郎のフリーカーソルはあんまり違和感なかったかな?

423 :デフォルトの名無しさん:02/05/21 00:33
フリーカーソルってメリットあるの?
ただ十字キーを連打しなければいけなくなるだけじゃない?

424 :デフォルトの名無しさん:02/05/21 00:38
今回は降参。(;´Д`)
気が遠くなってきた。

β1の頃ならまだ楽だったんだけど・・・。
Microsoft.Win32.Interop.dll があったから。

425 :400:02/05/21 00:47
424=400です。

426 :デフォルトの名無しさん:02/05/21 00:48
↑キーで真上にカーソルが移動する方が自然です。
私は、左端はエンターキーもしくはHOME CLRキー、右端はヘルプキー
ですな。

427 :デフォルトの名無しさん:02/05/21 00:53
>>426 同じー

428 :デフォルトの名無しさん:02/05/21 00:57
>>426
そういう考え方もあるね。
フリーカーソルの方が良いと思ってたけど、
どっちが良いのかはユーザ次第ってことか。

429 :デフォルトの名無しさん:02/05/21 01:03
改行マークを表示できるエディタなら非フリーカーソルがいいです。
改行マークを表示できないエディタならフリーカーソルがいいです。

ですから、Delphiのエディタがフリーカーソルなのはまあ賛成。
VC++ or VBのエディタも、フリーカーソルにするか改行を表示するかどっちかして欲しい…

430 :デフォルトの名無しさん:02/05/21 01:28
WZのフリーカーソル(もどき)が一番いい。
Borlandのは、おかしいよ・・・

431 :デフォルトの名無しさん:02/05/21 01:38
VCはフリーカーソルにできるよ。

432 :デフォルトの名無しさん:02/05/21 01:50
Delphiのオートインデントとスマートタブは変だと思うけどね。
だからOFFで使っています。

433 :デフォルトの名無しさん:02/05/21 01:55
>>432
オートインデントはかなり便利だと思うが。
構造が入り組んでくると、わざわざ自分でインデントするの大変だよ。

434 :400:02/05/21 07:40
とりあえずできたところまで。

http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1021888173&res=4&fi=no

435 :デフォルトの名無しさん:02/05/21 20:23
Delphi版メモ帳を参考に、一応動くものに。

http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1021888173&res=5&fi=no

436 :デフォルトの名無しさん:02/05/21 20:30
API叩くだけっていうの面白くないな。
囚人のジレンマのアプリケーションフレームワークはどうよ?

437 :デフォルトの名無しさん:02/05/21 21:49
ていうかさ、C#でアンマネージドなプログラムは作れないのか?

438 :デフォルトの名無しさん:02/05/21 21:51
無理。unsafeなものなら作れる。

439 :デフォルトの名無しさん:02/05/21 21:58
やっぱり作れないのか。
その時点で買う気無くなったな。
VisualC++しかないんかなやっぱり。

スレ違いでスマソ。

440 :デフォルトの名無しさん:02/05/21 22:01
>>439
禿同。やっぱりDelphiダヨネ!

441 :デフォルトの名無しさん:02/05/21 22:13
>>439
Delphi、すごくいいと思うんだけど、高すぎる。
学割で数万とか有り得ない。こんな高いもん買えん。
Personal版は制限がきつくてやってられんし。

442 :デフォルトの名無しさん:02/05/21 22:30
C++Builder6Proアカデミック版1万円にしれ。高すぎ。

443 :デフォルトの名無しさん:02/05/21 23:12
VSは安かったよなぁ。

444 :デフォルトの名無しさん:02/05/21 23:41
BorCon 2002 Keynote:Turbo Pascal/Delphiの生みの親,ヘイルスバーグが
古巣の基調講演に登場
http://www.zdnet.co.jp/enterprise/0205/21/02052101.html

これ見て気になったんだけど、

>2003年にはコードネームで「Galileo」と呼ばれ,.Net Frameworkをフルサポート
>したDelphiも登場する。

ということは、今年出るDelphi.NETは。。。

445 :デフォルトの名無しさん:02/05/21 23:48
>>444
情報サンクス
バージョンアップは1回見送るのが正解かな

446 :デフォルトの名無しさん:02/05/21 23:48
延期!

447 :デフォルトの名無しさん:02/05/21 23:49
なんだ、やっぱり駄目じゃん、Delphi.NET。

448 :デフォルトの名無しさん:02/05/21 23:59
思った通りだ。あのデモ画面を見ても.NETフルサポートしてないのは明らかじゃないか。

449 :デフォルトの名無しさん:02/05/22 00:02
あのデモ画面ってなんですか?
えっらそうに。

450 :デフォルトの名無しさん:02/05/22 00:07
>>449
悔しいのか?プププ

451 :デフォルトの名無しさん:02/05/22 00:09
DelphiがC#と肩を並べられるのは2003年以降です。

452 :デフォルトの名無しさん:02/05/22 00:11
>>441
>Personal版は制限がきつくてやってられんし。
具体的に。
学生がデータベースぐりぐりアクセスって考えられないんだけど。

453 :Delフサギコ ◆zE1iiRdQ :02/05/22 00:15
    ∧ ∧  ・・・・。
    ミ ゚Д゚彡
  〜ミ,,,,uuミ  正直、MSILコンパイラだけとは...チェッ

Personalが制限がキツイとか言う厨はほっとけ。

454 :デフォルトの名無しさん:02/05/22 00:21
なーんだ。.NET対応しないのか。
当分Delphiは手を出す必要はないな。

455 :デフォルトの名無しさん:02/05/22 00:29
>>452
機能的に、じゃなくて、ライセンス的に。
商用・業務アプリケーションの開発はできません。
とあるが、なんでこういうわけの分からない制限つけるかね。

456 :デフォルトの名無しさん:02/05/22 00:32
>>454
というより.NETならDelphiは必要ないじゃん(C#があるさ)

漏れは.NETできない環境のためにDelphiを使うと思うよ

457 :デフォルトの名無しさん:02/05/22 00:36
DelphiはVB.NETの代わりにもならないことが判明しました

458 :デフォルトの名無しさん:02/05/22 00:41
しばらくはVB.NETの天下だな

459 :デフォルトの名無しさん:02/05/22 01:47
Delphi.NETはハッタリでまだ実体のないものだということが判明しました

460 :デフォルトの名無しさん:02/05/22 02:02
C#なのにVBの名前出すんじゃない。

461 :デフォルトの名無しさん:02/05/22 03:34
>>436 とりあえずDelphi用。
というかよく知らずに作ってますけど囚人のジレンマフレームワークってこんなのでいいの?

http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1021888173&res=6

462 :デフォルトの名無しさん:02/05/22 03:57
言語機能やライブラリこそ似通ってるが、基本的には、DelphiはC/C++と同系統、C#/VB.NETはJavaと同系統。
ネイティブを対象としたコンパイラと、マネージド環境を対象としたコンパイラを比べ、
片方が片方の環境に対応しないから、駄目って、それは判断基準が違う。

DelphiでASP.NETのコードは書けないし、C#/VB.NETでWindowsフックDLLは書けない。何か問題が?

(マネージドコードではそれ専用に作られたC#が最適なのはわかりきっているので)
むしろDelphi.NETはManaged C++のようになって欲しいと思うのは僕だけ?
ネイティブとの仲介に使える言語がManaged C++だけというのは辛すぎる気がしてるのでObjectPascalで書けたら…
Delphi 7のMSILコンパイラって、詳細どうなんでしょ。

463 :デフォルトの名無しさん:02/05/22 09:08
> C#/VB.NETでWindowsフックDLLは書けない

.NETではJNIほど難しくありませんよ

464 :デフォルトの名無しさん:02/05/22 09:36
フックPROCは DLL になければならない この意味が判りますか? >>463

465 :デフォルトの名無しさん:02/05/22 11:21
>>455
>商用・業務アプリケーションの開発はできません。
>とあるが、なんでこういうわけの分からない制限つけるかね。

もっとも低機能なpersonalですらまともな業務用アプリケーションが構築できてしまうからです。

466 :デフォルトの名無しさん:02/05/22 16:25
>>464
LoadLibraryしてGetProcAddressできたらmanagedの意味がねーだろ!

467 :デフォルトの名無しさん:02/05/22 17:16
何か勘違いしている模様

468 :デフォルトの名無しさん:02/05/22 17:26
>>462
無知の知という言葉を送ろう。CLRでWindowsフックDLL書けますよん。

対象が違うという議論はMC++とC#にはあてはまるけど、C#とDelには
あてはまらんよね。もともとDelは打倒VBで作られたんだから、C#と
目標が同じであるのは明白であろう。

469 :デフォルトの名無しさん:02/05/22 17:33
>>468
>CLRでWindowsフックDLL書けますよん
教えて!!

>Delは打倒VB
Delphiのいいところは、VBのような記述を、C++と同じ性能同じレベルで書ける、というところにあると思っていますので、
むしろずっとネイティブでいて欲しいと思う自分。

470 :デフォルトの名無しさん:02/05/22 17:34
じゃあ、次のお題はキーボード入力のシステムフックだ!

471 :デフォルトの名無しさん:02/05/22 17:38
>>469
C#だけでシステムフックができるの?

472 :???:02/05/22 17:47
http://dotnet247.com/247reference/msgs/1/6971.aspx

473 :デフォルトの名無しさん:02/05/22 17:57
>>471
IL変更すればできるらしい。詳細は忘れた。(w

>>472
そりはローカルフックでは?

474 :デフォルトの名無しさん:02/05/22 17:58
読めないや
く( ´∀`) テヘッ

475 :デフォルトの名無しさん:02/05/23 02:41
>>473
メソッドのエクスポートの仕方。
http://discuss.develop.com/archives/wa.exe?A2=ind0204b&L=dotnet&F=&S=&P=78832

フィールドのやり方はいまだにわからん。

476 :デフォルトの名無しさん:02/05/23 02:47
>C# vs Delphi Round 1

Microsoft C# Microsoft Visual Studios Borland Delphi?

477 :デフォルトの名無しさん:02/05/23 03:54
Delphi.NETが出たらVCLって死滅しちゃうの???

478 :デフォルトの名無しさん:02/05/23 04:21
>>477
VCLは非劣化情報なのでコピーとっとけば死滅しません。


479 :デフォルトの名無しさん:02/05/23 05:27
ネイティブコードをはけるC#コンパイラキボンヌ

480 :デフォルトの名無しさん:02/05/23 06:01
C#で作れるEXEファイルって
.NETをインストールしてないと動かないの?
それとも、何かDLLだけインストールすれば動くようになるの?

481 :デフォルトの名無しさん:02/05/23 08:27
Del厨?

482 :デフォルトの名無しさん:02/05/23 10:33
C#コンパイラってネイティブコードはかないの?
Javaと一緒?

483 :デフォルトの名無しさん:02/05/23 10:35
C#とかDelphiなんかよりやっぱC++Builderが最強でしょ。
Delphiのクソ使いにくいこんなの業務に使えるのかって
言語仕様がC++になることで解消されてる。

484 :デフォルトの名無しさん:02/05/23 10:49
>>483 もしかして STL が無いとコード書けない人?

485 :デフォルトの名無しさん:02/05/23 11:12
>484
無くても書けるがあると楽だ。
VCLだけだと物足りない。

486 :485:02/05/23 11:13
漏れ!=483ね。一応。

487 :461:02/05/23 11:46
無視されてる…オープン配列やらvirtualなクラスメソッドやらC#に無さそうな機能を使って頑張ったのに…

488 :デフォルトの名無しさん:02/05/23 14:59
>>487
フレームワークの意味がわからなかったんだよ。
きっとVB上がりばっかリだからクラスなんて作ったことないだろうな。
というわけでDelphi=Object Pascalユーザーの圧勝。

489 :デフォルトの名無しさん:02/05/23 15:24
>>488
フレームワークって何ですか?ぜひ教えてください。
>>461 さんのソースはどのへんがフレームワークなんですか?



490 :デフォルトの名無しさん:02/05/23 15:41
STLはともかく、テンプレートは便利だよなぁ。
Delphiにも欲しいぞ。

491 :デフォルトの名無しさん:02/05/23 15:43
>>489
本人がそう言ってるところ。

492 :デフォルトの名無しさん:02/05/23 16:07
>>490
今時、クラスライブラリのないOOPLや
STLのないテンプレートなどには
全く存在価値がありませんが?

493 :デフォルトの名無しさん:02/05/23 16:57
VCL,STL,OWL,MFC全部使えるBuilder最強。

494 :デフォルトの名無しさん:02/05/23 17:08
>>493
それだけポリシーがない環境ということ。

495 :デフォルトの名無しさん:02/05/23 17:12
へぇ、ポリシーねぇ。

496 :デフォルトの名無しさん:02/05/23 18:32
( ´・∀・`) へー

497 :デフォルトの名無しさん:02/05/23 18:39
】“Aurora”“Galileo”“Charlotte”“Edison”──次世代製品の概要が明らかに
http://ascii24.com/news/i/topi/article/2002/05/23/635945-000.html

498 :デフォルトの名無しさん:02/05/23 18:51
「100%Pure .NET開発環境」ということは現行のVCLはあぼーんということですな

499 :デフォルトの名無しさん:02/05/23 18:57
Borlandって節操ないよね。

500 :デフォルトの名無しさん:02/05/23 19:01
でもさDelphi.NETついてもランタイム要るんだろ?
駄目じゃん(藁

501 :デフォルトの名無しさん:02/05/23 19:02
でもさDelphi.NETついてもランタイム要るんだろ?
駄目じゃん(藁

502 :デフォルトの名無しさん:02/05/23 19:06
ああ言えば上裕。

503 :デフォルトの名無しさん:02/05/23 19:34
>>500
イタタタタ

504 :デフォルトの名無しさん:02/05/23 19:42
Delphi.NETで作ったアプリを動かすにはBorland.Vcl.〜.dllがないと動きません。
これはVBの悪夢の再来です。

505 :デフォルトの名無しさん:02/05/23 19:55
>>504
.NETの基礎の基礎。アセンブリ管理機構すら勉強してないアフォの発言に見えるな。


506 :デフォルトの名無しさん:02/05/23 19:58
>>505
でもさDelphi.NETついてもランタイム要るんだろ?
駄目じゃん(藁

507 :デフォルトの名無しさん:02/05/23 19:59
アセンブリ管理機構てどんなの?

508 :デフォルトの名無しさん:02/05/23 20:00
これだな
http://www.google.co.jp/search?hl=ja&q=%83A%83Z%83%93%83u%83%8A%8A%C7%97%9D%8B@%8D%5C

509 :デフォルトの名無しさん:02/05/23 20:03
( ´・∀・`) ・・・

510 :デフォルトの名無しさん:02/05/23 20:03
>>508
でもさお前ついてもランタイム要るんだろ?
駄目じゃん(藁

511 :デフォルトの名無しさん:02/05/23 20:04


512 :デフォルトの名無しさん:02/05/23 20:09
アセンブリ管理機構とやらを勉強してないとアフォらしいな。
>>508から飛んで勉強しとこう。

513 :デフォルトの名無しさん:02/05/23 20:09
でもさ.NETついてもランタイム要るんだろ?
駄目じゃん(藁

514 :デフォルトの名無しさん:02/05/23 20:13
検索のヒント

 ・キーワードに誤字・脱字がないか確かめてください。
 ・違うキーワードを使ってみてください。
 ・より一般的な言葉を使ってみてください。

「アセンブリ管理機構」 は誤字・脱字があるか、一般的でないらしい

どうすればアフォから脱出できますか

515 :Delフサギコ ◆zE1iiRdQ :02/05/23 20:30
                    ________
                ∧,,∧   /まづは
                ミ,,゚Д゚彡<  2chの情報を
             _φ__⊂ミ_  \鵜呑みにしないことから
           /旦/三/ /|   はじめなさい。
        | ̄ ̄ ̄ ̄ ̄|  |
        | 愛媛ミ力ソ .|/
          ̄ ̄ ̄ ̄ ̄

516 :デフォルトの名無しさん:02/05/23 20:41
>>515

   ∧_∧  / ̄ ̄ ̄ ̄ ̄
  ( ´∀`)< ・・・
  (    )  \_____
  | | |
  (__)_)

517 :デフォルトの名無しさん:02/05/23 20:52
そーいや、アセンブリとマニフェストの関連を表す言葉ってないね。


518 :デフォルトの名無しさん:02/05/23 21:26
ワラタ
http://www.zdnet.co.jp/enterprise/0205/21/dotnet.jpg


519 :デフォルトの名無しさん:02/05/23 21:28
>>515 隔離スレから出てこないでください

ミ,,゚Д゚彡フサギコのフサフサDelphi談話室B
http://pc.2ch.net/test/read.cgi/tech/1021554929/

520 :461:02/05/23 21:36
別にDelphiはネイティブ世界で最強だから別にいい。.NETみたいに囲われなくてもネイティブのまま
クロスプラットフォームもサーバーサイドもできるし、ランタイム要らないし軽々動くもん…と強がりを言ってみる。

フレームワークというのは、枠組みとなるライブラリって解釈でいいと思います。
Windows.Formsを一行も変更せずに楽々ウィンドウアプリケーション作れるでしょ?
同様、DilemmaFrame.pas/DilemmaConsole.pasを一行も変更せずに囚人を作って試せる
構造にしたので、これらをフレームワークと呼んでもいいかな?と手前勝手な解釈ながら。

Delphi.NETが屑でも、ネイティブはDelphi、.NETはC#と割り切って使うだけ(Delphi.NET最強ならそれが一番いいが)
と思っているので、ObjectPascalとC#で同じ処理を行うコードを見たいと思ってます。さあ出せ(w

トカカイテオイテバグガアッタラハズカシイノデワリビイテヨンデクダサイ

521 :デフォルトの名無しさん:02/05/23 23:29
特定のプラットフォーム(Windows?)用のランタイムライブラリをリンクして、
そのターゲット上で実行するときだけランタイム不要にする。

他の環境は要ランタイムってできないの?


522 :デフォルトの名無しさん:02/05/23 23:30
>>521
って言うかJIT、PreJITがあるから。

523 :デフォルトの名無しさん:02/05/23 23:32
JITってアプリケーションのEXEに含まれるのですか?

524 :デフォルトの名無しさん:02/05/23 23:37
>>523
その前にJITって何かわかってる?

525 :デフォルトの名無しさん:02/05/23 23:51
>>524
Del厨に分かるわけないだろ。(嘲笑激藁

526 :524:02/05/23 23:52
>>525
お前に構うのはIPパケットの無駄だがね。
俺がDel厨だとしたら?

527 :デフォルトの名無しさん:02/05/23 23:53
また「嘲笑激藁」厨か・・・


528 :デフォルトの名無しさん:02/05/23 23:53
Del厨は>>523

529 :デフォルトの名無しさん:02/05/24 00:17
タバコは・・・JT

530 :デフォルトの名無しさん:02/05/24 00:30
Just Intel sysTem?

531 :523:02/05/24 00:45
Just In Time コンパイラの事でしょ?
だからね、必要なJITコンパイラを exe につけて、
実行時に中間コードをコンパイルして実行するの!

もぉ!

532 :デフォルトの名無しさん:02/05/24 00:52
嘲笑激藁厨ってwin板にもいたな。

533 :デフォルトの名無しさん:02/05/24 00:57
ほら、Del厨なんてこんなもんだ。(嘲笑禿藁

534 :デフォルトの名無しさん:02/05/24 00:58
ひょっとしてEXEは作れても完全なネイティブでないのか?


535 :デフォルトの名無しさん:02/05/24 04:18
DelphiってWindowsでしか動かないんでしょ。
駄目じゃん(藁

536 :デフォルトの名無しさん:02/05/24 04:36
Kylix は?

537 :デフォルトの名無しさん:02/05/24 04:44
名前が違うじゃん(藁

538 :デフォルトの名無しさん:02/05/24 05:10
実質、Delphi for Linux じゃないの?
使ったことないけど。

539 :デフォルトの名無しさん:02/05/24 05:15
Delphi for Qtと言った方がいいかも

540 :デフォルトの名無しさん:02/05/24 05:27
KylixはすべてのLinux機で動かないからクソ

541 :デフォルトの名無しさん:02/05/24 05:37
VCLが使えるわけじゃないからなぁ

542 :デフォルトの名無しさん:02/05/24 05:38
でもさDelphi.NETついてもランタイム要るんだろ?
駄目じゃん(藁

543 :デフォルトの名無しさん:02/05/24 05:41
>>542
.NET Framework に加えて、Delphi.NET 独自のランタイムがいる、ってこと?


544 :デフォルトの名無しさん:02/05/24 06:01
.NETにランタイムがいるのは許せるけど、Delphiにランタイムがいるのは許せない。

545 :デフォルトの名無しさん:02/05/24 06:05
>>544
>Delphiにランタイムがいるのは許せない。

頭冷やせ。

546 :デフォルトの名無しさん:02/05/24 06:18
ストッキング冷やせ。

547 :デフォルトの名無しさん:02/05/24 06:19
Delphi.NETはネイティブコードではありません。
Delphi.NETはランタイムに依存します。

どうよ?

548 :デフォルトの名無しさん:02/05/24 06:24
お 前 ら 同 名 の 開 発 言 語 が あ る 場 合
.NET を 付 け や が れ


549 :デフォルトの名無しさん:02/05/24 06:26
>>547
それは他の.NETでも同じこと。
どうせ他のソフトにだってdllの一つや二つ付いてくる。
ランタイム=遅い、DLL HELL
って従来のステレオタイプな考えは.NETでは恥ずかしい。


550 :デフォルトの名無しさん:02/05/24 06:26
↑何が言いたいの?

551 :デフォルトの名無しさん:02/05/24 06:40
>>550
DelphiはDLLに依存しないネイティブコードが売りだということ。

552 :デフォルトの名無しさん:02/05/24 06:42
>>551
ひねくれ者だな。

553 :デフォルトの名無しさん:02/05/24 06:43
でもさDelphi.NETついてもランタイム要るんだろ?
駄目じゃん(藁

554 :デフォルトの名無しさん:02/05/24 06:44
>>553
どうダメか説明してくれ。
後、ランタイムとクラスライブラリdllの違いも説明してくれ。
(その文章書いてるってことはわかってないんだろうけど(激藁嘲笑。)

555 :デフォルトの名無しさん:02/05/24 06:53
たった数個のクラスを使うためだけに、数百個クラスの詰まったDLLが必要になる。
.NETでデフォルトでついてくるならまだしも、Borland製じゃね。

556 :デフォルトの名無しさん:02/05/24 06:59
このプログラムを動かすにはBorland.Vcl.dllが必要です。

そんなアプリ俺は使わない。

557 :デフォルトの名無しさん:02/05/24 07:02
ネイティブでもない、単体exeでもない。
Delphi.NETの売りは何なのか?

558 :デフォルトの名無しさん:02/05/24 07:03
>>556
じゃあ君はdll使うアプリはいっさい使わないんだね。ご苦労様。

559 :デフォルトの名無しさん:02/05/24 07:06
Del厨必死だな。(藁

数ヶ月前は.NETをボロクソに言ってたくせに。(w

560 :デフォルトの名無しさん:02/05/24 07:07
>>559
今では何か勘違いしているバカを矯正するので大変だよw

561 :デフォルトの名無しさん:02/05/24 07:08
でもさDelphi.NETついてもランタイム要るんだろ?
駄目じゃん(藁

562 :デフォルトの名無しさん:02/05/24 07:10
>>561
そんな何回も同じもの張るなよ。

563 :デフォルトの名無しさん:02/05/24 07:12
Del厨も.NETに移行するまで時間がかかりそうだね。
ブビ厨に教わった方がいいかもね。(w

564 :デフォルトの名無しさん:02/05/24 07:13
.NETの土俵に上がったら、できることはDelphiもVBもC#も変わらないじゃん。
Delphiを使う意味って何?

565 :デフォルトの名無しさん:02/05/24 07:15
C# を使う意味って何?
VB.NET を使う意味って何?
Delphi を使う意味って何?

566 :デフォルトの名無しさん:02/05/24 07:21
>C# を使う意味って何?

.NET Frameworkを築いた言語であること。

>VB.NET を使う意味って何?

世界で最も使われている言語あること。

>Delphi を使う意味って何?

知らん。

567 :デフォルトの名無しさん:02/05/24 07:30
Delphi.NETが出たらライブラリも言語仕様も変わる

過去のDelphi資産がすべてあぼーん

だから今のうちに移行の準備しとけよ

VBと同じ手口じゃん(プッ

568 :デフォルトの名無しさん:02/05/24 07:39
はじめてみたけど、すげえバカバカしいスレだな(w


569 :デフォルトの名無しさん:02/05/24 07:49
.NET系スレは粘着Del厨が出てきてすべてダメにしてしまう。

570 :デフォルトの名無しさん:02/05/24 08:00
厨な質問で申し訳ないが、.Net Framework上でプログラムの実行速度は遅くなったりしゅる?

571 :デフォルトの名無しさん:02/05/24 08:06
ものによるんじゃない?
CPU IntensiveなものはJITされるからあんまり変わらん気がする

572 :デフォルトの名無しさん:02/05/24 08:13
ベンチマークとかあるとわかりやすいねんけど。
Java vs C# vs その他。みたいな。   

573 :デフォルトの名無しさん:02/05/24 08:27
前にどこかのスレでやったよ C# vs Delphiでベンチマーク
単純コードで C#が25%増し程度 再帰を使うコードでも倍程度しか時間がかからない


574 :デフォルトの名無しさん:02/05/24 08:30
>>573
どこのスレか思い出せませんか?
見てみたい。

.NET 関連スレかな。


575 :転載:02/05/24 08:42
DelphiとC#の比較2
これだとだいたい倍近く差が出る。

procedure TForm1.Button2Click(Sender: TObject);
function func(a:Integer):Integer;
var i:integer;
begin
Result:=0; if a<1 then exit;
Result:=1; if a<2 then exit;
for i:=1 to a-1 do Result:=Result+func(a-i)+func(i);
end;
var StartTime:int64;
begin
StartTime:=GetTickCount;
func(19);
Memo1.Lines.Add(format('%10.2fsec',[(GetTickCount-StartTime)/1000]) );
end;


private int func(int a)
{
if (a<1)return 0;
if (a<2)return 1;
int r=1;
for(int i=1;i<a;i++)r += func(a-i)+func(i);
return r;
}
private void button2_Click(object sender, System.EventArgs e)
{
DateTime stim = DateTime.Now;
func(19);
textBox1.AppendText( "\x0d\x0a"+((DateTime.Now.Ticks-stim.Ticks)/10000000.0).ToString("f") );
}

576 :デフォルトの名無しさん:02/05/24 08:44
元スレキボンヌ

577 :デフォルトの名無しさん:02/05/24 08:45
>>569
根拠もなしにDel厨がどうこう言うやつが一番ダメ

>>570
起動する時がもっさりしている位かな、気になるのは

578 :デフォルトの名無しさん:02/05/24 08:53
やっぱりDelphi(not Delphi.NET)じゃなきゃダメだね。

579 :デフォルトの名無しさん:02/05/24 12:50
Delphi dot not
Delphi not yet

580 :デフォルトの名無しさん:02/05/24 12:54
>>575
しつもん!
どうしてDelphi側はイベントプロシージャなんですか?
条件を同じにするならどちらもコンソールにするかC#側をWindows.Forms仕様に書き換えてもいいと思います。

581 :デフォルトの名無しさん:02/05/24 12:58
>>580
よく見ろ

582 :デフォルトの名無しさん:02/05/24 12:58
>>580 なんか判らんが好きなようにコード書いて比較して 結果を発表しなさい

583 :Delフサギコ ◆zE1iiRdQ :02/05/24 12:59
               _______
  ピッ!   ∩∧,,∧  /先生、>>580君のシツモソの
       ミ,,゚Д゚彡< 意味がチョットわからません
        ミ    ミ   \_____
  \ ̄ ̄ ̄ ̄ ̄U ̄ ̄\
  ||\             \
  ||\|| ̄ ̄ ̄ ̄ ̄ ̄ ̄|| ̄
  ||  || ̄ ̄ ̄ ̄ ̄ ̄ ̄||
     .||              ||

584 :デフォルトの名無しさん:02/05/24 12:59
不正をしてでもDelphiの方が速いと言いたいんだよ。(嘲笑激藁

585 :デフォルトの名無しさん:02/05/24 13:00
>>580
ごめんなさい。

586 :デフォルトの名無しさん:02/05/24 13:03
>>575
やっぱりDelphiはどこからどこまでがブロックか分かりづらい。
begin〜endはダメだなこりゃ。

587 :デフォルトの名無しさん:02/05/24 13:04
>>586
そのための強調表示です。

588 :デフォルトの名無しさん:02/05/24 13:04
>>580
private void button2_Click(object sender, System.EventArgs e)
↑俺にはイベントハンドラにしか見えんのだが
実際、フォームにボタンを貼り付けてテストしたんだけど・・・

589 :デフォルトの名無しさん:02/05/24 13:05
>>586
Oracleのストアドとか書いたこと無いでしょ
(あれ?どこかでも同じことを書いたような・・・)

590 :デフォルトの名無しさん:02/05/24 13:06
>>587
強調表示しないと分からないということがクソなんだよ。

591 :デフォルトの名無しさん:02/05/24 13:08
>>575ってC#の方が速いっていうことだよね?
コンパイル速度も実行速度もC#の圧勝だNE!

592 :デフォルトの名無しさん:02/05/24 13:10
>>591
真に受ける厨房がたまにいるかも知れんから
わざと間違った情報を書き込むのは控えよう

593 :デフォルトの名無しさん:02/05/24 13:11
>592
オマエガナー(w

594 :デフォルトの名無しさん:02/05/24 13:12
Windows XP、PenV650での実行結果
Delphi 17.78秒
C#   30.83秒

595 :Delフサギコ ◆zE1iiRdQ :02/05/24 13:13

      ∧,,∧ サッ  /強調表示とか言う奴
     ミ,,゚Д゚ミ  < 逝ってよし
    ⊂   Om   \
     ミ、,, ミ,
      .しヾJ 

>>575のコードのインデントはこう
(インデントは全角スペでヨロシコ)
procedure TForm1.Button2Click(Sender: TObject);

  function func(a:Integer):Integer;
  var i:integer;
  begin
   Result:=0; if a<1 then exit;
   Result:=1; if a<2 then exit;
   for i:=1 to a-1 do Result:=Result+func(a-i)+func(i);
  end;

var StartTime:int64;
begin
 StartTime:=GetTickCount;
 func(19);
 Memo1.Lines.Add(format('%10.2fsec',[(GetTickCount-StartTime)/1000]) );
end;

関数内関数くらい、氏っとけ

596 :デフォルトの名無しさん:02/05/24 13:16
Delphiって return 0; みたいなことできないんだ。
VB.NETですらサポートしたのに。(w

597 :デフォルトの名無しさん:02/05/24 13:18
>>596
C#とDelphiを比較するなら両方ともあるていど知っている必要がある

このスレに君のような初心者は不要

598 :デフォルトの名無しさん:02/05/24 13:20
関数内関数、まさにオブジェクト指向を無視した構造ですな(w
どこがObject Pascalなんだろう?D.NETどうなることやら。

599 :デフォルトの名無しさん:02/05/24 13:20
>>598
アフォ?

600 :Delフサギコ ◆zE1iiRdQ :02/05/24 13:32
>>599
他を寄せ付けないくらいに....

   ∧,,∧  プハァ
  ミ,,゚Д゚彡 ∫
  と  ,,ミつ━
━┳━━┳━┓  
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|

601 :デフォルトの名無しさん:02/05/24 13:33
>>598
イタイからもう来るな。

602 :デフォルトの名無しさん:02/05/24 14:07
つーか、こんなコードでベンチマーク比べちゃうんですか?
さすがDel厨

603 :デフォルトの名無しさん:02/05/24 14:09
>>600 隔離スレから出てこないでください

ミ,,゚Д゚彡フサギコのフサフサDelphi談話室B
http://pc.2ch.net/test/read.cgi/tech/1021554929/

604 :デフォルトの名無しさん:02/05/24 14:12
*** 注意 ***

>>575のベンチマークはインチキです。
C#の方はDebugモード&最適化なしでコンパイルしています。
こういう偽の情報にはくれぐれも注意しましょう。

C#の方がコンパイルも実行も高速です!

605 :デフォルトの名無しさん:02/05/24 14:15
C#とDelphiとは低レベルな争いだな。

606 :デフォルトの名無しさん:02/05/24 14:16
>>604
>C#の方はDebugモード&最適化なしでコンパイルしています。

出てくるMSILはDebug Releaseとも同一だ

と日系BPパソコンベストムック、始めようC#のP20のコラムに書いてある。
取り合えず論拠もないのに騒ぐな。

607 :デフォルトの名無しさん:02/05/24 14:22
マルチスレッド環境とシングルスレッド環境を比較して、
「シングルスレッドの方が高速です」と言ってるとはレベルが低いですね。:)

608 :デフォルトの名無しさん:02/05/24 14:24
>>607
そもそもそれらを比較しようとした奴がアフォなんだと思う。

609 :デフォルトの名無しさん:02/05/24 14:31
>>608
じゃあ>>575の転載元書いたヤツはアフォということでファイナルアンサー?

610 :デフォルトの名無しさん:02/05/24 14:32
>>609
>>1だろ。そもそも。

611 :デフォルトの名無しさん:02/05/24 14:33
なんかアフォとしか言いようのない恥ずかしい事このスレに書くよりさあ
自分が好きなようにコード書いて比較したらいいじゃないか

C#で再帰が遅いのは仕方ない。
既にJITコンパイル済みかどうかチェックする為に間接コールになるからね。
それでも、2倍前後に収まってるのは頑張ってると俺は思うよ

それに、次のバージョンくらいで再帰対策用の仕様拡張くらいするんじゃないの?

612 :デフォルトの名無しさん:02/05/24 14:34
>>575の結果

C# : 8,192バイト
Del : 397,312バイト

驚くべきことに、C#の方が50倍近い差をつけて勝っています。

613 :デフォルトの名無しさん:02/05/24 14:34
>>611
>再帰対策用の仕様拡張
コードレベルにまで及ばなければうれしいけどね。


614 :デフォルトの名無しさん:02/05/24 14:35
>>612
Framework込みで計算するのが筋じゃないか?
後、ちょっと上のレス読めばわかるが君、馬鹿にされてるよ。

615 :デフォルトの名無しさん:02/05/24 14:37
>>614
やだねー、洒落の分からない奴は。(嘲笑激藁

616 :デフォルトの名無しさん:02/05/24 14:39
>>615
「嘲笑激藁」厨は(・∀・)カエレ!

617 :デフォルトの名無しさん:02/05/24 15:07
Delphiでネイティブコード書いたって2003年にはあぼーんなのに。(w

618 :デフォルトの名無しさん:02/05/24 15:10
>>617
1年持ったらいい方だろう。ソフトなんて。

619 :デフォルトの名無しさん:02/05/24 15:12
>>618
あれ?VBの時は散々けなしてたくせに。(w

620 :デフォルトの名無しさん:02/05/24 15:14
>>619
言われてみれば。。。炒ってきます。

621 :デフォルトの名無しさん:02/05/24 15:21
VB→VB.NETのときと同じことがDelphiでも起きてるんだNE!
やぱーり同じ穴のムジナだNE!ヽ(´∇`)ノ

622 :デフォルトの名無しさん:02/05/24 15:23
>>621
VB:言語仕様が変わって従来ユーザーが付いて行けなくなった。
Dl:クラスライブラリのしがらみで完全に.NETに追従できなかった。

問題点は違うけどね。

623 :デフォルトの名無しさん:02/05/24 15:26
どっちみち能無し年寄りは取り残されるだけ。(嘲笑激藁

624 :デフォルトの名無しさん:02/05/24 15:28
>>623 というか、お前既にこのスレでさえ取り残されてるぞ

・・・・とレスしてやる俺は親切な人か?

625 :デフォルトの名無しさん:02/05/24 15:29
>>624
目頭が熱くなった。

626 :デフォルトの名無しさん:02/05/24 15:38
でもさDelphi.NETついてもランタイム要るんだろ?
駄目じゃん(藁

627 :デフォルトの名無しさん:02/05/24 15:50
Delphi.NETがつくってどういう意味なんだろう。

628 :デフォルトの名無しさん:02/05/24 15:52
>>627
なぜか誰も修正しない。
晒しageの一種か?

629 :デフォルトの名無しさん:02/05/24 15:53
>>627
従来のDelのソースから.NETへ落とせるのなら
存在価値が無いわけでもないってところでは

630 :デフォルトの名無しさん:02/05/24 15:55
>>628
あ、そうか・・・荒らしレス(626のこと)なんざまともに読まないからね

631 :デフォルトの名無しさん:02/05/24 15:55
これが元ネタ
http://pc.2ch.net/test/read.cgi/tech/1021038130/160

632 :デフォルトの名無しさん:02/05/24 19:01
Delphiってまた.NET対応で文法拡張するんでしょ?
どうしてこんな独自仕様言語に肩入れするのがいるの?
VBの方がよっぽどマシだよ。仲間も多いし。

633 :デフォルトの名無しさん:02/05/24 19:20
>>632
 文法拡張しても、今迄ズッとしっかりした下位互換を見せてくれてたよ
さすがに今回は Object型は捨てられると思うけど、それはしょうがない
5年以上前から Object型は止めるってアナウンスしてたんだから

まあ仲間が多いのも良し悪し、
 廃れ始めると人数余って悲しい事にならないとも限らないさ

それと
  VB質問スレと Delphi質問スレみても VBの方に放置が多いぞ

もっとガンバレ

634 :デフォルトの名無しさん:02/05/24 19:43
>さすがに今回は Object型は捨てられると思うけど
んなこたない。C#にもスタックに割り当てられるオブジェクトはある。

635 :デフォルトの名無しさん:02/05/24 19:51
System.Object

636 :デフォルトの名無しさん:02/05/24 19:57
おいおい、関数内関数のどこがObjectなのか誰か説明してくれよ。
都合悪いときにアフォ?で済ませんな。

637 :デフォルトの名無しさん:02/05/24 20:04
>>636
>Objectなのか誰か説明してくれよ。
オブジェクト=OOPとか思ってる人にはダメです。

638 :デフォルトの名無しさん:02/05/24 20:09
>>637
本当だね。636は分かってなさすぎ。

639 :デフォルトの名無しさん:02/05/24 20:12
え?Object PascalってOOP Pascalって意味じゃなかったの?そりゃ
すまんかった。てっきりそうなのかと。

で、Objectって何を指してるんだい?

640 :デフォルトの名無しさん:02/05/24 20:14
おいおい、forや{のどこがObjectなのか誰か説明してくれよ。
C#って本当にオブジェクト指向なのか?

641 :デフォルトの名無しさん:02/05/24 20:16
>>639=598
Object Pascal はオブジェクト指向Pascalの意味。
でどうして君は、関数内関数はオブジェクト指向を無視した構造だと
考える訳?

642 :デフォルトの名無しさん:02/05/24 20:18
Del厨ってオブジェクト指向分かってないんだな。(嘲笑激藁

643 :デフォルトの名無しさん:02/05/24 20:22
>>640がイタすぎて見てらんない。

644 :デフォルトの名無しさん:02/05/24 20:22
>>642
プッ 答エラレナインダネ

645 :デフォルトの名無しさん:02/05/24 20:23
>>642 そのレスつけるのって、仕事か何かですか

646 :デフォルトの名無しさん:02/05/24 20:23
まあお前らはsmarttalkでも使ってなさいってこった。

647 :デフォルトの名無しさん:02/05/24 20:24
>>643
揶揄だとわからん君の方がイタい

648 :デフォルトの名無しさん:02/05/24 20:27
Pascalなんかやってると構造化のまま頭が固まってしまうんだな。(嘲笑禿藁

649 :デフォルトの名無しさん:02/05/24 20:28
>>634 既に BCB++では捨てられてるから

650 :デフォルトの名無しさん:02/05/24 20:29
 (_  ̄ ( 0 0 ) ̄_) < 嘲笑禿藁
     ↑>>648

651 :デフォルトの名無しさん:02/05/24 20:29
/* コメントがオブジェクトなOOPLってある? */.WriteLine();

652 :デフォルトの名無しさん:02/05/24 20:29
     ____
    /∵∴∵∴\
   /∵∴∵∴∵∴\
  /∵∴∴,(・)(・)∴|
  |∵∵/   ○ \|
  |∵ /  三 | 三 |  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  |∵ |   __|__  | <  >>649 BCB++って何
   \|   \_/ /  \_________________
     \____/
   ______.ノ       (⌒)
  //::::::::|-、 ,-/::::::ノ ~.レ-r┐
/ /:::::::::::|  /:::::ノ__ | .| ト、
| /:::::::::::::::| 〈 ̄   `-Lλ_レ′
レ::::::::::::::::::|/::: ̄`ー‐---‐′

653 :デフォルトの名無しさん:02/05/24 20:30
Borland C++ Builder++

654 :デフォルトの名無しさん:02/05/24 20:31
あーあー。せっかくの議論をAAで潰してるよ。
Del厨って卑怯だね。(嘲笑激藁

655 :デフォルトの名無しさん:02/05/24 20:31
>>648
オブジェクト指向と構造化は相反するものではありませんが?

656 :デフォルトの名無しさん:02/05/24 20:33
え?え?Object PascalはやっぱりOO Pascalなのかい?どっちなんだよ、まったく。

関数内関数って局所化ができてない証拠でしょ?その内部関数はどうして
再利用できない場所に埋め込むの?再利用しないならどうして関数化するの?

657 :デフォルトの名無しさん:02/05/24 20:34
>>655
相反するなんてどこにも書いてませんが?

658 :デフォルトの名無しさん:02/05/24 20:34
>>649
C++のclass, structはデフォルトで
思いっきりスタックに割り当てられてるような・・・

659 :デフォルトの名無しさん:02/05/24 20:35
>>656
俺はテクニック知ってるんだぞー、って。(嘲笑藁

660 :デフォルトの名無しさん:02/05/24 20:35
>>656
インライン関数的な発想でしょ。


661 :デフォルトの名無しさん:02/05/24 20:35
嘲笑激藁

662 :デフォルトの名無しさん:02/05/24 20:35
藁激嘲笑

663 :デフォルトの名無しさん:02/05/24 20:36
我愉快成

664 :デフォルトの名無しさん:02/05/24 20:36
笑激嘲藁

665 :デフォルトの名無しさん:02/05/24 20:37
>>656
 それでは private な関数はどうして privateにするのですか?

 片方はブロックを作ればいつでも変数を宣言出来たり、ブロックを
 作らなくてもどこでも変数を宣言出来ます。

 逆にpascalは関数の内部でも関数が作れます。

 それはそれぞれのスタイルであり、OOとは関係ありません

666 :デフォルトの名無しさん:02/05/24 20:37
マジレスすんなー

667 :デフォルトの名無しさん:02/05/24 20:38
してもきっと理解できないぞー

668 :デフォルトの名無しさん:02/05/24 20:39
要はDelphiではこんなことができます、すごいでしょーっていう自己満足なんでしょ?

669 :デフォルトの名無しさん:02/05/24 20:40
ただ煽りたいだけなのさー

670 :デフォルトの名無しさん:02/05/24 20:42
>>668
建前

>>669
本音

671 :デフォルトの名無しさん:02/05/24 20:43
今頭にきてる奴はこのスレ覗くなー
相手が相手だから議論しても得るものないぞー

672 :デフォルトの名無しさん:02/05/24 20:43
>>665
すまん、Object Pascalはまったくわからないんだが、Object Pascalには
public関数(メソッド?)とprivate関数という区別はないんだね?しかも、
関数内関数は定義している関数とは別の関数からでも呼び出せるんだね?

うっそー、ちがうっしょ。privateメソッドと関数内関数はまったく
ちがうじゃん。クラス内で再利用できるからprivateめそっどにするんだぜ。
その関数でしか使わないんじゃあprivateメソッドとは並べらんないよ。

673 :デフォルトの名無しさん:02/05/24 20:46
視野が狭い上に偏っとるな

674 :デフォルトの名無しさん:02/05/24 20:46
>>672
>すまん、Object Pascalはまったくわからないんだが
出てこないように。相手のこと知らないのに相手のこととやかく言うのって失礼だと思うが。

675 :デフォルトの名無しさん:02/05/24 20:46
>>672
関数内で再利用できるから、関数内関数にするんだぜ?

関数内で再利用、クラス内で再利用、ユニット内で再利用、
アプリケーション内で再利用。どれも再利用という観点から見れば
同じ。

676 :デフォルトの名無しさん:02/05/24 20:47

 関数内関数は
C++でいえば、関数でクラス定義をしたメソッドのようなものです

上手に使う人もいますし、逆に使わない人も居ます。それだけでしょう

677 :デフォルトの名無しさん:02/05/24 20:51
>>674
初心者にきちんと説明できない人が上級者気取りですか?(嘲笑激藁

678 :デフォルトの名無しさん:02/05/24 20:51
再帰を含む処理は、関数内関数を使うと特にスマートにかけますよ。
だから >>595は 再帰処理を書く時のクセでそう書いたのでしょう

679 :デフォルトの名無しさん:02/05/24 20:52
>>675
ローカル変数も関数内で再利用できるNE!

680 :デフォルトの名無しさん:02/05/24 20:55
メソッド内メソッドの最大にして唯一のメリットはスコープを最小にして、
クラスのprivateすら汚さないようにできることだな。
Cの
{
 ...
 {
  int i;
 }
}
みたいなもんだ。

681 :デフォルトの名無しさん:02/05/24 20:56
>>679
それは再利用とは言わん。ただのズボラだーよ

682 :デフォルトの名無しさん:02/05/24 20:57
関数内関数って関数の中でだけ使える変数じゃなくて関数ってだけでしょ。
長い関数を細かく分けるときにスコープを広げずに分けられるから便利なんだよなぁ。
俺pascalやってないけど関数内関数は他の言語でもほしい。

683 :デフォルトの名無しさん:02/05/24 20:58
関数化という発想しか先に来ないのが構造化Del厨の哀れな頭脳構造。(嘲笑激藁

684 :デフォルトの名無しさん:02/05/24 20:58
うーん、どうでもよくなった。関数内関数かー。。。うーん、
やっぱどうでもいいや。じゃましたね。

685 :デフォルトの名無しさん:02/05/24 20:59
まあC系でも

int func(void){
int a=0;
void privateFunc(int n){ a+=n;};
・・・

}
みたいな感じで書ければ便利とは思うけどねブロックに名前が付けられのもあるんだから
ついでに呼び出し出来るようにしても良いように思うけど


686 :デフォルトの名無しさん:02/05/24 20:59
ちょっと欲しい

687 :デフォルトの名無しさん:02/05/24 21:05
今日もDelphiの完全勝利だな。
では家元は帰るぞ。

688 :デフォルトの名無しさん:02/05/24 21:05
>>682
長い関数を分けるという考え方はOOP的じゃないけどな。

689 :デフォルトの名無しさん:02/05/24 21:06
VB vs Delphiくらいがちょうどいいんじゃないか?

690 :デフォルトの名無しさん:02/05/24 21:06
>>688
OOPだったら長い関数はどうするんだ?

691 :デフォルトの名無しさん:02/05/24 21:06
>>677 あなた初心者? 初心者なら聞く時にすべき態度があるとは思いませんか?

692 :デフォルトの名無しさん:02/05/24 21:08
>688
分割統治はOOに限らず普遍的な考え方だね。

693 :関数内関数の例:02/05/24 21:09
function FourNum(s:string):double ;
var num:double;
var sym:char;
 procedure addsub;forward;
 procedure next;
 var i,j:integer;
 const sep='^+-/*()<>';
 begin
  if s='' then begin sym:=#0;exit;end;
  for j:=1 to length(sep) do
  if s[1]=sep[j] then begin sym:=s[1]; delete(s,1,1);s:=trim(s); exit;end ;
  sym:=#1;
  for i:=2 to length(s) do
  for j:=1 to length(sep) do
  if s[i]=sep[j] then begin
    num:=StrToFloat(copy(s,1,i-1)); delete(s,1,i-1); exit;end;
  num:=StrToFloat(s);s:='';
 end;
  procedure factor;
  begin
  if(sym = #1) then next
  else if(sym = '(') then
   begin next; addsub;
     if(sym <> ')') then raise Exception.Create(' )がない');
     next;
   end
   else raise Exception.Create('数があるべき');
  end;
  procedure muldiv;
  var savenum:double;  var oldsym:char;
  begin
  factor;
  while (sym in ['*','/','^'] ) do begin
   savenum:=num;oldsym:=sym; next;
  factor;
   case oldsym of
      '*': num:=savenum*num;
      '/': num:=savenum/num;
      '^': num:=power(savenum,num);
   end;
  end;
  end;
 procedure addsub;
 var savenum:double; var oldsym:char;
 begin
   case sym of
    '+': begin next; muldiv;  end;
    '-': begin next; muldiv; num:=-num; end;
     else    muldiv;
   end;
  while (sym in [ '+','-'] ) do
   begin savenum:=num;oldsym:=sym; next; muldiv;
    case oldsym of
    '+': num:=savenum+num;
    '-': num:=savenum-num;
    end;
   end;
 end;
begin  next;  addsub;  Result:=num;
end;

694 :デフォルトの名無しさん:02/05/24 21:12
要は何も考えてない設計のやっつけ処置でしょ? > 関数内関数

695 :デフォルトの名無しさん:02/05/24 21:12
それはやりすぎ。
俺ならクラス&メソッドに分割して
必要なら関数でラップするよ。


696 :デフォルトの名無しさん:02/05/24 21:15
>>693
わざと悪例を出したの?

697 :デフォルトの名無しさん:02/05/24 21:17
>694 どうやら正解のようだ

698 :デフォルトの名無しさん:02/05/24 21:17
いつからここはこんな雰囲気悪くなったの?

699 :693:02/05/24 21:18
コレは前に書いたコードだけど、もちろん自分で使うコードはクラス&メソッドで書いてるよ

ただ、ちょっとした文字列処理を手軽に書くにはこれは結構便利だという例ね
素早く、そして短く書ける。

そして大事な事は、このコードはクラスに変更するのも簡単だという事

700 :693:02/05/24 21:25
>>694
確かに、関数内関数を使うと、
再帰的な処理を、何も考えずに、素直に書く事が出来る。

これはやっつけ仕事の典型かもしれないけど、コードを見てくれれば判ると思うけど、
たとえ何も考えずに素直に書いても、後でクラス化するのが、逆に簡単になってるでしょ?

701 :デフォルトの名無しさん:02/05/24 21:26
メソッドの抽出のリファクタリングをするときなんか関数内関数があると便利だよね。

702 :デフォルトの名無しさん:02/05/24 21:31
やってることがブビ厨と変わらないね。 > やっつけコーディング

703 :デフォルトの名無しさん:02/05/24 21:31
>>702
努力は認める。でも、今は出てくるな。

704 :松原潤:02/05/24 21:38
Delフサギコをやってきます

705 :デフォルトの名無しさん:02/05/24 21:40
>>704
マ板でも嘘書いてたので、よろしく。

706 :デフォルトの名無しさん:02/05/24 21:52
Del厨って構造化プログラミングしかできないのか。
これじゃあVB.NET使いの方がはるかにレベルが高いよ。

707 :デフォルトの名無しさん:02/05/24 21:53
VB.NET使いなんているの?

708 :おいおい:02/05/24 21:55
>>707 >706はアフォだから放置しろ(ゲラ

709 :デフォルトの名無しさん:02/05/24 21:57
>>707
この板の中では聞いたこと無い。

710 :デフォルトの名無しさん:02/05/24 21:58
Del厨って言い返せなくなるとワンパターンでアフォってしか言えなくなるんだね。

711 :デフォルトの名無しさん:02/05/24 21:58
>>706
Del厨って構造化プログラミングしかできないのか。
これじゃあVB.NET使い(俺)の方がはるかにレベルが高いよ。

712 :デフォルトの名無しさん:02/05/24 22:01
他の環境で十分な互換性を持って動かないと windows上でも使われないでしょ
Windowsと同等にWinCE上でも動くとか

XBOX上と共用のエロゲが作れるとか、

713 :デフォルトの名無しさん:02/05/24 22:04
>>712
既に割り切った。
Windows64(w)で再コンパイルなしで動けばいいや。

714 :デフォルトの名無しさん:02/05/24 22:06
Windows64上でも 常識的にはWin32もWin16もDOS窓も動くんではないの?


715 :デフォルトの名無しさん:02/05/24 22:08
>>714
コンソールはともかく16bitのDOSはどうよ?

716 :デフォルトの名無しさん:02/05/24 22:09
>>715 Win16が動くなら 当然DOSアプリも動くでしょう

俺、Delphi1で16bitアプリ作る事あるよ それをW2000で走らせたって快適に動くし

717 :デフォルトの名無しさん:02/05/24 22:10
>>714
Intelって64ビットで現在のx86捨てるんじゃなかったっけ?
だとしたらエミュレーション以外では動かない。
じゃあ、過去のしがらみでウニウニしない.NETアプリの方が良いかと。

718 :デフォルトの名無しさん:02/05/24 22:10
Win16が動くなら 当然DOSアプリも動くでしょう

719 :デフォルトの名無しさん:02/05/24 22:12
DOSアプリやWin16アプリを エミュレーションで動かしても快適に動くでしょう

720 :デフォルトの名無しさん:02/05/24 22:17
逆にWin16/DOSは動かなくても Win32アプリが動かない Win64を作っても売れないでしょ?

そして Win32アプリを動かすなら ついでにWin16/DOSアプリを動かすのも大した手間ではないだろし

721 :デフォルトの名無しさん:02/05/24 22:28
Del厨のせいでクソスレになってしまった

722 :デフォルトの名無しさん:02/05/24 22:28
>>720
それはハードの問題でIA64は286以前とは互換性ないとか
そういうハナシだったはず。
余計なトランジスタ使うと性能上がらないと思われ。

723 :デフォルトの名無しさん:02/05/24 22:29
初めからクソスレだろ。C#厨は逝けよ。

724 :デフォルトの名無しさん:02/05/24 22:32
>>723
Delphi.NETがVB.NETにも及ばない中途半端なものだと分かったからって
そうカリカリするなよ。

725 :デフォルトの名無しさん:02/05/24 22:34
「.NETなんて流行らねー」とか言ってたDel厨が何事もなかったかのように.NETの片棒を担ぐのか。
負け犬の典型だな。(プッ


726 :デフォルトの名無しさん:02/05/24 22:35
だから 既に Ntdos.sys エミュレータで DOSだってエミュレートしてるんだし
86命令のエミュレートが増えたくらいで死ぬほど遅くはならないでしょう

727 :デフォルトの名無しさん:02/05/24 22:35
>>724
VB.NETのすごさが知りたい。
サンプルを交えてVB.NETのすごさについて教えてくれ。


728 :デフォルトの名無しさん:02/05/24 22:37
>>726
だからさ、そうやって「一部動かないプログラムがあります」とするより
今の内に.NETと言うプログラミングスタイルと完全マルチWindowsバイナリを浸透させたいと。

729 :デフォルトの名無しさん:02/05/24 22:37
Delphi、安くすればもっと普及するだろうに。
新バージョンがでたら、旧バージョンを大幅に安くするとか。

730 :デフォルトの名無しさん:02/05/24 22:37
でもさ.NETついてもランタイム要るんだろ?
駄目じゃん(藁

731 :デフォルトの名無しさん:02/05/24 22:38
Delphiは消えゆく運命なのに今更安くしても意味無いだろ。

732 :デフォルトの名無しさん:02/05/24 22:38
>>729
世の中には無料にしても全然普及しないものもあるんだよ。(嘲笑激藁

733 :デフォルトの名無しさん:02/05/24 22:42
C#厨、Del厨以外の普通の人は放置願います。
よろしくお願いします。

734 :デフォルトの名無しさん:02/05/24 22:43
>>728

逆に、M$には .NET だけしか移行出来ませんみたいなWin64出して欲しいな

それなら、Linux64 で Win32エミュレートすれば勝てそう

735 :デフォルトの名無しさん:02/05/24 22:46
>>731
VisualC#でネイティブコンパイルできたら、
俺もDelphiに未練を感じたりしないんだがな。残念。
ていうか、どうしよう。

736 :デフォルトの名無しさん:02/05/24 22:48
>>734
いっそIntelに.NETコンピュータを。

737 :デフォルトの名無しさん:02/05/24 22:52
C#に対抗する前にまずVB.NETに勝とうよ。 > Delphi
VB.NETにも勝てないことを認めたからDelphi.NETを出すんでしょ?
で、過去のDelphiとの互換性は一切捨てると。

738 :デフォルトの名無しさん:02/05/24 22:52
>>737
取りあえず敵を攻撃するなら敵を知ってからにしてくれ。
ちゃんちゃらおかしい。

739 :デフォルトの名無しさん:02/05/24 22:53
>>737 なんかキミの妄想らしい書き込み、残念だけど理解してあげられない。ゴメンな

740 :デフォルトの名無しさん:02/05/24 22:54
Delphi.NETって普及するの?

741 :デフォルトの名無しさん:02/05/24 22:56
でもさDelphi.NETついてもランタイム要るんだろ?
駄目じゃん(藁

742 :デフォルトの名無しさん:02/05/24 22:57
>>740
.NETが普及すればC#が普及する。
.NETが普及しなければDelphi.NETは無駄になる。

743 :デフォルトの名無しさん:02/05/24 22:57
>>740
取りあえず今のところVCL->.NETコンバータ以上の使い方は見えない。
まぁ、VB.NETもコンバータだが。

744 :デフォルトの名無しさん:02/05/24 22:59
DelphiのコードをC#にコンバートした方が賢明じゃない?

745 :デフォルトの名無しさん:02/05/24 22:59
>>743
VB.NETはコンバータじゃないよ。

746 :デフォルトの名無しさん:02/05/24 22:59
>>743
VBにはマクロ言語としての使い道「も」ある。
Delphiには何の使い道もない。

747 :デフォルトの名無しさん:02/05/24 23:00
>>746
> VBにはマクロ言語としての使い道「も」ある。
必要性は疑問視されているが。

748 :デフォルトの名無しさん:02/05/24 23:00
マクロ言語って何?

749 :デフォルトの名無しさん:02/05/24 23:01
>>748
VS.NETのオートメーション。
将来のOfficeもVB.NETベースになる。

750 :デフォルトの名無しさん:02/05/24 23:03
Delphi.NETってまともな使い道がないからBorConでもほとんど話題にならなかったんだろ?
ハッタリ発表には笑ったよ。これが倒産前の会社の断末魔の叫びかって。

751 :デフォルトの名無しさん:02/05/24 23:03
>>749
純粋に疑問。
C#でダメな理由とかあったの?
コンパイルすればどれだって・・・。

752 :デフォルトの名無しさん:02/05/24 23:04
もうちょいまともな話が出ないかなぁ。

753 :デフォルトの名無しさん:02/05/24 23:04
Del厨が流れ込んでくるとイヤなので、もうしばらく某にはがんばってほしいです。

754 :デフォルトの名無しさん:02/05/24 23:05
>>80
zは 1,2,4,8,16,...2^64迄の65個しかない
x+y=2^64/z だからこれは沢山あるね


755 :デフォルトの名無しさん:02/05/24 23:07
>>751
C#だとレイトバインドがめどいから。

756 :デフォルトの名無しさん:02/05/24 23:08
>>755
めんどいの間違い

757 :デフォルトの名無しさん:02/05/24 23:10
>>756
そんな間違いどうでも良いからレイトバインドについて少し書いて欲しかった。


758 :デフォルトの名無しさん:02/05/24 23:13
>>757
実行時にリフレクション経由で実行すること。
コンパイル時に型の情報がいらない。

759 :デフォルトの名無しさん:02/05/24 23:15
>>758
>コンパイル時に型の情報がいらない。
C言語の時みたく渡す引数の型渡すとアボーンとか?

760 :デフォルトの名無しさん:02/05/24 23:16
>>759
そりはparamsのことを言ってない?

761 :デフォルトの名無しさん:02/05/24 23:17
>>758
すべて逆。

762 :デフォルトの名無しさん:02/05/24 23:17
/*
 2.8 リフレクション (Reflection) とは ?

 .NET のコンパイラはすべて、作成したモジュールの中に定義される
 タイプに関するメタデータを作成します。このメタデータは、モジュールの
 中に同梱されます。また、モジュールはさらに、アセンブリにまとめられます。
 メタデータは、リフレクション(Reflection) という方法でアクセスされます。
 System.Reflection ネームスペースの中には、モジュールやアセンブリに
 入っているタイプにアクセスするためのクラスがあります。
 Reflection をつかって、.NET のメタベースにアクセスするのは、
 ITypeLib/ITypeInfo をつかって、COM のタイプライブラリのデータにアクセス
 するのと同じです。目的もよく似ています。
 たとえば、コンテキスト、プロセス、マシン間でマーシャリングするデータの
 サイズを決定する場合に利用されます。
 普通のアプリケーションの開発者が、Reflection を直接利用することは
 あまりありません。
*/

[dotNET:00054] .NET FAQ : 2.  基本技術 より

これってそのモジュールで使われている型のデータをクラスとして持っていて、
アクセスすることが出来るってこと??
まだまだ理解が甘いですな。俺。

763 :デフォルトの名無しさん:02/05/24 23:18
>>761
具体的に

764 :デフォルトの名無しさん:02/05/24 23:20
これを VB.NET で書いてみて

uses Windows, SysUtils, Graphics,forms;
var x,y,xs,ys,c,i:Integer;
begin
 with TCanvas.Create do try
  Handle:=GetDC(0);
  xs:=(GetSystemMetrics(0));
  ys:=(GetSystemMetrics(1));
  while GetKeyState(1)>= 0 do
  for i:=0 to 10000 do begin
   x:=random(xs);
   y:=random(ys);
   Pixels[x,y]:= Pixels[x+1,y+1];
  end;
 finally free;InvalidateRect(0,nil,True); end;
end.


765 :デフォルトの名無しさん:02/05/24 23:21
>>764
GDIなんて原始的なもの使わないよ。

766 :デフォルトの名無しさん:02/05/24 23:22
>>765 使わないで書けるなら書いてみて

767 :デフォルトの名無しさん:02/05/24 23:23
>>766
で、君は何厨だ?
Delphi厨でないことは確かだが。

768 :デフォルトの名無しさん:02/05/24 23:24
>>765
単に何をやっているのか理解できないだけでしょ(藁

769 :デフォルトの名無しさん:02/05/24 23:25
>>766
System.Drawing

770 :デフォルトの名無しさん:02/05/24 23:25
>>768
何のクラスかも書いてないし。

771 :デフォルトの名無しさん:02/05/24 23:28
>>770


772 :デフォルトの名無しさん:02/05/24 23:30
API使いまくりのソースじゃん。

773 :デフォルトの名無しさん:02/05/24 23:32
>>764を temp.pas とかで保存して

コンパイルは コンソールから dcc32 temp.pas とかして 出来た temp.exeを実行

774 :デフォルトの名無しさん:02/05/24 23:34
>>773
いや、だからお前は何がしたいわけ?
って言うかコンパイルできるPascalソースとしては不完全だろう、それ。

775 :デフォルトの名無しさん:02/05/24 23:39
>>774
そのままでコンパイルは出来るけど、標準パスカル互換にしたいなら
program 保存した時のソース名(input, output);
を1行目に追加してくれ

776 :デフォルトの名無しさん:02/05/24 23:40
>>775
一行目に答えてくれ。

777 :デフォルトの名無しさん:02/05/24 23:45
単にこのスレの VB.NET厨とやらの実力が見たいだけ >>776

778 :デフォルトの名無しさん:02/05/24 23:46
>>764
これがObject Pascalのソースか。(@_@)
(´-`).。oO(どこがオブジェクト指向なんだろ?)

779 :デフォルトの名無しさん:02/05/24 23:48
感想はいいからコード書いてみて たった15行だ
動作が判らなかったら実行してみればいい

780 :デフォルトの名無しさん:02/05/24 23:48
>>778
#include <stdio>

namespase std;

int main()
{
printf("%d",5);
return 1;
}



781 :デフォルトの名無しさん:02/05/24 23:48
>>778
話をすり替えるなよ。

782 :デフォルトの名無しさん:02/05/24 23:51
>>781
俺もDel厨だけどさ、わざわざGDIで勝負挑んでいるのは痛い。
.NETで面倒なところを突かないと勝てないのかと思われる。
別にクイックソートとかでも言い訳だし。


783 :デフォルトの名無しさん:02/05/24 23:53
C#厨だけど、GDIってわけじゃないような。

784 :デフォルトの名無しさん:02/05/24 23:54
>>783
ごみん、ソース読んでなかった。
あれみてGDIって叫んだ奴も相当だな・・・。

785 :デフォルトの名無しさん:02/05/25 00:15
GUIでしか勝負してこないのがDel厨らしくていいですね。(嘲笑激藁

786 :デフォルトの名無しさん:02/05/25 00:16
>>785
いや、お前もソース読もう。

787 :デフォルトの名無しさん:02/05/25 00:16
誰か GUI で勝負した?

788 :デフォルトの名無しさん:02/05/25 00:20
何の説明もなしにソースだけ見せてくるのが末端PGらしくていいですね。(嘲笑禿藁

789 :デフォルトの名無しさん:02/05/25 00:21
>>788
悪いが同意。


790 :デフォルトの名無しさん:02/05/25 00:21
 嘲 笑 激 藁


791 :デフォルトの名無しさん:02/05/25 00:23
説明いらんじゃ・・・。

792 :デフォルトの名無しさん:02/05/25 00:25
Del厨の常識は正当な言語ユーザにとっては非常識です。

793 :デフォルトの名無しさん:02/05/25 00:25
たとえば?

794 :デフォルトの名無しさん:02/05/25 00:29
お題は文章のほうがいいぞってことだね。

795 :デフォルトの名無しさん:02/05/25 00:31
>>793
ブロックを囲むのにbegin〜endなんて使わない。

796 :デフォルトの名無しさん:02/05/25 00:32
ああ、そんな程度のことか。


797 :デフォルトの名無しさん:02/05/25 00:57
ちょっくら聞きたいんだけど、VS.NETのMSDNのHELPって実行形式なんだけど、
あれって、.NET Framework入れれば、VS.NETいれてない他のパソコンでも見られる?
ネットワーク上の他のパソコンから見たいんだけど、コンポーネントがないとか言われて
見られなかったよ。

798 :デフォルトの名無しさん:02/05/25 00:59
試したことないけど、見れると思う。
VS.NET入れてないマシンでも最新のMSDN入れるとあれだから。

799 :デフォルトの名無しさん:02/05/25 01:36
>>795
http://pc.2ch.net/test/read.cgi/prog/1022150734/19-27
↑ここでも同じ話が・・・

800 :デフォルトの名無しさん:02/05/25 02:04
>>795
由緒正しいAlgol直系の言語だから。


801 :デフォルトの名無しさん:02/05/25 02:10
>>792
元々、Cの方が異端という感じだからね
「正当な言語」なんて言われるとくすぐったいんじゃないかな

802 :デフォルトの名無しさん:02/05/25 02:15
なんでC言語は普及したの?
MSX-Cのせい?

803 :デフォルトの名無しさん:02/05/25 02:19
>>802
とにかくUNIXの影響が大きいし(CはUNIXのために作られた言語)
M$がWindowsに採用したことも大きかった

実はM$もPASCALを出してたんだけど
某のTurbo Pascalにこてんぱんにやられて姿を消した

804 :デフォルトの名無しさん:02/05/25 02:21
Pascalはコンパイラ言語なので、ベーシックより高速
って宣伝されていたら歴史は違ったものになっていたでしょう。

805 :デフォルトの名無しさん:02/05/25 02:26
>M$がWindowsに採用したことも大きかった
逆でしょ。十分普及してたから採用した。

806 :デフォルトの名無しさん:02/05/25 02:28
>>805
他の選択肢も有り得た
例えばMacはPascalの世界だった

807 :デフォルトの名無しさん:02/05/25 03:09
APIがPASCAL呼び出し規約だったのはPascalで開発されていたからでしょ?


808 :デフォルトの名無しさん:02/05/25 03:28
>>807
どのみちPascalのスタックフレームにはならないよ。
あのブロックスコープを実現する構造は
API呼び出しに持って来れないから、Pascal側でも
規約が必要。

809 :デフォルトの名無しさん:02/05/25 03:37
MS の Pascal は例によって買収したものだったから、
保守もバージョンアップもする技術がなくて、おまけに
Turbo Pascal の安さにもかなわなくて、静かに去った。


810 :デフォルトの名無しさん:02/05/25 03:46
C#もヘイルスバーグを買収して作ったんでしょ。

811 :デフォルトの名無しさん:02/05/25 03:49
まぁ、QuickCはMSの作った開発環境の中では良く出来てたソフトだったしな。

812 :デフォルトの名無しさん:02/05/25 05:09
BorConでもDelphiの話題はあまりぱっとしなかったね。
Delphi7はそれだけ中途半端ということなのかな。

813 :デフォルトの名無しさん:02/05/25 05:10
昔はちゃんとプログラミングを勉強した人間なら Pascal は
知ってて当然の言語だったんだけどな。

814 :デフォルトの名無しさん:02/05/25 05:13
俺的にはDelphiなんかを無理やり.NET対応させるより、
むしろC#のRADをスクラッチで開発して欲しかった。
JBuilderのC#版みたいな感じでね。
それで非MS環境(ApacheとかCORBAとか)でも開発できるようにすれば
間違いなくキラーアプリになったはず。

815 :デフォルトの名無しさん:02/05/25 05:16
それにしてもVCL、CLX、.NET版VCLそれぞれで整合性を取れるんだろうか。
分化だけは勘弁して欲しい。

816 :デフォルトの名無しさん:02/05/25 05:20
>>814
良い事言うね。Delphiにこだわり過ぎてるのが敗因だと俺も思う。

817 :デフォルトの名無しさん:02/05/25 05:28
Delphi.NETがC#で書かれてたら本末転倒だよな。(w

818 :デフォルトの名無しさん:02/05/25 05:37
http://ascii24.com/news/i/topi/article/2002/05/23/imageview/images685279.jpg.html

この画面見てて思ったんだけど、T〜クラスって.NETのクラスをラッピングしてるだけっぽいよね。
なんでこんな中途半端なことするんだろ。J#の二の舞だよ。

819 :デフォルトの名無しさん:02/05/25 05:43
J#は既に終わったことにされてるのですね。

820 :デフォルトの名無しさん:02/05/25 05:44
不憫だな。

821 :デフォルトの名無しさん:02/05/25 05:45
http://ascii24.com/news/i/topi/article/2002/05/23/635945-000.html

ますます分からん。

Delphi7(Aurora)≠Delphi for .NET (ただしPreview版を同梱)
Delphi for .NET(Galileo)≠Delphi8

822 :デフォルトの名無しさん:02/05/25 05:50
J#はソースの互換性はものすごく高い。
(J++のソースも変更なしでほとんどコンパイルが通ってしまう。)
ただ、JDKやWFCのクラスを無理やりラップしまくってるのでまともなパフォーマンスが出ない。
(はっきり言ってJScript.NETより遅いこともある。)
VCL for .NETが互換性確保のためにこうならないことを祈る。

823 :デフォルトの名無しさん:02/05/25 05:51
Charlotteなんて言語を作ってたのか

824 :デフォルトの名無しさん:02/05/25 05:53
虹色ドリーム?


825 :デフォルトの名無しさん:02/05/25 05:54
>>823
言語ってほどのものじゃないでしょ。
ソースを見ればどういうILを出しそうか容易に想像がつく。

826 :デフォルトの名無しさん:02/05/25 05:59
BorConはJava vs .NETという下衆な煽りをしなかったのは非常に好感が持てる。
こういうのって初めてじゃないのかな?

827 :デフォルトの名無しさん:02/05/25 06:01
>>826
そりゃあ、どっちかについてしまったら商品が成り立たなくなる。(w

828 :デフォルトの名無しさん:02/05/25 06:08
>>827
いや、煽るだけ煽って結論は一切出さずってのがよくあるでしょ。

829 :デフォルトの名無しさん:02/05/25 07:33
あるね。
むかつく!

830 :デフォルトの名無しさん:02/05/25 09:59
>>828
このスレとかね

831 :デフォルトの名無しさん:02/05/25 10:05
>>830
勝負はついてるでしょ。

832 :デフォルトの名無しさん:02/05/25 10:22
>>831 どっち側から知らないけど、ついてないと思えばいつでも参戦してみるがよし

でも、しょうもない事いうより、どんどんコード出して挑戦するのが勝利の近道

833 :デフォルトの名無しさん:02/05/25 13:15
どっちかがどっちかに勝つと本気で思ってるの?

834 :デフォルトの名無しさん:02/05/25 13:29
得意分野が判明するだけで十分です

835 :デフォルトの名無しさん:02/05/25 13:35
今月号の雑誌をいろいろ読んできたけど、.NET一色という感じ。
日経ソフトウェアなんかはWindowsプログラミング = .NETと言わんばかりだ。
Win2000 WorldのCD-ROMにも.NETがついてるし、来月号のCマガでもついてくる。
もはや非.NETの開発環境なんて見向きもされないね。
Delphiの連載記事もますます立場がなくなるんじゃないの?

836 :デフォルトの名無しさん:02/05/25 13:36
>>835
「Windows上では」の話ね。一応。

837 :デフォルトの名無しさん:02/05/25 13:46
>>835
正直、これからプログラミングを始める人は.NETに対応してないwin開発環境は選ばないと思う。
DirectXや画像処理の本までVB.NETベースで出てるのには驚いた。

838 :デフォルトの名無しさん:02/05/25 13:49
>>835
日経SW は MS よりなんですぅ・・・
  営業が MS 製品関連記事なら売れると思ってる。
  後、編集に知識がない。VB房ばっか。

Cマガ は 某国 よりなんですぅ・・・
  営業も編集もコアなオタクが揃ってる。

839 :デフォルトの名無しさん:02/05/25 13:52
初心者はブビマガと日経ドキュソウェアで.NETに洗脳されてると思われ。

840 :デフォルトの名無しさん:02/05/25 13:54
>>839
そういやこの2冊は「VB.NETでも十分。C#に移行する必要なし。」という
共通した結論だったな。

841 :デフォルトの名無しさん:02/05/25 14:03
ヘジのインタビュー翻訳したやつ氏んでくれ。
あれじゃただのDGNだ。

842 :デフォルトの名無しさん:02/05/25 14:05
ま、今年の終わり位にはDelphi.NET一色になっているでしょう。


843 :デフォルトの名無しさん:02/05/25 14:08
ドグン?

844 :デフォルトの名無しさん:02/05/25 14:33
>>842
雑誌の広告が?、それとも某駅の看板かな?
あ、Del厨が2chのあちこちに蔓延るってことか・・・鬱だ死のう

845 :デフォルトの名無しさん:02/05/25 15:28
こうしてDelphiはオブジェクト指向教育言語となったとさ。
めでたし、めでたし。

846 :デフォルトの名無しさん:02/05/25 16:15
ありえん・・・

847 :デフォルトの名無しさん:02/05/25 17:29
SmalltalkかJavaの方が教育用としてはいいだろ。

848 :デフォルトの名無しさん:02/05/25 17:31
そういやヘジのインタビュー、某を辞めた理由にも触れてたね。
引き抜かれたとかそういうことじゃなくて某がダメダメだっただけじゃん。(w

849 :デフォルトの名無しさん:02/05/25 18:55
>>847
実務的にはGCのある言語を入門用とするのは危険な気がする。

850 :デフォルトの名無しさん:02/05/25 19:06
TurboBasic復活キボンヌ

851 :デフォルトの名無しさん:02/05/25 19:15
>>849
じゃあJavaもC#もVB.NETもDelphi.NETも駄目じゃん

852 :デフォルトの名無しさん:02/05/25 19:36
>>851
アセンブラ->C/C++をやってから、GC言語に移行するべし。


853 :デフォルトの名無しさん:02/05/25 19:43
>>851
そうだと思う。
C#書いててこのオブジェクトたちは無事に解放されるのだろうかと不安になった。


854 :デフォルトの名無しさん:02/05/25 19:45
理想的なキャリアはJavaScript→HSP→VBかな?

855 :デフォルトの名無しさん:02/05/25 19:48
>>854
うん、使い捨てるのに何の躊躇もない。w

856 :デフォルトの名無しさん:02/05/25 19:55
>>854
VBのまま留まってしまったか・・・

857 :デフォルトの名無しさん:02/05/25 19:57
>>848
どこ?

858 :正直な感想:02/05/25 23:42

Delphi,VC++歴7年目のユーザです。
8:2で Delphi を使ってきたアマチュアです。

ネイティブコンパイラでのアプリ作成用の環境として
VC++ より Delphi を勧める理由をたくさん挙げることが
できます。.NETが出て、その上の C# と比較すべきなのは
現行の Delphi ではなく、まだ発売されていない Delphi for
.NET のほうでしょう。.NET frameworks の上のプログラミング
言語は、それが提供するクラスオブジェクトをラッピングした
ライブラリを持つことにより、ライブラリの差はあまりなくな
るでしょう。その意味では、開発環境としての性能には
どれを選んでも大差なくなるでしょう。では、C# と Delphi.NET
ではどうでしょうか?

明らかに半年以上遅れて発売されたものより、OSをつくった
メーカがほぼその環境にネイティブであるべき C# が優勢である
ことは確実です。Pascal はふるい言語なので、これまでいろ
いろな事情を引きずってきています。言語としても、たぶん、
C# の方が後発である分だけ有利です。わたしは、現行の Delphi
の熱心な支持者であることは間違いありませんが、Delphi.NET が
出たとしても、C# より優先してそちらを使う、ということは考え
られません。

現行の Delphi ユーザのみなさんのお考えを伺いたいと思います。
やはり Object Pascal がいいですか? わたしは大好きですが。



859 :デフォルトの名無しさん:02/05/26 00:02
>>858
過去ログ読んでね。

860 :デフォルトの名無しさん:02/05/26 00:04
>>858
自己満足の美しいプログラム・・・Delphi.NET
とりあえずお仕事で使うよな→自習中・・・C#.NET
VS6出荷終了?、しかたないな→VB.NET

861 :858:02/05/26 00:06
>>859

過去ログって、このスレ全部読みましたが?
でも、誰が Delphi ユーザだか分からないので。

862 :858:02/05/26 00:10
>>860
レス、サンクス

各言語(環境)に対するスタンスは分かりましたが、
あなたがひとつ選ぶとすると、どれでしょうか?




863 :デフォルトの名無しさん:02/05/26 00:11
>>854
JavaScriptも一応OOPLだからHSPの時点でレベルダウンしてるな。

864 :デフォルトの名無しさん:02/05/26 00:17
>>861
Delphiユーザは.NETではC#という人が多いと思われます(漏れも〜)

Delphi.NETにはコンバータとしてのみ期待します

865 :デフォルトの名無しさん:02/05/26 00:19
>>863
俺もそう思たヨ。

866 :858:02/05/26 00:27
>>864
レス、ありがと

そうですか、そういう意味ではほぼ「結論」がでているのですね。
わかりました。

うーむ、Delphi かわいそう、の気もしますね。


867 :デフォルトの名無しさん:02/05/26 00:37
>>864
全面的に同意。

868 :860:02/05/26 00:43
>>862
周りに合わせるのも仕事の内だからVB.NETだな。。。

869 :858:02/05/26 00:50
>>868

回答ありがとう

「仕事」についてはアマには分かりませんが、VB.NET ですか。
.NET 上での仕事も VB が多いんですかねぇ。過去の資産ですか。
VB.NET についてはよく知りませんが、旧VB とは別物なのでしょ
うね。

みなさん、ありがとうございました。
C# に行きます!



870 :デフォルトの名無しさん:02/05/26 01:18
>>869
おいでませ♪

871 :860:02/05/26 01:22
>>869
いや、862が一つ選べというので、VB.NETって書いただけだよ
当然C#もやってます

872 :858:02/05/26 01:31
>>871

はい、>>860 で、そのことを承知していました。
アマにはプロの「仕事」についての厳しさみたいなものが
分かりませんので、869 みたいに書いたんです。
「ひとつ選べ」というのは、もしわたしに勧めるとしたら
という意味でした。860 の内容から、VB.NET を勧めたい
わけではないことは分かっていました。

ありがとうございました。


873 :858:02/05/26 02:00
>>870

諸般の事情から1ヶ月後くらいになりますが、よろしく。

でも、ネイティブコンパイラとしての Delphi は使い続ける
つもりです。まぁ、もうバージョンアップはしませんが。

874 :デフォルトの名無しさん:02/05/26 02:54
ネイティブコンパイラのDelphiもバージョンアップするだろ。


875 :デフォルトの名無しさん:02/05/26 02:55
>>874
マジですか?

876 :デフォルトの名無しさん:02/05/26 03:44
ネジです。

877 :デフォルトの名無しさん:02/05/26 03:45
>>875
D7はネイティブ(.NETじゃない)
その次が.NETらしいが、ネイティブと分化するのかどうかまで知らない

878 :デフォルトの名無しさん:02/05/26 04:00
分かれてもたいした機能は持てそうにないよね。
CLXを強化していくのかな。

879 :デフォルトの名無しさん:02/05/26 04:05
>>874

858 はしないという意味だろ

880 :デフォルトの名無しさん:02/05/26 04:27
>>878
あちこちでDelphi.NETが叩かれまくってているが、
.NET Frameworkを使うとDelphiって簡単に移植できそうに思うやついないか?

881 :デフォルトの名無しさん:02/05/26 08:37
というか .NET って クライアントサイドじゃ使われ始めるのに3年はかかるだろ
小さな企業じゃ、まだまだWin95  RAM32M HD740Mなんてマシンも現役だ。
10年リースが切れる迄は捨てる訳にはゆかない。
この不況だから、金使うなら従業員の雇用守る方に使わなけりゃね


ただ、業者は3年先の為に準備は必要だろう。
 VB6で業務アプリやってた所はこの3年の間が準備期間だ

Delphi.NETが VCLで素直に書いてそのまま動くなら、この3年の間に
 VB->Delphi->Delphi.NETなんて流れもあるかもしれないね。

882 :デフォルトの名無しさん:02/05/26 08:40
M$は VB6 と VB.NET の間に VB7を入れるべきだった
でなければ ネイテブアプリを書けるC#を用意すべきだったと思う


883 :デフォルトの名無しさん:02/05/26 08:57
>>881
> VB->Delphi->Delphi.NETなんて流れ

あるわけねー。

884 :デフォルトの名無しさん:02/05/26 09:17
でもボウランドはそれを狙ってかもね。M$のみせてる唯一の隙だし

885 :デフォルトの名無しさん:02/05/26 09:25
VB6 -> VB.NET の壁は結構高い これが越えられるならVB6->C#でも同じだろう

VB使いの勉強はいつでもOJTなのに、VB.NET はまだ仕事に使えないとなると
Delphiに移動という事かな

886 :デフォルトの名無しさん:02/05/26 09:29
>>885
だってVBってHSPと似たようなポジションでしょう。
.NETでやっと他言語に追いつけたかな?って感じ。

887 :デフォルトの名無しさん:02/05/26 09:31
歴史から見れば 逆だと思うけどね >>886

888 :デフォルトの名無しさん:02/05/26 09:40
>>886
どういう意味?>似たようなポジション
#業務にHSP使うっていうのは聞いたことないが・・・導入事例キボンヌ(あったら面白いな)

889 :デフォルトの名無しさん:02/05/26 10:17
Office.NETのマクロにVB.NETが使われるだろうから、
.NETはVB.NETで一本でという人は多いと思うよ。

890 :デフォルトの名無しさん:02/05/26 10:22
>>889 ? .NET なんだからどの言語でもマクロに出来る訳でしょ? 

891 :デフォルトの名無しさん:02/05/26 10:22
マルチリンガルをする余裕のない人が多いんだろうね・・・楽しいのに

892 :デフォルトの名無しさん:02/05/26 10:24
>>890
VSAに対応してるのは現時点ではVBのみ。

893 :デフォルトの名無しさん:02/05/26 10:24
>>890
過去ログ読もうか。

894 :デフォルトの名無しさん:02/05/26 10:25
>>891
同じ用途で同機能の言語2つ覚えても楽しくないし。

895 :デフォルトの名無しさん:02/05/26 10:27
>891
その楽しさを奪うのが.NETです。

896 :デフォルトの名無しさん:02/05/26 10:33
>>894
それは良く分かるね

でもマクロでVBを強要されるなら、尚更C#を使いたくなるけどね

897 :デフォルトの名無しさん:02/05/26 10:54
http://www.microsoft.com/japan/msdn/columns/scripting/scripting06112001.asp


Visual Studio for Applications deha

1 Visual Basic .NET
2 Script .NET
3 およびコンパイル済みのコードをコンパイルしないで実行できるスクリプト エンジン

の3つがサポートされているらしい

898 :デフォルトの名無しさん:02/05/26 10:57
>>897
>3 およびコンパイル済みのコードをコンパイルしないで実行できるスクリプト エンジン
MSILインタプリタ?

899 :Delフサギコ ◆zE1iiRdQ :02/05/27 09:36
   _____________
 /
 | 既存のVB、VC++使いは
 | 今までの蓄積したものがなくなってしまった,,,
 | という感覚はあるんでしょうか?
 | 特にMFC使いとかは…VC++.NETがあるからいいのかな?
 \_ ____________
    |/
   ∧,,∧
  ミ,,゚Д゚ミy━~~
   U   ミ  ヤスカッタので
 〜ミ   ミ  VC#コウタ
   U''U   VSじゃないと
        クラスが自分で作れないみたいだ…
        なんでかしら。
         

900 :デフォルトの名無しさん:02/05/27 11:25
>>899
(゚Д゚)ハァ?
SDKでもクラスライブラリは作れるだろうが。

901 :@IT掲示板より:02/05/27 11:38
Personalですか…。
会社にEnterpriseがあるのなら、マニュアル等を見る事は出来るんですよね。
それなら、まだ良いですよ。
最近Personalを使う人が少し増えてる様ですが、ボーランドはドキュメントが弱いですから、かなり混乱してる人もいるみたいです。
私はPersonalはボーランド自身にとって良くないなという印象を持ってます。

最近ボーランドの製品高いですよね!
開発レベルと製造レベルを区別してないというか、あらゆる仕様を満たすツールとなると、定価36万のEnterpriseですからね!
それで、顧客の要望に応えるべくC++Builderも揃えるとなると、両方で72万です。
バージョンアップ料金も他のスイートに比較すると、無茶苦茶高いですから!
顧客にボーランドツールの良さを納得させるには、具体的に作って見せるのが一番良いんですが、それをボーランド自身が妨害しているという印象を私は持ちますね!
@ITの「Java Solution」でも、内容の割にJBuilderが高過ぎるという話が出てますよ。

その点、MSは全てのサーバー、それにあらゆる開発ツールが付いて来るMSDNユニバーサルでも、トータル実質で30万円弱あれば、購入できます。
これがあれば、あらゆる状況での開発が出来ますからね!
それに、サポート・サービスもセットで付いて来ます!
ボーランドは全くないですよ!

だから、Delphiの製品版を店頭で見ないのは、無理ないですよ。
今のEnterpriseがProfessional価格になれば、自然に売れて来ると思ってましたが、もう時期的に遅いですね!
一番大切なのは、クラスライブラリですから!
本当は、ボーランドは今までに自社のクラスライブラリである、VCL(CLX)を普及させておく必要があったのですが。
(だから、期待が持てるとすれば、Delphi.Netですね。ボーランドの対応を私は見たいと思います!)

だから、VisualStudio.NET 私は売れると思いますよ。
かなりの人がMSDNを買ってるんじゃないですか?
私は、そう感じます。

902 :デフォルトの名無しさん:02/05/27 12:22
>>899
なくなってしまっていないので、当然そういう感覚はありません。

>>901
こいつはアフォです。相手にするのはやめましょう。ビツクリマーク使いすぎじゃボケェ

903 :デフォルトの名無しさん:02/05/27 12:24
>>902
この意見に限ってはアフォじゃないと思う。正論。

904 :デフォルトの名無しさん:02/05/27 12:49
個々の問題はさておき、基本的にアフォなのは、あらゆる仕様を満たすツールなんて視点を持ち出して、
しかもそれで比較してるつもりの点だろ


905 :デフォルトの名無しさん:02/05/27 12:57
価格・機能・サービス・品質どれをとってもBorlandが劣ってると指摘してるだけ。
そして、それは事実。

906 :デフォルトの名無しさん:02/05/27 12:59
>>905
そうか、ついでに、
価格・機能・サービス・品質のどれをとっても日本人が劣っているとも指摘しといてくれ

907 :Delフサギコ ◆zE1iiRdQ :02/05/27 13:02
ミ ゚Д゚彡製品を選ぶ目も日本人は劣っているとかも、追加しとくか。

908 :デフォルトの名無しさん:02/05/27 13:04
>>907
そうだね。日本ではVB人口が少ないもんね。

909 :デフォルトの名無しさん:02/05/27 13:11
そもそも客が道具指定してくるような仕事してて
その道具の値段が高い安いはないだろみたいな?

910 :デフォルトの名無しさん:02/05/27 13:22
Del厨必死だな。(藁
市場が冷静な評価を下してることに気付けよ。(ワラ
VS.NETの方がよく売れてるだろ?

911 :デフォルトの名無しさん:02/05/27 13:47
>>910 Amazonとかでは VB.NET が一番売れてるみたいだね

912 :デフォルトの名無しさん:02/05/27 14:05
>>910
無料のもの相手にどっちが売れてるかなんて争っても・・・

913 :デフォルトの名無しさん:02/05/27 14:19
>>912
Delphiに金払ってるヤシはいないと?

914 :デフォルトの名無しさん:02/05/27 14:44
MS製品に限って言えば、市場が冷静な評価を下したところなんて
見たこと無いな(w

915 :デフォルトの名無しさん:02/05/27 14:46
いくらなんでもトータルの人数をM$謹製ツールとDelphiを比べるなんて乱暴です
 プログラマ人口の正規の派遣業者が1割、残りも派遣出向や受託による下僕状態です
 企業内プロも、設計とコーデングが分かれていると、どうしても人数の揃え易い
 M$謹製ツールになってしまうでしょう

Delphiは、設計もコーデングも一人こなさなければならないようなワンマンアーミー的な
スタイルを取っているプロジェクトにしか受け入れられないでしょう。

916 :デフォルトの名無しさん:02/05/27 14:49
>>915
つまり趣味プログラミングにのみ適してると(w

917 :デフォルトの名無しさん:02/05/27 15:13
>>916
趣味というのがプログラミングの勉強の事なら、pascalだけでなくlispとcはやっておくべきでしょう

ひとりで設計製作するスタイルを取る企業内なら、Delphiは十分に戦えると言っています。


918 :デフォルトの名無しさん:02/05/27 16:12
なんか NHKスペシャルでやってたスーパー職人みたいなもんかな?

「物件を一人で受注から引渡し迄会社の代表として完了させる」とか言ってた

919 :デフォルトの名無しさん:02/05/29 00:57
VC++ や VB では、ひとりでは開発できないくらい効率が
わるいのですか?

どぉりで。



920 :デフォルトの名無しさん:02/05/29 01:10
>>919
VBは一人で開発しないと効率が悪い。
VC++はどれだけ充実したクラスライブラリを所持しているか次第。

921 :デフォルトの名無しさん:02/05/29 01:21
>>919
どぅりで。が正解だろ。

922 :デフォルトの名無しさん:02/05/29 01:31
C++Builder6 Standardはいつ無料になりますか?

923 :デフォルトの名無しさん :02/05/29 03:06
>>922
せめて Delphi Professional 版には旧バージョンでもいいから
ついて欲しかった。

924 :デフォルトの名無しさん:02/05/29 06:29
Delphi で作ったものを C# で作り直しているんですが、
C#で Windows.pas や WinUser.h に相当するようなものってどこかで
手に入りますか?

パラメータを素直に渡してくれないので Win32 API 呼び出しの定義を
作るのは少し面倒ですね。これに一番時間を取られてしまう。

925 :デフォルトの名無しさん:02/05/29 08:00
旧来のWIN32APIそのまま叩くようなベタな移植して意味あるの?

926 :デフォルトの名無しさん:02/05/29 10:48
さて、そろそろ WindowsDNA について語ろうか。

927 :デフォルトの名無しさん:02/05/29 14:06
>>924
お兄さん悲しくなった。

928 :924:02/05/29 16:01
まだ勉強不足なもので Win32 API を使わなくても実現できるか
どうかわからない機能があるので使いたいのです。

例えばクリップボードを監視して、テキストがコピーされたら
処理するような場合です。

C# のコードを書く時に使うユーティリティ類もできれば C# で作れば勉強
になるだろうと思って作り始めたのですが、今までは気にする必要が無かった
ところで詰まったりして意外とはかどりません。

アンマネージな機能が必要な場合はこれからも Delphi (または C++ )で
やった方がいいんでしょうか。


929 :デフォルトの名無しさん:02/05/29 16:10
>>928
>例えばクリップボードを監視して、テキストがコピーされたら
>処理するような場合です。

名前忘れたけどあるよ。クリップボードクラス。

930 :デフォルトの名無しさん:02/05/29 16:40
よっぽど古いものを除いて機能的には
.NET Framework ⊇ WIN32API
なのかな?

931 :デフォルトの名無しさん:02/05/29 16:47
>>930 それは違うだろ .NET Frameworkで全ての APIがカバー出る筈がない

むしろ上手にラップしてると見るべき

932 :デフォルトの名無しさん:02/05/29 16:49
>アンマネージな機能が必要な場合
  というか、VCLを使わないDelphiに、それほど魅力が無いのと同じじゃないのかい?


933 :デフォルトの名無しさん:02/05/29 17:08
>>931
.NETでカバーしてない機能って例えばどんなの?

934 :デフォルトの名無しさん:02/05/29 17:09
いやいやDelphiの魅力はAPIっすよ
おいらもC移植して勉強中なんだけど、API使わずにってこんなにつらいと思わなかったよ
APIなしよりはVCLなしのほうがまだいけるような気がする

935 :デフォルトの名無しさん:02/05/29 17:17
不毛な仮定だな。WIN32APIだけなら
GUIアプリの開発なんてやらないよ。

936 :名無しさん@Emacs:02/05/29 17:31
>>933 マルチメディア回りとか
そういえばGetAsyncKeystateのなるようなものもないよね?
あったらおせーて

937 :Delフサギコ ◆zE1iiRdQ :02/05/29 17:32

  ∧,,∧  クリップボード更新処理はDelphiなら
 ミ,,゚Д゚彡 こんなんだけど...
  ミつ[|lllll]) 
〜ミ  ミ   APIなしでVCLとかCLXだけで何でもできたら
  U U.   Delphi製アプリはほとんどが
        Linuxでも動くけど実際は
      そうは問屋が卸してくれないみたい。

type
 TForm1 = class(TForm)
  procedure FormCreate(Sender: TObject);
  procedure FormClose(Sender: TObject; var Action: TCloseAction);
 private
  FClipNextHandle: HWND;

  procedure WMDrawClipboard(var Msg: TWMDrawClipboard);
    message WM_DRAWCLIPBOARD;
  procedure WMChangeCBChain(var Msg: TWMChangeCBChain);
    message WM_CHANGECBCHAIN;
 public
 end;

procedure TForm1.WMDrawClipboard(var Msg: TWMDrawClipboard);
begin
 inherited;

 ShowMessage('クリップボード更新');

 if FClipNextHandle<>0 then
  SendMessage(FClipNextHandle,WM_DRAWCLIPBOARD, 0, 0);
end;

procedure TForm1.WMChangeCBChain(var Msg: TWMChangeCBChain);
begin
 if Msg.Remove = FClipNextHandle then
  FClipNextHandle := Msg.Next;
 if FClipNextHandle <> 0 then
  SendMessage(FClipNextHandle, WM_CHANGECBCHAIN, Msg.Remove,Msg.Next);
end;

procedure TForm1.FormCreate(Sender: TObject);

  procedure ClipboardSetHandle;
  begin
   FClipNextHandle := SetClipboardViewer(Form1.Handle);
   if FClipNextHandle = 0 then
    if GetLastError <> 0 then
     ShowMessage('クリップボードフック失敗');
  end;

begin
 ClipboardSetHandle;
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
 ChangeClipboardChain(Handle, FClipNextHandle);
end;

938 :Delフサギコ ◆zE1iiRdQ :02/05/29 17:43
肝心なのは
SetClipboardViewer(Form1.Handle);
のAPIでFormのハンドルをクリップボードViewerに登録

WMDrawClipboardとWMChangeCBChainを
Formで受け取って

WMDrawClipboardでは
更新されたときの処理を記述するのと
次のクリップボードハンドル(FClipNextHandleで保持)
にメッセージ送る処理

WMChangeCBChainでは
クリップボードフックをはずした時の処理とかを
書いておく
って感じかしら。

C#でもAPI使うのも
メッセージ受け取りもかけるからできると思われ。
           _____________
   ∧,,∧    /
  ミ,,゚Д゚彡 < C#の練習がてらにどうでしょう。
   U  つ   \
 @ミ  ミ       ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
   ∪''∪ 

これを、(GUIを隠すんじゃなくて)
GUI無しのExeで
やってくれって言われると、
Delphiではちょっと難しいかも。


939 :Delフサギコ ◆zE1iiRdQ :02/05/29 17:56
    ∧,,∧  次スレたてますた。
   ミ,,゚Д゚彡
    ミ つ旦)~~  
  〜と,,,~),,~) 

C# 仲良し Delphi Round 2
http://pc.2ch.net/test/read.cgi/tech/1022662451/l50

戦わないようにスレ名を工夫しますた。

1000逝ったらDat落ちするのでご注意どぞ

940 :デフォルトの名無しさん:02/05/29 18:48
>>928-929
C#でもAPI使わないとできないみたいだね。
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=166&forum=7

941 :デフォルトの名無しさん:02/05/29 21:09
C#版はこんな感じでいいのかな?

http://do.sakura.ne.jp/~junkroom/cgi-bin/megabbs/readres.cgi?bo=lounge&vi=1021888173&res=7&fi=no

942 :デフォルトの名無しさん:02/05/29 21:11













943 :デフォルトの名無しさん:02/07/08 04:24
1000トリガッセン ハジメマスカ

944 :デフォルトの名無しさん:02/07/08 04:50
イヤ

218 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)