ASPとしてNET開発者が身につけなければならないプログラミング習慣
5235 ワード
私たちのプログラムをより親しみやすく、より生き生きと書くことは、私たちのプログラミングに大きなメリットです.私たちのプログラム学習にも仕事の半分の役割を果たすことができます.プログラミングの過程で守られた不文の基準は、私たちと他人の交流と自分の再学習に有益で無害です.結局、私たちが書いたプログラムは自分だけに見せるのではなく、一時的に興るのではなく、後で気にしないこともあります.良い符号化は、ソースコードの可読性を強くし、意味を明確にし、他の言語の約束と一致させ、できるだけ直感的にすることができる.
1.エラー(以外)の処理
プログラムの頑丈性の最も基本的な要求はプログラムの誤りの処理と捕捉で、ASP.NETでは,エラーの処理は他のプログラミング言語と同様のメカニズムがあり,Try...Catch...Finallyなどの方式を用いることができ,これはASPに比べて大きな進歩を遂げている.また,これらのエラー処理法を用いることで,プログラムの可読性とプログラムデバッグ速度を大幅に向上させることができ,これらの利点が結合した場合には,この点にさらに注意すべきである.
2.文字列の処理
Webデザインでは、文字列の処理がほとんど一般的です.ASPを使用する.NET以降、文字列の処理はASPよりも速く、また、ASP.NETでは、StringBuliderに特化した文字列処理クラスを追加し、このクラスを使用すると一般的な文字列操作を完了できますが、最も主要なのは、StringBuilderを使用すると文字列処理速度を大幅に向上させることができます.
ASP.NETで最も一般的なのは、「&」を使用して2つの文字列を接続することです.
以下は引用の内容:
(1)StringBuilderでのAppendの使用
Appendは他の言語のAppendと同様に、文字列の最後に他の文字を追加します.
以下は引用の内容:
")
Dim strOutput as String = sb.ToString()
lblCompany.Text = strOutput
以上のプログラムでは、Appendメソッドで1つのテーブルの出力が実現されていますが、StringBuliderは、まずToString()メソッドを使用してStringタイプに変換してから直接出力する必要があります.以上の例では、Appendの直接的な文字列をすべて見ています.実際には、この方法には、endの他のタイプの変数を直接Appendすることができます.例えば、Integerタイプの数値を直接Appedすることができます.もちろん、出力後に自動的に文字列に変換します.
以下は引用の内容:
他の方法も使用できます.一般的な方法を見てみましょう.
Insertメソッドは、指定された位置に他の文字を挿入できます.使用方法:Insert(挿入位置、挿入文字);
Removeメソッドでは、指定した位置から指定した文字数を削除できます.使用方法:Remove(実際の位置、文字数);
指定した文字を置換できるReplaceメソッド:replace(置換された文字列、置換された文字列)
3.データベースリンク接続とDataReaderのクローズ
ASPを使用してプログラミングするとき、データベース接続を使用した後、必ず接続を閉じ、NoThingに設定することを知っています.Asp.NETでは、まだこのように使用する必要がありますが、ASP.NETでは、ADOが使用する.NET、だから、いくつかの関連する処理の方面で、実際にはまだいくつかの細かい違いがあって、これらの違い、往々にして私たちが設計する時最も注意しなければならないのです.次に、例を挙げて、一般的なADOを見てみましょう.NETオペレーションでは、どのような問題に注意する必要がありますか.
(1)例として
以下は引用の内容:
(2)例2
以下、引用する内容として、
1.エラー(以外)の処理
プログラムの頑丈性の最も基本的な要求はプログラムの誤りの処理と捕捉で、ASP.NETでは,エラーの処理は他のプログラミング言語と同様のメカニズムがあり,Try...Catch...Finallyなどの方式を用いることができ,これはASPに比べて大きな進歩を遂げている.また,これらのエラー処理法を用いることで,プログラムの可読性とプログラムデバッグ速度を大幅に向上させることができ,これらの利点が結合した場合には,この点にさらに注意すべきである.
2.文字列の処理
Webデザインでは、文字列の処理がほとんど一般的です.ASPを使用する.NET以降、文字列の処理はASPよりも速く、また、ASP.NETでは、StringBuliderに特化した文字列処理クラスを追加し、このクラスを使用すると一般的な文字列操作を完了できますが、最も主要なのは、StringBuilderを使用すると文字列処理速度を大幅に向上させることができます.
ASP.NETで最も一般的なのは、「&」を使用して2つの文字列を接続することです.
以下は引用の内容:
Dim myOutputString As String = "My name is"
Dim myInputString As String = " Alex"
myOutputString = myOutputString & myInputString
Response.Write(myoutputString)
次に、StringBuilderの使用を見てみましょう.StringBuilderを使用する場合、Append、Replace、Insert、Removeなどの文字列に対して基本的な操作を行うことができます.具体的な例を見てみましょう.(1)StringBuilderでのAppendの使用
Appendは他の言語のAppendと同様に、文字列の最後に他の文字を追加します.
以下は引用の内容:
http://www.CodeHighlighter.com/
-->Dim sb as StringBuilder = New StringBuilder()
sb.append( "
") sb.Append( dt.Rows(i).Item(k, DataRowVersion.Current).toString()) sb.Append( "")
Dim strOutput as String = sb.ToString()
lblCompany.Text = strOutput
以上のプログラムでは、Appendメソッドで1つのテーブルの出力が実現されていますが、StringBuliderは、まずToString()メソッドを使用してStringタイプに変換してから直接出力する必要があります.以上の例では、Appendの直接的な文字列をすべて見ています.実際には、この方法には、endの他のタイプの変数を直接Appendすることができます.例えば、Integerタイプの数値を直接Appedすることができます.もちろん、出力後に自動的に文字列に変換します.
以下は引用の内容:
http://www.CodeHighlighter.com/
-->Sub Page_Load(Source As Object, E As EventArgs)
Dim sb As System.Text.StringBuilder
Dim varother As Integer
varother=9999
sb =new System.Text.StringBuilder()
sb.append(" Append :")
sb.append(varother)
Response.write(sb.toString())
End Sub
(2)文字列内の他の方法の使用他の方法も使用できます.一般的な方法を見てみましょう.
Insertメソッドは、指定された位置に他の文字を挿入できます.使用方法:Insert(挿入位置、挿入文字);
Removeメソッドでは、指定した位置から指定した文字数を削除できます.使用方法:Remove(実際の位置、文字数);
指定した文字を置換できるReplaceメソッド:replace(置換された文字列、置換された文字列)
3.データベースリンク接続とDataReaderのクローズ
ASPを使用してプログラミングするとき、データベース接続を使用した後、必ず接続を閉じ、NoThingに設定することを知っています.Asp.NETでは、まだこのように使用する必要がありますが、ASP.NETでは、ADOが使用する.NET、だから、いくつかの関連する処理の方面で、実際にはまだいくつかの細かい違いがあって、これらの違い、往々にして私たちが設計する時最も注意しなければならないのです.次に、例を挙げて、一般的なADOを見てみましょう.NETオペレーションでは、どのような問題に注意する必要がありますか.
(1)例として
以下は引用の内容:
Dim myConnection As SqlConnection =
new SqlConnection(ConfigurationSettings.AppSettings("DSN_pubs"))
Dim myCommand As SqlCommand =
new SqlCommand("Select pub_id, pub_name From publishers", myConnection)
Dim myDataReader As SqlDataReader
Try
myConnection.Open()
myDataReader = myCommand.ExecuteReader(CommandBehavior.CloseConnection)
DropDownList1.DataSource = myDataReader
DropDownList1.DataBind()
Catch myException As Exception
Response.Write("An error has occurred: " & myException.ToString())
Finally
If Not myDataReader Is Nothing Then
\\\' DataReader
myDataReader.Close()
End If
End Try
上記の例では、ここではDataReaderのみが閉じられ、Connectionは閉じられていないことに気づきました.どうしてですか.以上のExecuteReaderメソッドをよく見てみると、元々、ExecuteReaderパラメータが設定されていて、ExecuteReaderを実行した後、自動的にConnectionがオフになります.したがって、このように設定した後、手動で接続を閉じる必要はありません.(2)例2
以下、引用する内容として、
http://www.CodeHighlighter.com/
-->Dim myConnection As SqlConnection =
new SqlConnection(ConfigurationSettings.AppSettings("DSN_pubs"))
Dim myCommand As SqlCommand =
new SqlCommand("Select pub_id, pub_name From publishers", myConnection)
Try
myConnection.Open()
DropDownList1.DataSource = myCommand.ExecuteReader()
DropDownList1.DataBind()
Catch myException As Exception
Response.Write("An error has occurred: " & myException.ToString())
Finally
If Not myConnection Is Nothing AndAlso
((myConnection.State And ConnectionState.Open) = ConnectionState.Open) Then
myConnection.Close()
End If
End Try
上記の例では、DataReaderを閉じていないことがわかりました.どうしてですか.実は上のコードでは、DataReaderオブジェクトを直接生成していないので、もちろん閉じることはできません.注意が必要なのは、Connectionを閉じる前に、プログラムはまずConnectionが開いているかどうかを判断し、開いていなければ閉じる必要はありません.