最も有効な手を一つだけ、といわれるとむずかしいですね。状況に応じていろんな手を使い分けるのがプログラマの腕の見せ所だと思いますので。
あえていうと、普通にアプリケーションを書く(極端によい性能を要求されない)場合だと、10数行ぐらいの単位で処理をブロック化し、そのブロックが何をしているか、というコメントを書くようにするのは、よい方法だと思います。処理をブロック化できていないコードはあまりちゃんと考えてコーディングされていない場合が多く、経験上、メンテナンス性に問題があることが多いと感じています。
一つだけ、といわれてますが、もう一つだけ。
コメントが不要なぐらいわかりやすくコーディングする、というのもあります。変数名をちゃんと、使用意図がわかるようなものにするとか、複雑な処理を、ちゃんと検討して、複数の簡単な処理に分解するとかすれば、コメントは不要という意見が最近ありまして、私はこれに賛成です。どうしてもコメントなしでは説明できない処理とか、使用方法を誤ると危ない処理(そんなもんがあるのが問題でもありますが)のみコメントを入れるということです。
がんばってください。
コードを意味のあるブロックに分割して、その部分が何をするのかコメントを付けます。
コメントだけを読んで設計に間違いがないか2重チェックします。
ありがとうございます。
1つのウィンドウという条件にはちょっと当てはまらない気もしますが、なんといっても「オブジェクト指向」です。
オブジェクト指向をうまく取り入れると
とてもわかりやすいコードを書くことができます。
どうわかりやすいかというと、
なんてところがぱっと思いついた範囲です。
ありがとうございます。
最も有効な手を一つだけ、といわれるとむずかしいですね。状況に応じていろんな手を使い分けるのがプログラマの腕の見せ所だと思いますので。
あえていうと、普通にアプリケーションを書く(極端によい性能を要求されない)場合だと、10数行ぐらいの単位で処理をブロック化し、そのブロックが何をしているか、というコメントを書くようにするのは、よい方法だと思います。処理をブロック化できていないコードはあまりちゃんと考えてコーディングされていない場合が多く、経験上、メンテナンス性に問題があることが多いと感じています。
一つだけ、といわれてますが、もう一つだけ。
コメントが不要なぐらいわかりやすくコーディングする、というのもあります。変数名をちゃんと、使用意図がわかるようなものにするとか、複雑な処理を、ちゃんと検討して、複数の簡単な処理に分解するとかすれば、コメントは不要という意見が最近ありまして、私はこれに賛成です。どうしてもコメントなしでは説明できない処理とか、使用方法を誤ると危ない処理(そんなもんがあるのが問題でもありますが)のみコメントを入れるということです。
がんばってください。
ありがとうございます。コメント不要論は初めてです。自分でもよく調べてみますが、キーワードの性質上よい資料を見つけるのは大変そうです。よろしければ、おすすめの記述をご紹介いただければ幸いです。
>1つのウィンドウで表示できる、かつ複雑なコードを書く上で
と言う事であれば、
「インデント」はいかがでしょう?
(タブでずらすか、スペースを何文字分打ち込むかは個人やプロジェクトの好みに拠りますが)
サブルーチンの内側の処理は一段右側へ。
ループの内側の処理はさらに一段右側へ。
分岐処理のYes/Noに応じた処理はまたさらに一段右側へ。
そのように書いても、勝手に改行されないようなコーディングの仕方とEditorも考慮に入れています。
ありがとうございます。
VBやC#限定の方法ですが、
領域ディレクティブを使うと複雑なプログラムの可読性を良くすることができます。
例えばクラスを下記のようにすると、
Regionで囲まれた部分ごとに折りたたんだり開いたりすることができるので、
全体を把握したい場合はすべて折りたたんだ状態にしたり、
把握したい箇所を開いたりして、全体像が見やすくなります。
Regionの左に表示されている-+ボタンで個別に切替えたり、
右クリック->アウトラインで表示される各項目によって全体の切替ができます。
Public Class frmTest #Region "定数" Private Const C_MAX As Integer = 2 #End Region #Region "変数" Private type As Integer Private name As String #End Region #Region "イベント" Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click End Sub #End Region #Region "メソッド" Private Function GetType() As Integer End Function Private Function GetName() As String End Function #End Region End Class
@IT プロフェッショナルVB.NETプログラミング Chapter 16 プリプロセッサ
http://www.atmarkit.co.jp/fdotnet/vb6tonet2/vbnet2_16/vbnet2_16_...
Visual Basic 中学校 取りこぼした重要なトピック
http://homepage1.nifty.com/rucio/main/dotnet/nyumon/BEGIN10.htm
いつもありがとうございます。「領域ディレクティブ」、活用させていただきます。
ありがとうございます。コメント不要論は初めてです。自分でもよく調べてみますが、キーワードの性質上よい資料を見つけるのは大変そうです。よろしければ、おすすめの記述をご紹介いただければ幸いです。