<?xml version="1.0" encoding="UTF-8" ?> <rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>.NET</title><link>http://blogs.wankuma.com/yan/category/1638.aspx</link><description>.NET</description><managingEditor>yan</managingEditor><dc:language>ja-JP</dc:language><generator>.Text Version 0.95.2004.102</generator><item><dc:creator>yan</dc:creator><title>定数定義クラス その２</title><link>http://blogs.wankuma.com/yan/archive/2008/03/30/130507.aspx</link><pubDate>Sun, 30 Mar 2008 14:27:00 GMT</pubDate><guid>http://blogs.wankuma.com/yan/archive/2008/03/30/130507.aspx</guid><wfw:comment>http://blogs.wankuma.com/yan/comments/130507.aspx</wfw:comment><comments>http://blogs.wankuma.com/yan/archive/2008/03/30/130507.aspx#Feedback</comments><slash:comments>44</slash:comments><wfw:commentRss>http://blogs.wankuma.com/yan/comments/commentRss/130507.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/yan/services/trackbacks/130507.aspx</trackback:ping><description>前回に引き続き定数定義クラスについてです。 &lt;BR&gt;&lt;BR&gt;今回はT.Hiraseさんから&lt;S&gt;パクッた&lt;/S&gt;教えていただいたカスタム属性を使って名前付定数を定義してみました。 &lt;BR&gt;&lt;A href="http://blogs.wankuma.com/hirase/archive/2008/03/28/130154.aspx"&gt;T.hiraseさんの記事：[C#] 名前付き定数・・・？&lt;/A&gt;&lt;BR&gt;ありがとうございます(人-)謝謝&lt;BR&gt;&lt;BR&gt;前回に比べ、&lt;BR&gt;定数を定義する際はConstantクラスに列挙体を追加するだけなので楽になりました。&lt;BR&gt;しかし定数を使用する際が直感的に解りにくくなってしまいました。&lt;BR&gt;DayOfWeek.CreateListで定数リストデータが作成できたり DayOfWeek.GetName(DayOfWeekの列挙子)で定数の名前を取れるようにしたいですね。 &lt;BR&gt;&lt;BR&gt;定数を定義する際は列挙体を使用してカスタム属性で定数名を定義します。 
&lt;DIV style="BORDER-RIGHT: #ff8000 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #ff8000 1px solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; BORDER-LEFT: #ff8000 1px solid; WIDTH: 100%; PADDING-TOP: 5px; BORDER-BOTTOM: #ff8000 1px solid; BACKGROUND-COLOR: #ffffff"&gt;&lt;PRE&gt;Public Class Constant
  Public Enum DayOfWeek As Integer
        &amp;lt;("日曜日"), AliasName("日")&amp;gt; _
        Sun = 0
        &amp;lt;("月曜日"), AliasName("月")&amp;gt; _
        Mon = 1
        &amp;lt;("火曜日"), AliasName("火")&amp;gt; _
        Tue = 2
        &amp;lt;("水曜日"), AliasName("水")&amp;gt; _
        Wed = 3
        &amp;lt;("木曜日"), AliasName("木")&amp;gt; _
        Thu = 4
        &amp;lt;("金曜日"), AliasName("金")&amp;gt; _
        Fri = 5
        &amp;lt;("土曜日"), AliasName("土")&amp;gt; _
        Sat = 6
    End Enum
    
    Public Shared Function CreateList(ByVal enumType As Type) As List(Of ListItem)
        Dim items As New List(Of ListItem)
        For Each value As Object In [Enum].GetValues(enumType)
            Dim name As String = NameAttribute.GetName(CType(value, [Enum]))
            items.Add(New ListItem(value, name))
        Next
        Return items
    End Function

    Public Shared Function CreateAliasList(ByVal enumType As Type) As List(Of ListItem)
        Dim items As New List(Of ListItem)
        For Each value As Object In [Enum].GetValues(enumType)
            Dim aliasName As String = AliasNameAttribute.GetAliasName(CType(value, [Enum]))
            items.Add(New ListItem(value, aliasName))
        Next
        Return items
    End Function

    Public Shared Function GetName(ByVal enumType As Type, ByVal findValue As Object) As String
        Return NameAttribute.GetName(CType(findValue, [Enum]))
    End Function

    Public Shared Function GetAliasName(ByVal enumType As Type, ByVal findValue As Object) As String
        Return AliasNameAttribute.GetAliasName(CType(findValue, [Enum]))
    End Function
    
End Class
&lt;/PRE&gt;&lt;/DIV&gt;&lt;BR&gt;&lt;BR&gt;
&lt;DIV style="BORDER-RIGHT: #ff8000 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #ff8000 1px solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; BORDER-LEFT: #ff8000 1px solid; WIDTH: 100%; PADDING-TOP: 5px; BORDER-BOTTOM: #ff8000 1px solid; BACKGROUND-COLOR: #ffffff"&gt;&lt;PRE&gt;Imports System.Reflection
&amp;lt;AttributeUsage(AttributeTargets.All)&amp;gt; _
Friend Class NameAttribute
    Inherits Attribute

    Private _name As String

    Public Property Name() As String
        Get
            Return Me._name
        End Get
        Private Set(ByVal value As String)
            Me._name = value
        End Set
    End Property

    Public Sub New(ByVal name As String)
        Me.Name = name
    End Sub

    Public Shared Function GetName(ByVal enumValue As [Enum]) As String
        Dim enumType As Type = enumValue.[GetType]()
        Dim enumName As String = [Enum].GetName(enumType, enumValue)
        If enumName Is Nothing Then
            Return Nothing
        Else
            Return GetName(enumType.GetField(enumName))
        End If
    End Function

    Private Shared Function GetName(ByVal type As MemberInfo) As String
        Dim attributes As Attribute()
        attributes = TryCast(type.GetCustomAttributes(GetType(NameAttribute), True), Attribute())
        If attributes Is Nothing OrElse attributes.Length = 0 Then
            Return Nothing
        End If
        Dim nameAttribute As NameAttribute = TryCast(attributes(0), NameAttribute)
        Return nameAttribute.Name
    End Function

End Class
&lt;/PRE&gt;&lt;/DIV&gt;&lt;BR&gt;&lt;BR&gt;
&lt;DIV style="BORDER-RIGHT: #ff8000 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #ff8000 1px solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; BORDER-LEFT: #ff8000 1px solid; WIDTH: 100%; PADDING-TOP: 5px; BORDER-BOTTOM: #ff8000 1px solid; BACKGROUND-COLOR: #ffffff"&gt;&lt;PRE&gt;Imports System.Reflection
&amp;lt;AttributeUsage(AttributeTargets.All)&amp;gt; _
Friend Class AliasNameAttribute
    Inherits Attribute

    Private _aliasName As String

    Public Property AliasName() As String
        Get
            Return Me._aliasName
        End Get
        Private Set(ByVal value As String)
            Me._aliasName = value
        End Set
    End Property

    Public Sub New(ByVal aliasName As String)
        Me.AliasName = aliasName
    End Sub

    Public Shared Function GetAliasName(ByVal enumValue As [Enum]) As String
        Dim enumType As Type = enumValue.GetType
        Dim enumName As String = [Enum].GetName(enumType, enumValue)
        If enumName Is Nothing Then
            Return Nothing
        Else
            Return GetAliasName(enumType.GetField(enumName))
        End If
    End Function

    Private Shared Function GetAliasName(ByVal type As MemberInfo) As String
        Dim attributes As Attribute()
        attributes = TryCast(type.GetCustomAttributes(GetType(AliasNameAttribute), True), Attribute())
        If attributes Is Nothing OrElse attributes.Length = 0 Then
            Return Nothing
        End If
        Dim nameAttribute As AliasNameAttribute = TryCast(attributes(0), AliasNameAttribute)
        Return nameAttribute.AliasName
    End Function

End Class
&lt;/PRE&gt;&lt;/DIV&gt;&lt;BR&gt;&lt;BR&gt;使うときはConstantクラスのCreateListメソッドのパラメータに列挙体のTypeを指定します。 
&lt;DIV style="BORDER-RIGHT: #ff8000 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #ff8000 1px solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; BORDER-LEFT: #ff8000 1px solid; WIDTH: 100%; PADDING-TOP: 5px; BORDER-BOTTOM: #ff8000 1px solid; BACKGROUND-COLOR: #ffffff"&gt;&lt;PRE&gt;With Me.cboDayOfWeekLong
    .ValueMember = "Key"
    .DisplayMember = "Value"
    .BeginUpdate()
    .DataSource = Constant.CreateList(GetType(Constant.DayOfWeek))
    .EndUpdate()
    .SelectedValue = Constant.DayOfWeek.Sat
End With

With Me.cboDayOfWeekShort
    .ValueMember = "Key"
    .DisplayMember = "Value"
    .BeginUpdate()
    .DataSource = Constant.CreateAliasList(GetType(Constant.DayOfWeek))
    .EndUpdate()
    .SelectedValue = CType(4, Constant.DayOfWeek)
End With
        
Dim findValue As Constant.DayOfWeek = CType(2, Constant.DayOfWeek)
Dim name As String = Constant.GetName(GetType(Constant.DayOfWeek), findValue)
Dim aliasName As String = Constant.GetAliasName(GetType(Constant.DayOfWeek), findValue)
&lt;/PRE&gt;&lt;/DIV&gt;&lt;/A&gt;&lt;img src ="http://blogs.wankuma.com/yan/aggbug/130507.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>yan</dc:creator><title>定数定義用クラス</title><link>http://blogs.wankuma.com/yan/archive/2008/03/27/129973.aspx</link><pubDate>Thu, 27 Mar 2008 11:07:00 GMT</pubDate><guid>http://blogs.wankuma.com/yan/archive/2008/03/27/129973.aspx</guid><wfw:comment>http://blogs.wankuma.com/yan/comments/129973.aspx</wfw:comment><comments>http://blogs.wankuma.com/yan/archive/2008/03/27/129973.aspx#Feedback</comments><slash:comments>36</slash:comments><wfw:commentRss>http://blogs.wankuma.com/yan/comments/commentRss/129973.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/yan/services/trackbacks/129973.aspx</trackback:ping><description>以下の要件を満たす定数定義用クラスについて考えています。 &lt;BR&gt;&lt;BR&gt;定数はキーと値のペア。 &lt;BR&gt;コンボボックス等のデータに設定できるよう、定数のキーと値を格納したデータを返す。 &lt;BR&gt;定数キーから定数値を返す。 &lt;BR&gt;インスタンスを作成せずに使える。 &lt;BR&gt;&lt;BR&gt;例えば「曜日」の定数を作成する場合、定数のキーと値は以下のようになります。 &lt;BR&gt;1 日曜日 &lt;BR&gt;2 月曜日 &lt;BR&gt;3 火曜日 &lt;BR&gt;4 水曜日 &lt;BR&gt;5 木曜日 &lt;BR&gt;6 金曜日 &lt;BR&gt;7 土曜日 &lt;BR&gt;このデータをコンボボックス等のデータソースとして扱える形で返せるようにし、 &lt;BR&gt;キー「5」を指定したとき、その値である「木曜日」を返せるようにする。 &lt;BR&gt;&lt;BR&gt;データベースで管理するのがベストかなと思うのですが、あえてコードで書いてみました。 &lt;BR&gt;
&lt;DIV style="BORDER-RIGHT: #ff8000 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #ff8000 1px solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; BORDER-LEFT: #ff8000 1px solid; WIDTH: 100%; PADDING-TOP: 5px; BORDER-BOTTOM: #ff8000 1px solid; BACKGROUND-COLOR: #ffffff"&gt;&lt;PRE&gt;Public Class Constant
        '曜日定数リスト
        Public Class DayOfWeek
            '曜日種類
            Public Enum Type
                [Short] = 0
                [Long] = 1
            End Enum
            '定数値
            Public Enum Key
                Sun = 0
                Mon = 1
                Tue = 2
                Wed = 3
                Thu = 4
                Fri = 5
                Sat = 6
            End Enum
            '初期値
            Public Const InitKey As Integer = Key.Sun
            '定数リスト(短いタイプ)
            Private Shared _ListShort As List
            '定数リスト（長いタイプ）
            Private Shared _ListLong As List
            '定数リストを返します。
            Public Shared ReadOnly Property List(ByVal type As Type) As List
                Get
                    Select Case type
                        Case Youbi.Type.Short
                            Return _ListShort.Clone
                        Case Youbi.Type.Long
                            Return _ListLong.Clone
                        Case Else
                            Return Nothing
                    End Select
                End Get
            End Property
            '静的コンストラクタ
            Shared Sub New()
                '短いタイプ
                _ListShort = New List
                _ListShort.AddItem(Key.Sun, "日")
                _ListShort.AddItem(Key.Mon, "月")
                _ListShort.AddItem(Key.Tue, "火")
                _ListShort.AddItem(Key.Wed, "水")
                _ListShort.AddItem(Key.Thu, "木")
                _ListShort.AddItem(Key.Fri, "金")
                _ListShort.AddItem(Key.Sat, "土")
                '長いタイプ
                _ListLong = New List
                _ListLong.AddItem(Key.Sun, "日曜日")
                _ListLong.AddItem(Key.Mon, "月曜日")
                _ListLong.AddItem(Key.Tue, "火曜日")
                _ListLong.AddItem(Key.Wed, "水曜日")
                _ListLong.AddItem(Key.Thu, "木曜日")
                _ListLong.AddItem(Key.Fri, "金曜日")
                _ListLong.AddItem(Key.Sat, "土曜日")
            End Sub
            'コンストラクタ
            Private Sub New()
            End Sub
        End Class
End Class
&lt;/PRE&gt;&lt;/DIV&gt;&lt;BR&gt;
&lt;DIV style="BORDER-RIGHT: #ff8000 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #ff8000 1px solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; BORDER-LEFT: #ff8000 1px solid; WIDTH: 100%; PADDING-TOP: 5px; BORDER-BOTTOM: #ff8000 1px solid; BACKGROUND-COLOR: #ffffff"&gt;&lt;PRE&gt;       
Imports IntStrItem = _
      System.Collections.Generic.KeyValuePair(Of Integer, String)

'リストクラス
Public Class List
    Inherits List(Of IntStrItem)

    'リストにアイテムを追加します。
    Public Sub AddItem(ByVal key As Integer, ByVal value As String)
        Me.Add(New IntStrItem(key, value))
    End Sub

    'アイテムのキーに該当するアイテムの値を取得します。
    Public Function FindByKey(ByVal key As Integer) As String
        Dim ret As String = String.Empty
        For Each item As IntStrItem In Me
            If item.Key = key Then
                ret = item.Value
            End If
        Next
        Return ret
    End Function

    'アイテムの値に該当するアイテムのキーを取得します。
    Public Function FindByValue(ByVal value As String) As Nullable(Of Integer)
        Dim ret As Nullable(Of Integer)
        For Each item As IntStrItem In Me
            If item.Value = value Then
                ret = item.Key
            End If
        Next
        Return ret
    End Function

    'コピーを作成します。
    Public Function Clone() As List
        Dim cloneList As New List
        For Each item As IntStrItem In Me
            cloneList.AddItem(item.Key, item.Value)
        Next
        Return cloneList
    End Function
End Class
&lt;/PRE&gt;&lt;/DIV&gt;&lt;BR&gt;
&lt;DIV style="BORDER-RIGHT: #ff8000 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #ff8000 1px solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; BORDER-LEFT: #ff8000 1px solid; WIDTH: 100%; PADDING-TOP: 5px; BORDER-BOTTOM: #ff8000 1px solid; BACKGROUND-COLOR: #ffffff"&gt;&lt;PRE&gt; 
ComboBox1.ValueMember = "Key"
ComboBox1.DisplayMember = "Value"
ComboBox1.BeginUpdate()
ComboBox1.DataSource = Constant.DayOfWeek.List(Constant.DayOfWeek.Type.Short)
ComboBox1.EndUpdate()
ComboBox1.SelectedValue = Constant.DayOfWeek.InitKey

TextBox1.Text= Constant.DayOfWeek.List.FindByKey(Constant.DayOfWeek.Key.Thu)
&lt;/PRE&gt;&lt;/DIV&gt;&lt;img src ="http://blogs.wankuma.com/yan/aggbug/129973.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>yan</dc:creator><title>開発規約～例外処理～</title><link>http://blogs.wankuma.com/yan/archive/2008/02/15/123289.aspx</link><pubDate>Fri, 15 Feb 2008 17:35:00 GMT</pubDate><guid>http://blogs.wankuma.com/yan/archive/2008/02/15/123289.aspx</guid><wfw:comment>http://blogs.wankuma.com/yan/comments/123289.aspx</wfw:comment><comments>http://blogs.wankuma.com/yan/archive/2008/02/15/123289.aspx#Feedback</comments><slash:comments>4</slash:comments><wfw:commentRss>http://blogs.wankuma.com/yan/comments/commentRss/123289.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/yan/services/trackbacks/123289.aspx</trackback:ping><description>&lt;P&gt;再度 &lt;A href="http://msdn2.microsoft.com/ja-jp/library/ms229014(VS.80).aspx"&gt;例外のデザインのガイドライン&lt;/A&gt;を読み直してみました。&lt;/P&gt;
&lt;P&gt;また、随分古い投稿ですが@ITに11Pに渡って例外に関する討論がされてまして&lt;BR&gt;今まで業務エラーとシステムエラーの境界がモヤモヤとしていたのですが、ココを読んでスッキリしました。&lt;BR&gt;&lt;A href="http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?mode=viewtopic&amp;amp;topic=21003&amp;amp;forum=7&amp;amp;start=64"&gt;@IT:C# 戻り値の型を動的に変更することは可能ですか？&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;今回は説得できそうです！！&lt;/P&gt;&lt;img src ="http://blogs.wankuma.com/yan/aggbug/123289.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>yan</dc:creator><title>開発規約　～例外処理～</title><link>http://blogs.wankuma.com/yan/archive/2008/02/14/123160.aspx</link><pubDate>Thu, 14 Feb 2008 12:49:00 GMT</pubDate><guid>http://blogs.wankuma.com/yan/archive/2008/02/14/123160.aspx</guid><wfw:comment>http://blogs.wankuma.com/yan/comments/123160.aspx</wfw:comment><comments>http://blogs.wankuma.com/yan/archive/2008/02/14/123160.aspx#Feedback</comments><slash:comments>45</slash:comments><wfw:commentRss>http://blogs.wankuma.com/yan/comments/commentRss/123160.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/yan/services/trackbacks/123160.aspx</trackback:ping><description>&lt;P&gt;現在、次の開発の開発規約を作成しています。&lt;BR&gt;くどいようですが、規約の8割は自由に作成できますが、私に最終決定権はありません。 &lt;/P&gt;
&lt;P&gt;今回は例外処理についてです。&lt;/P&gt;●俺様ルール例外処理● &lt;BR&gt;&lt;PRE&gt;Public Class Form1
    Private Sub Button1_Click _
               (ByVal sender As System.Object, _ 
                ByVal e As System.EventArgs) _
                Handles Button1.Click
        Try
            Call A()
        Catch ex As Exception
            MessageBox.Show(ex.ToString)
        End Try
    End Sub
    Private Sub A()
        Try
            Call B()
        Catch ex As Exception
            Throw
        End Try
    End Sub
    Private Sub B()
        Try
            Call C()
        Catch ex As Exception
            Throw
        End Try
    End Sub
    Private Sub C()
        Try
            'ここで例外が発生するとします。
        Catch ex As Exception
            Throw
        End Try
    End Sub
End Class
&lt;/PRE&gt;
&lt;P&gt;下位メソッドでThrowするだけのTry～Catchになにか意味があるのでしょうか・・・&lt;BR&gt;&lt;/P&gt;
&lt;P&gt;私案では、&lt;BR&gt;例外に対して何らかの処理する場合のみCatchし、 
&lt;OL&gt;
&lt;LI&gt;その他の例外はApplication.Exceptionで例外内容の表示＆ログ出力する 
&lt;LI&gt;最上位メソッドでのみ例外をCatchし、捕捉できなかった例外のみApplication.Exceptionで処理する&lt;/LI&gt;&lt;/OL&gt;どちらがいいのか悩んでいます。 
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;案1はTry～Catchを書く箇所が減りコードもスッキリします。&lt;BR&gt;案2は最上位メソッドのクラス名やメソッド名などをログに出力できます。&lt;BR&gt;けれど最上位メソッドのクラス名やメソッド名などはStackTraceを読めば解ることなので、コードがスッキリするほうがいいのかなと思っています。 
&lt;P&gt;すべての例外をApplication.Exceptionで処理してもいいのか自信がありませんが。 &lt;/P&gt;&lt;img src ="http://blogs.wankuma.com/yan/aggbug/123160.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>yan</dc:creator><title>ハンガリアン記法が倒せない。</title><link>http://blogs.wankuma.com/yan/archive/2008/02/12/122777.aspx</link><pubDate>Tue, 12 Feb 2008 10:38:00 GMT</pubDate><guid>http://blogs.wankuma.com/yan/archive/2008/02/12/122777.aspx</guid><wfw:comment>http://blogs.wankuma.com/yan/comments/122777.aspx</wfw:comment><comments>http://blogs.wankuma.com/yan/archive/2008/02/12/122777.aspx#Feedback</comments><slash:comments>67</slash:comments><wfw:commentRss>http://blogs.wankuma.com/yan/comments/commentRss/122777.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/yan/services/trackbacks/122777.aspx</trackback:ping><description>&lt;P&gt;現在、次の開発の開発規約を作成しています。&lt;BR&gt;開発規約の8割は自由に作成できます。&lt;BR&gt;けれど私に最終決定権はありません。&lt;/P&gt;
&lt;P&gt;例えば、&lt;BR&gt;「使用する変数はメソッドの先頭で定義する」とあった規約を&lt;BR&gt;「変数は最小のスコープとなるよう使用する直前で定義する」と変えました。&lt;BR&gt;今では一般的だと思われるのですが、最終決定者がOKをなかなか出さず何度も闘いました。&lt;BR&gt;幸いにもこの件に関しては勝利を掴むことが出来ました。&lt;/P&gt;
&lt;P&gt;けれど、何度闘っても「ハンガリアン記法」が倒せません。&lt;BR&gt;日を変え、作戦を変え何度闘ってもダメです。惨敗です。&lt;/P&gt;
&lt;P&gt;「すべてのクラスのプレフィックスを定義する事は出来ませんよ。」&lt;BR&gt;→「よく使うクラスだけでいいよ。後はその都度聞いてくれたらいい。」&lt;/P&gt;
&lt;P&gt;「IDEで型はわかるじゃないですか。ハンガリアン記法って何のメリットもありませんよ！」&lt;BR&gt;→「テキストエディタで見ることもあるから。」&lt;/P&gt;
&lt;P&gt;「あなたには解りやすいかもしれませんが、他の人がそうとは限らない。」&lt;BR&gt;→プログラム暦が浅い人に「プレフィックス付いてる方が解りやすいよね？」と同意を求め「はぁ」と返事されたことで&lt;BR&gt;「ほら他にも解りやすい人がいるでしょ」と来る。&lt;/P&gt;
&lt;P&gt;「今時ハンガリアン記法って恥ずかしいですよ～（pgr」&lt;BR&gt;→「他の開発規約は君の意見を聞き入れて自由に作らせてあげている。&lt;BR&gt;俺が解りやすいし、俺が付けろと言ってるんだから付けろっ！！」と来た。&lt;/P&gt;
&lt;P&gt;最終兵器「俺様がルール」を言われたらもう従うしかないです。&lt;BR&gt;でも「俺が理解しやすい」＝「他の人も理解しやすい」と思っているところが気に入りません。&lt;/P&gt;
&lt;P&gt;一緒に開発する事になる方に申し訳ないです。ゴメンナサイ。&lt;/P&gt;&lt;img src ="http://blogs.wankuma.com/yan/aggbug/122777.aspx" width = "1" height = "1" /&gt;</description></item></channel></rss>