おまいら!今日からDelphi言語を学んでいくぞー!02

このエントリーをはてなブックマークに追加
1デフォルトの名無しさん
前すれ 
【Delphi初心者】今から始めるDelphi Part01
http://pc8.2ch.net/test/read.cgi/tech/1062422335/
2デフォルトの名無しさん:2005/11/15(火) 09:17:19
今やってるお題は?
3駆け出し名無し:2005/11/15(火) 20:51:06
>>2
続いて欲しいので支援で初心者に役立つ情報を再度投稿。
まずは関連スレ情報・・・。今の自分の実力に応じて選んでください。

前スレ
【Delphi初心者】今から始めるDelphi Part01
ttp://pc8.2ch.net/test/read.cgi/tech/1062422335/

【上級者】
Delphi相談室(上級者用)その12
ttp://pc8.2ch.net/test/read.cgi/tech/1064766880/
【中級者】
今はない?
【初心者】
くだすれDelphi(超初心者)その28
ttp://pc8.2ch.net/test/read.cgi/tech/1131168199/

他にも関連スレはありますが、興味があれば上記スレからどうぞ。
4デフォルトの名無しさん:2005/11/15(火) 20:51:50
ヒント:
例外発生

例外キャッチ、
例外投げる

例外キャッチ
5駆け出し名無し:2005/11/15(火) 20:59:20
>>3
今の実力でそれぞれの相談室があるのに、
このスレの存在意義とは一体何でしょうか?
漏れは切磋琢磨だと思っています。事実前スレは「道場破り」ぽくなっていました。

漏れはスクリプト言語では今までそれなりにコードを書いてきましたが、
それはアルゴリズムだけ考えていれば動くものが書けたからなんですが、
アルゴリズムが頭に思い浮かべば、半分は終わったと思っています。

後は、書こうと思っている言語の仕様でそのアルゴリズムを実装していくだけと。
実際、漏れはそのくらいの状態でも、取り敢えずはDelphiをいじることが出来ています。
という訳で、次に初心者が知っておくと楽が出来る情報です。
6デフォルトの名無しさん:2005/11/15(火) 21:07:17
>>3
上級者用はdat落ち、次スレなし
7デフォルトの名無しさん:2005/11/15(火) 21:08:39
デルファイってまだあったんだ。
8デフォルトの名無しさん:2005/11/15(火) 21:14:44
前スレ例外処理の答えお願い
9駆け出し名無し:2005/11/15(火) 21:19:10
果たして、コードを書かなくてうまくなるか?
それについては、半分は正解で半分は間違いだと思っています。

上でアルゴリズムだけ判れば、半分は終わったと書きましたが、
プログラムが書けないと思っている理由の大部分は、まだそれに慣れていないからです。
自分のやりたいと思うことを、日本語でもいいから書き下せればそれが仮に間違っていたとしても、
後は経験を積んで行って補正していくだけです。これは欠かせないことです。これをしないと絶対に上手くなりません。

「もし〜ならば」という構文の記法も言語の処理系によっても微妙に違っていますが、それも慣れです。
例えば、Delphiの統合環境エディターIDEでは、^Jを押すことで構文メニューが出てきたりしますが、
これを使えば、「IF文の構文って、ええとどんなだったっけ?」という記憶の無駄を省くことが出来ます。

これは「思考の経済化」であり、「IDEを使えば」純粋にアルゴリズムだけを考えることに専念できます。
その意味で漏れは「レベルアップできる」と書いたのです。言語に普遍なのは、仕様ではなくアルゴリズムだから。

邪道かもしれませんが、初心者にとって最も大事なのは、「どれだけ楽をしてプログラムを書くか」であり、
足りない知識を補う術が初めから用意されているのなら、それを積極的に使ってまずは慣れようというのが
漏れの主張です。

それに慣れたら、窮屈な?統合環境を離れて好きなエディターでバリバリ書いてもいいと思うのです。
でも、今はGUI要素があるから、離れるのは得策じゃないかもしれないなあ。コンソールアプリじゃない限り。
10デフォルトの名無しさん:2005/11/15(火) 21:24:14
半端者ほど能書きが長く能書きが長いほど含蓄に乏しい件
11駆け出し名無し:2005/11/15(火) 21:24:49
>>9
さて、上で随分語ってしまったので、きっと反論・異論も随分多いと思いますが、
その初心者支援のための環境の話です。これもまた繰り返しになりますが・・・。
漏れのようなまだまだ初心者のために役立つ情報を以下にまとめてみることにします。

Delphiは統合環境でエディターはIDEを使って書くので、知るとすぐに役立つ情報です。

・Delphi 6 のショートカットキー: ttp://www.ss.iij4u.or.jp/~somali/extra/_delphi_shortcut.html
・IDE Tips(e-manual): ttp://www.kanazawa-net.ne.jp/~pmansato/IDE_Tips.htm
・IDE の小技: ttp://kakinotane.s7.xrea.com/delphi/faq/f003.html

実際に漏れはこれを知ることで今は大変便利に使っています。きっと大多数にも役立つと思います。
特に説明がダブっている機能はより利便性が高いと判断していいと思います。それって駄目かなあ?
12駆け出し名無し:2005/11/15(火) 21:26:50
>>11
次にコーディングスタイルについての情報です。
正書法という基礎的な話ですが、基礎は何事も大事です。

・コーディング規約
ttp://onigiri.s3.xrea.com:8080/delphi/index.php?plugin=related&page=%A5%B3%A1%BC%A5%C7%A5%A3%A5%F3%A5%B0%B5%AC%CC%F3
・Delphi の格言: ttp://kakinotane.s7.xrea.com/delphi/faq/f004.html

DelphiではGUIプログラミングが出来るので、画面デザイン・ユーザーインターフェースも大変重要なことです。
・ダメなユーザインタフェイス講座: ttp://www.geocities.co.jp/SiliconValley-Oakland/8192/
13駆け出し名無し:2005/11/15(火) 21:28:01
>>12
あと、前スレで教えてもらったこのツールもご紹介しておきましょう。

GExperts(日本語解説): ttp://onigiri.s3.xrea.com:8080/delphi/index.php?GExperts
GExperts(本家): ttp://www.gexperts.org/

最後に、GExpertsを教えてもらったのですが、そのトップもご紹介しておきますね。殆どはここからです。
DelWiki - Borland Delphi用PukiWiki: ttp://onigiri.s3.xrea.com:8080/delphi/index.php?FrontPage
14駆け出し名無し:2005/11/15(火) 21:29:52
>>6
情報有難うございました。手持ちのものをそのまま貼ってしまいました。orz

>>10
わざわざご意見いただき、有難うございました。
15デフォルトの名無しさん:2005/11/16(水) 08:08:23
>>8
答えいっちゃっていいの?
>4がヒントだよ。
16デフォルトの名無しさん:2005/11/16(水) 09:52:04
>>11-13
こういう情報はDelWikiに投稿すると良いぞ。
2chだとdat落ちしたら見れなくなるからね。
17デフォルトの名無しさん:2005/11/16(水) 13:37:59
まず、オーナー様にお伺いをたてないと削除されるかもね
18駆け出し名無し:2005/11/16(水) 19:24:45
>>16
これ殆ど、そこに載っているので意味がないです。
その中で初心者が知ることで楽が出来る情報をまとめただけ。

>>17
だから、書きません・・・。
19駆け出し名無し:2005/11/16(水) 20:56:58
>>11
更に支援カキコ。前スレにですが、IDEの設定の話を書きました。
01.自分に合った設定をしよう。: ttp://ww3.tiki.ne.jp/~torigoe/01.html

> これが 0とO、 1とl、 ;と:、 .と, あたりの区別が一番しやすい。
> あと横幅が比較的狭いので画面が広く使える。

フォント選択の話が書いてあるのですが、ここで教えていただいた通り、
ちょっと小さめになりますが、「Terminalの10ポイント」がお勧めのようです。
この辺りは全くの好みなので、自分が書きやすいようなフォントを選びましょう。
20駆け出し名無し:2005/11/16(水) 21:04:58
>>19
ttp://kakinotane.s7.xrea.com/delphi/faq/f004.htmlから抜粋になりますが、引用しておきます。

●IDEの格言

1) アプリケーションをリリースするときは、map ファイルを作るのを忘れずに。
2) たくさんウィンドウを開いているときは ALT+0 を活用せよ。
3) コンパイルオプションは Ctrl+O+O でソースに埋め込むと
 IDE のコンパイルオプションの設定に左右されないソースが作れる。
4) デフォルトのコンパイルオプションの変更はトラブルの元。
5) Delphi をインストールしたら
「環境オプション]→[設定]→[自動保存の設定]→[エディタファイル]
をチェックしよう。

改行制限、字数制限もあるので格言の部分だけを取り上げました。
説明は実際に原文を読んでみてください。

> これをチェックしないと、デバッグ中に IDE がハングすると
> 何もかも失います。

あちこちを調べているうちにこれを知ったので、早速この設定をオンにしました。
まだの人はすぐにこの設定を入れておきましょう。大事なソース?を失って悲しむ前に。
21駆け出し名無し:2005/11/16(水) 21:09:06
>>20
まだまだこの中身がよくわからないことも多いのですが、
残りの部分も内容でまとめて引用しておきます。きっと続けてでしょうね。

●Delphi の格言
1) リソースの取得と解放は try〜finally〜end を使うべし。
2) Assert を使いまくれ。
3) メソッドを override するとき、override キーワードが抜けていないか常にチェックせよ。
4) Except で例外を処理するとき、raise で例外を再生成する必要がないか常にチェックせよ。

●Object Pascal の格言
5) public で 非virtual なメソッドは極力再定義するな。
6) オブジェクトが上位から継承する仮想メソッドを呼び出すときは
7) デストラクタは、必ず destroy という名にして、必ず仮想メソッドにする。
8) コンストラクタは protected にしてはいけない

解説は同じところです。ttp://kakinotane.s7.xrea.com/delphi/faq/f004.html
22駆け出し名無し:2005/11/16(水) 21:10:43
>>21
> 6) オブジェクトが上位から継承する仮想メソッドを呼び出すときは
は抜けてしまいました。正確には以下です。

6) オブジェクトが上位から継承する仮想メソッドを呼び出すときは
inherited をつけて呼び出すか、そうしないかをよく考えよ。
23駆け出し名無し:2005/11/16(水) 21:14:26
>>21
●コンポーネントの格言

1) OnExit イベントでダイアログボックスを表示するな。

フォーカスが移動することを示すイベントの中でさらに
フォーカスの移動を引き起こし、かつイベントハンドラを
途中で止めるといろいろなトラブルが起きます。
モーダルダイアログを表示しない別の表示法を
使うか、PostMessage でイベントを遅延させるなどの
処置をしたほうがよいです。

2) コンポーネントの Loaded メソッドが呼ばれることを
仮定したコンポーネントを作ってはいけない。

コンポーネントを実行時に作成するときは Loaded
  メソッドは呼ばれないからです。

短いみたいなので、そのまま貼っておきます。
引用元は、ttp://kakinotane.s7.xrea.com/delphi/faq/f004.html
24駆け出し名無し:2005/11/16(水) 21:23:44
自分では全く書けないまでも、英作文で言われるような「英借文」的なアプローチは
初心者にとっては手軽で、非常に重要なレベルアップの手段であると思います。
美しいコードを読めるという意味で。いいお手本で学んで楽しく書いていきたいものです。

ぐぐると、以下に自然に辿りつくかも知れませんが、困った時の大きな助けになると思います。

・INTERSKILL REPORTS: ttp://interskill.main.jp/
・Delphi Acid Floor: ttp://www.wwlnk.com/boheme/
・TORRY's Delphi: ttp://www.torry.net/index.php

他にも定番サイトがあるのかもしれませんが、漏れが今知っているのはこれだけです。
このスレがいつまで続くかは分りませんが、次回のテンプレには入れておきたい情報です。
25駆け出し名無し:2005/11/16(水) 21:45:47
普通の書店に行っても、漏れはマイナーだとは思いたくないけど、
置いてある書店は非常に少ないのが、余り認めたくはないけど、今のDelphiの現実です。
先日ここで教えてもらいましたが、上級スレも自然消滅してしまったらしいし・・・。合掌!

修行が必要と言っても、初めから苦行をするのは漏れは間違いだと思っています。
まずは全体の流れを掴んで、それからバリバリとコードを書いていく。便利な道具に慣れてから。
その意味では、初めにまとめた支援機能を使うといいのですが、更にもっと手抜きをしてコピペで!

そう、ただコピペをしてまず全体を掴んでしまおうという余りに虫のいい勉強のための話です。

・Delphi はじめの一歩(ブラウザを作ってみよう)
 ttp://delphi.sakura.vg/index2.html
初めてDelphiでプログラムを書いてみようと思うなら、ここが一番いいですね。
解説も丁寧だし、サイトも大変見やすくて、コピペしながらで流すと丁度いいです。
その後、実際にキーボードで打ち込んでいくと理解も深まると思います。ソースも置いてありますし。

・Delphi 入門教室
 ttp://www.h5.dion.ne.jp/~tuyano/DlphTutor/index.html
色々な意味で概要を掴むのに大変役立ちました。
先にこっちを読んでからでもいいと思います。お好きな方でどうぞ。

・Do It YourSelf---Life with Delphi
 ttp://www.geocities.co.jp/SiliconValley-Bay/3828/index.html
自分の欲しい機能を詰め込んだ自作エディターTextAidを書いていくことで慣れていく流れです。

・Delphi 6 Personal 入門(Delphi 6 でマイビューアーを作ろう)
 ttp://ww3.tiki.ne.jp/~torigoe/
これも似たような感じで、自作プログラムMyViewerを書いていく流れです。

長くなったので、一度切ります。
26駆け出し名無し:2005/11/16(水) 21:48:20
>>25
続きです。

似たようなことを何度もやっていくのも次第に飽きてくるので、説明を読んで自分でコードを考えながらで。
ここで大事なのは、「その時思いついたことはコメントで残しながら」ということです。そこでコメントの付け方を。
単に頭に「//」を付ければ、そこはただのコメントになるので読んでいて気になったことはどんどん書きましょう。

そして、後でその疑問を突き詰めていけば、更なる学習の大きな推進剤になると思います。
と、偉そうに書いていても、漏れはこれを当時やらずにいました。それが今となっては大きな後悔です・・・。
一度忘れてしまった大事なことを思い出すのは本当に大変なことですから。

そして最後に、体系立てて学ぶために以下のサイトでしっかりと学んで行きましょう。
とまたまた偉そうに書いていても、漏れもまだこの途上です。まだまだこの一部しか読んでいません。

・Seventh Delphi(新旧のDelphi 入門)
 ttp://kakinotane.s7.xrea.com/
・Delphi入門(Web Frontier)
 ttp://www.w-frontier.com/delphi/

下の方は一応は流しましたが、よく読むと色々と勉強になることが書いてあります。
今改めて眺めてみると、なるほどなあと思うことが多いです。この駄文が少しでも参考になれば幸いです。
27駆け出し名無し:2005/11/17(木) 20:05:17
さて、前スレに比べて随分過疎ってしまいましたが、
漏れが知った便利な?テクニックを紹介していきましょうか。
と言っても、単なる受け売りなだけですが・・・。

●ツールウインドウのドッキング
ttp://www.kanazawa-net.ne.jp/~pmansato/IDE_Tips.htm#ToolDocking

このページを読むまでは、この機能を大変鬱陶しいと思うだけでしたが、
これを読んで、早速ツールウインドウのドッキング、勝手に命名「3体合体」
(オブジェクト インスペクタ・オブジェクト ツリー,・プロジェクト マネージャ)してみました。

おお!見通しいいぜ! おや?GExpertsのGrep Resultsも合体できるぞ・・・。
上に付くといいのに、下なのか・・。でも、左右と下に合体できることが確認できました。

勿論、4体合体も出来るので、お好きな方でどうぞ。
28駆け出し名無し:2005/11/17(木) 21:40:48
さて、コーディングという、言語の話題もさることながら、
GUIプログラミングだと「アイコン」がどうしても必要になってきます。
それで、まだまだ試行錯誤の状態ですがアイコン作成のための情報をまとめてみます。

色々とぐぐって、やっとここに辿りついた時、そうだ、これだよと膝を叩きました。
対象が「Windows用ソフトのためのアイコンを作りたい人」となっていて、ちょっと毛色は違いますが、
プログラミングのための話題の一つにはなるでしょうか? その表題を抜き出してみます。

・ソフトウェアのためのアイコン作り (1)アイコン作成の基礎
ttp://tmz.skr.jp/mini/icon1.html
・ソフトウェアのためのアイコン作り (2)アイコン職人の技
ttp://tmz.skr.jp/mini/icon2.html
・ソフトウェアのためのアイコン作り (3)アイコン作成例
ttp://tmz.skr.jp/mini/icon3.html

これと、この中に紹介のあるページも紹介しておきますね。
・プログラミングのオマケ:アイコン
ttp://www.nakka.com/lib/omake/icon.html
29駆け出し名無し:2005/11/18(金) 01:07:33
>>28
・Checking mode
ttp://www.geocities.co.jp/Milano-Aoyama/3360/

アイコン作成サイトは色々とありますが、ここのは何だか気に入りました。
素材を実際に読み込んで研究するといいと読んでいたサイトに書いてありました。
アイコンを固定ではなく自由に入れ替えられるようなものにすると楽しそうですね。

まだアイコンの入れ替えもろくに出来ないので、その辺り、調べながらやってみたいです。


30デフォルトの名無しさん:2005/11/19(土) 07:40:12
>>15
ギブアップです
もうどこが悪いとか何を調べたらいいのかもわからんです
31駆け出し名無し:2005/11/19(土) 15:09:57
Delphi(デルファイ)のページ
ttp://www.threeweb.ad.jp/~satou/index.htm

たまたま調べていて、このサイトを見つけました。
Delphiの素晴らしさがVCLにあるって書いてありますね。
32駆け出し名無し:2005/11/19(土) 15:17:48
>>31
Delphi(203研究室 − コーヒーと数学と教育と −)
ttp://www.wakhok.ac.jp/~tetsuo/delphi/text/
まだまだ凄いページはありますね。ここも偶然見つけました。

トップはここなので、こっちも貼っておきます。ページから飛ぶとエラーになるので。
ttp://www.wakhok.ac.jp/~tetsuo/
33駆け出し名無し:2005/11/19(土) 15:34:13
>>30
「質問」と「道場破り」はすぐにわかるように
【質問】を頭にすると質問で、道場破りは【お題】を頭にという感じでお願いしますね。

今わかっているのは、例外処理対応をネストして2回使うヒントが出ています。

program Project1;

{$APPTYPE CONSOLE}

uses
SysUtils, Classes;
const
filename='test.txt';
var
sum: double;
fp: TextFile;
str: string;

begin
sum:=0;
try
try
AssignFile(fp, filename);
Reset(fp);
try
while (not Eof(fp)) do
begin
Readln(fp, str);
sum:=sum+StrToFloatDef(str, 0);

コードはこれで全部かな? コメントを付けて書いてみると、頭がすっきりするかもしれません。
34駆け出し名無し:2005/11/19(土) 15:41:30
>>33
がーん・・・。やっぱり足りねえ。_| ̄|○
ttp://pc8.2ch.net/test/read.cgi/tech/1062422335/968-970
35駆け出し名無し:2005/11/19(土) 17:14:52
>>32
nomo-Space
ttp://hp.vector.co.jp/authors/VA019643/

Delphi関係のサイトは少ないので、見つけたものは取り上げていきます。
また前のように改めてまとめる予定です。
36駆け出し名無し:2005/11/19(土) 17:44:15
>>35
GDL:Gen's Delphi Labo.
ttp://www2.biglobe.ne.jp/~sakai/

ここも読むだけでも力が付きそうなサイトですね。
37駆け出し名無し:2005/11/19(土) 17:48:26
>>35
ゼロから始めるDelphi講座(クジラ式 Delphi 資料)
ttp://oto.chu.jp/kujira/text/delphi/zero/index.htm

これも役立ちそうな講座ですね。まだまだ探せばありそうです。
38デフォルトの名無しさん:2005/11/19(土) 18:32:16
39駆け出し名無し:2005/11/19(土) 18:36:47
>>38
がーん!見事に載っていますね・・・。
ご指摘に感謝いたします。_| ̄|○
40デフォルトの名無しさん:2005/11/19(土) 18:38:18
DelWikiなんかには頼りませんよ。
下手に書き写して著作権がどうのと難癖つけられないように
すべて自力で検索していきます。
41デフォルトの名無しさん:2005/11/19(土) 18:40:00
>>39
ググっても出てこないからね。
新しいリンクを見つけたらWiki にも追加してくれると嬉しい。

> 普通の書店に行っても、漏れはマイナーだとは思いたくないけど、
> 置いてある書店は非常に少ないのが、余り認めたくはないけど、今のDelphiの現実です。

こっちも頼む。
http://onigiri.s3.xrea.com:8080/delphi/index.php?Delphi%B4%D8%CF%A2%BD%F1%C0%D2
42デフォルトの名無しさん:2005/11/19(土) 18:40:44
>>40
あらら、まあいいけど。
43駆け出し名無し:2005/11/19(土) 18:54:49
>>40
要不要論と色々な経緯を辿ったこのスレだけど、
こうやって熱い人に支えられているなら、もう大丈夫かな。
漏れの場合は知らなかっただけだけど、不思議と重なるなあ。

ぐぐる場合、利用率が大きい順だから既に知られているんだろうね。

>>41
ええ、ここに紹介しているのは情報提供の積りなので
もし抜けがあるなら、これからはそっちの方にも追加していきますね。
44デフォルトの名無しさん:2005/11/19(土) 19:02:20
>>43
> これからはそっちの方にも追加していきますね。

よろしく。
45駆け出し名無し:2005/11/19(土) 19:04:20
>>44
はい。折角、道場破りネタが帰ってきたのに、続かないなあー・・・。
46駆け出し名無し:2005/11/19(土) 20:37:24
今、以下のページを読んでいましたが、結構参考になりますね。
Delphi6使用レポート(公式サイト): ttp://www.borland.co.jp/delphi/del6/report/

明示的型変換の有効性や例外処理の位置づけ等、なるほどと思いながら読んでいます。
読んだことがない人は是非一度読んでみるといいですね。比較レポートがDelphiらしさを浮き彫りにして。
47前スレ968:2005/11/19(土) 20:48:04
program Project1;

{$APPTYPE CONSOLE}

uses
    SysUtils, Classes;

const
    filename='test.txt';
var
    sum:    double;
    fp:    TextFile;
    str:    string;
begin
    sum:=0;

    try
        try
            AssignFile(fp, filename);
            Reset(fp);

            try
                while (not Eof(fp)) do
                begin
                    Readln(fp, str);
                    sum:=sum+StrToFloatDef(str, 0);
48前スレ968:2005/11/19(土) 20:48:27
                end;
                writeln(FloatToStr(sum));

            finally
                CloseFile(fp);
            end;

        except
            on E: EInOutError do
            begin
                case (E.ErrorCode) of
                    2:
                    begin
                        writeln(filename);
                        raise
                    end;
                else
                    begin
                        raise Exception.Create('読み込めねー');
49前スレ968:2005/11/19(土) 20:48:49
                    end;
                end;
            end;
        end;

    except
        on E: Exception do Writeln(E.Message);
    end;

end.
50前スレ968:2005/11/19(土) 20:49:54
ヒントをいただいたのですがまだわかりません
今やってることをまとめました
・ResetやReadlnで発生した例外をexceptで処理する
・発生する例外はどちらもEInOutErrorなので
 ErrorCodeで例外の内容を判断
・ErrorCodeが2(ファイルを開けない)の場合はwriteln(filename);のあと
 例外を再生成して外側のexceptに同じ例外を渡す
・ErrorCodeが2以外の場合はException.Create('読み込めねー');を
 外側のExceptに渡す

ファイルがない場合や読み込めない場合を試したところ問題の通り動いています
どこが悪いのか検討もつかず、とっかかりが無い状態です
言語ガイドやKodersで色々なソースを読んでるのですがどうにもわかりません
ヒントの追加をお願いします

//EOF
以上が前スレまでの状況です
51駆け出し名無し:2005/11/19(土) 20:53:17
>>50
道場破り乙です。漏れは暫く引っ込んでいますので。
じっくりと納得するまで、またーりとどうぞ。そのためにこのスレはまた続いたので。
52デフォルトの名無しさん:2005/11/19(土) 22:26:20
>>50
これ以上ヒントをだすとなると難しい・・・
どなたかー代わりにヒントをー
53駆け出し名無し:2005/11/19(土) 22:31:16
>>52
もう一度処理をわかりやすくするために、仕様と要件を整理したらいいかなと思いました。
フローチャートを書くと、後はそれに従ってコーディングすれば、プログラムは書けるはずですよね。
と言っても、漏れは書けないんだけど。状態遷移図も書くと違う気もします。
54デフォルトの名無しさん:2005/11/19(土) 22:35:28
前スレより問題文を転載

//ここから問題文
次は、例外処理の締めとしてRaiseを使おう。
ファイルが開けないときは
writeln(filename)した後、今の例外処理(Writeln(E.Message);)
を実行するように、
また、読み込みエラーのときは、E.Messageの内容を
"読み込めねー"
に変更してみてみてくれ。どちらも Raise を使えば簡単にできる。
//ここまで問題文
55デフォルトの名無しさん:2005/11/19(土) 22:36:48
ちなみにこのプログラムに手を加えろという問題です

const
    filename='test.txt';
var
    sum:    double;
    fp:    TextFile;
    str:    string;
begin
    sum:=0;
    try
        AssignFile(fp, filename);
        Reset(fp);
        try
            while (not Eof(fp)) do
            begin
                Readln(fp, str);
                sum:=sum+StrToFloatDef(str, 0);
            end;
            writeln(FloatToStr(sum));
        finally
            CloseFile(fp);
        end;
    except
        on E: Exception do Writeln(E.Message);
    end;
end.
56デフォルトの名無しさん:2005/11/20(日) 17:00:23
>>55
ヒントは?
57駆け出し名無し:2005/11/20(日) 22:11:58
DelWikiにここに貼った情報を反映したよ。
58デフォルトの名無しさん:2005/11/20(日) 23:44:30
>>56
978 名前:デフォルトの名無しさん[sage] 投稿日:2005/11/13(日) 09:02:05
>>968
やはり例外処理は初心者にとって第一の壁みたいだな。
でも完全に理解すればほんとプログラムの質が上がるのでがんばれ。

ヒント:
try
    try
    except
    end;
except
end;
59デフォルトの名無しさん:2005/11/21(月) 00:34:53
>57
乙であります
60デフォルトの名無しさん:2005/11/21(月) 03:48:27
except二回だけだとCloseFileできなくない?
まあ俺も例外処理はなんとなくぐらいの理解なので目から鱗の解答
楽しみにしています。
61デフォルトの名無しさん:2005/11/21(月) 07:27:11
>>57
乙彼。
62デフォルトの名無しさん:2005/11/21(月) 07:57:57
じゃあもうほとんど正解を・・・・
begin
    sum:=0;
    try
        AssignFile(fp, filename);
        try
        Reset(fp);
        except
        :
        end;
        try
            while (not Eof(fp)) do
            begin
                try
                Readln(fp, str);
                except
                :
                end
                sum:=sum+StrToFloatDef(str, 0);
            end;
            writeln(FloatToStr(sum));
        finally
            CloseFile(fp);
        end;
    except
        on E: Exception do Writeln(E.Message);
    end;
end.
63駆け出し名無し:2005/11/21(月) 22:19:37
>>59,61
声援、有難う。また見つけたので紹介しておくね。

Delphi 関数一覧: ttp://chaos.kisarazu.ac.jp/~ishikawa/cgi-bin/d-board/file/049-12b-DelphiFunctionList.pdf

64デフォルトの名無しさん:2005/11/22(火) 00:08:15
えっと、前スレから答えていたひとはいなくなったようなので、弟子役は
僕が引き継ぎましょうか。ちょっと興味ありますものでご指導よろしく。
とはいえ、ほぼ答え出た状態でちょっと気が引けますが...

sum:=0;
try
AssignFile(fp, filename);
try
Reset(fp);
except
writeln(filename);
raise;
end;
try
while (not Eof(fp)) do
begin
try
Readln(fp, str);
except
raise Exception.Create('よみこめねー');
end;
sum:=sum+StrToFloatDef(str, 0);
end;
writeln(FloatToStr(sum));
finally
CloseFile(fp);
end;
except
on E: Exception do writeln(E.Message);
end;
65デフォルトの名無しさん:2005/11/22(火) 00:16:03
あれ、インデントが全部消えた... 読みづらくてすまん。
delphiのIDEからきちんと字下げした状態をコピペしたんだが。

んで動作は確認したので課題どおり動くと思う。その内容について質問。

・よみこめねーの例外はどういう時に発生するんですか?
多分できたけどどうやって動作確認しよか...と悩んだ。結局Abort使って
確認しました。

・例外処理をネストする目的は?
一箇所でまとめて処理を行うことでソースの可読性をあげる、とどこかで
読みました。でもこれ...正直ネストがやたら深くてかえってややこしくない?
exceptとfinallyのネストはよく使うし目的もわかる。けどexceptのネストが
よくわからんのです。
66駆け出し名無し:2005/11/22(火) 00:53:29
>>65
> あれ、インデントが全部消えた... 読みづらくてすまん。
半角スペースだと消えてしまって駄目ですね。
特殊文字置換とかで置換すると違うらしいです。
次のような書き方をしていた人が前におられたので。&nbsp(全部半角で)

漏れは全角スペースでインデントは入れています。
それでは頑張ってくださいね。コードを批評されるのは力が付くと思います。
67デフォルトの名無しさん:2005/11/22(火) 01:01:37
先に、行頭インデントを複数の&nbsp(全部半角で)に置き換えるアプリつくりなよ
68デフォルトの名無しさん:2005/11/22(火) 01:03:03
専ブラ使っとけ
69デフォルトの名無しさん:2005/11/22(火) 01:10:32
アドバイスありがと。とりあえず張りなおしてみる。
専ブラ(OpenJane)つかってんだけどなあ。

sum:=0;
try
  AssignFile(fp, filename);
  try
    Reset(fp);
  except
    Memo1.Lines.Add(filename);
    raise;
  end;
  try
    while (not Eof(fp)) do
    begin
      try
        Readln(fp, str);
      except
        raise Exception.Create('よみこめねー');
      end;
      sum:=sum+StrToFloatDef(str, 0);
    end;
    Memo1.Lines.Add(FloatToStr(sum));
  finally
    CloseFile(fp);
  end;
except
  on E: Exception do Memo1.Lines.Add(E.Message);
end;
70デフォルトの名無しさん:2005/11/22(火) 01:12:32
そしていつのまにか再び出力先が変わってしまった...
すまん、何度も張りなおしウザイだろうからそのままにしとくよ。
課題の実行にはたいした問題じゃないよな。
71デフォルトの名無しさん:2005/11/22(火) 01:42:58
ああ、あと前スレのひと、しばらく出てきてない印象あったけど土曜日にきてるのね。
とりあえず今回はでしゃばってすまなかった。オモシロそうだったもので。
僕に遠慮せずぜひ引き続き頑張ってください。
72デフォルトの名無しさん:2005/11/22(火) 04:48:11
例外処理は重要だがつまらんな。別の話題にしておくれ
73駆け出し名無し:2005/11/22(火) 07:49:52
>>72
そう言わずにさ、取り敢えずの区切りは付けさせてあげてね。
気持ちがすっきりしないと 、道場破りさんも次に向かえないだろうし。
74デフォルトの名無しさん:2005/11/22(火) 08:03:30
>>65
>・よみこめねーの例外はどういう時に発生するんですか?
もし本気でそこを悩んでいるのならソースを見よう。
ほとんどの場合APIにいきつくだけではあるが。

>・例外処理をネストする目的は?
逆に、ややこしくないと思うソースをアップしてみては?
75デフォルトの名無しさん:2005/11/22(火) 18:15:45
次行く前に絶滅しないように、面白い話題にしてちょ
76駆け出し名無し:2005/11/22(火) 20:09:46
>>75
漏れは今までその時々の検索単語であちこちのサイトをぐぐって漂流してみたけど、
意外なことに、GExpertsのような超便利なツールは余り紹介されていないんだよなあ。
何もまだ力のない初心者にこそ、こんな便利なツールを知ってもらいDelphiと戯れて欲しい。

と言いつつ、漏れの場合は圧倒的に弄ばれているんだけどね・・・。

それで、更にネタを投下するということで強引に次に続く・・・。
77デフォルトの名無しさん:2005/11/22(火) 20:20:31
> GExpertsのような超便利なツール

道具を磨いてばかりでいつ使用するつもりですか?

> おまいら!今日からDelphi言語を学んでいくぞー!02

言語の実際の使用例希望。

イベントと普通のプロパティーの違い。
メッセージに捕まえ方。
簡単のマルチスレッドのおきまり。
タイマーの仕組み。
列挙型、集合型の内部構造。
string型

いろいろあると思うけど。
78デフォルトの名無しさん:2005/11/22(火) 20:21:33
助詞に変なのがあるがタイポ、勘弁
79駆け出し名無し:2005/11/22(火) 20:33:14
>>77
使っていますよ、実際。まだまだ一部だけだけど。
これを使うようになってプログラムの該当箇所に飛ぶのが随分楽になりました。
大昔にvzでタグジャンプしていたような感じだなあと思っています。GREPだから同じか・・・。

doxgenというのはDelWikiで見た気がするけど、探すと不思議と見つからないや。
それじゃ、調べてまとめておいたサイトと新たに見つけたサイトを紹介。まだいいところあるかもだけど。

Cでのコメントの書き方の例(クラス・関数のコメント): ttp://members.at.infoseek.co.jp/sakura_editor/comment-rule.html
Doxygen を使おう: ttp://www.fides.dti.ne.jp/~oka-t/doxygen.html
nDiki : doxygen: ttp://www.naney.org/diki/dk/doxygen.html
Doxygen(Hexe19 - 達人プログラマーへの道): ttp://www.hexe19.net/doxygen/index.html
80駆け出し名無し:2005/11/22(火) 20:39:21
>>79
何故漏れがここで、ドキュメンテーションという話題を振ったのかと言えば、
このDoxygenを読んでいて、TeXの「文芸的プログラミング」に出てくるtangleを
想起したからです。

ご存知の通りtangleとは、「ソースコード+説明」文書から、ソースコード部分を手繰り寄せるツールです。

適切なコメントを的確に付けておいて、それを適切なツールに通せば、
と言葉で書くのは簡単ですがこれは実に大変なことは誰でも承知のことですが、
どのようなことを書いておけば、忘れた後でそのコードを読んでも大丈夫なのかは
保守性を考える上では重要なことだと思うのです。
81デフォルトの名無しさん:2005/11/22(火) 22:18:33
ちっとも「Delphi言語」じゃないのはわざとスレタイ無視してるからですか?
82駆け出し名無し:2005/11/22(火) 22:48:57
>>81
漏れが使っているのはDelphi言語じゃなくて、Object Pascal処理系のDelphiだけど。
Doxygen、実際にDelphiでも使えるんだけど。今試していたら、動いて感動していた!
83駆け出し名無し:2005/11/22(火) 22:58:12
アプローチが違っているように思えるかもしれないけど、
Delphiに役立つ情報という方向性はいつも考えているよ。
そのためになるものなら、何でも取り上げる。

開発者が引き抜かれて作った言語がC#らしいけど、漏れはDelphiが好きだから。
というより、Cは何だか昔から好きじゃない。
84デフォルトの名無しさん:2005/11/23(水) 00:01:25
C と C# は全く違うんだよ。C# は C より、どちらかといえば Delphi に近い。オレだったら、C# で
ネイティブコンパイルできるんだったら、とっくにそっちに行ってるね。できないから
まだ Del やってるんだけど。
85デフォルトの名無しさん:2005/11/23(水) 00:17:07
言語としては C# は Delphi のような構造化言語の尻尾を引きずってないぶんだけ、かなりきれい。
後発だから当然ですが。ライブラリに相当する .NET Framework も VCL と驚くほどよく
似ている。規模は多分10倍ちかく充実していますけど。純粋に趣味としてみれば
C# はとてもおもしろいです。.NET の普及がいまいちなので、まだこれからの言語
ですが。すでにユーザ数はDelphiをはるかに上回っています。
86駆け出し名無し:2005/11/23(水) 00:33:23
>>84-85
Cと違うのは知っているよ。そっくりだというのも漂流中に知った。
既に書籍の数が圧倒的に違う。Delはなくても、C#は必ず置いてある。
略称?のDelというのが悪いのかもしれない。消えるというイメージが漂っていて。

某から開発者を引き抜いて骨抜きにし、なおかつ対抗も作るとは流石はM社とは思ったけど。

言語して何とかというのは昔から何度も言われてきたけど、漏れはスクリプト言語育ちだから、
細かい話は置いといてアルゴリズムだけ考えていればいいというのが気楽で好きだ。型変換も自動だし。
それでも、文字列とか型を意識しないと駄目なことも結構あったけど。

Delphiの良さは、使用レポートを読んでいたら、圧倒的なコンパイル速度とあった。
他の処理系を余りよく知らないから速度的な比較は出来ないけど、Cはmakeして少し待った記憶はある。
昔の記憶だから、DOS時代の記憶だけど。
87デフォルトの名無しさん:2005/11/23(水) 01:12:33
ボーランドさんも C# の開発環境を出してるでしょう。
Delphi の良さは VCL とコンパイルの速度ですよね、なんと言っても。
C# は IL にコンパイルするんだけど、C なんかよりずっと速いし、他のファイルも
いらなくて、Delphi と同様にコンパイルできます。

Object Pascal(Delphi言語)は、ただの Pascal から引き継いだ負の遺産を背負っていて
OOP としては中途半端でやがて淘汰されるでしょう。

世の中でこんなに旨いものがあったのか、と感激して、それが世界一旨い食い物だと
信じている場合があります。でも、知らないだけで、他の多くの人はもっと旨いものを
食べていた、ということもあり得ますよね。知っていても、本来の意味での「喰わず嫌い」
ということもあります。囓ってみて、試すのも悪くないですよ。Delphi2005以降では
C# も使えますからね。
88デフォルトの名無しさん:2005/11/23(水) 01:18:10
VC# Express だと無料で最新版が手に入る。
89デフォルトの名無しさん:2005/11/23(水) 02:08:45
俺の理解はこんなかんじ。趣味プログラマの聞きかじりなんで正しいかどうか
コメント頂けるとありがたい。

C# の弱点;
・実行速度遅い
・実行環境が .NET Framework 依存
 ver2が出たら互換性問題、素の環境だと事前にランタイムをインストールしなきゃならん
・Windows限定 (まあ俺には関係ないが)

最初のふたつはネイティブコンパイルじゃないがゆえの課題ですなあ。
ただ将来的にはあらゆる言語がVMでの実行に向かう趨勢といった事を読んだことがある。
なぜなのか俺にはわからん。識者の方教えてくれ。

C#のメリット
・後発だから仕様がきれい
・斜陽のdelphiにくらべてこれからが旬
・ライブラリ充実 VCLにくらべて10倍ちかくですって!?ほんまですか!
90デフォルトの名無しさん:2005/11/23(水) 02:45:51
C#の仕様が奇麗というのはOOPLとしての部分であって、
「構造化言語」としての仕様は、
Cを引きずってるC#と、構造化の元祖Pascalとでは圧倒的にPascalが上とは思うけどね。
逆にDelphiのOOPL拡張部分は後付けだから汚い。

OOPLとしてのあり方ばかり重視される世の中だけど、
実際の関数の中身の書き方は研究用とか関数型言語とか除けば
構造化言語の頃から大差無い(例外処理が加わった程度)わけで
C#に限らず最近出てきた言語は、その大事な部分が軒並みC並なのを見ると、
OOPL部分ばかり奇麗でもなあ、って感じはチョットする。
91デフォルトの名無しさん:2005/11/23(水) 02:51:25
正直 .NET Framework は機能が足りなくて Win32 API を呼ばなきゃならないのに、C# で Win32 API 呼ぶのは激しくめんどくさい。
C++/CLI を試そうかなあと思っているけど、C# は試用した上で放棄した。
92デフォルトの名無しさん:2005/11/23(水) 04:27:52
雑談なら談話室でやったら?
93デフォルトの名無しさん:2005/11/23(水) 09:09:07
>>85
>すでにユーザ数はDelphiをはるかに上回っています。
M$信者が多い日本ではねw
94デフォルトの名無しさん:2005/11/23(水) 11:08:04
いや、某信者がMS信者を上回ってる国なんかないだろ。(>>93は相変わらず頭が変)
世界的にC#がはるかにDelphiユーザ数を上回ってるがな。

それに某もC#開発環境出してるのを忘れてる。
95デフォルトの名無しさん:2005/11/23(水) 11:16:13
>>94 旧ソ連や中国は、なんかDelphiめちゃくちゃヒットするぞ?
96駆け出し名無し:2005/11/23(水) 11:18:16
>>87
> Delphi の良さは VCL とコンパイルの速度ですよね、なんと言っても。
漂流していてその記述には何度も出会いました。VBには色々な呪縛があって、
Delphiが出たら、どっとみんなが移ったと。DLL HELLなんて言葉も初めて知りました。
これは公式の使用レポートからなんですが。

> ということもあります。囓ってみて、試すのも悪くないですよ。Delphi2005以降では
> C# も使えますからね。
ご助言に感謝いたします。
言語をあれこれ齧るのはいいとは思っているのですが、
面倒だとawkやPerl等をいじっていた人間には既にお腹一杯なので。

Delphi言語と棒(どの漢字が一般的なのかな?)が呼び始めた頃から、
Delphiの迷走が始まったとどこかに書いてありました。既にDel6pとそれ以降では
利用者の環境が全く違っているように思います。
97駆け出し名無し:2005/11/23(水) 11:19:59
>>92
そうは言わずに、盛り上げるための燃料と思いませんか?
漏れはこうやって付随する知識も教えてもらえて、今はいい感じだと思っています。
そうやって、道場でまったりやっている中に道場破りが現れる、そんな感じがいいのでは?
98駆け出し名無し:2005/11/23(水) 12:58:32
取り敢えず、DelWikiの初心者向けリンク情報を無駄に増補・・・。
99駆け出し名無し:2005/11/23(水) 13:26:42
どうせなら、初めからということで、Doxygenもリンクに追加。
100デフォルトの名無しさん:2005/11/23(水) 13:40:06
Doxygen専用ページ作ってみた。
良かったら使ってくれ。
101駆け出し名無し:2005/11/23(水) 13:45:13
>>100
作成ご苦労様です。ところで、今探していますが、URLがわからなくて。
102デフォルトの名無しさん:2005/11/23(水) 13:55:32
>>101
つ ページ左の最新の7件
http://onigiri.s3.xrea.com:8080/delphi/index.php?Doxygen
103駆け出し名無し:2005/11/23(水) 14:00:28
>>102
教えていただき、有難うございました。ここに出るのか・・・。
ページへのリンクも貼っていただいて有難うございます。分けようかな。
104デフォルトの名無しさん:2005/11/23(水) 14:22:39
ちょっと書き込んでみたけど、
サンプルということで、消して好きに編集してくれて構わないから。

不要ならページごと消してくれ。中身を全部クリアすればページも消える。
105駆け出し名無し:2005/11/23(水) 14:28:01
>>103
作っていただいたDoxygenページの方にもリンクを貼ってみました。
初心者の方は取っ掛かりということで、一番簡単なところを見つけて貼っておく予定です。
106駆け出し名無し:2005/11/23(水) 14:30:14
>>104
折角作っていただいたので、残す方向でやりたいと思います。
そうやって分けていただいた方が知らない人が知る手掛かりになりますし。
実際、サンプルで練習していたソースにこの形でコメントを入れて経験を積んでいます。
107デフォルトの名無しさん:2005/11/23(水) 14:31:56
>>105
どうもです。
ページの作り方・消し方も紹介しておこうかなと思っただけなので
要らないと思ったらバッサリと消してくらさい。
108デフォルトの名無しさん:2005/11/23(水) 14:32:33
>>106
お、そう言って貰えると嬉しいです。
109駆け出し名無し:2005/11/23(水) 14:40:52
今改めてぐぐって探していましたが、これが一番簡単かな?
Doxygenによるソースドキュメントの機械生成: ttp://kamakura.cool.ne.jp/oppama/misc/doxygen.html

まず整理しておくと、Delphiのコメントの付け方には、2種類あって、
1.//を頭に付けるか、2.{}で囲むかです。
その上で、あと更に必要な目印をつけることで機械的にコメントを取り出すことが出来ます。

ソースプログラムの書き方には、大きく「Qt形式」「JavaDoc互換」の2種類があります。

●Qt形式:

/*!
* こめんと…
*/

●JavaDoc互換:

/**
* こめんと…
*/

これだけ知って書くといいらしいです。さあ、みんなで早速使ってみよう!
110駆け出し名無し:2005/11/23(水) 14:51:00
>>109
ぐはっ、これはCでの書き方だった・・・。
ええと、Delphiだと//を付けるから、きっと//!?

駄目だ、Delphiでの書き方がよくわからない・・・。orz

111駆け出し名無し:2005/11/23(水) 15:18:33
>>110
プリプロでpas2doxを走らせてからというのは何とかわかったけど、
その場合の書き方が書いていないなあ。これじゃ駄目か。orz
pas2dox: ttp://pas2dox.sourceforge.net/

英語でも、仕様なら文字読むだけだから何とかわかると思ったのに・・・。
112デフォルトの名無しさん:2005/11/23(水) 16:10:49
いままでGUIのツールつくるのにVBでしたがDelphiに乗り換えました。(3日前・・・)
Tipsがたくさんのってる本とかおすすめの本ありましたら教えてください。
ネットだけだときついっす。
とりあえずOpenDialog,SeveDialogとメニューを使った簡易エディタだけつくったっす。
「はじめてのObjectPascal」買ったっす。
113駆け出し名無し:2005/11/23(水) 16:39:38
>>112
Delphi使いデビューおめ。
漏れは全部ネット情報だけだけど、それでも行けると思うよ。
上にずっと貼ってきたサイトの情報を読めばそれがよくわかると思うけど。
114駆け出し名無し:2005/11/23(水) 16:43:41
取り敢えず、DelWikiの初心者向けリンクからあちこちに飛んでみてくださいね。
ttp://onigiri.s3.xrea.com:8080/delphi/index.php?cmd=read&page=%A5%EA%A5%F3%A5%AF%2F%A4%BD%A4%CE%A3%B1#content_1_6
115駆け出し名無し:2005/11/23(水) 16:47:34
>>114
上で紹介したサイトから飛べるけど、念のため。
Delphi関連書籍
ttp://onigiri.s3.xrea.com:8080/delphi/index.php?Delphi%B4%D8%CF%A2%BD%F1%C0%D2
116デフォルトの名無しさん:2005/11/23(水) 18:38:18
今日も「Delphi言語」の話はないのか・・・・
117デフォルトの名無しさん:2005/11/23(水) 18:57:07
Delphi 2005にはソースからXMLドキュメントを出力する機能が標準で付いていることにさっき
気づいたんですけど、コメントの書き方がわかりません。
下記のように書いたら、クラスとメソッドのコメントはドキュメント出力されるんですけど、
メソッドのパラメータはどうやって記述するのでしょうか?
そこまではできないんでしょうか?

/// メインフォームクラス
TMainForm = class(TForm)
public
/// メソッド1
procedure Method1(AValue: Intger);
end;
118駆け出し名無し:2005/11/23(水) 18:59:46
>>116
うーん、今のような状況だと人によってそれが何を指すのか微妙に違うと思います。
ということで、ご自身で話題を振られては? 人任せにするよりは。
119駆け出し名無し:2005/11/23(水) 19:07:37
>>117
ヘルプとか説明書を読むといいと思うんだけど。取り敢えず、ぐぐった結果。
Borland Delphi 2005: ttp://www.borland.co.jp/delphi/del2005/feamatrix.pdf
Borland Delphi 2005 FAQ: ttp://www.borland.co.jp/delphi/del2005/faq.pdf
120デフォルトの名無しさん:2005/11/23(水) 19:10:19
121デフォルトの名無しさん:2005/11/23(水) 19:15:47
>>119
ヘルプは見ましたが載っていませんでしたので質問しました。
122駆け出し名無し:2005/11/23(水) 19:19:25
>>121
上で教えてもらっているページの情報だと、どうも「///」と3つ付けるといいみたいですね。
漏れはフリーの処理系しか持っていないから、後は実際に使っている人の情報待ちですね。
123デフォルトの名無しさん:2005/11/23(水) 19:19:41
>>120
Delphi 2005でWin32プロジェクトに関してだったのですが質問に書き忘れていました。
すいません。
124デフォルトの名無しさん:2005/11/23(水) 19:22:14
>>122
クラスコメントとメソッドコメントは「///」でいけるのですが、メソッドの引数に個別にコメントが
かきたいのですが分かりませんでした。
125デフォルトの名無しさん:2005/11/23(水) 19:33:14
>>123
いいから嫁
126117:2005/11/23(水) 19:45:15
>>125
/// <param name="AValue"></param>
で書けるという意味ですか?
C#ではできますがWin32では無理でした。
127デフォルトの名無しさん:2005/11/23(水) 20:45:05
128117:2005/11/23(水) 20:58:17
>>127
私もここを見てDelphi 2005でXMLドキュメントが出力できることを知りました。
ここにもメソッドのパラメータのコメントの書き方は載っていませんでした。
C#風やJavaDoc風にもしてみたのですが、やっぱりダメでした。
PasDocとかを使うしかないのでしょうか。。。
129駆け出し名無し:2005/11/23(水) 21:16:19
>>128
直接、某にメールした方がいい気がします。
ライセンスを持っているなら回答してもらえると思うので。
後は、Delphi MLかなあ。
130デフォルトの名無しさん:2005/11/23(水) 21:36:03
C# 使えばいいじゃん。どうせ Delphi 言語じゃなくて環境とか便利ツールの
話しかしないんだろ、このスレ。
131デフォルトの名無しさん:2005/11/23(水) 21:38:34
その点 DelWiki にそっくりだな。
132デフォルトの名無しさん:2005/11/23(水) 21:55:50
頼むから環境とか便利ツールとかWikiとかの話は
||:3ミ バカボンのパパのDelphi談話室その27
http://pc8.2ch.net/test/read.cgi/tech/1130605843/
でやってくれよ。
133デフォルトの名無しさん:2005/11/23(水) 23:10:32
>>117
Delphi2005を持っているならWindows\System32にあるHelp Insight用のXMLファイル
を見れば分かるんじゃないかな。
134デフォルトの名無しさん:2005/11/23(水) 23:11:59
こんなツールもあるぞ
http://pasdoc.sipsolutions.net/
135デフォルトの名無しさん:2005/11/23(水) 23:31:48
>>132
面倒だから立てたよ
Delphi初心者のための寺子屋
http://pc8.2ch.net/test/read.cgi/tech/1132756268/
136駆け出し名無し:2005/11/23(水) 23:37:46
>>135
こっちもどちらかと言えば過疎っているのにそっちを作ってもなあ。
多分、今のペースだとそっちは落ちてしまうと思う。余程てこ入れしないと。
テンプレも何もないし。関連スレ情報もない。
137駆け出し名無し:2005/11/23(水) 23:52:32
既にお決まりの言葉が出ているけど、漏れは作ってもいいとは思うけど、
作ってもそれを守るための努力をしないと全く意味がないし、余りに空しい。
ここが暖簾分けしなければいけないほど繁盛したら分ける意味はあると思う。

漏れのプログラミングスタイル自体、コメントを多用する形だったから特に思うけど、
適切なコメントをずっと書いていくというのはプログラミングをする上では軽視できない
重要な技術だと思う。

コードだけ書いていて、後で読み直すとわからないということはよく経験することだし、
だからこそ、Doxygenやpasdocというような自動生成ツールも生まれたのだと思う。
138デフォルトの名無しさん:2005/11/24(木) 00:11:28
自動生成だと意味のあるものにならないけど
どんなことを記しておくべき?
139駆け出し名無し:2005/11/24(木) 00:23:18
>>138
違うよ。決まった形式を機械的に読み取って再構成するって意味だよ。
上に貼ったリンク(>>79)を辿って中身を読んでみて。言いたいことがわかると思うから。

140デフォルトの名無しさん:2005/11/24(木) 00:25:02
VCL のソースはそんなにコメントないけどね。
141デフォルトの名無しさん:2005/11/24(木) 00:26:03
その前に分かりやすいコードを書くにはどうしたらいいかを議論したら。
142駆け出し名無し:2005/11/24(木) 00:31:45
>>140
VCLについてはこれが参考になるのかな? あと以下も。
ttp://www.kanazawa-net.ne.jp/~pmansato/VCL.htm

ttp://www.kanazawa-net.ne.jp/~pmansato/IDE_Tips.htm
> これと関連することですが、Delphi ユーザーのコードの書き方にも一言いい
> たい。VCL のソースコードが付属していますので、これが模範的なコードの書
> き方と考えるのか、公開されているコードのほとんどが同じスタイルになって
> います。しかし、Borland の実際の開発者がこのままのコードにしているわけ
> がありません。よく見てください。ほとんど、コメントがありません。つまり、
> 実際のコードから余分なものを機械的に削除したことは明らかです。コードの
> 書き方は人それぞれだとは思いますが、私はもっと、余白をとって、風通しの
> よいスタイルにすべきだと思います。少なくと、他人に見せるコードの場合は
> そうしてもらいたいものです。
143デフォルトの名無しさん:2005/11/24(木) 00:35:11
有料のソースコードでもこんなものですか?
コメントなくても解読できてる人は大勢いますけどね。
きれいなソースをかくことのほうが大事だろうね。
144デフォルトの名無しさん:2005/11/24(木) 00:37:38
コメント行の方がソースコードの行数より多い場合は、かえって非常に読みづらいと感じるな。
どうでもいいコメント大杉。VCL のソースコードは読みやすいと思うけどね。
145駆け出し名無し:2005/11/24(木) 00:40:40
>>141
前に書いたけど、また貼っておきます。

・コーディング規約
ttp://onigiri.s3.xrea.com:8080/delphi/index.php?plugin=related&page=%A5%B3%A1%BC%A5%C7%A5%A3%A5%F3%A5%B0%B5%AC%CC%F3
・Delphi の格言: ttp://kakinotane.s7.xrea.com/delphi/faq/f004.html
・ダメなユーザインタフェイス講座: ttp://www.geocities.co.jp/SiliconValley-Oakland/8192/

変数名とか関数名とか、わかりやすいコードを書くための重要な技術だと思います。
というのは、公式サイトの使用レポートを読んでから改めて思ったことでした。
VBだとその辺り自由に変えられないそうなので。
146駆け出し名無し:2005/11/24(木) 00:43:38
>>144
必要十分な量のコメントというのは難しいでしょうね。
レベルがどの辺りかによっても違うし、CVS等で共同開発してしている場合は特に。
仰る通り、大杉コメントは邪魔なのも確かです。
147デフォルトの名無しさん:2005/11/24(木) 00:58:32
>>133
スマソ。これは嘘かも。
148デフォルトの名無しさん:2005/11/24(木) 10:27:55
コメントが重要、とかはなにも Delphi に限ったことでもあるまい。
Delphi言語自体とは、なにも関係ないと思う
149デフォルトの名無しさん:2005/11/24(木) 14:20:57
オレの場合、ソース1万行あっても
コメントは50行分にも満たないことがほとんどだな
むしろ、下らんコメントを長々書く奴には是非反省して欲しい

Inc(i); // iをたしておく

とか、もうアボガド
150デフォルトの名無しさん:2005/11/24(木) 14:43:06
begin end 入れて4行の関数に、作成者・機能、作成日時、とかえんえんとコメント
とか、もうアボガド
151デフォルトの名無しさん:2005/11/24(木) 15:01:13
>>148
このスレはそういうスレなんだよ。
気にしないで、言語に関係なくどんどん書き込むヨロシ。
152駆け出し名無し:2005/11/24(木) 20:32:26
>>148
直接関係はなくても、Delphiという言語を学んでいくには必要な知識だと思います。
コメントには何でも書けばいいという訳ではなく、本当に必要な情報を的確に書く、
そして、それを常日頃から心掛けるという日々の実践がプログラム技術を向上させると思います。
153駆け出し名無し:2005/11/24(木) 20:39:49
>>149
> オレの場合、ソース1万行あっても
> コメントは50行分にも満たないことがほとんどだな
それだと、コメント率は0.5%ということになりますね。
どのくらいが標準的かは存じていませんが、一定範囲にはありそうです。

> Inc(i); // iをたしておく
いつの段階かでも違うと思いますが、時期にもよると思います。
初めての段階なら自分が一度でも使ったことのある表現をコメントしておけば、
見直す時にすぐにわかると思います。そういえば、こういう関数使ったことあるなとか。
これを見て、漏れも初めはコメントを一杯書いていたことを思い出しました。

i = i +1 は別の表現では、i++ というインクリメントを使えば書けたりしますが、
知らないとどうしようもないし、初めのうちはどうしてもそうなると思います。
154駆け出し名無し:2005/11/24(木) 20:49:09
>>150
> begin end 入れて4行の関数に、作成者・機能、作成日時、とかえんえんとコメント
例えば、こんな感じなのかなあ?

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

どんな感じでコメントしているのかその実物を是非見てみたいなあ。
定型部分はクリップボード支援ツールとか使っていないと漏れは面倒で嫌だけど。
155駆け出し名無し:2005/11/24(木) 20:58:28
漏れのコメントは多分、一般の書き方と大変違っていると思いますが、
思い込みが大変激しいので自分でそうやっている積りなのにコードがそうじゃない場合も多くて、
自分がやっているはずの処理の流れをコメントの中に入れておきます。後で追うときも楽なので。

それを読むことで、このブロックでは合っているなあと「小さく考える」ことで積み上げていきます。
あと、前のコードをコメントアウトの形で出来るだけ残しておきます。後で思考の流れを追えるからです。
達人レベルの人から見れば「汚いコード」なのでしょうが、そういう試行錯誤の中で漏れは経験を積むのです。

あと、その時やりたいと思ったことをコメントアウトの形で一杯書いておくことも漏れの書き方の特徴でしょうね。

156デフォルトの名無しさん:2005/11/24(木) 20:59:46
{--------------------------------------
作成者:nanasi
機能:引数x、yの和を返す
作成日時:2005/11/24
コメント:なんだかんだ
--------------------------------------}
function Tasu(x,y:integer): integer;
begin
 Result := x+y;
end;

こんなのだろ
157駆け出し名無し:2005/11/24(木) 21:17:37
>>156
予想実例わざわざ有難うございます。漏れなら、1行にするなあ・・・。
// 関数:引数x、yの和を返す:なんだかんだ by nanasi(2005/11/24)
書いてもこれが限界だ。
158デフォルトの名無しさん:2005/11/25(金) 00:20:48
>>155
うひょー、きみのコードは読みたくないね。
そんなのだったら、ほんとにコメントは必要かもね。
159駆け出し名無し:2005/11/25(金) 01:27:35
>>158
この書き方は自分のための書き方なので、
もしこれを人に見せる場合は、全く変えます。
コメントも付け替えますし。

また上に書いたように、習熟度合いで中身も変わっていきます。
あくまでも現時点で一番自分に合った方法を選択するのです。
その意味では全く一般的ではないですね。

でも、自分で考えてコードを書くという目的からはこれが一番楽です。
160デフォルトの名無しさん:2005/11/25(金) 14:39:12
どうも約一名のチラシの裏のためのスレのようだ
161デフォルトの名無しさん:2005/11/25(金) 17:46:25
剥げ如何
「駆け出し名無し」で抽出すると70オーバー
これは初心者系スレでなくチラシの裏系スレだな
162デフォルトの名無しさん:2005/11/25(金) 18:31:19
自分の部ログがわりにつかわれてもね・・・・
163デフォルトの名無しさん:2005/11/25(金) 18:46:52
別にいいじゃん。なんか問題あるんか?
164デフォルトの名無しさん:2005/11/25(金) 19:40:01
問題ないと思ってることが問題だな
165デフォルトの名無しさん:2005/11/25(金) 19:45:09
役に立つリンク貼ってくれたから別にいい。
166デフォルトの名無しさん:2005/11/26(土) 10:09:32
>>109
Doxygen 関係のサイトを見つけたので貼っておく。
Doxygen ライセンス:ttp://www.fides.dti.ne.jp/~oka-t/doxygen-manual/html/
目次@ぼちぼちでんがな - Smooth but No good -:
ttp://gojoe.hp.infoseek.co.jp/translation/doxygen_document/

Doxygen自体を使うには、Doxywizard で設定ファイルを作る必要があります。
但し、起動すればわかるとおり設定の嵐なので上の説明がきっと必要になります。
167デフォルトの名無しさん:2005/11/26(土) 10:35:56
>>166
詳しい設定は以下に一杯書いてありますが、初めはWizardモードで使うといいようです。
ttp://gojoe.hp.infoseek.co.jp/translation/doxygen_document/html/config.html

この説明は英語ですが何とか雰囲気でわかると思います。
Doxywizard usage:ttp://www.stack.nl/~dimitri/doxygen/doxywizard_usage.html

168デフォルトの名無しさん:2005/11/26(土) 10:55:25
>>111
なかなかDelphi用に書いたDoxygenの書き方例がなかったのですが、これを参考にどうぞ。
ttp://www.dt8.jp/cgi-bin/Kshiki/Kshikiconfig.cgi?action=pastpage&TimeSelect=200408

> とりあえず、当面我が家でのコメントの書き方。
> -----------------------begin--------------------------
>
> //! ジャンル判定2(曖昧)
> (*!
> @par
> 指定文節のかっこを除去した文字列が、あらかじめ読み込んでおいたGenreList中の文字列に”含まれる”かどうかを判定する。
> @param id [in] 文節番号
> @return 含まれるならばTrue、そうでないならFalse
> *)
>
> procedure / function...
> ------------------------end---------------------------

//! 簡略説明
/*! */ 詳細ブロック
@par 詳細説明(doxygen本来の規定では@parは必要ないが、つけないと簡略と区切りが分からなくなる)
@param 引数
@return 返り値
@note 覚え書き
@bug バグ
参考: ttp://members.at.infoseek.co.jp/sakura_editor/comment-rule.html

という感じで、ぼちぼちと使ってみます。詳細ブロックは「/*! */」で行けるのかな? 「//*! */」でないと駄目な気が。
169デフォルトの名無しさん:2005/11/26(土) 13:58:41
> という感じで、ぼちぼちと使ってみます。詳細ブロックは「/*! */」で行けるのかな? 「//*! */」でないと駄目な気が。

doxygenが認識してくれるかはともかく、pascalではコメント文として認識されないので
コンパイルできなくなっちゃうね。
170デフォルトの名無しさん:2005/11/26(土) 14:40:00
>>169
そのために噛ませるのがpas2doxなんですが、
どう書けばいいのか、公式サイトを見てもよくわからなくて。
取り敢えず、「//! コメント」しか使っていないです。これはどうも通るみたいなので。
171デフォルトの名無しさん:2005/11/26(土) 16:47:25
>>170
ソース自体は(*! *)で書いてpas2doxを噛ませてDoxygenで認識できる/*! */に変換するわけだよね。
/*! */でいけるかな?っていってるのは変換後の話?
172デフォルトの名無しさん:2005/11/26(土) 22:19:04
>>171
どうも、Delphiで通るコメント形式を実例豊富なC形式で見てわかるような形にするのが、
pas2doxのような感じのようです。そのままでは、Doxygenを通らないようなので。

(*! *)で書いてというのが、よくわからないんです。Delphi上では、これもコメントとして認識されるし。
結局、「//」と「{}」と「()」と3種類がコメント形式として認識されるということになりますね。

> /*! */でいけるかな?っていってるのは変換後の話?
これだと、pas2doxを通した後の話ですね。Delphi上では、コメント扱いしてくれないので。

まだまだ試行錯誤の状態です。常用者の情報を待ちたいと思っています。
173デフォルトの名無しさん:2005/11/26(土) 22:32:41
>>172
> 結局、「//」と「{}」と「()」と3種類がコメント形式として認識されるということになりますね。

当然、()はコメントにはならない。コメントになったら関数もかけないからね。
Cの/* */から置換しやすいように(* *)が使用できるようになっている。
174デフォルトの名無しさん:2005/11/26(土) 22:43:53
>>173
なるほど、移行の関係で「(* *)」が使える訳ですね。ご教示有難うございました。
175デフォルトの名無しさん:2005/11/26(土) 23:18:49
>>174
だったらなんで/* */を使えるようにしないんだって気がするんだけどね。

ちなみにうまくいかないというのは具体的にどんな風に書いてどんな風に駄目なんだい?
ちょっと試してみたけど、うまく動いてるような気がする。

デフォルトではqtスタイル(JAVADOC_AUTOBRIEF = NO)だけど、
168にあるように

//! 一行説明
{*
簡略説明
@param param1 パラメータの説明
@return 戻り値
}
function hoge(param1:integer):integer;

という感じで出力できる。「{* }」は「(* *)」でもいい。
176デフォルトの名無しさん:2005/11/26(土) 23:19:57
JavaDocスタイル(JAVADOC_AUTOBRIEF= YES)の場合は
{*
簡略説明
詳細説明

@param param1 パラメータの説明
@return 戻り値
}
function hoge(param1:integer):integer;

といった形で書ける。簡略説明の最後にはピリオドが必要。
何故かわからないけど、「(* *)」だとうまく簡略説明が認識されなかった。

馴れかもしれないけどJavaDocのほうが書きやすいかな。
177デフォルトの名無しさん:2005/11/26(土) 23:22:29
間違えた。175はこうね。

//! 簡略説明
{*
詳細説明
@param param1 パラメータの説明
@return 戻り値
}
function hoge(param1:integer):integer;
178デフォルトの名無しさん:2005/11/27(日) 11:43:24
>>175
検証わざわざ有難うございました。
よくよく見てみると、予約語との間にスペースがなかったのが悪かったようです。
これで、DoxygenをDelphiで使うための下準備が出来たようなので常用するだけですね。

あと、以下のサイトの情報によると、フィルターを噛まして、INPUT_FILTER = "nkf -e"も付けるといいようです。
doxygen 日本語文字化け対策(観測気球):ttp://watcher.moe-nifty.com/memo/2005/08/doxygen__7fb8.html
日本語の扱い(Doxygen を使おう):ttp://www.fides.dti.ne.jp/~oka-t/doxygen.html
nkf Win32版:ttp://www.vector.co.jp/soft/win95/util/se031296.html

で結論! Qt形式の基本形は、まとめると以下になるでしょうか。どうも間違えていそうだなあ・・・。orz

//!
{* @file
@brief XXXをYYYする関数群
このファイルはXXXです。
  @author 作者
  @date 作成日, 履歴など
  $Revision: $*/
}

コマンドはまだまだ有用なものがあるかもしれないので要調査でしょうが。
179デフォルトの名無しさん:2005/11/27(日) 13:27:12
>>178
やっと表示が出るような書き方がわかってきたので、コードエディタへの設定例も含めて書きますね。
・参考 IDE Tips(e-manual): ttp://www.kanazawa-net.ne.jp/~pmansato/IDE_Tips.htm

[Delphi6]\Bin\DELPHI32.DCIというファイルに追加してください。\todoのように書いてもいいようです。
専用コマンド(Doxygen):ttp://www.fides.dti.ne.jp/~oka-t/doxygen-manual/html/commands.html#cmdtodo

[Doxygen | Doxygen定型]
//! |test:
{* @file
 @brief XXXをYYYする関数群
  このファイルはXXXです。
 @author 作者
 @date 作成日, 履歴など
 @todo あれこれ
 $Revision: $
}

形式を揃えるのはお好きにどうぞ。これだと、JavaDoc形式になるのかな? 出すのに精一杯で・・・。

180デフォルトの名無しさん:2005/11/28(月) 23:24:04
>>179
@fileがついているということはユニットの説明用?

とりあえず@briefを使うのであれば、//!は不要なはず。
それと@briefの要約の行と次の詳細説明の間には空の改行が必要になる。
181デフォルトの名無しさん:2005/12/01(木) 21:40:18
>>180
> @fileがついているということはユニットの説明用?
レスが遅れてすみません。必ずしも、というわけではないのですが、
不要なら消せばいいと思って。まだまだ使い始めて間もないので・・・。

> とりあえず@briefを使うのであれば、//!は不要なはず。
> それと@briefの要約の行と次の詳細説明の間には空の改行が必要になる。
詳細コメントと簡略コメントと2つ記述しなければいけないように思っていたのですが、
@briefは//!と同様な扱いということでしょうね。空行が必須なんですね。補足有難うございます。

まだまだ嘘が一杯あるかと思いますが、あくまでも参考ということで。

182デフォルトの名無しさん:2005/12/29(木) 13:49:35
Delphi6のTMediaPlayerコンポーネントについて質問します。

MIDI演奏終了時のTMPModesがmpStoppedなのに対し、
MP3演奏終了時はmpPlayingが発火するのは
コンポーネント側の仕様でしょうか?
183デフォルトの名無しさん:2005/12/31(土) 17:22:17
プログラミングを覚えようと思うんですが
Delphiって大丈夫?
絶滅するなんて話も聞くんですが。。。

C&C++とDelphiで悩んでまつ
184デフォルトの名無しさん:2005/12/31(土) 18:05:03
メジャーな言語をひとつ覚えとけば
他に移るときは違いを覚えるだけで済む
だから最初に選ぶ言語はとっつきの良さで選べばいい

その三つなら全部フリー環境あるから触ってから選べば確実
185デフォルトの名無しさん:2005/12/31(土) 21:01:44
DelphiユーザーはC#に移行してまつよ。
Delphiの開発者がC#の開発に携わっていますし、Bolandの統合開発環境からして明らかにC#を意識している。
186デフォルトの名無しさん:2005/12/31(土) 23:54:34
中村先生も激賞!!

Delphiユーザも是非試すべし!

>># マイクロソフト(株)は15日、統合開発環境“Visual Studio”シリーズの最新版
>># となる「Visual Studio 2005」日本語正式版を“MSDN”会員向けにダウンロードでの
>># 提供を開始し、同時に、同製品の機能限定版である「Visual Studio 2005 Express
>># Edition」日本語正式版の、一般向けの無償公開を開始した。
>
>今日来てました(^^
>
>しかし、VS2003 も VSExpress もとても軽いですね。安定してるし。
187デフォルトの名無しさん:2006/02/03(金) 04:47:01
あげ
188デフォルトの名無しさん:2006/02/03(金) 05:09:25
>>184
Delphi(=Pascal)はメジャーな言語かな?
C&C++のほうがよいと思われるが。
189デフォルトの名無しさん:2006/02/03(金) 07:47:50
>>188
1位をメジャーというわけじゃないよ
190デフォルトの名無しさん:2006/02/03(金) 07:57:22
何かお題出してほしいのよね
191デフォルトの名無しさん:2006/02/03(金) 09:29:59
>>183

つ BDS2006(Del/C++/C丼)
192デフォルトの名無しさん:2006/02/03(金) 20:25:14
DelphiにGC搭載してくれたらいいのにと思うぞ
193デフォルトの名無しさん:2006/02/04(土) 01:20:09
まぁ、そういうことだな
194デフォルトの名無しさん:2006/02/04(土) 06:03:31
Delphi.NETでもBoehm GCでも
195デフォルトの名無しさん:2006/02/04(土) 08:42:47
>>192
搭載されてるよ
196デフォルトの名無しさん:2006/02/09(木) 13:53:58
GCなんかに頼る奴は2流
197デフォルトの名無しさん:2006/02/09(木) 15:12:22
今日から学んでいくのはいいんだが・・・

Borland、「Delphi」「C++Builder」等売却へ
http://pc8.2ch.net/test/read.cgi/tech/1139444563/l50
198デフォルトの名無しさん:2006/02/09(木) 16:44:08
>>197
また騙され……

うおー まじか
199デフォルトの名無しさん:2006/02/09(木) 22:21:50
Delphiがここまで広がっているので、完全消滅という事はないと思うが、
BDS2006を買った身としては、今後のアップデートがとても心配だ。

もしやこのままサポート打ち切り?やめてくれーまだバグバグなのに・・・
200デフォルトの名無しさん:2006/02/09(木) 22:31:34
これから始めたい人はこちらへどうぞ

Delphiで無料でプログラミングしてみるお
http://ex14.2ch.net/test/read.cgi/news4vip/1139327638/
201デフォルトの名無しさん:2006/02/09(木) 22:37:37
VIPなにげに続いてるな
202デフォルトの名無しさん:2006/02/10(金) 09:18:08


おまいら!今日からDelphi言語を見捨てるぞー!


にスレタイ変更すべし
203デフォルトの名無しさん:2006/02/10(金) 19:32:15
>>202
見捨てはしないな。趣味だから今のをそのまま使っていれば良いだけ
だから(と言うことでまだバージョン3)。
204デフォルトの名無しさん:2006/02/10(金) 20:31:38
うひょー、Delphi3 はバグバグだったんですぐ 3.1 が出たんだよな。
パッチ全部当てると 3.1 相当になるんだっけ?

3.1 は、安定バージョンとして有名だよね。
205203:2006/02/10(金) 20:53:36
>>204
パッチは当ててあるから3.1相当になっているのか。安定しているから
もしかしたらそうかも。これで何の問題もないからバージョンアップする
必要性を感じないんだよな。

次のバージョンからデータベースが外されたから、バージョンアップ
は止めたんだったっけかな。
206デフォルトの名無しさん:2006/02/12(日) 13:52:34
Delphi3 なら、まだ、Object Pascal だろ。

だから、「おまいら!今日からDelphi言語を見捨てるぞー! 」でもOK
207デフォルトの名無しさん:2006/03/02(木) 22:41:41
152 :  :2006/03/01(水) 06:16:00 HOST:ed251.opt2.point.ne.jp
削除対象アドレス:
 http://pc8.2ch.net/test/read.cgi/tech/1138370150/
 http://pc8.2ch.net/test/read.cgi/tech/1132756268/
 http://pc8.2ch.net/test/read.cgi/tech/1132013685/
削除理由・詳細・その他:
 6. 連続投稿・重複
208デフォルトの名無しさん:2006/03/03(金) 02:55:28
これだからデルピー厨は低脳って言われるんだよ
重複しすぎ
209デフォルトの名無しさん
今日は変数宣言とメッセージボックスの表示について勉強しました。
明日は例外処理を勉強することにします。