Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 11 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
11
Dung lượng
123,5 KB
Nội dung
Tổng kết( Tóm lược ) về VB.NET
Cập nhật ngày 08/07/2006 ( xin đọc từ đầu )
I. Đặc trưng .NET
1. Ưu điểm :
- Phát triển ứng dụng nhanh, dễ dàng bảo trì & phát triển
- Chạy ổn định ít bị BUG, CRASH
- Thích hợp cho phát triển wed và các ứng dụng chủ khách nhiều tầng cũng như CSDL
- Dễ dang cài đặt không còn bị DLL Hell
2.Nhược điểm
- Đòi cấu hình mạnh ( CPU : > 1000MHZ, RAM >= 256 MB )
- Dễ bị dịch ngược và crack vì tất cả đều là mã mở do phải dich sang ngôn ngữ trung gian IL
Công cụ:
- Dịch ra IL
C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin\ILDASM.exe
- Dịch từ IL về c# & VB.NET
http://www.saurik.com/net/exemplar/
http://www.aisto.com/roeder/dotnet
- Dịch trực tiếp ra mã máy native code :
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\ngen.exe
3. Các thuật ngữ mới trong .NET
IL : Intermediate Language : Ngôn ngữ trung gian tựa mã máy được sinh ra trong quá trìng chạy
.NET EXE FILE
Assembly : Được hiểu như là một thành phần COMPONENT trên VB, .NET được cấu thành từ gần 5000
ASSEMBLY
MetaData : Được hiểu như là các mẫu dữ liệu chứa thông tin về các dữ liệu của chương trình ví dụ như
version, format, type… ( DATA about DATA ), giao diện địng nghĩa dữ liệu .
CRL : Common Language Runtime : Là hệ thống máy ảo tựa JAVA để dịch source ra IL Điểm mạnh của
.NET là hỗ trợ đa ngôn ngữ do dùng một giao diện chung cho một kiểu dữ liệu như : SYSTEM.OBJECT &
SYSTEM.INT32, ngoài ra CLR còn dùng các metadata để chuyển đổi, kiêm tra và thi hành các code.
JIT : Just in time Complier, trình thông dịch ra mã máy từ IL code lúc chạy, chỉ có đoạn mã cần chạy là được
dịch.
Thông tin :
Để tương thích với các ngôn ngữ khác chỉ lên dùng các kiểu dữ liệu chuẩn của CLR như Integer ,
Long các kiểu như Ulong ,Uinteger xuất hiện từ VB2K5 không phải là kiểu chuẩn do vậy sẽ gặp khó khăn
Khi chuyển đổi sang ngôn ngữ khác cũng như tương tác với API
Quá trình thực thị .NET:
.NET Executable File ( MetaData + IL Code )
Hệ thống máy ảo CLR
Class Loaders
JIT Complier VERIFIER
JIT
§
II NET cơ bản
1.Các kiểu dữ liệu ,từ khoá không còn hỗ trợ
Currentcy Thay bằng Double hay
Variant Thay bằng object
Fixed lenght String
EQU
IMP
Doevents System.Windows.Forms.Application.Doevents
Empty
IsMissing
Mid
…
2.Các kiểu dữ liệu mới( hay có thay đổi) VB 6.0
Long ____
Integer Long
Short Integer
Char ____
Thông tin :
Kiểu Char có kích cỡ 1 byte kí hiệu = “c” nhanh gọn hơn nhiều so với string
Ulong ____
String
Thông Tin :
Kiểu chuỗi trong .NET là kiểu con trỏ , không hỗ trợ chuỗi có độ dài cố định, và được tương
tác như một mảng ký tự, có thể truy cập dễ dàng thông qua chỉ số như PASCAL
( các số không dấu thêm U đằng trước- unsigned )
NulAble ____
Thông Tin :
Kiểu dữ liệu cho phếp NULL ( không chứa giá trị nào ), áp dụng trong nhiều trường hợp :
- Kiểu boolean chỉ có hai giá trị T & F nhưng chưa đủ cho nhiều trường hợp ví dụ
checkbox có thể T hay F và Disable
-Các khai báo biến optional cần phải gán trước 1 giá trị ngầm định, nhưng trong trường
hợp cả giá trị ngầm định cũng bị sử dụng thì phải dùng NullAble
Eg:
Dim X As Nullable(Of Boolean)
X.HasValue ( = TRUE có giá trị , = FALSE : NULL)
Đọc giá trị qua : X.Value
*!!!! :
Các kiểu dữ liệu cơ bản như long ,Int,byte,Short khi khai báo có thể không cần dùng NEW do vậy
Các lệnh sau tương đương :
Dim X As Long
Dim X As New Long
Dim X As Long = New Long
3. Các từ khoá,cấu trúc , lệnh mới hay có thay đổi VB 6.0
STRUCTURE TYPE
Thông Tin :
STRUCTURE có cấu trúc gần giống CLASS chỉ không kế thừa được
Trong có thể gồm cả EVENT, Property, SUB, function.Do vậy structure trong .NET rất linh động.
Eg:
Public Structure POINTAPI
Public X As Integer
Public Y As Integer
Public Function Draw()
RaiseEvent DrawAction()
End Function
Event DrawAction()
End Structure
OrElse ___
Tương tự OR nhưng nếu 1 toán hạng trả về kết quả đã quyết định
toàn bộ biểu thức thì không cần tính tiếp các toán hạng sau nữa
AndAlso ___
Tương tự AND nhưng nếu 1 toán hạng trả về kết quả đã quyết định
toàn bộ biểu thức thì không cần tính tiếp nữa
Optional
Các tham số khai báo optional phải luôn được gán giá trị khởi tạo
Phép chia lấy phần dư ( MOD) với số thực
math.IEEERemainder( 11.2,4.2)
isnot Is ( Not )
+ các hàm chuyển đôi kiểu :
Directcast : Dùng đỏi 2 đối tượng cùng kiểu, 2 đối tượng có thể đổi cho nhau
như string long nhưng khác kiểu sẽ bị báo lỗi .
Ctype : Đổi hai đối tượng khác loại nhưng có thể đổi được , không đổi
được lỗi
Ví dụ : CType(“123”, string )
Báo lỗi : CType (“123SSSA”,long)
Thông tin : Thực chất Ctype chuyển giá trị cần đổi sang một kiểu trung gian ( string) rồi
convert về kiểu đich
Trycast : Tương tự DirectCast nhưng trả về nothing nếu có lỗi
+ gettype : Trả về kiểu của đối tượng
+ TypeOf + Is
+ Mảng ( array ) và chuỗi ( String ) được tham chiếu chứ không phải tham trị
Khai báo mảng rỗng :
Dim X(-1) as long
Chỉ số đầu của mảng luôn bằng 0
+ Các cấu trúc lặp mới :
While < Condition>
End While
VB.NET hỗ trợ các lệnh để tiếp tục hay ngắt lặp không cần dùng GOTO như VB 6
Continue : Tiếp tục vòng lặp gần nhất
Exit : Thoát lặp gần nhất
+ Cấu trúc bẫy lỗi :
Try
Catch ex As Exception
End Try
Thông tin : các thủ tục có dùng cấu trúc bẫy lỗi chạy chậm hơn 40% so với các thủ tục không
có bẫy lỗi, hạn chế dùng trong timer và nên trả về mã lỗi hay kiểm tra điều kiện lỗi = If
Then. Không lên dùng lẫn cả cấu trúc bẫy lỗi cũ của VB 6
Ví dụ:
Hàm
Function kiemtra(ByVal So1 As Long, ByVal so2 As Long) As Long
Try
Return (So1 / so2)
Catch ex As Exception
MsgBox(" chia cho 0")
End Try
End Function
sẽ chạy chậm hơn nhiều so với hàm dưới do cứ sau 1 lệnh , vb lại phải thêm 1 lệnh kiểm tra lỗi.
Function kiemtra2(ByVal So1 As Long, ByVal so2 As Long) As Long
If (So1 = 0) Or (so2 = 0) Then
MsgBox("chia cho 0")
End If
Return So1 / so2
End Function
+ Các cấu trúc Giải phóng bộ nhớ
Using x As New AnyObject
End Using
Có thể dùng kép :
Eg :
Using sr As New StreamReader(inFile), sw As New &_ StreamWriter(outFile),
& _ sw.Write(sr.ReadToEnd().ToLower())
End Using
Thông tin:
Khi dùng Using & End Using , đối tượng sẽ được giải phóng tức thì chứ không phải đợi GC
+ Hỗ trợ DOCK & ANCHo
Hai thuộc tính mới trong control cho phép các điều khiển tự co dãn hay giữ nguyên vị so với
các container của nó tiết kiệm công sức
4. Các cú pháp mới
+ Khai báo biến thuận tiện hơn
Eg: Dim X,y,z as long Dim X as long : Dim y as long ….
+ Biến được khởi gán :
Eg:
Dim X as long =1
Dim Y(3) as long = {1,2,3}
+
X +=1 X = X+1
X - =1 X = X -1
X*= 1 X = X * 1
>> Dịch bít phải có dấu
<< Dịch bít trái có dấu
5.Các ký hiệu đại diện cho kiểu dữ liệu :
Trong khai báo biến
Dim X + “ Ký tự đại diện “
Eg : Dim X% Dim X as integer
% Integer
$ String
& Long
# Double
! Single
@ Decimal
Trong sử dụng hằng số :
Eg :
Dim X# = 123.2D
D Decimal
R,# Double
I Integer
L Long
c Char
S Short
F Single
Ux Unsigned
Eg :
UL : unsigned long
II.Hỗ trợ ngôn ngữ & trình thông dịch CRL
1. Hỗ trợ chèn các chú thích dùng XML
Trước thủ tục cần chú thích : nhấn ’’’ < Enter> Vb sẽ sinh ra như sau
''' <summary>
'''
''' </summary>
''' <param name="Param1"></param>
''' <returns></returns>
''' <remarks></remarks
2. Hỗ trợ sinh mã tự động
Trong của sổ code gõ ? và nhấn TAB để sinh ra 1 số đoạn mã có cấu trúc hay dùng
Eg : Gõ “If” + “?” <TAB>
VB.NET IDE cho phép tạo thêm các snipset để sinh ra các đoạn mã hay dùng theo mẫu cho phép
Tương đương VB code assistant
Tăng tốc độ soạn thảo.
Phím nóng : Ctrl + B, Ctrl + K
3.Các chỉ thị biên dịch (Attributes)
Là mớ thông tin để cho CRL biết những việc cần hành xử với một hay vài modul, classs lúc runtime
Các trình biên dịch trở về trước thường có riêng các chỉ thị biên dịch để tối ưu mã lệnh mà không ai
giống ai, từ vb.net 2003, microsoft đã bó các chỉ thị biên dịch này vào các CLASS để dễ dàng mở
rộng.Các chỉ thị biên dịch bắt đầu “ < >”
Ngoài tác dụng là các chỉ thị biên dịch ,Microsoft đã mở rộng Attributes thành các lớp để mô tả code,
tài liệu… Các atrributives này không nằm trong EXEC CODE của chương trình mà ẩn sau các
METADATA của các ASSEMBLLY
Muốn dùng các chỉ thị biên dịch cần imports class
Imports System.Runtime.CompilerServices
imports System.ComponentModel
Ví dụ :
Với các thủ tục hay hàm chỉ có một đến vài lệnh có thể tối ưu bằng cách bật chỉ thị inline mode cho
phép CRL chèn code trực tiếp chứ không cần phát sinh lời gọi hàm CALL nhăm tăng tốc độ thi hành,
thông thường khi gọi hàm :
Function Eval(ByVal n1 As Integer, ByVal n2 As Integer) As Integer
Return n1 \ n2
End Function
Ví dụ:
X = eval(22,10)
.Net sẽ chèn thẳng : X =22 \10
Nếu tắt inline đi chèn thêm dòng dưới vào trước sub, hay fun
<MethodImpl(MethodImplOptions.NoInlining)> _
Function Eval(ByVal n1 As Integer, ByVal n2 As Integer) As Integer
Return n1 \ n2
End Function
‘ Chỉ thị <Flags> làm .NET xem Enum dưới như là một BitCode
<Flags()> Enum ValidDataEntry
None = 0 ' Always define an Enum value equal to 0.
IntegerNumber = 1
FloatingNumber = 2
CharString = 4
DateTime = 8
End Enum
4.Các công cụ hỗ trợ đi kèm
IDE ( Intergrated Development eviroment ) môi trường tích hợp phát triển của .NET cung cấp khá
nhiều công cụ hỗ trợ :
Xem IL code được sinh
C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin\ildasm.exe
Dịch thẳng ra native code
c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\ngen.exe
Xem thông tin PE .NET EXE file
C:\Program Files\Microsoft Visual Studio 8\VC\bin\dumpbin.exe
Để tiện hơn khi sử dụng , trong IDE VB.NET vào TOOLS \ EXTENAL TOOLS… chọn ADD NEW
Trong command line : paste đường dẫn, trong agrument : chọn $(TargetDir) , sau OK
5.Gỡ rối ( debug & trace ) ( ??? )
Not available yet
III. VB.NET nâng cao
A. Các đặc trưng hướng đối tượng & ngôn ngữ nâng cao mới
1. Overloading
Cho phép các thủ tục hàm được dùng cùng 1 tên ( khác tham số),do vậy các thủ tục có thể
Mềm dẻo hơn.
2. Hỗ trợ default property ( bắt buộc phải có tham số)
Default Public Property Addresses(ByVal index As Integer) As String
End Property
3. Các Constructor cho phép Overload đồng thời hỗ trợ nhiều tham số
4. Share Function & Sub
Các thủ tục hay hàm trong class có thể được đăng ký SHARE để các lớp khác có thể truy xuất
Thông thường để dùng 1 public sub trong class ta khai báo :
Dim X as anyClass
X.AnySub
Nếu anySub được khai báo là SHARE ta có thể gọi anySub mà không cần tạo 1 lớp nào
Eg : AnyClass.AnySub
Thông tin :
- Các property được khai báo public & share chạy chậm hơn các private 30%
- Các share Function & sub không thể truy nhập vào các biến public của class
- Thục tế các module chính là các lớp mà các hàm & thủ tục được khai báo là shared + bỏ thừa kế
5.Shared propery
Các Property được khai báo là Shared sẽ được chép lên vùng PUBLIC do đó có thể bị thay đổi
bởi các instance của các class , các instance của 1 class có thể dùng các biến share để trao đổi thông tin
cho nhau.
6. Parital Class ( class bị phân lớp)
Từ khoá này chỉ có từ Vb 2k5 cho phép 1 class có thể được chứa trong 2 hay nhiều file .VB
Thông thường VB tự sinh thêm 1 parital class đối với các đối tượng FORM hay control để chứa các
lệnh khởi tạo tự sinh để đỡ làm rối mắt programer ( các file nay thường bị ẩn )
7.Operator over loading ( chỉ có từ VB2k5 )
Các từ khoá +,- And… có thể được overloading ( đối với các structure, Class)
8. Hỗ trợ Delegate
Delegate còn gọi là kiểu thủ tục chính là cách gọi 1 thủ tục mà địa chỉ được lưu vào một biến con trỏ
chứ không phải tên thủ tục do vậy trong một số trường hợp tạo lên sự linh động và mềm dẻo cho code
, ở Vb.NET dùng delegate rất an toàn
Eg : khai báo
Delegate Sub DisplayMessage(ByVal msg As String)
' ta có 1 sub như sau
' Display a string in the Debug window.
Sub WriteToDebugWindow(ByVal msgText As String)
Debug.WriteLine(msgText)
End Sub
Dim X as new DisplayMessage( address of WriteToDebugWindow)
X.Invoke(" String here")
9. Gán sự kiện cho nhiều đối tượng
Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs)
Handles MyBase.Load
'Đăng ký 2 sự kiện cho tất cả điều khiển trên FORM
For Each ctrl As Control In GetChildControls(Me)
AddHandler ctrl.MouseEnter, AddressOf Control_MouseEnter
AddHandler ctrl.MouseLeave, AddressOf Control_MouseLeave
Next
End Sub
‘Khai bao c ỏc th ủ t ục s ự ki ện
Private Sub Control_MouseEnter(ByVal sender As Object, ByVal e As
EventArgs)
Dim ctrl As Control = DirectCast(sender, Control)
If Not ctrl.Tag Is Nothing Then ToolStripStatusLabel1.Text =
ctrl.Tag.ToString()
End Sub
Private Sub Control_MouseLeave(ByVal sender As Object, ByVal e As
EventArgs)
ToolStripStatusLabel1.Text = ""
End Sub
‘Ham tra ve cac dieu khien thuoc p arent
Function GetChildControls(ByVal parent As Control) As ArrayList
Dim result As New ArrayList()
For Each ctrl As Control In parent.Controls
result.Add(ctrl)
result.AddRange(GetChildControls(ctrl))
Next
Return result
End Function
10. Cho phép nestesed Class ( chồng lớp )
Vb.NET cho phép khai báo định nghĩa 1 hay nhiều class và cả các interface trong class khác, do vậy
tăng khả năng đóng kin( encapsualation)
Class Outer
…
Class Inner
…
End Class
End Class
Để tạo 1 instance Inner ta code:
Dim ClsInner As New outer.Inner
Thông tin:
Với VB 6.0 phải khai báo Inner class ở modul khác, sau đó tạo 1 đối tương cls inner trong outer
11. Kế thừa
VB.Net chỉ hỗ trợ kế thừa từ một class thông qua từ khoá INHERITES
,cho phép class con được quyền Overiding các sub, property của class cha
Các từ khoá mới :
MyBase : Truy cập vào lớp class cha
MyClass : Truy cập vào class hiện thời, dùng trong trường hợp cần sub hay function nguyên gốc
của class ( không phải các sub, f đã bị overriding ).
Me : Dùng với tất cả đối tượng,truy cập đối tượng hiện thời
Thông tin :
Từ khoá INHERRITS cho phép kế thừa toàn bộ từ các class cha ( trừ các property được khai báo
NotInheritAble), do vậy nếu chỉ muốn kế thừa 1 số property xác định thì không được
12.Interface
Từ khoá interface chép phép tạo 1 mẫu cho trước có tác dụng tương tự với các lớp được khai báo
MustInherit ( trừ việc không thừa kế được ), interface là 1 kiểu lớp chỉ có tên thủ tục & hàm đuợc thiết
kế trước, muốn sử dụng phải implements sau đó code .VB cũng cấp nhiều các Interface có sẵn giúp
giảm thời gian thiết kế cho programmer.
Đáng lưu ý là interface lại có thể kế thừa từ nhiều interface khác trong khi CLASS chỉ được kế
thừa từ một cha.
Ví du :
Interface INguoi
Inherits ISinhVat
Inherits IDongVat
Inherits IThucVat
Sub An()
Sub Uong()
End Interface
Muốn dùng interface Inguoi ta phải implements nó ví dụ
Class NhacSi
Implements INguoi
Public Sub AN() Implements Inguoi.AN
‘ Code Here
End Sub
End Class
13.Generic ( áp dụng nhiều cho class và structure )
Thực tế một thủ tục có thể chấp nhận tham số nhiều kiểu : chuỗi, currenty, long,…. ví dụ : thủ tục
tính toán
+,-… trong máy tính điện tử cùng 1 phép cộng phải thao tác với hàng chục kiếu dữ liệu, bình
thường ta có thể viết 10 thủ tục cộng để thao tác với 10 kiểu dữ liệu ( đương nhiên ta chỉ cần dùng 1
kiểu số là double có thể thay thế cho cả interger , real nhưng sẽ tăng thời gian thực hiện do VB sẽ
chuyễn int về Double dễ gây bug ), cho dù có dùng overload thì cũng mất thời gian, do vậy .NET
cung cấp kiểu generic cho phép ta chỉ cần dùng 1 thủ tục là đủ giảm thời gian lập trình:
Ví dụ : ta có mẫu
Sub Swaps(Of T)(ByRef So1 As T, ByRef So2 As T)
Dim temp As T
temp = So1
So1 = So2
So2 = temp
End Sub
Thủ tục swaps trên có thể áp dụng cho mọi kiểu dữ liệu thay vì phải viết hàng chục modul swap : eg :
swapInt, SwapDate,SwapLong…
ví dụ :
Swaps(Of Long)(11, 222)
Swaps(Of Date)(date1, date2)
Thông tin ;
Đương nhiên ta có thể dùng kiểu object hay VARIANT của VB6 nhưng như vậy sẽ chậm do
kiểu phải qua 1 lần convert ,dễ gây bug , hơn nữa kiểu generic còn được hỗ trợ mạnh khi viết các
CLASS năng động chấp nhận rất nhiều loại thông tin đầu vào không chỉ dừng ở các kiểu cơ bản như
long, int, string mà còn các kiểu UDT
14. Các thông tin khác
Vb.Net cho phép các UDT, các cấu trúc khác như array cũng được khai báo PUBLIC trong class do
vậy làm CLASS linh động hơn rất nhiều.
B.Các đối tượng mới trong VB.NET
1. Đối tượng Objects trong .NET
Các kiểu dữ liệu trong .Net đều khởi phát từ đối tượng này : gồm các thủ tục và hàm chuẩn :
+ Equals : Trả về true nếu giá trị của đối tượng = giá trị đầu vào
+ GetHashCode : Trả về mã ID của đối tượng
+ ToString : Trả về tên của đối tượng dạng chuỗi
+ GetType : trả về kiểu dữ liệu
+ ReferenceEquals : Trả về true nếu 2 đối tường đầu vào cùng trỏ đến 1 địa chỉ
2.String
Kiểu chuỗi rất mạnh trong .NET có thể thao tác như mảng ký tự trên PASCAL. Nếu một chuỗi được
dùng lặp lại nhiều lần VB cho phép chỉ lưu 1 bản sao duy nhât của chuỗi các chuỗi tương tự về sau sẽ
trỏ đên chính địa chỉ của bản đầu tiên để tăng tốc độ thực thi.
Ví dụ :
s1 = "ABCD"
s1 &= "EFGH"
' Chuyển S1 vào bộ đêm trong
s1 = String.Intern(s1)
' gán S2 bằng 1 hằng chuỗi đã được cached
s2 = "ABCDEFGH"
' Lúc này cả hai biến có cùng địa chỉ
Console.WriteLine(s1 Is s2) ' => True
3. Array
Kiểu array trên VB được hỗ trợ thêm nhiều chức năng như lọc ,sắp xếp…
4.Regular Expressions
Kiểu đối tượng hoạt động giống với LIKE nhưng linh động hơn và phức tạp hơn rất nhiều,Có thể
thay thế nhiều đoạn mã xử lý chuỗi phức tạp chỉ bằng 1 lệnh đơn giản giảm thời gian viết code.Tuy
vậy tốc độ xử lý chậm hơn so với LIKE và châm hơn nhiêu so với dùng FOR, hay WHILE để phân
tích bù lại có thể dùng để code các trình phân tích cú pháp, chuỗi, tính toán biểu thức chỉ bằng một ít
lệnh .
Khi sử dụng cần imports
Imports System.Text
Imports System.Text.RegularExpressions
Ví dụ :
pattern = "^\d{5}$"
If Regex.IsMatch(text, pattern) Then
' Là một chuỗi gồm năm chữ số
End If
5. System Watches
Tương tự Timer dùng để đo thời gian thi hành ứng dụng
6. Threads lập trình đa luồng
Not Available yet
7. Serialization
Not Available yet
Danh mục các NameSpaces :
System.CodeDOM
Bao gồm các CLASS xử lý các phần tử và cấu trúc của mã nguồn.
System.ComponentModel
Tựa như các hướng dẫn biên dịch lúc thiết kế và lúc chạy cho các điều khiển & các thành phần (COM)
System.Configuration
Hỗ trợ việc tạo các trình cài đặt tuỳ chọn cho thành phần phần mềm
System.Data
Bao gồm các CLASS cấu thành lên kiến trúc ADO.NET sử dụng cho việc kết nối CSDL
System.Diagnostics
Hỗ trợ gỡ rối và dò lỗi
System.DirectoryServices
Truy cập Active directory từ các managed code.
System.Drawing
Truy nhập các hàm đồ hoạ gồm các lớp con
System.Drawing.Drawing2D, System.Drawing.Imaging, and System.Drawing.Text namespaces.
System.Net
Cung cấp các cách thức truy cập mạng như FTP and HTTP.
Ngoài ra còn có các cách truy cập bậc thấp như WinSock:
The System.Net.Sockets
System.Reflection
. & VB. NET
http://www.saurik.com /net/ exemplar/
http://www.aisto.com/roeder/dotnet
- Dịch trực tiếp ra mã máy native code :
C:WINDOWSMicrosoft .NET Frameworkv2.0.50727
gen.exe
. động hơn rất nhiều.
B.Các đối tượng mới trong VB. NET
1. Đối tượng Objects trong .NET
Các kiểu dữ liệu trong .Net đều khởi phát từ đối tượng này : gồm các