Thông tin tài liệu:
Dạng bài tập về Micosoft.NET- P11: Sau khi biết qua về .NET, câu hỏi bạn sẽ đặt ra là bạn có nên học lập trìnhtrên .NET hay không. Nói chung, về lập trình có nhiều tôn giáo nhưVC++/Java, VB6, Delphi ..v.v.. Bạn có thể chọn giữa C# và VB.NET.Đối với VB6 programmers, học lập trình VB.NET sẽ mất một thời gian,nhưng không khó. Nên nhớ rằng .NET không phải chỉ cho ta các ngônngữ lập trình, mà cả một hệ thống triển khai phần mềm chú trọng vàomục tiêu hơn là cách thức....
Nội dung trích xuất từ tài liệu:
Dạng bài tập về Micosoft.NET- P11Các bài tập Microsoft .NET 51Dưới đây là danh sách các collections ta sẽ dùng thường xuyên:Collection Chức năngArrayList Dynamic Array tự động lớn lên khi elements được bỏ vào.BitArray Array chứa trị số Boolean (True/False).HashTable Collection chứa những cặp key-value data, cho ta dùng làm tự điển. Chứa một FIFO (First In, First Out) structure. Element có thể là bất cứQueue Object loại nào.Stack Chứa một LIFO (Last In, First Out) structure.SortedList Chứa một danh sách những cặp key-value data được sắp theo thứ tự.Arithmetic Operators mớiVB.NET cho ta thêm cách viết Arithmetic Operator mới mà Cprogrammers rất thích từ lâu nay. X += 4 tương đương với X = X + 4 Mess &= text tương đương với Mess = Mess & textArithmetic Operation Trong VB6 Cách viết tắc mớiCộng X = X +5 X += 5Trừ X = X - 10 X -= 10Nhân X=X*7 X *= 7Chia X = X / 19 X /= 19Chia Integer X = X 13 X = 13Lũy thừa X=X^3 X ^= 3Ghép Strings X = X & more text X &= more textTa vẫn có thể tiếp tục dùng cách viết trong VB6, nhưng bây giờ có thêmmột cách viết gọn hơn.Các bài tập Microsoft .NET 52Short Circuit trong IF..THEN StatementTrong VB6, nếu ta viết:Dim myInt As IntegermyInt = 0If (myInt 0) And (17 myInt < 5 ) ThenThì sẽ bị Division by Zero error, vì mặc dầu phần (myInt 0) là False,nhưng VB6 vẫn tiếp tục tính phần(17 myInt < 5 ), và tạo ra error vì 17 chia cho một số 0.Trong vài ngôn ngữ lập trình khác, khi (myInt 0) là False thì nó khôngtính thêm nữa, tức là nó nói rằng khi một phần của AND là False thì nhấtđịnh kết quả của Logical Statement trong IF phải là False. Ðặc tính nàygọi là Short-Circuit (đi tắc).Nếu ta dùng code nói trên trong VB.NET, nó vẫn cho Division by Zeroerror giống như VB6. Tuy nhiên, nếu ta muốn dùng đặc tính Short-Circuitthì ta chỉ cần thay thế chữ And bằng AndAlso như sau:Dim myInt As IntegermyInt = 0If (myInt 0) AndAlso (17 myInt < 5 ) ThenShort-Circuit cũng áp dụng cho Logical OR khi ta thay thế chữ Or bằngOrElse để nói rằng khi phần đầu của OR là True thì nhất định kết quảcủa Logical Statement trong IF phải là True.Không còn Set statement cho ObjectTrong VB6 ta có thể viết:Set x = New ProductSet w = xTrong VB.NET sẽ được viết lại như sau:Các bài tập Microsoft .NET 53x = New Product()w=xBây giờ ta không cần phải nhớ dùng chữ Set khi nói đến Object.Thay đổi trong cách viết Property routinesDùng một Property duy nhấtNếu trong VB6 ta viết:Private mdescription as StringPublic Property Let Description (Value As String) mdescription = ValueEnd PropertyPublic Property Get Description() As String Description = mdescriptionEnd PropertyTrong VB.NET Let và Get đuợc hợp lại trong một Property routine duynhất và ta lại dùng chữ Set thay cho chữ Let (mặc dầu chữ Set không còndùng cho Object như mới nói ở trên) như sau:Private mdescription As StringPublic Property Description() As String Set (ByVal Value As String) mdescription = Value End Set Get Description = mdescription End GetEnd PropertyReadOnly và WriteOnly propertyBây giờ nếu Property là ReadOnly ta sẽ viết:Các bài tập Microsoft .NET 54Public ReadOnly Property Age() As Integer Get Age = 3 End GetEnd Propertyhay WriteOnly ta sẽ viết:Private _data As IntegerPublic WriteOnly Property Data() As Integer Set (ByVal Value As Integer) _data = Value End SetEnd PropertyDefault PropertiesTa dùng Default keyword để tạo ra Default Property như sau:Default Public Property Item(ByVal Index As Integer) As StringVB.NET bắt buộc ta phải ít nhất một parameter cho Default Property.Dùng Reserved Word làm Procedure NameTrong VB.NET ta có thể dùng Reserved Word làm Procedure Name bằngcách để nó giữa ngoặc vuông. Giả tỉ ta muốn dùng chữ Compare làm tênmột Function, ta sẽ viết như sau:Public Function [Compare] (ByVal v1 As Integer, ByVal v2 As Integer) As BooleanStructured Error HandlingTRY...CATCH...FINALLYVB.NET cho ta Structure TRY...CATCH...FINALLY...END TRY để xửlý error. Thí dụ như trong bài toán chia dưới đây, nếu bị Division by 0error thì ta sẽ cho kết quả bằng 0. Dù có error hay không, program vẫnhiển thị kết quả trong Output Window qua statementConsole.WriteLine( result) trong phần Finally:Các bài tập Microsoft .NET 55Try result = a ...