変数の命名についての悩み

このQ&Aのポイント
  • 変数の命名について悩んでいる人へ
  • 変数の命名で困っている方へのアドバイス
  • 変数名の付け方についての考え方
回答を見る
  • ベストアンサー

変数の命名

すみません...教えていただきたいのですが、 どんな言語でも良いのですが、(私は現在、vb2005とobjective-cを使用しています。) アクセッサ内などで同じものについての変数の命名にいつも悩んでしまいます。 皆さんは、外に見えない変数名には記号的な文字列を使っていますか? どんな感じで命名していますか? よろしくお願いします。 苦労してこんな感じでつけています。 Protected identifier As String Public Property nodeID() As String Get Return identifier End Get Set(ByVal id As String) identifier = id End Set End Property

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

基本的にはプロジェクト全体の命名規約に沿って変数名を 決めますが、外部に見せたくないセキュアな変数については ミスによる不用意なアクセスを防ぐため、なるべく長い変数名を つけるようにしています。

psychesine
質問者

お礼

ありがとうございます。

関連するQ&A

  • VB.NETで変数の宣言が上手くできません

    VB.NETで変数の宣言が上手くできません プロパティを使用し、変数の内容を一括保存しようと考えています その為に以下のようなコードを書いたのですが他のフォームから宣言されていないとなってしまいます 修正点を教えて頂けると嬉しいです Setting.vb Pubic class Settings Public dbdirectry As String Public flistpass As String Public Property flist () As String Get Return flistpass End Get Set (Byval Value As String) flistpass = Value End Set End Property もう一つflist () をdbdic ()に flistpassをdbdirectryにしたもの End Class この変数2つに他のフォームMainForm1.vbとDefaultSetting.vbなどからflistpass = Newflistpassなどと記述するとアクセス出来ず宣言していない扱いになります Publicでの宣言で大丈夫だと思ったのですが間違えているのでしょうか?

  • プロパティープロシージャーについて

    簡単な年齢計算プログラムです。 書籍のサンプルなのでうまく動いています。 クラスの変数がPrivate strnameだったりするので そこへアクセスするためにプロパティプロシージャーを使っているというところまでは 判ったような気がしますが、 getとsetの関係がわかりません。 まず、 1.何をGetしているのか 2.なぜGetが先に来るのか、 3.Setの前にGetのReturnで返してますが実態は何を返しているのでしょうか?普通に考えると逆のような気がします。 根本がわかっていないのだと思いますが、どなたかお教え願います。 呼ぶ方 Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim person As New Class1() person.Name = TextBox1.Text person.Birthday = DateTimePicker1.Value.Date MessageBox.Show(person.Name & "さんの年齢は" & person.GetAge()) End Sub クラスの方。 Public Class Class1 Private strname As String Private datBirthday As Date Public Property Name() As String Get Return strname End Get Set(ByVal pro_name As String) strname = pro_name End Set End Property Public Property Birthday() As Date Get Return datBirthday End Get Set(ByVal pro_birthday As Date) datBirthday = pro_birthday End Set End Property Public Function GetAge() As Integer Return Int(DateTime.Today.Subtract(Birthday).Days / 365.25) End Function End Class

  • コントロールにイベントを発生させるには?

    VB.NET2005のWEBユーザーコントロールで下記のようにプロパティやメソッドをつくることはできたのですが、コンボボックスの選択がへんこうされたとか、テキストボックスの内容が変更されたとかのイベントをとることができません。いったいどうすればできるのでしょうか? Public Property TEST() As String Get Return "" End Get Set(ByVal value As String) _Test=value End Set End Property

  • リストボックス内の配列を保存・呼び出し

    お世話になります。 VB2005ユーザーです。 リストボックスに格納した配列をファイルへ保存・呼び出しをするにはどうすればいいのでしょうか? リストボックスにはTextbox1,2,3の内容を格納し、オーバーライドによりリストボックスにはTextbox1が表示されるようにすることはできたのですが、 SaveFileDialogを使って配列をファイルに保存する方法がわかりません。 http://dobon.net/vb/dotnet/file/xmlserializer.html こちらなどを参照させていただいたりしたのですが、よく理解できませんでした。 リストボックスに格納するコードは下記のようなものです。 Public Structure MyStruct Private _a As String Private _b As String Private _c As String Public Property a() As String Get Return _a End Get Set(ByVal Value As String) _a = Value End Set End Property Public Property b() As String Get Return _b End Get Set(ByVal Value As String) _b = Value End Set End Property Public Property c() As String Get Return _c End Get Set(ByVal Value As String) _c = Value End Set End Property ' ToStringメソッドをオーバーライドする Public Overrides Function ToString() As String Return Me._a End Function End Structure Private Sub リストに追加_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Dim myStruct As New MyStruct myStruct.a = Textbox1.Text myStruct.b = Textbox2.Text myStruct.c = Textbox3.Text ' アイテム追加 ListBox1.Items.Add(myStruct) ListBox1.SelectedIndex = 0 End Sub 望む結果としては、リストボックスに格納した複数の配列をファイルに保存、呼び出し時には保存した内容を基にリストボックスに復元、という動作をして欲しいのです。 ご教示のほう、宜しくお願いいたします!!

  • VB.NETで出来てC#で出来ない???

    VB.NETでは出来るのにC#で同じようにするやり方がわからなくて困っています。 VSのバージョンは2008です。 やりたいことは 『param.Item("AAA") = "111"』 このように書けるクラスを作りたいのですが、 VBで出来てC#では出来ないのでしょうか? イメージとしてはプロパティにメソッドをくっつけたようなクラス? C#ではこのように書くとエラーになります。 どのようにしたらいいでしょうか? public string Item(string Key) {  set { _param[Key] = value; } } VB Dim param As New Param() param.Item("AAA") = "111" ----Paramクラス---- Imports System.Text Public Class Param Private _Hash As New Hashtable Default Public Property Item(ByVal Key As String) As String Get Return _Hash(Key) End Get Set(ByVal value As String) _Hash(Key) = value End Set End Property End Class ---------

  • ユーザーコントロールに選択プロパティを出す?

    VB.NET2005のWEBユーザーコントロールでプロパティを作り、それをコントロールを配置したときのプロパティウィンドウから選択させたいのですが、書籍やネット等を調べてもわかりませんでした。。。現状のソースは Public Property TEST() As String Get Return "" End Get Set(ByVal value As String) if value = 1 then me.close end if End Set End Property です。 これでプロパティウィンドウにTESTという項目はでますが、値を入力しないといけません。よくあるBackColorのプロパティのようにリストから選択できるようにしたいのですがどうしたらいいでしょうか? それともカスタムコントロールでないとできないのでしょうか?

  • 【ASP.NET】 独自で作成したクラスが認識されない

    お世話になります。ASP.NETに関する質問です。 Visual Studio 2008の開発環境において、 画面右側のソリューションエクスプローラより 右クリックして[新しい項目の追加]をクリックして 新規にクラスファイル(Class1.vb)の作成(言語: Visual Basic)を 行いました。 別のソースファイルより、上記で作成したクラスをインスタンス化 しようとしたところ、コンパイル時に下記エラーが出力されます。 ------------------------------------------------------ 型 'Class1' が定義されていません。 ------------------------------------------------------ クラスをインスタンス化しているソースの記述は以下の通りです。 (test.vb)--------------------------------------------- '変数宣言 Dim cl1 as Class1 = Session.Contents("クラス1") ------------------------------------------------------ Class1.vbの内容は以下の通りです。 (Class1.vb)------------------------------------------- Public Class Class1 Protected _LoginTime As String Public Property LoginTime() As String Get Return _LoginTime End Get Set(ByVal Value As String) _LoginTime = Value End Set End Property End Class ------------------------------------------------------ どなたか原因と対処方法についてご教授願えますでしょうか? 以上、よろしくお願いいたします。

  • プロパティのアクセス修飾子

    オート・インプリメント・プロパティで、 Property Prop2 As String = "Empty" と書いた場合の、Propertyのアクセス修飾子はPublicになるのでしょうか? あるVBの記述で、 Private CurrentValue As Integer Private Property Current As Integer Get Return CurrentValue End Get Set(ByVal value As Integer) CurrentValue = value    その他諸々の記述   End Set End Property というのがあるのですが、外部から、 Current += 1 などのようにアクセスしています。 この場合、Property Current As Integer のアクセス修飾子がPrivateになっているのですが、 Public とした場合と何が違うのでしょうか? ちなみに両方でやってみましたが、動作は変わりませんでした。 御経験のある方、御教示願えたらと思います。

  • ユーザーコントロールについて

    プロパティを作成し初期値の設定を行いたいのですが、 なかなか思うようにいきません。 Private mDblMaxValue As Double <System.ComponentModel.DefaultValue(99999999)> Public Property MaxValue() As Double Get Return mDblMaxValue End Get Set(ByVal Value As Double) mDblMaxValue = Value End Set End Property デザイン時に99999999を初期値として設定したいのですが…なぜか0になってしまいます。 助けてください。お願いいたします。

  • ボタンを押した時のコーディング方法について

    ネットや書籍で調べてみたものの要領を得なかったため質問させていただきます。 開発環境:visual web developer 画面デザイン:テキストボックス(ID:TextBox1)、ボタン(ID:DeleteButton)、ボタン(ID:UpdateButton)、ボタン(ID:CloseButton) 従来の記述方法:ボタン一つずつの単位で押された時の処理を書いていました。 Protected Sub DeleteButton_Click(ByVal sender As Object, ByVal e As EventArgs) Handles DeleteButton.Click TextBox1.Text = "削除しました" End Sub Protected Sub UpdateButton_Click(ByVal sender As Object, ByVal e As EventArgs) Handles UpdateButton.Click TextBox1.Text = "更新しました" End Sub Protected Sub CloseButton_Click(ByVal sender As Object, ByVal e As EventArgs) Handles CloseButton.Click TextBox1.Text = "終了しました" End Sub 今回やりたいこと: 押されたボタンのIDを何らかの方法で取得し、変数"ButtonID"に代入→Select Caseを使い、変数の値に応じて処理の振り分けを行う。 Sub Button_Click() Dim ButtonID As String = ???? Select Case ButtonID Case "DeleteButton" TextBox1.Text = "削除しました" Case "UpdateButton" TextBox1.Text = "更新しました" Case "ClseButton" TextBox1.Text = "終了しました" Case Else '処理は行わない End Select End Sub わからない点:押されたボタンのIDを取得する方法です。      もしわかる方がいましたらご助言いただけると助かります。 よろしくお願い致します。

専門家に質問してみよう