- PR -

C#でのプロシージャが長い時の改行とアウトライン開閉

1
投稿者投稿内容
R・田中一郎
ぬし
会議室デビュー日: 2005/11/03
投稿数: 979
投稿日時: 2006-02-20 10:36
皆さんはどのように書いていますか?

コード:
Private Function セル次回印刷開始位置を更新( _
    位置 今回印刷できる最終セル位置 _
) as Boolean
End Function



VBでは、こう書いていました。
VBは、byval 書いたり function を記述したりと殆ど1行で書けませんでした。
C# では、

コード:
C#
private bool セル次回印刷開始位置を更新(
    位置 今回印刷できる最終セル位置
) {
}



このように書いてみたのですが、読みにくく感じました。
また、アウトラインの開閉が正常に動きません。
複数の引数を持つものだと確実に1行での記述は困難ですし、
引数名や型も長くなってきています。

皆さんは、どのように書いていますか?
また、どのように書くのが読みやすいと思いますか?
かるあ
ぬし
会議室デビュー日: 2003/11/16
投稿数: 1190
お住まい・勤務地: センガワ→ムサシノ
投稿日時: 2006-02-20 10:59
引数が一つならそのまま書きますね
コード:
 

C#
private bool セル次回印刷開始位置を更新(位置 今回印刷できる最終セル位置) {
}



2つ以上あるなら
コード:
 

C#
private bool 範囲を指定した印刷(位置 印刷の開始位置,
位置 印刷の終了位置) {
}



横にある程度伸びるのは問題ないと思います。
画面の大きさに縛られて醜くなるのはいやですから

# うわ、行末に"_"つけてたので修正

[ メッセージ編集済み 編集者: かるあ 編集日時 2006-02-20 11:45 ]
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-02-20 11:20
P/Invoke でない限りは、1 行ですね。
そんな長い引数にならないようにしてますし。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
R・田中一郎
ぬし
会議室デビュー日: 2005/11/03
投稿数: 979
投稿日時: 2006-02-20 16:15
意外なことに基本的に長くても改行しないのですね。
いろいろなソースコードを探してみると、あまり長いものが無かったので参考になら
なかったのですが、それでも改行していないサンプルがいくつかありました。
了解です。ありがとうございました!
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-02-20 16:33
引用:

R・田中一郎さんの書き込み (2006-02-20 16:15) より:

了解です。ありがとうございました!


以前、Jitta さんも仰っていたのですが、私たちがそうしているというだけで、
絶対に、そのとおりにすべきだというものではありません。

こういったもの (R・田中一郎さんの質問に多いコーディング標準系) には正解というものはありません。
もし業務でやられているのであれば、郷に従うのが 1 番良いとは思いますけどね。

趣味の範囲であれば、我々の意見は参考程度において納得された上で、
自分のコーディング スタイルとマージして使用すれば良いと思います。

そういった意味でも、(スレッドを閉じないで) もうちょっと他の方々の意見も聞いてみたいですね。
もしかしたら、変わった見方ができるようになるかもしれません。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
R・田中一郎
ぬし
会議室デビュー日: 2005/11/03
投稿数: 979
投稿日時: 2006-02-20 18:35
引用:

じゃんぬねっとさんの書き込み (2006-02-20 16:33) より:

もし業務でやられているのであれば、郷に従うのが 1 番良いとは思いますけどね。



業務ですので、指定があればそれに従うしか無いですよね。
でも、指定は特にされてないので、自分の納得する方法を常に悩んでいる訳です。

引用:

じゃんぬねっとさんの書き込み (2006-02-20 16:33) より:

そういった意味でも、(スレッドを閉じないで) もうちょっと他の方々の意見も聞いてみたいですね。
もしかしたら、変わった見方ができるようになるかもしれません。



そうですね。他の方々のご意見もお待ちします _(_*_)_
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2006-02-20 20:25
私は、やるとしたらこうかなぁ?
コード:
private bool セル次回印刷開始位置を更新(
		位置 今回印刷できる最終セル位置) {
}

private bool 範囲を指定した印刷(
		位置  印刷の開始位置
		, 位置  印刷の終了位置) {
}


インデントは2つ、複数行の場合はカンマを次の行に持ってきます。


> また、アウトラインの開閉が正常に動きません。
ここ、気になりました。どうなります?(って、試せよ>俺)
 ああ、ブレースの位置で折りたたまれるので、宣言が残ってしまうんですね。
 まぁ、仕方ないんじゃないでしょうか。属性を付けたときも、属性はたたまれませんので。。。

〆 written by Jitta@わんくま同盟 on 2006/02/20
R・田中一郎
ぬし
会議室デビュー日: 2005/11/03
投稿数: 979
投稿日時: 2006-02-22 17:39
引用:

Jittaさんの書き込み (2006-02-20 20:25) より:

> また、アウトラインの開閉が正常に動きません。
ここ、気になりました。どうなります?(って、試せよ>俺)
 ああ、ブレースの位置で折りたたまれるので、宣言が残ってしまうんですね。
 まぁ、仕方ないんじゃないでしょうか。属性を付けたときも、属性はたたまれませんので。。。



そうですね。
確かに、こう動くのが正しい気がしてきました。
vb の動作と微妙に異なるので、何やら混乱してたようです。
それに、正常に動かないという表現も適切じゃなかったですね。
すみませんでした。
1

スキルアップ/キャリアアップ(JOB@IT)