コーディング規約 トップページVisual Basic コーディング規約 目次 

1.ソースファイルの構成

 ここでは,1つのソースファイルをどの様に構成するかを述べる。

1.1 ソースファイルの記述例

 ソースファイルの記述例を以下に示す。
 ソースファイルの履歴のコメント,プロシージャの頭書きなどは以下のように記述する。

■ 宣言部の記述例

' @(h) Select.vb ver 1.1 ( '07.09.15 今井 浩司 )
' @(h) Select.vb ver 1.0 ( '07.09.13 今井 浩司 )

' @(s)
'  機能選択プロシージャ
'  本プロシージャは使用する機能を選択するものである。

Option Explicit

Imports Extensibility
Imports EnvDTE

Private Structure SYMBOLINFO ' 宣言文字構造
   Dim SyDataType As String     ' As宣言文字列
   Dim SyDataTypeDef As String   ' 型宣言文字
End Structure

Public Enum WeekDay ' 一週間
   Sun = 1  ' 日曜日
   Mon = 2  ' 月曜日
   Tue = 3  ' 火曜日
   Wed = 4  ' 水曜日
   Thu = 5  ' 木曜日
   Fri = 6  ' 金曜日
   Sat = 7  ' 土曜日
End Enum

Public Interface IInfoBlock ' インフォブロックのインターフェース
   Property Selected() As Boolean ' 選択情報プロパティ
   Sub UpdateDataSet()       ' アップデートデータ
End Interface

Declare Function ExitWindow Lib "USER" () As Integer ' Windowsの終了

Public Delegate Sub FractalDoneCallback() ' フラクタル終了処理

Public Event ClickFileMenu(ByVal sender As Object, _
                 ByVal Index As Integer) ' クリックメニュー

Public gSymbolData As SYMBOLINFO  ' 宣言文字データ

Public Const APPNAME = "HotDoc"   ' アプリケーション名
Public Const LOGDIR = "C:\LOG"    ' ログ格納ディレクトリ

Public gSelectAppNo As Integer      ' 選択アプリケーション番号
Public gTMPDIR As String         ' テンポラリディレクトリ名

Private Const FRMTITLE = "Select"   ' フォームタイトル
Private Const FRMNO = 1         ' フォーム番号

Private mSelectMouduleNo As Integer  ' 選択モジュール番号
Private mInFileName As String       ' 入力ファイル名

Namespace OpenNewDatas ' 新規データオープン処理
  Public Class AddInNewMenu ' 新規メニュークラス
    Implements Extensibility.IDTExtensibility2 ' 拡張機能

    Const MEMBERMAX = 256 ' メンバーの最大数
    Const ARGSMAX = 256 ' 引き数の最大
      ・・・
  End Class
End Namespace

■ モジュール部の記述例

'
' 機能   : メッセージ文字列の取得
'
' 返り値  : メッセージ文字列
'
' 引き数  : ARG1 - ファイル番号
'        ARG2 - メッセージインデックス番号
'
' 機能説明 : メッセージ定義ファイルより指定されたメッセージ
'        を取得する
'
' 備考   : 返り値の文字列の最大文字数は80文字
'
Private Function GetMsg(FileNum As Integer, Index As Index) As String

'' メッセージファイルのオープンをする
OpenMsgFile(FileNum)

If (FileNum < 0) Then
    ''' オープンエラーの場合,エラー処理をする
    ・・・
End If

' デバッグ用の処理
ZZDebug_Print()

'' メッセージファイルの読み込みをする
GetMsg = ReadMsgFile(FileNum, Index)

'' メッセージファイルのクローズをする
CloseMsgFile(FileNum)

End Function