1 :
デフォルトの名無しさん :
02/05/16 21:05 ヘジとその信者を同時に奪われたDelphiは やっぱり死滅しちゃいますか?
2 :
manko chinko :02/05/16 21:05
>ヘジとその信者を同時に奪われたDelphiは >やっぱり死滅しちゃいますか? しません。
C#とDelphi。 腹違いの兄弟みたいなもんだ。
4 :
デフォルトの名無しさん :02/05/16 21:06
5 :
manko chinko :02/05/16 21:07
>>4 >Del厨ハケーン
Delphiはフリーなバージョンをちょっと触ったことがあるだけです。
.NET厨、Del厨以外の普通の人は放置願います。 よろしくお願いします。
9 :
manko chinko :02/05/16 21:14
>>8 >まともな人は一切触りません。
へー
「ということにしたい」ですか:)
Kusakabeハケーン!!
>>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 >>「ということにしたい」ですか:)
>
>ということにしたいのですね? :)
思考停止ですか?
>>11 >>「ということにしたい」ですか:)
>ということにしたいのですね? :)
ということにしたいのですね? :)
16 :
デフォルトの名無しさん :02/05/16 21:18
>>15 >>「ということにしたい」ですか:)
>ということにしたいのですね? :)
>ということにしたいのですね? :)
ということにしたいのですね? :)
つか round 1 じゃないだろ... Del厨ってどこでも出てくるし...
>>17 あなたのようなどこにでも現れるアンチDelには迷惑しています。
C#プログラマより。
>>19 の視点
○★%&’”#$%&$%〜|)`@:Del+”▲□’”#$%&$
’”#$%&$$%
おいおいおいおい(;´Д`) またDelphiスレかよ... いいかげん引き際ってのを覚えたほうがいいんじゃない?
VB使いはどこで愚痴をすればいいのですか?
>>21 うれしいくせに(藁
ところであんたが最後に使った言語って何?
これはdelphiスレっつうよりもC#スレだろ。1を見る限りは。
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
じゃあ CSV ファイルを D&D したら 表形式のHTMLにして保存 IEを立ち上げて終了 というアプリをDelphiとC#で作ってみますか?
>>29 今時CSVですか?
表形式のHTML?XMLを吐き出してXSLTで整形とかいう考えは浮かばないの?
アプリ以前の問題で時代遅れ臭がただよってるね。(プ
>>30 それでもいいですよ。
XMLにするなら CSVの最初の1行はタイトル行という事にしましょうか
<XML> <SINE> Del厨にXMLは使いこなせない。これ定説。(嘲笑激藁 </SINE> </XML>
>>31 そういう問題じゃなくて、始めからXMLのデータとXSLを用意しておけばIEで表示して終わりということ。
アプリそのものが必要ない。
C#の人は全員そういう考え方をするのですか? アプリそのものが必要ないなら、それを作る道具も人間も必要ないですね。
>>34 ( ´,_ゝ`)プッ
DelphiよりもXMLの基礎を学んだ方がいいんじゃないの?(w
Del厨マジでやばいな
>>34 アプリを作るだけの人間は必要ないけど、
問題解決出来る人は必要になるのではないでしょうか。
そうでない人は淘汰されるでしょうね。
ええと、 煽るくらいだから、よほどのC#の使い手なんでしょう? なら、同じ目的のコードをどれだけ速く、そしてキレイに書けるのかを 競ってみましょうという趣旨ですから、問題はそちらが出して下さってかまいませんよ
また、嘲笑激藁厨房のお出ましか。。(嘲笑激藁
ホント、コード書いて見せろって事になるといつも沈黙 時間帯からみて学生さんじゃないのでしょ? というか学生さんならこれくら いの課題はこなせるでしょうしね。 もしかして、どっかの人売会社の営業さんがVB使いじゃ売れないくて困って 人材確保用に煽ってるとか?
>>41 自分は出来ないくせに人のことを笑う。
そんな人間として問題のある生物に構うのはやめなさい。
43 :
デフォルトの名無しさん :02/05/17 16:10
コードさえ書けばよいと思ってるDel厨は下層末端奴隷PGの典型ですね。(嘲笑激藁
>>43 状況証拠はそろっている。
少しコードを書けば疑いを晴らすことが出来るんだ。
それをやらずに(嘲笑激藁とか逝ってるんだからねぇ。(嘲笑激藁
Delphiしか書けない奴とDelphi・C#両方書ける奴が争っても意味ないじゃん。
だから、C#のコードが書けるのかどうか 見せてから煽れよ 文法もライブラリも C#の方が上なんでしょ? なら簡単なんでしょ? なら書いてみせてくれ
>>45 そらそうだ。
でも、煽ってるのは(嘲笑激藁だけ。
このスレの癌だなw
あれ? C#ってXMLに特化したんじゃないの? ならCSV から XMLへの変換くらい数行で書けるんじゃないの? 違うの?
49 :
デフォルトの名無しさん :02/05/17 16:40
お前らDel厨ごときにC#を使うまでもなし。VB.NETで相手してやるよ。
じゃ課題は?
exit(1);
C#って俺VisualStudioのオトコンプ-がねーと使えねーよ(泣
課題
>>29 は Delphiコードは既に CSVスレに提出済
課題
>>31 はDelphiのコードは殆ど同じ形式になるので面白くはないと思います
54 :
デフォルトの名無しさん :02/05/17 16:55
>>53 だから、スマートな.NET使いはそんなことでわざわざコード書かないんだっての。
分かってないねー。
>>54 お前はそれに該当しないな。
書けないんだし。
確かに、スマートな.NET使いさんには ワレたExcelで HTMLに変換がお似合いです
57 :
デフォルトの名無しさん :02/05/17 17:00
>>55 実際殆ど真面目にコーディングしなくてもカチカチやってるといけちゃう
んだよ。ただし、、、、役に立たないプログラムはね!(w
58 :
デフォルトの名無しさん :02/05/17 17:00
Del厨は設計もろくに考えずコードばかり書いてることが判明しました。
>>58 設計しながらコード書けるのが RAD ツールじゃなかったのか?
61 :
デフォルトの名無しさん :02/05/17 17:09
このスレ、Del厨しかいないことにまだ気づいてないみたいだね。 こんな時間に課題くれなんて言ってる落ちこぼれは自覚がないみたいだ。(嘲笑激藁
62 :
デフォルトの名無しさん :02/05/17 17:10
Delは正直俺が個人的に := が嫌いだとか直接文字列操作しにくかったりとか 一々interface, implementation とか書くのウザイとかのPascal的な部分で どうも苦手だったんだけど、同じような環境が脱Pascalしてくれただけでも俺 はうれしーよ。
>>62 だね。
自分の好きな言語で同じ物が出来るんだから.NETは偉大だ。
両方できる奴が入ると話が一気に終了してしまうヨカソ・・・
だから 両方出来るんなら コード書いてみせてよ
だって俺Pascalに執着ないし。 まともな言語仕様で自由度の高いRADツールがDelphiしかなかっただけ。 (どっかのVなんちゃらは問題外でした。) で、現在.NETって言う当時のDelphi系RADと似たコンセプトの標準環境が出た。 俺は現状ではC#がもっとも.NETに適していると思ったからC#を選んだ。 それだけだよ。きっとみんなも。 (違うぞって言うDelphi厨はどんどん反論してくれ。)
いいものを使いたいからこそ、数年前はDelphiを選び、今はC#を選んでるだけ。 どうしてこんな単純なことも分からないのだろう。
>>67 まぁ、1プログラマ1言語制を取ってる人種には到底理解できないことなのかもね。
上読んでないのでわからんのだが、何でDel厨はさっきからコード書け書け と小学生の「しょーこみせろー」みたいに繰り返してんの? つーか2ch の環境でで何を書けと?
71 :
デフォルトの名無しさん :02/05/17 17:45
>>66 違うと思うよ。
プログラムというのは著作物だ。
著作物は既にあるものや、他人が簡単に作れるものは殆ど無価値。
だから自分の技量を十分発揮出来る道具が一つあればそれで十分。
キミに取って C# がソレというのは結構な事だけど、他人に薦めたい
ぜひ広めたいと思うなら、C#のお陰で、自分ならこんなことが出来たっ
て所を見せておくれよ。 話はそれからじゃないの?
結局、道具以上に大事なのは、自分の能力を磨く事じゃないの?
少なくとも言語に関係なく自分オリジナルのコードを書かないとさ、
マニュアル読んでるだけじゃ、コーダかクラッカにしかなれないよ
>>71 分かってないねー。自分の能力を磨いてるから偏見抜きで.NETにもチャレンジしてるんだよ。
まあ君らみたいにアンチM$だけがモチベーションじゃ意義のある行動は起こせないだろうけどね。(プッ
>>71 いや、別に普及させようって意図はないよ。
自分が使いやすければいい。それが可能なのが.NETなわけだし。
まぁ、放っておいても普及する。
正直、PascalやRubyの構文は見にくい
正直、begin〜end;は見にくい
77 :
デフォルトの名無しさん :02/05/17 17:52
好きな言語を好きなときに使えるのが.NETの利点なわけで。 Pascalが好きな人は当然Delになるのが当然なんでは? ただ72よ何故煽る?
>>77 そらそうだ。
問題は会社とかでどの言語に統一する!令が発令されたりしそうだ。
VBとC#はどっちかが淘汰されるんじゃない?
80 :
62(77は付け忘れ、、) :02/05/17 17:56
ところで。XMLスキーマはGUIなんだがDel厨房な方々はその事はわかってるのかね?
>>79 Delphi.NETが淘汰されると思うよ
>>81 そらね。よっぽど良いもの出してこない限りObjectPascal.net以上の評価は受けないだろう。
で、アフォな
>>81 にはわからんと思うが
>>79 は言語的機能も守備範囲もかぶっている両者は
どちらが生き残るだろうかと言う話だ。
>>82 だから
「.NETで組んでくれんか?」
ってオファーの場合、我が社ではソースの統一もかねて、特殊な用途でない限りはC#を使う。
みたいな。
>>80 それぞれの単語の意味は判るのですが、全体の意味がさっぱり判りません
スキーマと GUI の関連は何なのでしょう?
>>86 XMLファイルをGUIで設計するってだけです。大したこっちゃない
>>84 大丈夫 自分が必要とされる場面では 道具は自分が指定しますから
90 :
デフォルトの名無しさん :02/05/17 18:11
C# > VB.NET >>>>>>>>>>>>>>>>>>> Delphi ってのを痛感させるスレだなあ(ワラ
>>90 お前俺のレス意図的に無視して煽ってるだろ。
煽り屋はage。これ常識。
>>89 なんで 羨ましい?
俺は道具指定されて、指定された時間働いてたら金貰える方が羨ましいよ
94 :
デフォルトの名無しさん :02/05/17 18:20
予想通り、Del厨対元Del厨の内乱スレになりましたね。(嘲笑激藁
いや、現在の俺にとっての敵は90=94だけだよ。
99 :
デフォルトの名無しさん :02/05/17 18:35
101 :
デフォルトの名無しさん :02/05/17 18:38
フリーで使えるDBの種類をあげてみれ
>>101 訂正。
デスクトップアプリ以外も「無料のツールで」作れること
>>101 >デスクトップアプリ以外も作れること
正気か?
>>103 Delphi側の話なら理解できるがVBでそれ言ってるなら・・・痛いな。
>>105 Delphi Personalじゃ作れないじゃん。
107 :
デフォルトの名無しさん :02/05/17 18:42
Personal版はGPL強制だからクソ。
>>106 Delphi Personalじゃ作れないじゃん。(ウィザードないし。)
だったり
Delphi Personalじゃ作れないじゃん。(よく知らないし。)
だと思われ。
112 :
デフォルトの名無しさん :02/05/17 18:44
みんな思うままに釣られてるなあ(ワラ
>>107 それはデマだって何度も逝ってるでしょ〜が
114 :
デフォルトの名無しさん :02/05/17 18:45
Personal版はアクティベーション強制で個人情報を吸い取っているからクソ。
僕のところにもPersonal版の登録をして以来、スパムメールが来るようになりました。
>>109 ファイル 新規作成 その他 でコンソールアプリというのがあるから試してみてね
アホスレ認定
>>107 =114=117
デマばっか流してんじゃないよM$社員
自作ユーザーの敵
週末の夜に何やってるんだか・・・
>>125 確かに、WindowsXPはOEM買えばある程度は済むけどね。
Delphiの場合、パーソナルでも普通にアプリ作って {$APPTYPE CONSOLE} をどこかに書けば、その時からコンソールアプリになる。 read writeでコンソール入出力が出来る。 だからGUIな画面を持ちながらコンソールアプリにするのも簡単
>>126 平日もしくは昼間ならやって言い理由は?
Perosonal版ではウェブサービスが作れない。
>>130 で、VBではどのエディションから出来るの?
CGI位ならDelphiでも作れるが。
確かにEnterpriseでしか作れない。 しかし .NET もマトモに構築しようと思えば相当な金が必要なのは同じだろう
VBで標準入出力やリダイレクトってあったっけ?
>>133 言語仕様には無くても直接
AllocConsole GetStdHandle ReadFile すれば可能でしょう
>>131 CGI とウエブサービスとは違うよ XML と ウェブサービス でgoogle検索してみて
>>135 ところで、アンチDelphiの人は全員10数万円出してからバカにしてるってことで良いの?
ん? 俺は Del厨だよ 便利な道具らしいC# やるより、 不便な道具らしいDelでそっちの勉強した方が身に付くと思うから勉強中
>>138 まぁ同意。
CなりPascalなりまともな構造化手続き型言語知ってる方がいいな。
>>131 .NETランタイムだけでできるよ。無料。
>>134 VB6で話をそらさないように。VB.NETならあるよ。
>>98 おい、変な風に話し進めるなよ。
俺はDel厨の
>>93 が
> 俺は道具指定されて、指定された時間働いてたら金貰える方が羨ましいよ
っていってるから、会社でVB指定されるのが羨ましいのかっていってるんだよ。
>>142 VBでも何でもずっと雇って貰えて、人並みに給料もらえるなら有り難い事じゃないか
C#ってC++のこと?
147 :
デフォルトの名無しさん :02/05/17 20:27
Del厨って口だけだな
>>144 それで苦労なく食べていけるなら羨ましいです
道具まで選ぶという事はそれだけの責任も伴いますし、
お金儲けの面からはだいぶ損してるという自覚もあります
Ruby > C# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Delphi
>>148 じゃ苦労するだろうけどVBつかってね。他の人はDelphiわかんないんだ。会社命令だから。
普通はどんな言語でもとりあえず適当に齧っておくでしょ? この先何やらされるか分かったもんじゃないし、自分がリーダになったとき もある程度広く浅く知ってないと他人に割り当てする時アウトだし。
152 :
デフォルトの名無しさん :02/05/17 21:26
で、コード対決はどうなったの?
>>154 先手打てば?さっさと。
そうすれば堂々とお前たちの勝利を宣言できる。
じゃあ、お題その1。 このスレをダウソしてローカルファイルに保存せよ。
using System.Net;
class a
{
static void main()
{
WebClient b = new WebClient();
b.DownloadFile("
http://めんどいから省略 〜","c:\a.html");
}
}
お題その2 メールを送信するプログラムを作成せよ。
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
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;
//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;
Result := Result + data2; end; closesocket(sock); end; end. 晒してみる。
>>160 using System.Web.Mail;
class AAA {
public static void Main() {
MailMessage msg = new MailMessage();
msg.To = "〜";
msg.Subject = "テスト";
msg.Body = "テスト送信します。";
SmtpMail.Send(msg);
}
}
C#はどれも10行程度か。
>>166 後発かつインターネットでの連携を考慮したライブラリだからね。
Delphi駄目じゃん。 begin〜end読みにくい 静的変数(static)使えない varの所でしか宣言できない 厨っぽい
,,,,,,,,,,,,,,,,∧,,∧ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ 〜′,,,,,,,,,,ミ,,゚Д゚彡 < けっこう、強力やなー UU"""" U U[大阪弁]__________ メール送信って、Indyではどや? NMPOPだとニポン語エンコド問題が 非常にネクになってたので、やりずらかったはず。
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;
まぁ、ライブラリ使えば大体の言語は1行で終わるわなw
かといってAPIで負しても仕方ないしな。
>>168 正直にわからないと言いなさいw
〜だったら、〜であれば はナシってことで
実際に行数・読みやすさでもC#の圧勝じゃん。 Del厨も何か有利なお題出してみたら?
>>173 ソース出さなかった奴に限ってよく吠えるw
メール送信は、簡単に書こうとすると ShellExecute かMAPIのコンポ貼り付けになってしまうので完敗を認めます ShellExecute の場合でも エンコードコードが必要なので1レスで書くのは厳しいです
>168 それならBCBの圧勝ですか?
>メール送信は、簡単に書こうとすると ShellExecute かMAPIのコンポ貼り付けになってしまうので完敗を認めます ∧,,∧∩ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ミ*゚Д゚*ミ < どやってか、コソーリ教えれ (ミ ミ \____________ 〜ミ ,,, ミ し' `J ShellExecuteでメーラー起動ならわかるんだが…(藁
>>178 ShellExecuteもMAPIもメーラにお願いする方式です。 SMTP直ではありません
∧ ∧ ・・・・。
ミ ゚Д゚彡
〜ミ,,,,uuミ
∧ ∧ ショボーン
ミ,,。_。彡
〜ミ,,,,uuミ
メーラー起動なら…
procedure TForm1.Button2Click(Sender: TObject);
var
MailAddress, Subject, Body, CommandLine: String;
begin
MailAddress := '
[email protected] ';
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;
>>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;
Del厨が恥知らずなコードを晒すスレはここですか?
>>182 コード晒さない奴がコード晒す奴をバカにする権利はない。
185 :
デフォルトの名無しさん :02/05/17 22:51
じゃあ、かなりの難題。 プログラムからHello Worldプログラム(コンソールアプリ)のソースを出力し、 コンパイルし、できたexeを実行せよ。
>>185 書いても良いんだけどそれは難題か?
もしかしてDelphiコマンドラインコンパイラ無いとか思ってる?
∧,,∧ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ミ,,゚Д゚ミ < テキストファイル出力して ミ ミ \ShellExecuteでdcc.exeに渡して 〜ミ,UU_ミ その結果をShellExecuteするんすか? こりゃまた....
なんかさっきから.NETに有利なお題しか出てないぞ。
>>190 Delphiが試されてるんだからそれでいいんじゃないの?
それが狙いよ!!フェッフェッ。
つぅか圧倒的なライブラリ差で.NETが勝つのは当然だけどね。 わざわざCとMFC戦わせてるようなもん。
>>188 Delphiだとそういう原始的な手段しかない。
.NETの方はソース生成もコンパイルも実行も、ライブラリの範囲内でエレガントにできてしまう。
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.
>>194 >原始的な手段
逆に永遠に生き続けると言うことだよ。w
つーかCodeDomでしょ?
>193 VCLはへっぽこライブラリという事ですね。
煽るのが目的だからコードなんか見ちゃいないという。
まあ、あれだな。コイズムと同じ幻想だな。
☆ チン マチクタビレタ〜 マチクタビレタ〜 ☆ チン 〃 Λ_Λ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ヽ ___\(\・∀・) < 次のお題まだー? \_/⊂ ⊂_ ) \_____________ / ̄ ̄ ̄ ̄ ̄ ̄ /| | ̄ ̄ ̄ ̄ ̄ ̄ ̄| |
vs Javaか?
∧ ∧ ・・・・。 ミ ゚Д゚彡 〜ミ,,,,uuミ マジでそんなに簡単にできんの? 自分でエディタ作ったとして、 秀マクロみたいなのが、簡単に作れるってわけざんすか C#移行か… さっさと、Delphi.NETしてホスイですね。
>>206 CodeDOMなんか実装してたら日が暮れます。
>>204 それ前にDelphiで作った どこかにコード落とした筈
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; }: こんな感じで。やりやすい格好であればいいです。
C#でエレガントにできるというならそれを見せて頂けませんか? ひょっとして.NETだとコンパイラ作るのが楽?興味ありありです。
CodeDOM関係はまだ全部は実装されていない筈
だから耳学問で実装なんかした事無いんだから。無茶言わないでよ!
簡単だエレガントだと言って、それを使いこなせてないんじゃしょうがないね >C#
>>215 ん? ,NET 嫌いだけど 評価の為に買ってるよ
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.0.3705)
>>217 分っててやってるんですが(笑い
Delphiでは、まあDOMパーザはどっかから持ってくるとして、
そこからシコシコ取り出すしかないですよね?
ちゃんとパーサーを使えといわれたら大変だけど XML はDTDで必ずフィールドがあるように出来るから、 delphiでも pos関数で探して取り出す方法で取り出しても問題ないよ そしてたぶんその方法が早くて簡単・・・でも面白くない
>>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;
}
僕はProfessional版ユーザーなんですけど、Delphi6のEnterprise版って XMLファイルからやりとり用インターフェース生成する機能ありませんでした?ダイレクトメールに書いてあった記憶が…
つかDelphiってリフレクション相当の機能ってあるの?
223 :
デフォルトの名無しさん :02/05/17 23:51
コンパイル速度はどうなの?
>>220 もしかして
Delphi用語で実行時型情報でプロパティ名を探して一致するプロパティがあれば自動的に格納される
というような感じですか?
面白そうですね。そういう関数作ってみようかな
使ってみればわかる。
>>222 クラス参照とpublishedフィールドがあります。
>>226 だとするならXmlSerializerみたいなのも作れるのかな。やったね!
228 :
デフォルトの名無しさん :02/05/17 23:59
盛り上がってまいりました!
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 マッパーによって生成されたトランスフォーメーションファイルを使用します。
じゃ
>>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#だと思う。 それが幼稚だという人もいるかも知れんが、幼稚でも仕事が速いほうが良い。
幼稚というか…
構文強調表示されてるから別に見ずらいと思った事内野。
>>229 そんなアヤシイものより、MSXMLのほうがいいだろ。
最新版ダウソできるし、定期的にバグ修正版出してるし。
簡易HTTPまでついてるから、クライアントサイドはこれだけでOK。
>>234 2chでは再現できない部分だね
Delが最初から予約語を太字で表現できたのに対し
VSは.NETになってからじゃなかったっけ
>>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");
}
// 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; } }
#さん降臨か?
240 :
デフォルトの名無しさん :02/05/18 01:37
>>238 Delphi以上に文字打つのが面倒そう。
コンパイルに何秒ぐらいかかりましたか?
>>240 >Delphi以上に文字打つのが面倒そう。
確かに。Javaと同程度かな。
∧,,∧ /なにげに、
>>195 さんのコードの動作確認。
ミ;゚Д゚彡 < ………神っ!!!
ミつ つ゛ \
@ミ ミ なにゆえこんな芸当が...!!
∪''∪ このスレで神の領域を見るとは...アリガタヤアリガタヤ
このコード...どんなDelphiソースでもコンパイル化なの?
>>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にも期待してよし。 で。次のお題はぁ??
コンパイルが終わるのを待つためにCreateProcess & WaitForSingleObject を使っただけで
>>188 でフサギコさんが言ったのと同じことやってるんですけど… マアワルイキハシマセンガ
247 :
デフォルトの名無しさん :02/05/18 02:15
PASCAL.NETは出るのでしょうか?
_______________
,,,,,,,,,,,,,∧,,∧ /ほんとにやっちまうとは主輪なんだ。
〜′,,,,,,,ミ,,゚Д゚彡< んで、あんなに簡単にやるとも主輪なんだ。
UU""" U U \_
>>195 さんカコイイ・・
C#ソースも、コンパイラをオブジェクトで扱えるのも
かなり素敵ネ。CodeDomよりソース綺麗じゃ。
そしたら..
b.exeと元プロジェクトのexeとの通信が出来たら...
WM_COPYDATAとか、DDEあたりで、、。。
否、、リダイレクソンとかで可能なのかな?
.
とりあえず、それが出来たら
アプリケーションユーザーに
Delphiソースでマクロ書いてもらったら
ExeやDLLにして元アプリの動作を変更できたりするのかな?
…って。アプリユーザーにもDelphiコンパイラが
必要なのか...まあ。仕方ない無料だしダウソしてもらうのがスジか。
色々つぶやいてから寝ます… 237-238すごいなー。 とりあえず244がコンパイルできないんですけど("Compiler"が見つからない)どうすればいいのかな… Pascal系言語.NETは既に2種類ぐらい出てますよ。Delphi.NETが出たらもうひとつ増えることになりますね。 OberonよりObjectPascalが好きなのでDelphi.NET期待です。 マクロ目的ならそんな面倒なことしなくてもBPL作ってもらえばDelphi IDEみたいにできるのでは… 229にDelphi使いが返事くれないということは、ここにEnterprise使ってる人はいないってことですか… 自分もそうだから何も言いませんけど。 …それにしても静かだ。皆さん寝てしまったのかな。けっこう良スレになっちゃいましたね、ここ。
_________ ∧,,∧ / 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 世の中ややこしい事でイパーイね。
>>249 cscompmgd.dllを参照すべし。
>>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();
// 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 生まれたときから構造化ですからw
原因を考えてみる。
・イベントメソッドなどで関数とか手続きとか見慣れてる。
・Cか何かで構造化を学んでからDelphiに魅入られた。
pascalは関数内関数書けるし、 objectPascalはモジュール化し易いから構造化するのが楽しいんだよね
それに好きな所で変数宣言出来ないのも構造化しなければならない事に繋がるし
>>252 のコードも
string[] columns = record.Split( new char[] { ',' } );
とここで変数宣言出来ないなら ここで別メソッドにするだろうし
>>254 >function f(fname:string):TStrings;
でも俺、こんなソース書くヤツと仕事したくないけど・・・。
それ以外にも引数のfnameを使わずに paramsを呼び出してるとか
259 :
デフォルトの名無しさん :02/05/18 10:16
じゃ 双方未完成という事で 納得出来るものを提出出来る迄のバトルを
つか、些細な突っ込みやめれ。
>>254 が変なこと言い出すから・・・。
スマン 短時間で書けるかどうか勝負してるんなら構造化してるヒマはないだろし 余計なチャチャだった
Del厨はまじでしねよ
ドーカツですか? ムネオ先生のように2人くらい殺った人じゃないと滑稽ですよ
>>254 でも出力されるHTMLはきれいに整形されてるよ。
よく考えてみれば、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");
// 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
短く書ければ偉いってものではないよ。 分かりやすさも大事。
C#には CSVを読み書きする CommaTextみたいなのは無いの?
>string[] columns = record.Split( new char[] { ',' } ); これだと正常に読めないファイルが結構でそうだね。
272 :
デフォルトの名無しさん :02/05/18 15:41
HTMLを1行に直書きしてる連中が「構造化の美学」ですか。(嘲笑激藁
>>271 "〜" で囲まれたケースまでは対応してないです。
HtmlTextWriterってウェブコントロールのレンダリングに使うやつでしょ? やっぱソースが汚くなるねえ・・・。
C#側は一通り揃ったな。
あとはDelphi側の
>>209 を待つのみ。
作ろうか?
でも
>>224 は撤回 Delではプロパティに使える名前に日本語が使えない
だから、TStringsで渡したのと一致するかを検索する方式にしようと思う
与えるのは文字列は
Person.Name
Person.Age
Person.Job.Title
で、XMLを再帰的に調べていって検索して一致する都度コールバックさせる
という仕様の関数でいい?
278 :
デフォルトの名無しさん :02/05/18 16:59
>>277 そこまで小難しいお題じゃないと思うよ。
構造体を定義して、XMLを読み込んでインスタンス作るだけでいいんじゃないの?
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版持ってる人がいなさそうなのが惜しい…
_____________ ∧,,∧ /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マッパーによって生成される変換ファイルを使う新しいコンポーネントを > 利用できます。 >
作りかけたけど、案外長くなりそうなので検索して見つけた
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でやってるようなプロパティ検索処理を入れれば自動的にプロパティに入れるのは出来そうですね
プロパティへの書き込み方法ですが 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なプロパティに一致する名前があれば自動的にセットされます
実験は <Caption>フサギコ</Caption> <Left>10</Left> とやって フォームのキャプションと 左位置が変更された事を確認しました
さらに情報 gikoBas.pas の SetPropVarだと pulishedなプロパティのみにしか自動セット出来ません ですから、フォームに貼り付けたボタンとかのCaptionには書き込めません pulished なクラスに書き込むには FieldAddress でも検索する必要があるようです
285 :
デフォルトの名無しさん :02/05/18 19:16
次のお題はウェブブラウザにでもします?
エンプラ版って幾ら?
なんか料理の鉄人みたいになってきたな。 次スレはそれっぽいタイトルで頼む。
290 :
デフォルトの名無しさん :02/05/18 22:13
とりあえずお題は1時間ぐらいで作れるレベルで。
使っていいコンポ、ライブラリの指定あり
292 :
デフォルトの名無しさん :02/05/18 23:58
確かに
>>285 は壮大だが、
2chブラウザならどうだ?しかもマ板用。
具体的にはソースの強調表示機能つきのな。
どの言語で書かれたか判別するのは無理だろうから、
ユーザーが指定したレスないし選択した部分を強調。
>>295 VSにはWindowsXPも付いてくる。
>>295 なんだかんだ言って自分が欲しいだけでしょ?
ここはプログラミングの話題にしてほすぃ
つか、BCB Personalってめちゃくちゃ安いんだし。
それに BCC もあるんだし本気でやろうとするヤツには
十分すぎる環境だと思うけどね
>>295
>>299 本気じゃない奴は学校からVS買わされます。
>>296 正直そのソース教えてください。VSまじでほすぃMEだから無理…?と思っていたので
>>300 MSDN付きならWin2KServerとXP Pro(開発用途での使用に限る)が付いてくるはず。
開発用途でマシンに負荷をかけるためにゲームを起動したり、
自前のクリップボードユーティリティのテストのためにワードやエクセル使っても良い。
\23kでOS+言語3(4)つ。お得過ぎ。
VC#, VB.NETの一番安い箱ではコンポーネント作れないって本当ですか? 使う側としては、他の人が作ったコンポーネントは貼り付けて使えます? …もし作れない&使えないなら、入門者からOOPを覚える機会を奪っているMSの飼い殺し作戦と認定する
>>302 SDKレベルでは作れるのでは?と個人的には認識。
>>302 大丈夫です。VB5 CCE がフリーで落ちてます!
あれって何かの拍子でスプラッシュが Professional 版になるんだよな、、>CCE
>>304 いや、.NETのコードじゃないと…ほら、継承とかできませんし…
DelphiならPersonal版でもコンポーネントを作れます&使えます。
入門者にとって、RADでクラスが扱えるのは、クラスの意義を目に見える形で学んでいるようなものです。
コンポーネントを作るという作業はOOPやその言語を強制的に覚えさせられることになりますし、
人の作ったコンポーネントを使うということは使いやすいクラス設計を体感することになります。
でそれらが制限されているとすれば…
>>302 の結論となります。
…で、結局のとこどうなの?SDKレベルで作ったとして、それは取り込んで使えるわけ?
コンポーネントを作るという作業はOOPやその言語を 強制的に覚えさせられることになりますし、 ↓ プログラムを作るという作業はOOPやその言語を 強制的に覚えさせられることになりますし、
ム板専用ブラウザ。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);
}
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()); } }
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;
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.
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
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#にコンパイルさせるコードが載っていましたが、 このとき、コンパイルルーチン(中間コード?)がリンクされて、 スタンドアロンコンパイラが作られるって事でしょうか?
COMが絡むと対決の意味があまりないな・・・。
対決も何も、C系(C#やC++、Javaも含む)は宣言順序が 開発向けじゃなく、既に出来あがったコードの清書に向いてるんじゃ? プログラム考える時、変数名や関数名決めるより先に型決めるか?普通。 どちらも使ってるけど、明らかにPascal系のほうが、Cよりも 新しいプログラム書く時は生産効率良い。その代わり、CやC++で 清書しないとPascal系で書かれたコード、再利用するのは大変 コンポーネント化はともかく、再利用性(ライブラリ化)はC系のほ うが遥かに優れてるようなきがする。
>>319 何となくわかる。
String data
と
data :String
の差でしょ?
俺も久々にCファミリーの言語触って違和感感じた。
dataというString型変数。
と
String型のdataという変数。
頭の切り替えが必要だね。
では、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;
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.
バイナリダンプの部分だけ作ってみた。賢いロジックじゃないけど。 色の変え方はよく分からん。 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(" ");
// 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(); } } } }
>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; }
うむ。ちゃんと変わってるね。 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使うときってどうやるの?
>>330 ↓こんな感じだす
interface
function FindExecutable(lpszFile, lpszDir, lpszResult: PAnsiChar): HINST; stdcall;
implementation
function FindExecutable; external shell32 name 'FindExecutableA';
>>325 ShiftJISの文字が途中で切れた時の処置を
>>323 ではしてますよ〜♪
>>330 function WWW(XXX: YYY): ZZZ; external 'DLL名' name '内部名'; …要するに大差無し。
334 :
デフォルトの名無しさん :02/05/19 21:11
CSVファイルをExcel形式に変換するプログラムを作成せよ。
336 :
デフォルトの名無しさん :02/05/19 22:13
Excel形式って公開されてるの? 公開されてるならやってみたい。
もしオートメーション使って、というのであれば、先のブラウザ同様どちらも同じ構造のコードになるのであまり面白く無いかと。 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#で使えるのか?
>>337 buf[1]からの読み込みならこんな感じ。
// 第2引数 : 読み込み開始位置
s.Read(buf, 1, buf.Length - 1);
何だかんだいいながらコードが出てくると対抗して作ってしまうあたりが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.
>>341 それは文字列ですよね。オープン配列の概念が無いみたいなのでやはり必要な部分だけコピーするしか無いのでしょうか。
>>342 成程。ってリファレンス見ればわかる内容ですね。すいません。
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
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で全部動くの?
>>347 変なコンポーネント使っている場合を除いて動くだろう。
349 :
デフォルトの名無しさん :02/05/20 01:41
このスレのためにDel Personal落として入れたぞ(゚Д゚)ゴルァ お前らも代わりに.NETのランタイムぐらい入れろ(゚Д゚)ゴルァ
Delphiのヘルプ使いづらい。今どき.hlpはないだろ。
俺は今のHTMLベースのヘルプよりWinヘルプの方が好きだが。
355 :
デフォルトの名無しさん :02/05/20 03:18
Delphiは確かにコンパイルは速いんだが、あの奇妙な文法にはどうしてもなじめん・・・
356 :
デフォルトの名無しさん :02/05/20 03:36
>>355 Delphi知らないんですが、どのへんが奇妙ですか?
>>337 .NETでのSliceの代わりはArray.Copy
358 :
デフォルトの名無しさん :02/05/20 03:39
そういえばプロトタイプ宣言の仮引数の名前が違っただけで エラーになるとか、それどころか片方だけ途中で改行すると だめだとか、ちょっと作りが荒いところがあるな。
{コメント} ↑これにはすごい違和感がある。C系言語やってる人間には。
良スレの実感・・・
2chの低級自縛霊であるところの煽り専門の奴らは コードが出てくると黙っちゃうからねえ。
>>359 //これ使えなかった?>Delphi
{これがコメントはたしかに違和感あり}
ANSI Pascalみたいな規格があって、 それに準拠するには{こんなコメントをサポートしないといけないのかも。} 既にむちゃくちゃ独自仕様だからこだわること無いと思うけど。
代入の := 文字列の '〜' end だったり end; だったり end. だったり迷う
365 :
デフォルトの名無しさん :02/05/20 03:55
セミコロンはカンマと同様、区切りだから、 end elseのように 一本の文として繋がるとこには置かない。
:=は結構普通だと思う。 VBみたいに代入と比較の=が同じなのはなんかやだし。 分けてるって事は意味解析も必要なさそう。 '〜'←unix系のsh使いならそれほど違和感ないかも。 end←そもそもbegin〜endが気持ち悪いね。
最近Delphi始めましたが、Pascalの表記はなじめそうもありません。 とりあえずコンソールアプリを作ってみたものの、 readlnの仕様とかヘルプ見てもよくわかんなかった。 整数を期待する入力にアルファベット入力してみたら、あっさり死んで萎え〜。
Delphiのフリーカーソルも違和感あり
Delphi始めて真っ先にフリーカーソルを殺す方法をgoogleで検索した。
>>367 クラスに属さないグローバル関数というのもいやん。
じゃあ、Delphiはカス、ということでファイナルアンサー?
ファイナルアンサー!!!!!
・・・・・・・・・せいかい!
このスレの趣旨はバージョンを6つも重ねたDelphiがすでに初バージョンのC#に 追いつかれ追い越され状態なのを確認するスレです。
出川必死だな(w
C#陣営のコードはIDE使ってないような気がする。 SDK+エディタでゴリゴリ?
377 :
デフォルトの名無しさん :02/05/20 04:44
フリーカーソルの方が便利だよ。 C#のIDEってフリーカーソルに出来るのでしょうか?
>>377 なんでそうやって無理するの?
い・い・か・げ・ん・直せ>Borland
フリーカーソルってのがいまいち分からん。 なにがフリーカーソルで、なにがそうでなくて、 フリーカーソルの利点と欠点をだれか教えてくれ。
フリーカーソル派 = トランクス派 反フリーカーソル派 = ブリーフ派
>>358 引数の名前は、入力支援でも使われるし、同じに統一する事を強制する方がいいと思うけど?
>>367 例外が出るのを 死ぬと表現するのは違和感あるよ
コードが出るのがちっとでもとぎれると待ってましたと厨房があふれるという罠。
(* そういえばプロトタイプ宣言の仮引数の名前が違っただけで エラーになるとか、それどころか片方だけ途中で改行すると だめだとか、ちょっと作りが荒いところがあるな。 *) ワラタ、けなすならPascalの生まれた経緯と歴史くらい勉強してくれ。
寝て起きたら荒れてる… Pascalは歴史的にキーボードへの配慮で (* = { で (. = [ となってます。 仮引数名は上下で合せないといけませんが(つーか変えたいなんて言ってる人初めて見ました)、改行は別におっけーだった筈…。 で、C#のIDE(VisualStudio.NET)はフリーカーソルにできますか?(←知りたい) .NET SDKは英語版の正式版が出た段階で入れ、日本語版、SP 1とキッチリ追いかけてますよ〜。 次のお題は…Windows APIだけで作られた (DelphiならVCL/CLXを、C#ならWindows.Formsを使わずに) 保存と読み込みだけできる簡易メモ帳、とかどうでしょう? (Delphiに有利過ぎ?でもXML周辺は明らかにC#有利でしたからこの位…w)
>>388 >で、C#のIDE(VisualStudio.NET)はフリーカーソルにできますか?(←知りたい)
フリーカーソルじゃないけどなかなかインテリジェント。
,,,,,,,,,,,,,∧,,∧ / 〜′,,,,,,,ミ,,゚Д゚彡< ここで動いてるC#コードって UU""" U U \Pascal.NETでも同じように記述できるん?
試したことは無いけど、出来ると思うよ
>>381 サンクスコ
大分使いやすくなった。
VBの場合予約語や宣言した変数は入力すると勝手に大文字小文字をうまく合わせてくれるじゃん?
Delphiにもその機能があったらいいなぁと思う。
小文字だけはソースが汚いし、Shift押してやるのも面倒。
,,,,,,,,,,,,,∧,,∧ /
〜′,,,,,,,ミ,,゚Д゚彡<
>>392 賛成でし。
UU""" U U \ 有名なG-エキスパってアドインで対応できんのかな?
BorlandはIndyとかと同じように
ユーザーサイドの周辺ソフト&ライブラをガシガシ標準環境に
取り込んで欲しいです。
そうしないと、マンパワーでどうしたってMSには勝てんだろうし。
フリカ無効化アドインとかも
標準でついてるべき機能だよなー
394 :
デフォルトの名無しさん :02/05/20 15:11
動くとしたところで、フサギコは.NETランタイム入れてるのか?
C#で作ったアプリって重くない?
>>396 起動がワンテンポ遅れる感じ
ただし遅いPCだけかもしれないけど(漏れのはPV650だからはっきり分かる)
.NETのランタイムがOSに完全に融合して 常時ロードされるようになれば アプリの起動が速くなったりして。 Sleepし続けるアプリでも常駐させとけば?
またOSのメモリ消費が増えるのか。
>>388 C#版これから作るけど、多分ここに載せきれない分量になるよ。
どこかアプできるとこない?
402 :
デフォルトの名無しさん :02/05/20 18:58
じゃ その次の課題 "0〜9 + - * / ( ) "を含む 文字列を引数にして 演算し 整数又は浮動小数点数を返す関数を書け なんか .NET ってそういうの得意そうじゃない?
>>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]));
>>403 つか、Delphiの力って大体把握してるから、
.NETで書くとどうなるかって方が興味深い・・・。
これだけ強力なクラスライブラリが完備されてると そのうち配列の途中に要素を挿入するアルゴリズム(藁 を知らないドットネッターなんてのが出てきそうだな。
今でも腐るほどいるから気にするな。
410 :
デフォルトの名無しさん :02/05/20 21:53
Delphi版簡易メモ帳完成。
>>401 のとこにソースを置きたいのですが、あっちはタブとか空白とかはどうなるのでしょう。
やっぱり全角空白に直さないと駄目?
0〜9 + - * / ( ) 以外の記号や演算はちゃんとエラーにしてエラーの種類も報告せよ、となるとevalを使うにしても難しい気が…
414 :
デフォルトの名無しさん :02/05/20 23:13
C#のコード、Cで書くのとほとんど変わらないな。(w しかもヘッダの部分も自前で用意しなきゃならないし。
uses Windows, CommDlg, Messages; を禁止されてるようなものか。
417 :
デフォルトの名無しさん :02/05/20 23:47
N88-BASICってフリーカーソルでしたっけ? N88-BASIC→BorlandのIDEと使ってきたので、 VZエディタとか使い始めたとき、めちゃ違和感があった。 学者系が非フリーカーソル、 ホビー系はフリーカーソルなのかな? MS-DOSのラインエディタやIBMのXエディタあたりが 非フリーカーソルの祖先なのでしょうかね。
>>417 >学者系が非フリーカーソル、
Pascalは教育用言語ですが何か?
混同し過ぎ。
420 :
デフォルトの名無しさん :02/05/20 23:54
うーん、でもBorlandってFortranは出していないよね? だから教育用途は目指していなかったのでは?
421 :
デフォルトの名無しさん :02/05/20 23:56
非フリーカーソル派って、N88-BASICでのプログラミング経験が無いのかな?
>>421 あるけど、その前にWindows派だったからメモ帳がデフォルト。
確か一太郎のフリーカーソルはあんまり違和感なかったかな?
フリーカーソルってメリットあるの? ただ十字キーを連打しなければいけなくなるだけじゃない?
今回は降参。(;´Д`) 気が遠くなってきた。 β1の頃ならまだ楽だったんだけど・・・。 Microsoft.Win32.Interop.dll があったから。
424=400です。
426 :
デフォルトの名無しさん :02/05/21 00:48
↑キーで真上にカーソルが移動する方が自然です。 私は、左端はエンターキーもしくはHOME CLRキー、右端はヘルプキー ですな。
>>426 そういう考え方もあるね。
フリーカーソルの方が良いと思ってたけど、
どっちが良いのかはユーザ次第ってことか。
改行マークを表示できるエディタなら非フリーカーソルがいいです。 改行マークを表示できないエディタならフリーカーソルがいいです。 ですから、Delphiのエディタがフリーカーソルなのはまあ賛成。 VC++ or VBのエディタも、フリーカーソルにするか改行を表示するかどっちかして欲しい…
WZのフリーカーソル(もどき)が一番いい。 Borlandのは、おかしいよ・・・
VCはフリーカーソルにできるよ。
Delphiのオートインデントとスマートタブは変だと思うけどね。 だからOFFで使っています。
>>432 オートインデントはかなり便利だと思うが。
構造が入り組んでくると、わざわざ自分でインデントするの大変だよ。
435 :
デフォルトの名無しさん :02/05/21 20:23
API叩くだけっていうの面白くないな。 囚人のジレンマのアプリケーションフレームワークはどうよ?
437 :
デフォルトの名無しさん :02/05/21 21:49
ていうかさ、C#でアンマネージドなプログラムは作れないのか?
無理。unsafeなものなら作れる。
やっぱり作れないのか。 その時点で買う気無くなったな。 VisualC++しかないんかなやっぱり。 スレ違いでスマソ。
>>439 Delphi、すごくいいと思うんだけど、高すぎる。
学割で数万とか有り得ない。こんな高いもん買えん。
Personal版は制限がきつくてやってられんし。
C++Builder6Proアカデミック版1万円にしれ。高すぎ。
VSは安かったよなぁ。
444 :
デフォルトの名無しさん :02/05/21 23:41
>>444 情報サンクス
バージョンアップは1回見送るのが正解かな
延期!
447 :
デフォルトの名無しさん :02/05/21 23:49
なんだ、やっぱり駄目じゃん、Delphi.NET。
思った通りだ。あのデモ画面を見ても.NETフルサポートしてないのは明らかじゃないか。
あのデモ画面ってなんですか? えっらそうに。
DelphiがC#と肩を並べられるのは2003年以降です。
>>441 >Personal版は制限がきつくてやってられんし。
具体的に。
学生がデータベースぐりぐりアクセスって考えられないんだけど。
∧ ∧ ・・・・。 ミ ゚Д゚彡 〜ミ,,,,uuミ 正直、MSILコンパイラだけとは...チェッ Personalが制限がキツイとか言う厨はほっとけ。
なーんだ。.NET対応しないのか。 当分Delphiは手を出す必要はないな。
>>452 機能的に、じゃなくて、ライセンス的に。
商用・業務アプリケーションの開発はできません。
とあるが、なんでこういうわけの分からない制限つけるかね。
>>454 というより.NETならDelphiは必要ないじゃん(C#があるさ)
漏れは.NETできない環境のためにDelphiを使うと思うよ
457 :
デフォルトの名無しさん :02/05/22 00:36
DelphiはVB.NETの代わりにもならないことが判明しました
しばらくはVB.NETの天下だな
459 :
デフォルトの名無しさん :02/05/22 01:47
Delphi.NETはハッタリでまだ実体のないものだということが判明しました
C#なのにVBの名前出すんじゃない。
言語機能やライブラリこそ似通ってるが、基本的には、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コンパイラって、詳細どうなんでしょ。
> C#/VB.NETでWindowsフックDLLは書けない .NETではJNIほど難しくありませんよ
フックPROCは DLL になければならない この意味が判りますか?
>>463
>>455 >商用・業務アプリケーションの開発はできません。
>とあるが、なんでこういうわけの分からない制限つけるかね。
もっとも低機能なpersonalですらまともな業務用アプリケーションが構築できてしまうからです。
>>464 LoadLibraryしてGetProcAddressできたらmanagedの意味がねーだろ!
何か勘違いしている模様
>>462 無知の知という言葉を送ろう。CLRでWindowsフックDLL書けますよん。
対象が違うという議論はMC++とC#にはあてはまるけど、C#とDelには
あてはまらんよね。もともとDelは打倒VBで作られたんだから、C#と
目標が同じであるのは明白であろう。
>>468 >CLRでWindowsフックDLL書けますよん
教えて!!
>Delは打倒VB
Delphiのいいところは、VBのような記述を、C++と同じ性能同じレベルで書ける、というところにあると思っていますので、
むしろずっとネイティブでいて欲しいと思う自分。
じゃあ、次のお題はキーボード入力のシステムフックだ!
471 :
デフォルトの名無しさん :02/05/22 17:38
読めないや く( ´∀`) テヘッ
475 :
デフォルトの名無しさん :02/05/23 02:41
>C# vs Delphi Round 1 Microsoft C# Microsoft Visual Studios Borland Delphi?
477 :
デフォルトの名無しさん :02/05/23 03:54
Delphi.NETが出たらVCLって死滅しちゃうの???
>>477 VCLは非劣化情報なのでコピーとっとけば死滅しません。
ネイティブコードをはけるC#コンパイラキボンヌ
C#で作れるEXEファイルって .NETをインストールしてないと動かないの? それとも、何かDLLだけインストールすれば動くようになるの?
Del厨?
C#コンパイラってネイティブコードはかないの? Javaと一緒?
C#とかDelphiなんかよりやっぱC++Builderが最強でしょ。 Delphiのクソ使いにくいこんなの業務に使えるのかって 言語仕様がC++になることで解消されてる。
>>483 もしかして STL が無いとコード書けない人?
>484 無くても書けるがあると楽だ。 VCLだけだと物足りない。
漏れ!=483ね。一応。
無視されてる…オープン配列やらvirtualなクラスメソッドやらC#に無さそうな機能を使って頑張ったのに…
488 :
デフォルトの名無しさん :02/05/23 14:59
>>487 フレームワークの意味がわからなかったんだよ。
きっとVB上がりばっかリだからクラスなんて作ったことないだろうな。
というわけでDelphi=Object Pascalユーザーの圧勝。
>>488 フレームワークって何ですか?ぜひ教えてください。
>>461 さんのソースはどのへんがフレームワークなんですか?
STLはともかく、テンプレートは便利だよなぁ。 Delphiにも欲しいぞ。
>>490 今時、クラスライブラリのないOOPLや
STLのないテンプレートなどには
全く存在価値がありませんが?
VCL,STL,OWL,MFC全部使えるBuilder最強。
>>493 それだけポリシーがない環境ということ。
へぇ、ポリシーねぇ。
( ´・∀・`) へー
497 :
デフォルトの名無しさん :02/05/23 18:39
「100%Pure .NET開発環境」ということは現行のVCLはあぼーんということですな
499 :
デフォルトの名無しさん :02/05/23 18:57
Borlandって節操ないよね。
でもさDelphi.NETついてもランタイム要るんだろ? 駄目じゃん(藁
でもさDelphi.NETついてもランタイム要るんだろ? 駄目じゃん(藁
ああ言えば上裕。
504 :
デフォルトの名無しさん :02/05/23 19:42
Delphi.NETで作ったアプリを動かすにはBorland.Vcl.〜.dllがないと動きません。 これはVBの悪夢の再来です。
>>504 .NETの基礎の基礎。アセンブリ管理機構すら勉強してないアフォの発言に見えるな。
>>505 でもさDelphi.NETついてもランタイム要るんだろ?
駄目じゃん(藁
アセンブリ管理機構てどんなの?
( ´・∀・`) ・・・
>>508 でもさお前ついてもランタイム要るんだろ?
駄目じゃん(藁
?
アセンブリ管理機構とやらを勉強してないとアフォらしいな。
>>508 から飛んで勉強しとこう。
でもさ.NETついてもランタイム要るんだろ? 駄目じゃん(藁
514 :
デフォルトの名無しさん :02/05/23 20:13
検索のヒント ・キーワードに誤字・脱字がないか確かめてください。 ・違うキーワードを使ってみてください。 ・より一般的な言葉を使ってみてください。 「アセンブリ管理機構」 は誤字・脱字があるか、一般的でないらしい どうすればアフォから脱出できますか
________ ∧,,∧ /まづは ミ,,゚Д゚彡< 2chの情報を _φ__⊂ミ_ \鵜呑みにしないことから /旦/三/ /| はじめなさい。 | ̄ ̄ ̄ ̄ ̄| | | 愛媛ミ力ソ .|/  ̄ ̄ ̄ ̄ ̄
>>515 ∧_∧ / ̄ ̄ ̄ ̄ ̄
( ´∀`)< ・・・
( ) \_____
| | |
(__)_)
そーいや、アセンブリとマニフェストの関連を表す言葉ってないね。
別に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?)用のランタイムライブラリをリンクして、 そのターゲット上で実行するときだけランタイム不要にする。 他の環境は要ランタイムってできないの?
>>521 って言うかJIT、PreJITがあるから。
523 :
デフォルトの名無しさん :02/05/23 23:32
JITってアプリケーションのEXEに含まれるのですか?
525 :
デフォルトの名無しさん :02/05/23 23:51
>>524 Del厨に分かるわけないだろ。(嘲笑激藁
>>525 お前に構うのはIPパケットの無駄だがね。
俺がDel厨だとしたら?
また「嘲笑激藁」厨か・・・
529 :
デフォルトの名無しさん :02/05/24 00:17
タバコは・・・JT
Just Intel sysTem?
Just In Time コンパイラの事でしょ? だからね、必要なJITコンパイラを exe につけて、 実行時に中間コードをコンパイルして実行するの! もぉ!
嘲笑激藁厨ってwin板にもいたな。
ほら、Del厨なんてこんなもんだ。(嘲笑禿藁
534 :
デフォルトの名無しさん :02/05/24 00:58
ひょっとしてEXEは作れても完全なネイティブでないのか?
DelphiってWindowsでしか動かないんでしょ。 駄目じゃん(藁
Kylix は?
名前が違うじゃん(藁
実質、Delphi for Linux じゃないの? 使ったことないけど。
Delphi for Qtと言った方がいいかも
540 :
デフォルトの名無しさん :02/05/24 05:27
KylixはすべてのLinux機で動かないからクソ
VCLが使えるわけじゃないからなぁ
でもさDelphi.NETついてもランタイム要るんだろ? 駄目じゃん(藁
>>542 .NET Framework に加えて、Delphi.NET 独自のランタイムがいる、ってこと?
.NETにランタイムがいるのは許せるけど、Delphiにランタイムがいるのは許せない。
>>544 >Delphiにランタイムがいるのは許せない。
頭冷やせ。
ストッキング冷やせ。
Delphi.NETはネイティブコードではありません。 Delphi.NETはランタイムに依存します。 どうよ?
お 前 ら 同 名 の 開 発 言 語 が あ る 場 合 .NET を 付 け や が れ
>>547 それは他の.NETでも同じこと。
どうせ他のソフトにだってdllの一つや二つ付いてくる。
ランタイム=遅い、DLL HELL
って従来のステレオタイプな考えは.NETでは恥ずかしい。
↑何が言いたいの?
>>550 DelphiはDLLに依存しないネイティブコードが売りだということ。
でもさDelphi.NETついてもランタイム要るんだろ? 駄目じゃん(藁
>>553 どうダメか説明してくれ。
後、ランタイムとクラスライブラリdllの違いも説明してくれ。
(その文章書いてるってことはわかってないんだろうけど(激藁嘲笑。)
たった数個のクラスを使うためだけに、数百個クラスの詰まったDLLが必要になる。 .NETでデフォルトでついてくるならまだしも、Borland製じゃね。
このプログラムを動かすにはBorland.Vcl.dllが必要です。 そんなアプリ俺は使わない。
ネイティブでもない、単体exeでもない。 Delphi.NETの売りは何なのか?
>>556 じゃあ君はdll使うアプリはいっさい使わないんだね。ご苦労様。
Del厨必死だな。(藁 数ヶ月前は.NETをボロクソに言ってたくせに。(w
>>559 今では何か勘違いしているバカを矯正するので大変だよw
でもさDelphi.NETついてもランタイム要るんだろ? 駄目じゃん(藁
Del厨も.NETに移行するまで時間がかかりそうだね。 ブビ厨に教わった方がいいかもね。(w
.NETの土俵に上がったら、できることはDelphiもVBもC#も変わらないじゃん。 Delphiを使う意味って何?
C# を使う意味って何? VB.NET を使う意味って何? Delphi を使う意味って何?
>C# を使う意味って何? .NET Frameworkを築いた言語であること。 >VB.NET を使う意味って何? 世界で最も使われている言語あること。 >Delphi を使う意味って何? 知らん。
Delphi.NETが出たらライブラリも言語仕様も変わる ↓ 過去のDelphi資産がすべてあぼーん ↓ だから今のうちに移行の準備しとけよ VBと同じ手口じゃん(プッ
はじめてみたけど、すげえバカバカしいスレだな(w
569 :
デフォルトの名無しさん :02/05/24 07:49
.NET系スレは粘着Del厨が出てきてすべてダメにしてしまう。
厨な質問で申し訳ないが、.Net Framework上でプログラムの実行速度は遅くなったりしゅる?
ものによるんじゃない? CPU IntensiveなものはJITされるからあんまり変わらん気がする
ベンチマークとかあるとわかりやすいねんけど。 Java vs C# vs その他。みたいな。
573 :
デフォルトの名無しさん :02/05/24 08:27
前にどこかのスレでやったよ C# vs Delphiでベンチマーク 単純コードで C#が25%増し程度 再帰を使うコードでも倍程度しか時間がかからない
>>573 どこのスレか思い出せませんか?
見てみたい。
.NET 関連スレかな。
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") ); }
元スレキボンヌ
>>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
>>575 しつもん!
どうしてDelphi側はイベントプロシージャなんですか?
条件を同じにするならどちらもコンソールにするかC#側をWindows.Forms仕様に書き換えてもいいと思います。
>>580 なんか判らんが好きなようにコード書いて比較して 結果を発表しなさい
_______
ピッ! ∩∧,,∧ /先生、
>>580 君のシツモソの
ミ,,゚Д゚彡< 意味がチョットわからません
ミ ミ \_____
\ ̄ ̄ ̄ ̄ ̄U ̄ ̄\
||\ \
||\|| ̄ ̄ ̄ ̄ ̄ ̄ ̄|| ̄
|| || ̄ ̄ ̄ ̄ ̄ ̄ ̄||
.|| ||
不正をしてでもDelphiの方が速いと言いたいんだよ。(嘲笑激藁
586 :
デフォルトの名無しさん :02/05/24 13:03
>>575 やっぱりDelphiはどこからどこまでがブロックか分かりづらい。
begin〜endはダメだなこりゃ。
>>580 private void button2_Click(object sender, System.EventArgs e)
↑俺にはイベントハンドラにしか見えんのだが
実際、フォームにボタンを貼り付けてテストしたんだけど・・・
>>586 Oracleのストアドとか書いたこと無いでしょ
(あれ?どこかでも同じことを書いたような・・・)
>>587 強調表示しないと分からないということがクソなんだよ。
>>575 ってC#の方が速いっていうことだよね?
コンパイル速度も実行速度もC#の圧勝だNE!
>>591 真に受ける厨房がたまにいるかも知れんから
わざと間違った情報を書き込むのは控えよう
>592 オマエガナー(w
Windows XP、PenV650での実行結果 Delphi 17.78秒 C# 30.83秒
∧,,∧ サッ /強調表示とか言う奴
ミ,,゚Д゚ミ < 逝ってよし
⊂ 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;
関数内関数くらい、氏っとけ
Delphiって return 0; みたいなことできないんだ。 VB.NETですらサポートしたのに。(w
>>596 C#とDelphiを比較するなら両方ともあるていど知っている必要がある
このスレに君のような初心者は不要
関数内関数、まさにオブジェクト指向を無視した構造ですな(w どこがObject Pascalなんだろう?D.NETどうなることやら。
>>599 他を寄せ付けないくらいに....
∧,,∧ プハァ
ミ,,゚Д゚彡 ∫
と ,,ミつ━
━┳━━┳━┓
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|
つーか、こんなコードでベンチマーク比べちゃうんですか? さすがDel厨
604 :
デフォルトの名無しさん :02/05/24 14:12
*** 注意 ***
>>575 のベンチマークはインチキです。
C#の方はDebugモード&最適化なしでコンパイルしています。
こういう偽の情報にはくれぐれも注意しましょう。
C#の方がコンパイルも実行も高速です!
C#とDelphiとは低レベルな争いだな。
>>604 >C#の方はDebugモード&最適化なしでコンパイルしています。
出てくるMSILはDebug Releaseとも同一だ
と日系BPパソコンベストムック、始めようC#のP20のコラムに書いてある。
取り合えず論拠もないのに騒ぐな。
607 :
デフォルトの名無しさん :02/05/24 14:22
マルチスレッド環境とシングルスレッド環境を比較して、 「シングルスレッドの方が高速です」と言ってるとはレベルが低いですね。:)
>>607 そもそもそれらを比較しようとした奴がアフォなんだと思う。
なんかアフォとしか言いようのない恥ずかしい事このスレに書くよりさあ 自分が好きなようにコード書いて比較したらいいじゃないか C#で再帰が遅いのは仕方ない。 既にJITコンパイル済みかどうかチェックする為に間接コールになるからね。 それでも、2倍前後に収まってるのは頑張ってると俺は思うよ それに、次のバージョンくらいで再帰対策用の仕様拡張くらいするんじゃないの?
612 :
デフォルトの名無しさん :02/05/24 14:34
>>575 の結果
C# : 8,192バイト
Del : 397,312バイト
驚くべきことに、C#の方が50倍近い差をつけて勝っています。
>>611 >再帰対策用の仕様拡張
コードレベルにまで及ばなければうれしいけどね。
>>612 Framework込みで計算するのが筋じゃないか?
後、ちょっと上のレス読めばわかるが君、馬鹿にされてるよ。
615 :
デフォルトの名無しさん :02/05/24 14:37
>>614 やだねー、洒落の分からない奴は。(嘲笑激藁
617 :
デフォルトの名無しさん :02/05/24 15:07
Delphiでネイティブコード書いたって2003年にはあぼーんなのに。(w
>>617 1年持ったらいい方だろう。ソフトなんて。
>>618 あれ?VBの時は散々けなしてたくせに。(w
VB→VB.NETのときと同じことがDelphiでも起きてるんだNE! やぱーり同じ穴のムジナだNE!ヽ(´∇`)ノ
>>621 VB:言語仕様が変わって従来ユーザーが付いて行けなくなった。
Dl:クラスライブラリのしがらみで完全に.NETに追従できなかった。
問題点は違うけどね。
623 :
デフォルトの名無しさん :02/05/24 15:26
どっちみち能無し年寄りは取り残されるだけ。(嘲笑激藁
>>623 というか、お前既にこのスレでさえ取り残されてるぞ
・・・・とレスしてやる俺は親切な人か?
でもさDelphi.NETついてもランタイム要るんだろ? 駄目じゃん(藁
Delphi.NETがつくってどういう意味なんだろう。
>>627 なぜか誰も修正しない。
晒しageの一種か?
>>627 従来のDelのソースから.NETへ落とせるのなら
存在価値が無いわけでもないってところでは
>>628 あ、そうか・・・荒らしレス(626のこと)なんざまともに読まないからね
632 :
デフォルトの名無しさん :02/05/24 19:01
Delphiってまた.NET対応で文法拡張するんでしょ? どうしてこんな独自仕様言語に肩入れするのがいるの? VBの方がよっぽどマシだよ。仲間も多いし。
>>632 文法拡張しても、今迄ズッとしっかりした下位互換を見せてくれてたよ
さすがに今回は Object型は捨てられると思うけど、それはしょうがない
5年以上前から Object型は止めるってアナウンスしてたんだから
まあ仲間が多いのも良し悪し、
廃れ始めると人数余って悲しい事にならないとも限らないさ
それと
VB質問スレと Delphi質問スレみても VBの方に放置が多いぞ
もっとガンバレ
>さすがに今回は Object型は捨てられると思うけど んなこたない。C#にもスタックに割り当てられるオブジェクトはある。
System.Object
おいおい、関数内関数のどこがObjectなのか誰か説明してくれよ。 都合悪いときにアフォ?で済ませんな。
>>636 >Objectなのか誰か説明してくれよ。
オブジェクト=OOPとか思ってる人にはダメです。
え?Object PascalってOOP Pascalって意味じゃなかったの?そりゃ すまんかった。てっきりそうなのかと。 で、Objectって何を指してるんだい?
おいおい、forや{のどこがObjectなのか誰か説明してくれよ。 C#って本当にオブジェクト指向なのか?
>>639 =598
Object Pascal はオブジェクト指向Pascalの意味。
でどうして君は、関数内関数はオブジェクト指向を無視した構造だと
考える訳?
642 :
デフォルトの名無しさん :02/05/24 20:18
Del厨ってオブジェクト指向分かってないんだな。(嘲笑激藁
>>642 そのレスつけるのって、仕事か何かですか
まあお前らはsmarttalkでも使ってなさいってこった。
648 :
デフォルトの名無しさん :02/05/24 20:27
Pascalなんかやってると構造化のまま頭が固まってしまうんだな。(嘲笑禿藁
(_  ̄ ( 0 0 ) ̄_) < 嘲笑禿藁
↑
>>648
/* コメントがオブジェクトなOOPLってある? */.WriteLine();
____
/∵∴∵∴\
/∵∴∵∴∵∴\
/∵∴∴,(・)(・)∴|
|∵∵/ ○ \|
|∵ / 三 | 三 | / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
|∵ | __|__ | <
>>649 BCB++って何
\| \_/ / \_________________
\____/
______.ノ (⌒)
//::::::::|-、 ,-/::::::ノ ~.レ-r┐
/ /:::::::::::| /:::::ノ__ | .| ト、
| /:::::::::::::::| 〈 ̄ `-Lλ_レ′
レ::::::::::::::::::|/::: ̄`ー‐---‐′
Borland C++ Builder++
654 :
デフォルトの名無しさん :02/05/24 20:31
あーあー。せっかくの議論をAAで潰してるよ。 Del厨って卑怯だね。(嘲笑激藁
>>648 オブジェクト指向と構造化は相反するものではありませんが?
え?え?Object PascalはやっぱりOO Pascalなのかい?どっちなんだよ、まったく。 関数内関数って局所化ができてない証拠でしょ?その内部関数はどうして 再利用できない場所に埋め込むの?再利用しないならどうして関数化するの?
>>655 相反するなんてどこにも書いてませんが?
>>649 C++のclass, structはデフォルトで
思いっきりスタックに割り当てられてるような・・・
>>656 俺はテクニック知ってるんだぞー、って。(嘲笑藁
嘲笑激藁
藁激嘲笑
我愉快成
笑激嘲藁
>>656 それでは private な関数はどうして privateにするのですか?
片方はブロックを作ればいつでも変数を宣言出来たり、ブロックを
作らなくてもどこでも変数を宣言出来ます。
逆にpascalは関数の内部でも関数が作れます。
それはそれぞれのスタイルであり、OOとは関係ありません
マジレスすんなー
してもきっと理解できないぞー
要はDelphiではこんなことができます、すごいでしょーっていう自己満足なんでしょ?
ただ煽りたいだけなのさー
今頭にきてる奴はこのスレ覗くなー 相手が相手だから議論しても得るものないぞー
>>665 すまん、Object Pascalはまったくわからないんだが、Object Pascalには
public関数(メソッド?)とprivate関数という区別はないんだね?しかも、
関数内関数は定義している関数とは別の関数からでも呼び出せるんだね?
うっそー、ちがうっしょ。privateメソッドと関数内関数はまったく
ちがうじゃん。クラス内で再利用できるからprivateめそっどにするんだぜ。
その関数でしか使わないんじゃあprivateメソッドとは並べらんないよ。
視野が狭い上に偏っとるな
>>672 >すまん、Object Pascalはまったくわからないんだが
出てこないように。相手のこと知らないのに相手のこととやかく言うのって失礼だと思うが。
>>672 関数内で再利用できるから、関数内関数にするんだぜ?
関数内で再利用、クラス内で再利用、ユニット内で再利用、
アプリケーション内で再利用。どれも再利用という観点から見れば
同じ。
関数内関数は C++でいえば、関数でクラス定義をしたメソッドのようなものです 上手に使う人もいますし、逆に使わない人も居ます。それだけでしょう
677 :
デフォルトの名無しさん :02/05/24 20:51
>>674 初心者にきちんと説明できない人が上級者気取りですか?(嘲笑激藁
再帰を含む処理は、関数内関数を使うと特にスマートにかけますよ。
だから
>>595 は 再帰処理を書く時のクセでそう書いたのでしょう
>>675 ローカル変数も関数内で再利用できるNE!
メソッド内メソッドの最大にして唯一のメリットはスコープを最小にして、 クラスのprivateすら汚さないようにできることだな。 Cの { ... { int i; } } みたいなもんだ。
>>679 それは再利用とは言わん。ただのズボラだーよ
関数内関数って関数の中でだけ使える変数じゃなくて関数ってだけでしょ。 長い関数を細かく分けるときにスコープを広げずに分けられるから便利なんだよなぁ。 俺pascalやってないけど関数内関数は他の言語でもほしい。
683 :
デフォルトの名無しさん :02/05/24 20:58
関数化という発想しか先に来ないのが構造化Del厨の哀れな頭脳構造。(嘲笑激藁
うーん、どうでもよくなった。関数内関数かー。。。うーん、 やっぱどうでもいいや。じゃましたね。
まあC系でも int func(void){ int a=0; void privateFunc(int n){ a+=n;}; ・・・ } みたいな感じで書ければ便利とは思うけどねブロックに名前が付けられのもあるんだから ついでに呼び出し出来るようにしても良いように思うけど
ちょっと欲しい
687 :
デフォルトの名無しさん :02/05/24 21:05
今日もDelphiの完全勝利だな。 では家元は帰るぞ。
>>682 長い関数を分けるという考え方はOOP的じゃないけどな。
VB vs Delphiくらいがちょうどいいんじゃないか?
>>688 OOPだったら長い関数はどうするんだ?
>>677 あなた初心者? 初心者なら聞く時にすべき態度があるとは思いませんか?
>688 分割統治はOOに限らず普遍的な考え方だね。
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 どうやら正解のようだ
いつからここはこんな雰囲気悪くなったの?
コレは前に書いたコードだけど、もちろん自分で使うコードはクラス&メソッドで書いてるよ ただ、ちょっとした文字列処理を手軽に書くにはこれは結構便利だという例ね 素早く、そして短く書ける。 そして大事な事は、このコードはクラスに変更するのも簡単だという事
>>694 確かに、関数内関数を使うと、
再帰的な処理を、何も考えずに、素直に書く事が出来る。
これはやっつけ仕事の典型かもしれないけど、コードを見てくれれば判ると思うけど、
たとえ何も考えずに素直に書いても、後でクラス化するのが、逆に簡単になってるでしょ?
メソッドの抽出のリファクタリングをするときなんか関数内関数があると便利だよね。
やってることがブビ厨と変わらないね。 > やっつけコーディング
Delフサギコをやってきます
706 :
デフォルトの名無しさん :02/05/24 21:52
Del厨って構造化プログラミングしかできないのか。 これじゃあVB.NET使いの方がはるかにレベルが高いよ。
707 :
デフォルトの名無しさん :02/05/24 21:53
VB.NET使いなんているの?
>>707 >706はアフォだから放置しろ(ゲラ
710 :
デフォルトの名無しさん :02/05/24 21:58
Del厨って言い返せなくなるとワンパターンでアフォってしか言えなくなるんだね。
711 :
デフォルトの名無しさん :02/05/24 21:58
>>706 Del厨って構造化プログラミングしかできないのか。
これじゃあVB.NET使い(俺)の方がはるかにレベルが高いよ。
他の環境で十分な互換性を持って動かないと windows上でも使われないでしょ Windowsと同等にWinCE上でも動くとか XBOX上と共用のエロゲが作れるとか、
>>712 既に割り切った。
Windows64(w)で再コンパイルなしで動けばいいや。
Windows64上でも 常識的にはWin32もWin16もDOS窓も動くんではないの?
>>714 コンソールはともかく16bitのDOSはどうよ?
>>715 Win16が動くなら 当然DOSアプリも動くでしょう
俺、Delphi1で16bitアプリ作る事あるよ それをW2000で走らせたって快適に動くし
>>714 Intelって64ビットで現在のx86捨てるんじゃなかったっけ?
だとしたらエミュレーション以外では動かない。
じゃあ、過去のしがらみでウニウニしない.NETアプリの方が良いかと。
Win16が動くなら 当然DOSアプリも動くでしょう
DOSアプリやWin16アプリを エミュレーションで動かしても快適に動くでしょう
逆にWin16/DOSは動かなくても Win32アプリが動かない Win64を作っても売れないでしょ? そして Win32アプリを動かすなら ついでにWin16/DOSアプリを動かすのも大した手間ではないだろし
Del厨のせいでクソスレになってしまった
722 :
デフォルトの名無しさん :02/05/24 22:28
>>720 それはハードの問題でIA64は286以前とは互換性ないとか
そういうハナシだったはず。
余計なトランジスタ使うと性能上がらないと思われ。
初めからクソスレだろ。C#厨は逝けよ。
>>723 Delphi.NETがVB.NETにも及ばない中途半端なものだと分かったからって
そうカリカリするなよ。
「.NETなんて流行らねー」とか言ってたDel厨が何事もなかったかのように.NETの片棒を担ぐのか。 負け犬の典型だな。(プッ
だから 既に Ntdos.sys エミュレータで DOSだってエミュレートしてるんだし 86命令のエミュレートが増えたくらいで死ぬほど遅くはならないでしょう
>>724 VB.NETのすごさが知りたい。
サンプルを交えてVB.NETのすごさについて教えてくれ。
>>726 だからさ、そうやって「一部動かないプログラムがあります」とするより
今の内に.NETと言うプログラミングスタイルと完全マルチWindowsバイナリを浸透させたいと。
Delphi、安くすればもっと普及するだろうに。 新バージョンがでたら、旧バージョンを大幅に安くするとか。
でもさ.NETついてもランタイム要るんだろ? 駄目じゃん(藁
Delphiは消えゆく運命なのに今更安くしても意味無いだろ。
>>729 世の中には無料にしても全然普及しないものもあるんだよ。(嘲笑激藁
C#厨、Del厨以外の普通の人は放置願います。 よろしくお願いします。
>>728 逆に、M$には .NET だけしか移行出来ませんみたいなWin64出して欲しいな
それなら、Linux64 で Win32エミュレートすれば勝てそう
>>731 VisualC#でネイティブコンパイルできたら、
俺もDelphiに未練を感じたりしないんだがな。残念。
ていうか、どうしよう。
>>734 いっそIntelに.NETコンピュータを。
C#に対抗する前にまずVB.NETに勝とうよ。 > Delphi VB.NETにも勝てないことを認めたからDelphi.NETを出すんでしょ? で、過去のDelphiとの互換性は一切捨てると。
>>737 取りあえず敵を攻撃するなら敵を知ってからにしてくれ。
ちゃんちゃらおかしい。
>>737 なんかキミの妄想らしい書き込み、残念だけど理解してあげられない。ゴメンな
Delphi.NETって普及するの?
でもさDelphi.NETついてもランタイム要るんだろ? 駄目じゃん(藁
>>740 .NETが普及すればC#が普及する。
.NETが普及しなければDelphi.NETは無駄になる。
>>740 取りあえず今のところVCL->.NETコンバータ以上の使い方は見えない。
まぁ、VB.NETもコンバータだが。
DelphiのコードをC#にコンバートした方が賢明じゃない?
>>743 VBにはマクロ言語としての使い道「も」ある。
Delphiには何の使い道もない。
>>746 > VBにはマクロ言語としての使い道「も」ある。
必要性は疑問視されているが。
マクロ言語って何?
>>748 VS.NETのオートメーション。
将来のOfficeもVB.NETベースになる。
750 :
デフォルトの名無しさん :02/05/24 23:03
Delphi.NETってまともな使い道がないからBorConでもほとんど話題にならなかったんだろ? ハッタリ発表には笑ったよ。これが倒産前の会社の断末魔の叫びかって。
>>749 純粋に疑問。
C#でダメな理由とかあったの?
コンパイルすればどれだって・・・。
もうちょいまともな話が出ないかなぁ。
Del厨が流れ込んでくるとイヤなので、もうしばらく某にはがんばってほしいです。
>>80 zは 1,2,4,8,16,...2^64迄の65個しかない
x+y=2^64/z だからこれは沢山あるね
>>756 そんな間違いどうでも良いからレイトバインドについて少し書いて欲しかった。
>>757 実行時にリフレクション経由で実行すること。
コンパイル時に型の情報がいらない。
>>758 >コンパイル時に型の情報がいらない。
C言語の時みたく渡す引数の型渡すとアボーンとか?
>>759 そりはparamsのことを言ってない?
/* 2.8 リフレクション (Reflection) とは ? .NET のコンパイラはすべて、作成したモジュールの中に定義される タイプに関するメタデータを作成します。このメタデータは、モジュールの 中に同梱されます。また、モジュールはさらに、アセンブリにまとめられます。 メタデータは、リフレクション(Reflection) という方法でアクセスされます。 System.Reflection ネームスペースの中には、モジュールやアセンブリに 入っているタイプにアクセスするためのクラスがあります。 Reflection をつかって、.NET のメタベースにアクセスするのは、 ITypeLib/ITypeInfo をつかって、COM のタイプライブラリのデータにアクセス するのと同じです。目的もよく似ています。 たとえば、コンテキスト、プロセス、マシン間でマーシャリングするデータの サイズを決定する場合に利用されます。 普通のアプリケーションの開発者が、Reflection を直接利用することは あまりありません。 */ [dotNET:00054] .NET FAQ : 2. 基本技術 より これってそのモジュールで使われている型のデータをクラスとして持っていて、 アクセスすることが出来るってこと?? まだまだ理解が甘いですな。俺。
これを 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.
>>766 で、君は何厨だ?
Delphi厨でないことは確かだが。
>>765 単に何をやっているのか理解できないだけでしょ(藁
API使いまくりのソースじゃん。
>>764 を temp.pas とかで保存して
コンパイルは コンソールから dcc32 temp.pas とかして 出来た temp.exeを実行
>>773 いや、だからお前は何がしたいわけ?
って言うかコンパイルできるPascalソースとしては不完全だろう、それ。
>>774 そのままでコンパイルは出来るけど、標準パスカル互換にしたいなら
program 保存した時のソース名(input, output);
を1行目に追加してくれ
単にこのスレの VB.NET厨とやらの実力が見たいだけ
>>776
>>764 これがObject Pascalのソースか。(@_@)
(´-`).。oO(どこがオブジェクト指向なんだろ?)
感想はいいからコード書いてみて たった15行だ 動作が判らなかったら実行してみればいい
>>778 #include <stdio>
namespase std;
int main()
{
printf("%d",5);
return 1;
}
>>781 俺もDel厨だけどさ、わざわざGDIで勝負挑んでいるのは痛い。
.NETで面倒なところを突かないと勝てないのかと思われる。
別にクイックソートとかでも言い訳だし。
C#厨だけど、GDIってわけじゃないような。
>>783 ごみん、ソース読んでなかった。
あれみてGDIって叫んだ奴も相当だな・・・。
785 :
デフォルトの名無しさん :02/05/25 00:15
GUIでしか勝負してこないのがDel厨らしくていいですね。(嘲笑激藁
誰か GUI で勝負した?
788 :
デフォルトの名無しさん :02/05/25 00:20
何の説明もなしにソースだけ見せてくるのが末端PGらしくていいですね。(嘲笑禿藁
嘲 笑 激 藁
説明いらんじゃ・・・。
Del厨の常識は正当な言語ユーザにとっては非常識です。
たとえば?
お題は文章のほうがいいぞってことだね。
>>793 ブロックを囲むのにbegin〜endなんて使わない。
ああ、そんな程度のことか。
ちょっくら聞きたいんだけど、VS.NETのMSDNのHELPって実行形式なんだけど、 あれって、.NET Framework入れれば、VS.NETいれてない他のパソコンでも見られる? ネットワーク上の他のパソコンから見たいんだけど、コンポーネントがないとか言われて 見られなかったよ。
試したことないけど、見れると思う。 VS.NET入れてないマシンでも最新のMSDN入れるとあれだから。
800 :
デフォルトの名無しさん :02/05/25 02:04
>>795 由緒正しいAlgol直系の言語だから。
>>792 元々、Cの方が異端という感じだからね
「正当な言語」なんて言われるとくすぐったいんじゃないかな
802 :
デフォルトの名無しさん :02/05/25 02:15
なんでC言語は普及したの? MSX-Cのせい?
>>802 とにかくUNIXの影響が大きいし(CはUNIXのために作られた言語)
M$がWindowsに採用したことも大きかった
実はM$もPASCALを出してたんだけど
某のTurbo Pascalにこてんぱんにやられて姿を消した
804 :
デフォルトの名無しさん :02/05/25 02:21
Pascalはコンパイラ言語なので、ベーシックより高速 って宣伝されていたら歴史は違ったものになっていたでしょう。
>M$がWindowsに採用したことも大きかった 逆でしょ。十分普及してたから採用した。
>>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#もヘイルスバーグを買収して作ったんでしょ。
まぁ、QuickCはMSの作った開発環境の中では良く出来てたソフトだったしな。
BorConでもDelphiの話題はあまりぱっとしなかったね。 Delphi7はそれだけ中途半端ということなのかな。
昔はちゃんとプログラミングを勉強した人間なら Pascal は 知ってて当然の言語だったんだけどな。
俺的にはDelphiなんかを無理やり.NET対応させるより、 むしろC#のRADをスクラッチで開発して欲しかった。 JBuilderのC#版みたいな感じでね。 それで非MS環境(ApacheとかCORBAとか)でも開発できるようにすれば 間違いなくキラーアプリになったはず。
それにしてもVCL、CLX、.NET版VCLそれぞれで整合性を取れるんだろうか。 分化だけは勘弁して欲しい。
>>814 良い事言うね。Delphiにこだわり過ぎてるのが敗因だと俺も思う。
Delphi.NETがC#で書かれてたら本末転倒だよな。(w
J#は既に終わったことにされてるのですね。
不憫だな。
821 :
デフォルトの名無しさん :02/05/25 05:45
J#はソースの互換性はものすごく高い。 (J++のソースも変更なしでほとんどコンパイルが通ってしまう。) ただ、JDKやWFCのクラスを無理やりラップしまくってるのでまともなパフォーマンスが出ない。 (はっきり言ってJScript.NETより遅いこともある。) VCL for .NETが互換性確保のためにこうならないことを祈る。
823 :
デフォルトの名無しさん :02/05/25 05:51
Charlotteなんて言語を作ってたのか
虹色ドリーム?
>>823 言語ってほどのものじゃないでしょ。
ソースを見ればどういうILを出しそうか容易に想像がつく。
BorConはJava vs .NETという下衆な煽りをしなかったのは非常に好感が持てる。 こういうのって初めてじゃないのかな?
>>826 そりゃあ、どっちかについてしまったら商品が成り立たなくなる。(w
>>827 いや、煽るだけ煽って結論は一切出さずってのがよくあるでしょ。
あるね。 むかつく!
>>831 どっち側から知らないけど、ついてないと思えばいつでも参戦してみるがよし
でも、しょうもない事いうより、どんどんコード出して挑戦するのが勝利の近道
どっちかがどっちかに勝つと本気で思ってるの?
得意分野が判明するだけで十分です
835 :
デフォルトの名無しさん :02/05/25 13:35
今月号の雑誌をいろいろ読んできたけど、.NET一色という感じ。 日経ソフトウェアなんかはWindowsプログラミング = .NETと言わんばかりだ。 Win2000 WorldのCD-ROMにも.NETがついてるし、来月号のCマガでもついてくる。 もはや非.NETの開発環境なんて見向きもされないね。 Delphiの連載記事もますます立場がなくなるんじゃないの?
>>835 「Windows上では」の話ね。一応。
>>835 正直、これからプログラミングを始める人は.NETに対応してないwin開発環境は選ばないと思う。
DirectXや画像処理の本までVB.NETベースで出てるのには驚いた。
>>835 日経SW は MS よりなんですぅ・・・
営業が MS 製品関連記事なら売れると思ってる。
後、編集に知識がない。VB房ばっか。
Cマガ は 某国 よりなんですぅ・・・
営業も編集もコアなオタクが揃ってる。
初心者はブビマガと日経ドキュソウェアで.NETに洗脳されてると思われ。
>>839 そういやこの2冊は「VB.NETでも十分。C#に移行する必要なし。」という
共通した結論だったな。
ヘジのインタビュー翻訳したやつ氏んでくれ。 あれじゃただのDGNだ。
ま、今年の終わり位にはDelphi.NET一色になっているでしょう。
ドグン?
>>842 雑誌の広告が?、それとも某駅の看板かな?
あ、Del厨が2chのあちこちに蔓延るってことか・・・鬱だ死のう
こうしてDelphiはオブジェクト指向教育言語となったとさ。 めでたし、めでたし。
ありえん・・・
SmalltalkかJavaの方が教育用としてはいいだろ。
そういやヘジのインタビュー、某を辞めた理由にも触れてたね。 引き抜かれたとかそういうことじゃなくて某がダメダメだっただけじゃん。(w
>>847 実務的にはGCのある言語を入門用とするのは危険な気がする。
TurboBasic復活キボンヌ
>>849 じゃあJavaもC#もVB.NETもDelphi.NETも駄目じゃん
>>851 アセンブラ->C/C++をやってから、GC言語に移行するべし。
>>851 そうだと思う。
C#書いててこのオブジェクトたちは無事に解放されるのだろうかと不安になった。
理想的なキャリアはJavaScript→HSP→VBかな?
>>854 うん、使い捨てるのに何の躊躇もない。w
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 がいいですか? わたしは大好きですが。
>>858 自己満足の美しいプログラム・・・Delphi.NET
とりあえずお仕事で使うよな→自習中・・・C#.NET
VS6出荷終了?、しかたないな→VB.NET
>>859 過去ログって、このスレ全部読みましたが?
でも、誰が Delphi ユーザだか分からないので。
>>860 レス、サンクス
各言語(環境)に対するスタンスは分かりましたが、
あなたがひとつ選ぶとすると、どれでしょうか?
>>854 JavaScriptも一応OOPLだからHSPの時点でレベルダウンしてるな。
>>861 Delphiユーザは.NETではC#という人が多いと思われます(漏れも〜)
Delphi.NETにはコンバータとしてのみ期待します
>>864 レス、ありがと
そうですか、そういう意味ではほぼ「結論」がでているのですね。
わかりました。
うーむ、Delphi かわいそう、の気もしますね。
>>862 周りに合わせるのも仕事の内だからVB.NETだな。。。
>>868 回答ありがとう
「仕事」についてはアマには分かりませんが、VB.NET ですか。
.NET 上での仕事も VB が多いんですかねぇ。過去の資産ですか。
VB.NET についてはよく知りませんが、旧VB とは別物なのでしょ
うね。
みなさん、ありがとうございました。
C# に行きます!
>>869 いや、862が一つ選べというので、VB.NETって書いただけだよ
当然C#もやってます
>>871 はい、
>>860 で、そのことを承知していました。
アマにはプロの「仕事」についての厳しさみたいなものが
分かりませんので、869 みたいに書いたんです。
「ひとつ選べ」というのは、もしわたしに勧めるとしたら
という意味でした。860 の内容から、VB.NET を勧めたい
わけではないことは分かっていました。
ありがとうございました。
>>870 諸般の事情から1ヶ月後くらいになりますが、よろしく。
でも、ネイティブコンパイラとしての Delphi は使い続ける
つもりです。まぁ、もうバージョンアップはしませんが。
ネイティブコンパイラのDelphiもバージョンアップするだろ。
ネジです。
>>875 D7はネイティブ(.NETじゃない)
その次が.NETらしいが、ネイティブと分化するのかどうかまで知らない
分かれてもたいした機能は持てそうにないよね。 CLXを強化していくのかな。
>>878 あちこちでDelphi.NETが叩かれまくってているが、
.NET Frameworkを使うとDelphiって簡単に移植できそうに思うやついないか?
というか .NET って クライアントサイドじゃ使われ始めるのに3年はかかるだろ 小さな企業じゃ、まだまだWin95 RAM32M HD740Mなんてマシンも現役だ。 10年リースが切れる迄は捨てる訳にはゆかない。 この不況だから、金使うなら従業員の雇用守る方に使わなけりゃね ただ、業者は3年先の為に準備は必要だろう。 VB6で業務アプリやってた所はこの3年の間が準備期間だ Delphi.NETが VCLで素直に書いてそのまま動くなら、この3年の間に VB->Delphi->Delphi.NETなんて流れもあるかもしれないね。
M$は VB6 と VB.NET の間に VB7を入れるべきだった でなければ ネイテブアプリを書けるC#を用意すべきだったと思う
883 :
デフォルトの名無しさん :02/05/26 08:57
>>881 > VB->Delphi->Delphi.NETなんて流れ
あるわけねー。
でもボウランドはそれを狙ってかもね。M$のみせてる唯一の隙だし
VB6 -> VB.NET の壁は結構高い これが越えられるならVB6->C#でも同じだろう VB使いの勉強はいつでもOJTなのに、VB.NET はまだ仕事に使えないとなると Delphiに移動という事かな
>>885 だってVBってHSPと似たようなポジションでしょう。
.NETでやっと他言語に追いつけたかな?って感じ。
>>886 どういう意味?>似たようなポジション
#業務にHSP使うっていうのは聞いたことないが・・・導入事例キボンヌ(あったら面白いな)
Office.NETのマクロにVB.NETが使われるだろうから、 .NETはVB.NETで一本でという人は多いと思うよ。
>>889 ? .NET なんだからどの言語でもマクロに出来る訳でしょ?
マルチリンガルをする余裕のない人が多いんだろうね・・・楽しいのに
>>890 VSAに対応してるのは現時点ではVBのみ。
>>891 同じ用途で同機能の言語2つ覚えても楽しくないし。
>891 その楽しさを奪うのが.NETです。
>>894 それは良く分かるね
でもマクロでVBを強要されるなら、尚更C#を使いたくなるけどね
>>897 >3 およびコンパイル済みのコードをコンパイルしないで実行できるスクリプト エンジン
MSILインタプリタ?
_____________ / | 既存のVB、VC++使いは | 今までの蓄積したものがなくなってしまった,,, | という感覚はあるんでしょうか? | 特にMFC使いとかは…VC++.NETがあるからいいのかな? \_ ____________ |/ ∧,,∧ ミ,,゚Д゚ミy━~~ U ミ ヤスカッタので 〜ミ ミ VC#コウタ U''U VSじゃないと クラスが自分で作れないみたいだ… なんでかしら。
>>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を買ってるんじゃないですか? 私は、そう感じます。
>>899 なくなってしまっていないので、当然そういう感覚はありません。
>>901 こいつはアフォです。相手にするのはやめましょう。ビツクリマーク使いすぎじゃボケェ
>>902 この意見に限ってはアフォじゃないと思う。正論。
個々の問題はさておき、基本的にアフォなのは、あらゆる仕様を満たすツールなんて視点を持ち出して、 しかもそれで比較してるつもりの点だろ
価格・機能・サービス・品質どれをとってもBorlandが劣ってると指摘してるだけ。 そして、それは事実。
>>905 そうか、ついでに、
価格・機能・サービス・品質のどれをとっても日本人が劣っているとも指摘しといてくれ
ミ ゚Д゚彡製品を選ぶ目も日本人は劣っているとかも、追加しとくか。
>>907 そうだね。日本ではVB人口が少ないもんね。
そもそも客が道具指定してくるような仕事してて その道具の値段が高い安いはないだろみたいな?
Del厨必死だな。(藁 市場が冷静な評価を下してることに気付けよ。(ワラ VS.NETの方がよく売れてるだろ?
>>910 Amazonとかでは VB.NET が一番売れてるみたいだね
912 :
デフォルトの名無しさん :02/05/27 14:05
>>910 無料のもの相手にどっちが売れてるかなんて争っても・・・
>>912 Delphiに金払ってるヤシはいないと?
MS製品に限って言えば、市場が冷静な評価を下したところなんて 見たこと無いな(w
いくらなんでもトータルの人数をM$謹製ツールとDelphiを比べるなんて乱暴です プログラマ人口の正規の派遣業者が1割、残りも派遣出向や受託による下僕状態です 企業内プロも、設計とコーデングが分かれていると、どうしても人数の揃え易い M$謹製ツールになってしまうでしょう Delphiは、設計もコーデングも一人こなさなければならないようなワンマンアーミー的な スタイルを取っているプロジェクトにしか受け入れられないでしょう。
>>915 つまり趣味プログラミングにのみ適してると(w
>>916 趣味というのがプログラミングの勉強の事なら、pascalだけでなくlispとcはやっておくべきでしょう
ひとりで設計製作するスタイルを取る企業内なら、Delphiは十分に戦えると言っています。
なんか NHKスペシャルでやってたスーパー職人みたいなもんかな? 「物件を一人で受注から引渡し迄会社の代表として完了させる」とか言ってた
VC++ や VB では、ひとりでは開発できないくらい効率が わるいのですか? どぉりで。
>>919 VBは一人で開発しないと効率が悪い。
VC++はどれだけ充実したクラスライブラリを所持しているか次第。
C++Builder6 Standardはいつ無料になりますか?
>>922 せめて Delphi Professional 版には旧バージョンでもいいから
ついて欲しかった。
Delphi で作ったものを C# で作り直しているんですが、 C#で Windows.pas や WinUser.h に相当するようなものってどこかで 手に入りますか? パラメータを素直に渡してくれないので Win32 API 呼び出しの定義を 作るのは少し面倒ですね。これに一番時間を取られてしまう。
旧来のWIN32APIそのまま叩くようなベタな移植して意味あるの?
さて、そろそろ WindowsDNA について語ろうか。
まだ勉強不足なもので Win32 API を使わなくても実現できるか どうかわからない機能があるので使いたいのです。 例えばクリップボードを監視して、テキストがコピーされたら 処理するような場合です。 C# のコードを書く時に使うユーティリティ類もできれば C# で作れば勉強 になるだろうと思って作り始めたのですが、今までは気にする必要が無かった ところで詰まったりして意外とはかどりません。 アンマネージな機能が必要な場合はこれからも Delphi (または C++ )で やった方がいいんでしょうか。
>>928 >例えばクリップボードを監視して、テキストがコピーされたら
>処理するような場合です。
名前忘れたけどあるよ。クリップボードクラス。
930 :
デフォルトの名無しさん :02/05/29 16:40
よっぽど古いものを除いて機能的には .NET Framework ⊇ WIN32API なのかな?
>>930 それは違うだろ .NET Frameworkで全ての APIがカバー出る筈がない
むしろ上手にラップしてると見るべき
>アンマネージな機能が必要な場合 というか、VCLを使わないDelphiに、それほど魅力が無いのと同じじゃないのかい?
>>931 .NETでカバーしてない機能って例えばどんなの?
いやいやDelphiの魅力はAPIっすよ おいらもC移植して勉強中なんだけど、API使わずにってこんなにつらいと思わなかったよ APIなしよりはVCLなしのほうがまだいけるような気がする
不毛な仮定だな。WIN32APIだけなら GUIアプリの開発なんてやらないよ。
936 :
名無しさん@Emacs :02/05/29 17:31
>>933 マルチメディア回りとか
そういえばGetAsyncKeystateのなるようなものもないよね?
あったらおせーて
∧,,∧ クリップボード更新処理は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;
肝心なのは SetClipboardViewer(Form1.Handle); のAPIでFormのハンドルをクリップボードViewerに登録 WMDrawClipboardとWMChangeCBChainを Formで受け取って WMDrawClipboardでは 更新されたときの処理を記述するのと 次のクリップボードハンドル(FClipNextHandleで保持) にメッセージ送る処理 WMChangeCBChainでは クリップボードフックをはずした時の処理とかを 書いておく って感じかしら。 C#でもAPI使うのも メッセージ受け取りもかけるからできると思われ。 _____________ ∧,,∧ / ミ,,゚Д゚彡 < C#の練習がてらにどうでしょう。 U つ \ @ミ ミ  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ∪''∪ これを、(GUIを隠すんじゃなくて) GUI無しのExeで やってくれって言われると、 Delphiではちょっと難しいかも。
942 :
デフォルトの名無しさん :02/05/29 21:11
943 :
デフォルトの名無しさん :02/07/08 04:24
1000トリガッセン ハジメマスカ
イヤ
945 :
デフォルトの名無しさん :02/07/17 00:38
でどうなった?
何が?
1000
1000?
1000!!!!!!
950!
951 :
デフォルトの名無しさん :02/10/04 04:57
最近Personalを使う人が少し増えてる様ですが、ボーランドはドキュメントが弱いですから、かなり混乱してる人もいるみたいです。
ume
953 :
デフォルトの名無しさん :02/10/14 10:57
age
954 :
デフォルトの名無しさん :02/11/01 02:21
1000!
つーかCodeDomでしょ?
C#使いたかったけど、ハードディスク食いすぎで挫折
/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\ Λ_Λ | 君さぁ こんなスレッド立てるから | ( ´∀`)< 厨房って言われちゃうんだよ | ( ΛΛ つ >―――――――――――――――――――‐< ( ゚Д゚) < おまえのことを必要としてる奴なんて | /つつ | いないんだからさっさと回線切って首吊れ | \____________________/ (-_-) ハヤクシンデネ… (-_-) ハヤクシンデネ… (-_-) ハヤクシンデネ… (∩∩) (∩∩) (∩∩) (-_-) ハヤクシンデネ… (-_-) ハヤクシンデネ… (-_-) ハヤクシンデネ… (∩∩) (∩∩) (∩∩) (-_-) ハヤクシンデネ… (-_-) ハヤクシンデネ… (-_-) ハヤクシンデネ… (∩∩) (∩∩) (∩∩)
埋め
>>638 そのキャップだけはいろんな意味で許せん。僕によこせ
======2==C==H======================================================
2ちゃんねるのお勧めな話題と
ネットでの面白い出来事を配送したいと思ってます。。。
===============================読者数: 138720人 発行日:2003/1/9
年末年始ボケがそろそろ収まり始めた今日このごろのひろゆきです。
そんなわけで、年末に予告したIP記録ですが実験を開始しています。
「2ちゃんねる20030107」
こんな感じで各掲示板の最下部に日付が入ってるんですが、
20030107以降になってるところはログ記録実験中ですー。
んじゃ!
────────────────────────Age2ch─
■この書き込みは、Age2chを使って配信されています。
────────────────────────────
Keep your thread alive !
http://pc3.2ch.net/test/read.cgi/software/1041952901/l50 ────────────────────────────
別にいいじゃん。個人のサイトだって掲示板書けば取られるし IP表示せんと書けない掲示板なんていっぱいあるし アクセス解析で取られまくりだし。むしろ今更何があかんの?て感じ
ヤフーの投票文、「2ちゃんねるがアクセスログ記録を始めましたが何か?」にしてホスイ。
あと 壊れたファイルは勘弁して下さい。 時期的な事もありますし。 只、今更 「最高の自分的に日程で」小説書きたいとか もういいです。 電磁波盗聴対策するまでパソコン使用したくないし。 つか、貴方方の絡みで極右も絡んで偉い事になっているし。この板も今各国の機関ROMってるし。 「危機的な」私の私情の件をお願いします。シャレにならないです。(実際に) ・・ 本当は その後の執筆の為の「現段階での障害」(精神性が大事だし。環境も)である事の除去、や 「ファイルの復旧」が必要ですが。 結構繊細なんですよ 私は。
>>226 けんすうは公人だから歌広で童貞捨てたとか火星人だとかは名誉毀損にならないと思いますよ
俺2ちゃんねる見損なったよ
ひろゆきのどこが「安全地帯から楽しんでた」なんだか。 ひろゆきが楽観的な外ヅラしてるからってそのまま受け取る人はどかと思う。
誹謗中傷は昔からお断りだろ。 内部告発はともかく。
まあ、そうやって削除人を一人また一人と遠ざけるのは、 その板の依頼厨の自業自得ってことで。
そうかな?大体2ch型の掲示板ってのはログ取ってないと思ったんだけど、、、
173 :名無しさん@3周年 :03/01/09 22:20 ID:FDWl1Tso ひろゆきは自宅に押しかけた暴走族に土下座した人だよ。 暴力団に脅されたら山奥に連れ出されるまでもなく玄関先で二つ返事で請け負うんじゃない? 権力には抵抗するけど、暴力には滅法弱い、それがわれらのひろゆき
ますます、ファンタスティックでスリリングでドラマティックなスレッドですわね、
======2==C==H======================================================
2ちゃんねるのお勧めな話題と
ネットでの面白い出来事を配送したいと思ってます。。。
===============================読者数: 139038人 発行日:2003/1/10
なにやら、連日メルマガだしてるひろゆきです。
そんなわけで、ログ記録実験ですが、いちいちサーバ指定するのが面倒なので、
全部のサーバに入れてみました。
重くなって落ちたりしてもご愛嬌ってことで。。。
んじゃ!
────────────────────────Age2ch─
■この書き込みは、Age2chを使って配信されています。
────────────────────────────
Keep your thread alive !
http://pc3.2ch.net/test/read.cgi/software/1041952901/l50 ────────────────────────────
, ― ' γ∞γ~ \ | / 从从) ) / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ヽ | | > < |〃 < うぐぐ、かあああああああ!! `wハ~ Oノ) \_________________ /)) ー -- ー( \ / /( )ヽ \ . ( ξ. ) ミ 彡 ( /ξ.. ) ./ | |ヽ、______,/ | | . | | | , .| .| \| ̄ | ((゚)) /|. ̄ | | |_)*(_/. | .| メチメチ ( ⌒) ‖ ( ⌒) メチ ブシャアアアアア  ̄ ̄ ̄ ̄ ̄ ̄ 。゜J  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ U。lU 。 │|。゜J_ l 。 │|。゜ ヽ ,川 。 ll。゜ l。ヽ ⊂_~ し、_ ゜ ー=ー_=ー,。゜ヽつ
半角でもう遊べねー。ダウソも終わったし、大好きな煽りあいも、もうできねー。。。
ますます、ファンタスティックでスリリングでドラマティックなスレッドですわね、
qbサーバってどこの板がはいってるの?
【予告】小学生の登校を狙って・・・
http://live2.2ch.net/test/read.cgi/news/1042035002/ 674 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 23:36 ID:1BXnvYvY
通報する人は、IPはあるので管理者に連絡してくれれば、
「捜査関係事項照会書で照会しますよー」って言ってたて伝えてくださいー。
902 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 23:41 ID:1BXnvYvY
>警視庁の情報提供っていうフォームで通報していいですか?
フォームでもよいかと。
通報者の電話番号とかもきちんとかいといたほうが
取り上げられる可能性高いです。
ホントは110のほうがいいんですが、、
半角系板では、業者が書き込むとリモホが表示させられてるみたい
ちょっとお聞きしたいことがあるんですが、Jチャンネルで言われていた、掲示板はどのコーナーのどんな題名ですか? 知ってる人がいたら教えて下さい!!
「自分」がヤバイと思ったら、使わなええんちゃいますのんw
最後は、4桁だったみたいだね
やすゆきも小心者だからね
逮捕?
>高みの安全地帯 全然安全じゃなくて、一番危険な立場だったという・・・お話だったとさ=完=
埋め
埋め
いや、最近のニュー速は本当に良くなってきたと思うよ。 ニュース速報板だからね。
・・・横槍。 削除依頼を内容証明以外の方法で行っても有効ですが、条理が根拠ではありません。 意思表示の一般原則であり自明のことです。 免責の対象にはならないから安心してください。
やっとhtml化だ、過去ログが読める がんばってください
埋め
埋め
埋め
埋めポ
998
999
1000!
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。