NGUYÊN TẮC SÁNG TẠO KHOA HỌC TRONG SỰ PHÁT TRIỂN CỦA MICROSOFT .NET FRAMEWORK
Trang 1BÁO CÁO CHUYÊN ĐỀ
NGUYÊN TẮC SÁNG TẠO KHOA HỌC TRONG SỰ PHÁT TRIỂN CỦA MICROSOFT NET FRAMEWORK
Trang 2Em có may mắn được hoạt động trong lĩnh vực sản xuất phần mềm đã 7 năm nay và lĩnh vực chuyên sâu của em là các công nghệ của Microsoft và đặc biệt là NET Framework
Trong khuôn khổ của bài thu hoạch này, cho em xin mạn phép được trình bày những hiểu biết hạn hẹp của em về NET Framework cùng những phân tích sáng tạo về sự ra đời và phát triển của NET Framework cho tới hiện nay
Phần 1 em xin được giới thiệu tóm tắt chung về 40 phương pháp sáng tạo khoa học Phần 2 và 3
sẽ đi sâu vào công nghệ NET và phân tích các phương pháp sáng tạo đã được sử dụng trong suốt quá trình hình thành và phát triển của Microsoft NET Framework Trong suốt bài thu hoạch có những thuật ngữ chuyên ngành không thể dịch ra tiếng Việt, cho em xin được giữ nguyên nghĩa tiếng Anh để đảm bảo tính trong sáng
Bài thu hoạch này có đính kèm theo sourcecode demo các chương trình có sử dụng các công nghệ của Microsoft đã đề cập Thiếu sót là điều không thể tránh khỏi, em rất mong nhận được những lời nhận xét và đóng góp chân thành của thầy Qua đây, em cũng xin gởi lời cám ơn chân thành đến Giáo sư – Tiến sĩ Khoa Học Hoàng Văn Kiếm, người đã tận tâm truyền đạt những kiến thức nền tảng cơ bản cho chúng em về môn học “Phương pháp nghiên cứu khoa học trong tin học” Trong quá trình làm bài thu hoạch này cũng giúp em củng cố thêm nhiều kiến thức của NET Framework Em hy vọng bài thu hoạch này sẽ là một bài tham khảo quý báu cho những ai làm CNTT đặc biệt là công nghệ NET
Xin chân thành cám ơn !
Vũ Minh Thành – 3/2012
Trang 3NỘI DUNG
1 PHẦN 1 : CÁC PHƯƠNG PHÁP SÁNG TẠO CƠ BẢN 5
1.1 Nguyên tắc phân nhỏ 5
1.2 Nguyên tắc tách khỏi 5
1.3 Nguyên tắc phẩm chất cục bộ 5
1.4 Nguyên tắc phản đối xứng 5
1.5 Nguyên tắc kết hợp 5
1.6 Nguyên tắc vạn năng 5
1.7 Nguyên tắc chứa trong 5
1.8 Nguyên tắc phản trọng lượng 5
1.9 Nguyên tắc gây ứng xuất sơ bộ 6
1.10 Nguyên tắc thực hiện sơ bộ 6
1.11 Nguyên tắc dự phòng 6
1.12 Nguyên tắc đẳng thế 6
1.13 Nguyên tắc đảo ngược 6
1.14 Nguyên tắc cầu (tròn) hóa 6
1.15 Nguyên tắc linh động 6
1.16 Nguyên tắc giải thiếu hoặc thừa 6
1.17 Nguyên tắc chuyển sang chiều khác 6
1.18 Nguyên tắc sử dụng các dao động cơ học 7
1.19 Nguyên tắc tác động theo chu kỳ 7
1.20 Nguyên tắc liên tục tác động có ích 7
1.21 Nguyên tắc vượt nhanh 7
1.22 Nguyên tắc biến hại thành lợi 7
1.23 Nguyên tắc quan hệ phản hồi 7
1.24 Nguyên tắc sử dụng trung gian 7
1.25 Nguyên tắc tự phục vụ 7
1.26 Nguyên tắc sao chép (copy) 7
1.27 Nguyên tắc rẻ thay cho đắt 8
1.28 Nguyên tắc thay thế sơ đồ cơ học 8
1.29 Sử dụng các kết cấu khí và lỏng 8
1.30 Sử dụng vỏ dẻo và màng mỏng 8
1.31 Sử dụng các vật liệu nhiều lỗ 8
1.32 Nguyên tắc thay đổi màu sắc 8
1.33 Nguyên tắc đồng nhất 8
1.34 Nguyên tắc phân hủy hoặc tái sinh các phần 8
1.35 Thay đổi các thông số hoá lý của đối tượng 9
1.36 Sử dụng chuyển pha 9
1.37 Sử dụng sự nở nhiệt 9
1.38 Sử dụng các chất oxy hoá mạnh 9
1.39 Thay đổi độ trơ 9
1.40 Sử dụng các vật liệu hợp thành (composite) 9
2 PHẦN 2 : QUÁ TRÌNH HÌNH THÀNH VÀ PHÁT TRIỂN CỦA MICROSOFT NET FRAMEWORK 10
2.1 LỊCH SỬ RA ĐỜI VÀ PHÁT TRIỂN CỦA NET FRAMEWORK 10
2.1.1 HOÀN CẢNH RA ĐỜI CỦA NGÔN NGỮ C# VÀ NET FRAMEWORK 10
2.1.2 CÁC PHIÊN BẢN CỦA NET FRAMEWORK 11
2.2 KIẾN TRÚC CỦA NET FRAMEWORK (.NET ARCHITECTURE) 15
Trang 42.2.1 Common Language Runtime (CLR) 16
2.2.2 Common Language Infrastructure (CLI) 20
2.2.3 Common Type System (CTS) 20
2.2.4 Common Data Type (CDT) 21
2.2.5 Common Language Specification (CLS) 22
2.2.6 So sánh với Java 22
2.2.7 Base Class Library (BCL) 22
2.2.8 Intermediate Language (IL) 23
3 PHẦN 3 : PHÂN TÍCH CÁC PHƯƠNG PHÁP SÁNG TẠO ĐƯỢC ÁP DỤNG TRONG QUÁ TRÌNH PHÁT TRIỂN CỦA NET FRAMEWORK 24
3.1 NGUYÊN TẮC PHÂN NHỎ 24
3.2 NGUYÊN TẮC THU NHỎ 26
3.3 NGUYÊN TẮC KẾT HỢP 26
3.4 NGUYÊN TẮC TÁCH KHỎI 26
3.5 NGUYÊN TẮC ĐẢO NGƯỢC 26
3.6 NGUYÊN TẮC CHỨA TRONG 27
3.7 NGUYÊN TẮC LINH ĐỘNG 27
3.8 NGUYÊN TẮC THAY ĐỔI MÀU SẮC 27
3.9 NGUYÊN TẮC VƯỢT NHANH 28
3.10 NGUYÊN TẮC VẠN NĂNG 28
3.11 NGUYÊN TẮC DỰ PHÒNG 28
3.12 NGUYÊN TẮC TÁC ĐỘNG SƠ BỘ 29
3.13 NGUYÊN TẮC PHẢN TÁC ĐỘNG SƠ BỘ 29
3.14 NGUYÊN TẮC TRUNG GIAN 29
3.15 NGUYÊN TẮC TỰ PHỤC VỤ 29
3.16 NGUYÊN TẮC SAO CHÉP 30
3.17 NGUYÊN TẮC ĐỒNG NHẤT 30
4 PHẦN 4 : KẾT LUẬN 31
TÀI LIệU THAM KHảO 31
Trang 51 PHẦN 1 : CÁC PHƯƠNG PHÁP SÁNG TẠO CƠ BẢN
1.1 Nguyên tắc phân nhỏ
a) Chia đối tượng thành các phần độc lập
b) Làm đối tượng trở nên tháo lắp được
c) Tăng mức độ phân nhỏ đối tượng
b) Các phần khác nhau của đối tượng phải có các chức năng khác nhau
c) Mỗi phần của đối tượng phải ở trong những điều kiện thích hợp nhất đối với công việc
1.4 Nguyên tắc phản đối xứng
Chuyển đối tượng có hình dạng đối xứng thành không đối xứng (nói chung giãm bật đối xứng)
1.5 Nguyên tắc kết hợp
a) Kết hợp các đối tượng đồng nhất hoặc các đối tượng dùng cho các hoạt động kế cận
b) Kết hợp về mặt thời gian các hoạt động đồng nhất hoặc kế cận
1.6 Nguyên tắc vạn năng
Đối tượng thực hiện một số chức năng khác nhau, do đó không cần sự tham gia của các đối tượng khác
1.7 Nguyên tắc chứa trong
a) Một đối tượng được đặt bên trong đối tượng khác và bản thân nó lại chứa đối tượng thứ ba b) Một đối tượng chuyển động xuyên suốt bên trong đối tượng khác
1.8 Nguyên tắc phản trọng lượng
a) Bù trừ trọng lượng của đối tượng bằng cách gắn nó với các đối tượng khác có lực nâng
b) Bù trừ trọng lượng của đối tượng bằng tương tác với môi trường như sử dụng các lực thủy động, khí động
Trang 61.9 Nguyên tắc gây ứng xuất sơ bộ
Gây ứng suất trước với đối tượng để chống lại ứng suất không cho phép hoặc không mong muốn khi đối tượng làm việc (hoặc gây ứng suất trước để khi làm việc sẽ dùng ứng suất ngược lại )
1.10 Nguyên tắc thực hiện sơ bộ
a) Thực hiện trước sự thay đổi cần có, hoàn toàn hoặc từng phần, đối với đối tượng
b) Cần sắp xếp đối tượng trước, sao cho chúng có thể hoạt động từ vị trí thuận lợi nhất, không mất thời gian dịch chuyển
1.11 Nguyên tắc dự phòng
Bù đắp độ tin cậy không lớn của đối tượng bằng cách chuẩn bị trước các phương tiện báo động, ứng cứu, an toàn
1.12 Nguyên tắc đẳng thế
Thay đổi điều kiện làm việc để không phải nâng lên hay hạ xuống các đối tượng
1.13 Nguyên tắc đảo ngược
a) Thay vì hành động như yêu cầu bài toán, hành động ngược lại (ví dụ, không làm nóng mà làm lạnh đối tượng)
b) Làm phần chuyển động của đối tượng (hay môi trường bên ngoài) thành đứng yên và ngược lại, phần đứng yên thành chuyển động
1.14 Nguyên tắc cầu (tròn) hóa
a) Chuyển những phần thẳng của đối tượng thành cong, mặt phẳng thành mặt cầu, kết cấu hình hộp thành kết cấu hình cầu
b) Sử dụng các con lăn, viên bi, vòng xoắn
c) Chuyển sang chuyển độg quay, sử dung lực ly tâm
1.15 Nguyên tắc linh động
a) Cần thay đổi các đặt trưng của đối tượng hay môi trường bên ngoài sao cho chúng tối ưu trong từng giai đoạn làm việc
b) Phân chia đối tượng thành từng phần, có khả năng dịch chuyển với nhau
1.16 Nguyên tắc giải thiếu hoặc thừa
Nếu như khó nhận được 100% hiệu quả cần thiết, nên nhận ít hơn hoặc nhiều hơn “một chút” Lúc đó bài toán có thể trở nên đơn giản hơn và dễ giải hơn
1.17 Nguyên tắc chuyển sang chiều khác
a) Những khó khăn do chuyển động (hay sắp xếp) đối tượng theo đường (một chiều) sẽ được khắc phục nếu cho đối tượng khả năng di chuyển trên mặt phẳng (hai chiều) Tương tự, những bài toán liên quan đến chuyển động (hay sắp xếp) các đối tượng trên mặt phẳng sẽ được đơn giản hoá khi chuyển sang không gian (ba chiều)
b) Chuyển các đối tượng có kết cấu một tầng thành nhiều tầng
c) Đặt đối tượng nằm nghiêng
Trang 7d) Sử dụng mặt sau của diện tích cho trước
e) Sử dụng các luồng ánh sáng tới diện tích bên cạnh hoặc tới mặt sau của diện tích cho trước
1.18 Nguyên tắc sử dụng các dao động cơ học
a) Làm đối tượng dao động Nếu đã có dao động, tăng tầng số dao động ( đến tầng số siêu âm) b) Sử dụng tầng số cộng hưởng
c) Thay vì dùng các bộ rung cơ học, dùng các bộ rung áp điện
d) Sử dụng siêu âm kết hợp với trường điện từ
1.19 Nguyên tắc tác động theo chu kỳ
a) Chuyển tác động liên tục thành tác động theo chu kỳ (xung)
b) Nếu đã có tác động theo chu kỳ, hãy thay đổi chu kỳ
c) Sử dụng các khoảng thời gian giữa các xung để thực hiện tác động khác
1.20 Nguyên tắc liên tục tác động có ích
a) Thực hiện công việc một cách liên tục (tất cả các phần của đối tượng cần luôn luôn làm việc ở chế độ đủ tải)
b) Khắc phục vận hành không tải và trung gian
c) Chuyển chuyển động tịnh tiến qua lại thành chuyển động qua
1.21 Nguyên tắc vượt nhanh
a Vượt qua các giai đoạn có hại hoặc nguy hiểm với vận tốc lớn
b Vượt nhanh để có được hiệu ứng cần thiết
1.22 Nguyên tắc biến hại thành lợi
a Sử dụng những tác nhân có hại (thí dụ tác động có hại của môi trường) để thu được hiệu ứng
có lợi
b Khắc phục tác nhân có hại bằng cách kết hợp nó với tác nhân có hại khác
c Tăng cường tác nhân có hại đến mức nó không còn có hại nữa
1.23 Nguyên tắc quan hệ phản hồi
a Thiết lập quan hệ phản hồi
b Nếu đã có quan hệ phản hồi, hãy thay đổi nó
1.24 Nguyên tắc sử dụng trung gian
Sử dụng đối tượng trung gian, chuyển tiếp
1.25 Nguyên tắc tự phục vụ
a Đối tượng phải tự phục vụ bằng cách thực hiện các thao tác phụ trợ, sửa chữa
b Sử dụng phế liệu, chát thải, năng lượng dư
1.26 Nguyên tắc sao chép (copy)
a Thay vì sử dụng những cái không được phép, phức tạp, đắt tiền, không tiện lợi hoặc dễ vỡ, sử dụng bản sao
Trang 8b Thay thế đối tượng hoặc hệ các đối tượng bằng bản sao quang học (ảnh, hình vẽ) với các tỷ lệ cần thiết
c Nếu không thể sử dụng bản sao quang học ở vùng biẻu kiến (vùng ánh sáng nhìn thấy được bằng mắt thường), chuyển sang sử dụng các bản sao hồng ngoại hoặc tử ngoại
1.27 Nguyên tắc rẻ thay cho đắt
Thay thế đối tượng đắt tiền bằng bộ các đối tượng rẻ có chất lượng kém hơn (thí dụ như về tuổi thọ)
1.28 Nguyên tắc thay thế sơ đồ cơ học
a Thay thế sơ đồ cơ học bằng điện, quang, nhiệt, âm hoặc mùi vị
b Sử dụng điện trường, từ trường và điện từ trường trong tương tác với đối tượng
c Chuyển các trường đứng yên sang chuyển động, các trường cố định sang thay đổi theo thời gian, các trường đồng nhất sang có cấu trúc nhất định
a Sử dụng các vỏ dẻo và màng mỏng thay cho các kết cấu khối
b Cách ly đối tượng với môi trường bên ngoài bằng các vỏ dẻo và màng mỏng
1.31 Sử dụng các vật liệu nhiều lỗ
a Làm đối tượng có nhiều lỗ hoặc sử dụng thêm những chi tiết có nhiều lỗ (miếng đệm, tấm
phủ…)
b Nếu đối tượng đã có nhiều lỗ, sơ bộ tẩm nó bằng chất nào đó
1.32 Nguyên tắc thay đổi màu sắc
a Thay đổi màu sắc của đối tượng hay môi trường bên ngoài
b Thay đổi độ trong suốt của của đối tượng hay môi trường bên ngoài
c Để có thể quan sát được những đối tượng hoặc những quá trình, sử dụng các chất phụ gia màu, hùynh quang
d Nếu các chất phụ gia đó đã được sử dụng, dùng các nguyên tử đánh dấu
e Sử dụng các hình vẽ, ký hiệu thích hợp
1.33 Nguyên tắc đồng nhất
Những đối tượng, tương tác với đối tượng cho trước, phải được làm từ cùng một vật liệu (hoặc từ vật liệu gần về các tính chất) với vật liệu chế tạo đối tượng cho trước
1.34 Nguyên tắc phân hủy hoặc tái sinh các phần
a Phần đối tượng đã hoàn thành nhiệm vụ hoặc trở nên không càn thiết phải tự phân hủy (hoà tan, bay hơi ) hoặc phải biến dạng
b Các phần mất mát của đối tượng phải được phục hồi trực tiếp trong quá trình làm việc
Trang 91.35 Thay đổi các thông số hoá lý của đối tượng
a Thay đổi trạng thái đối tượng
b Thay đổi nồng độ hay độ đậm đặc
c Thay đổi độ dẻo
d Thay đổi nhiệt độ, thể tích
1.36 Sử dụng chuyển pha
a Sử dụng các hiện tượng nảy sinh trong quá trình chuyển pha như: thay đổi thể tích, toả hay hấp thu nhiệt lượng
1.37 Sử dụng sự nở nhiệt
a Sử dụng sự nở (hay co) nhiệt của các vật liệu
b Nếu đã dùng sự nở nhiệt, sử dụng với vật liệu có các hệ số nở nhiệt khác nhau
1.38 Sử dụng các chất oxy hoá mạnh
a Thay không khí thường bằng không khí giàu oxy
b Thay không khí giàu oxy bằng chính oxy
c Dùng các bức xạ ion hoá tác động lên không khí hoặc oxy
d Thay oxy giàu ozon (hoặc oxy bị ion hoá) bằng chính ozon
1.39 Thay đổi độ trơ
a Thay môi trường thông thường bằng môi trường trung hoà
b Đưa thêm vào đối tượng các phần , các chất , phụ gia trung hoà
c Thực hiện quá trình trong chân không
1.40 Sử dụng các vật liệu hợp thành (composite)
Chuyển từ các vật liệu đồng nhất sang sử dụng những vật liệu hợp thành (composite) Hay nói chung sử dụng các vật liệu mới
Trang 102 PHẦN 2 : QUÁ TRÌNH HÌNH THÀNH VÀ PHÁT TRIỂN CỦA
MICROSOFT NET FRAMEWORK
2.1 LỊCH SỬ RA ĐỜI VÀ PHÁT TRIỂN CỦA NET FRAMEWORK
2.1.1 HOÀN CẢNH RA ĐỜI CỦA NGÔN NGỮ C# VÀ NET FRAMEWORK
Vào khoảng những năm 90, công ty Sun Microsystems đã cho ra đời một ngôn ngữ hoàn toàn hướng
đối tượng và dễ sử dụng là Java, cho phép ta viết chương trình chạy trên đa nền tảng
(multi-platform) Sự ra đời của Java là một cuộc cách mạng thật sự cho cộng đồng phát triển
Bối cảnh lúc bấy giờ, các nền tảng phát triển của Microsoft ( MFC, VS C++, VB6, VBScript, Javascript, …) là một mớ hỗn độn rất khó sử dụng và không thể thống nhất cho phép chúng ta viết
ứng dụng 1 lần, chạy nhiều nơi “Write once, run anywhere” như Java
Trước sự phát triển mạnh mẽ của Java và sự qua mặt của Sun, Microsoft quyết định sẽ cho ra đời
1 nền tảng và ngôn ngữ lập trình tương tự để cạnh tranh với sự trỗi dậy mạnh mẽ của Sun Java
Năm 1996, cha đẻ của ngôn ngữ nổi tiếng C++ và là kiến trúc sư trưởng Ander Hejlsberg đã rời
khỏi công ty Borland và gia nhập đội ngũ phát triển của Microsoft
Thành công đầu tiên của Hejlsberg là xây dựng thành công ngôn ngữ Visual J++, một ngôn ngữ sao
chép của Java nhưng chạy trên Windows Nhưng sau đó Sun đã kiện vấn đề bản quyền Java của ngôn ngữ J++ này buộc Microsoft phải ngừng phát triển ngôn ngữ này
Vào tháng 1/1999, Ander Hejlsberg đã thành lập nên một đội ngũ với mong muốn tạo ra 1 ngôn
ngữ mới, ban đầu nó được gọi là COOL (C like Object Oriented Language) Vào tháng 7/2000 tại hội nghị các nhà phát triển PDC, ngôn ngữ được đổi tên là C# (đọc là C Sharp) C# là sự kết
hợp những điểm mạnh và khắc phục những khiếm khuyết của các ngôn ngữ C++, Java, Delphi và Smalltalk Và kể từ năm 2000, Hejlsberg được bổ nhiệm làm kiến trúc sư trưởng dự án phát triển C#
Cùng song song phát triển ngôn ngữ chủ lực C# cho nền tảng mới, Microsoft cũng phát triển NET
Framework vào cuối những năm 90, ban đầu được đặt tên là Next Generation Windows Services
(NGWS) Vào cuối năm 2000 bản beta version của NET 1.0 được công bố Và cho đến nay, NET
Framework đã phát triển đến version 4.5 beta 2 và sẽ được release trong năm 2012
Trên đây là bối cảnh ra đời của C# và NET Framework
Trang 112.1.2 CÁC PHIÊN BẢN CỦA NET FRAMEWORK
Version Version Number Release Date Visual Studio Default in Windows
1.0 1.0.3705.0 13 February 2002 Visual Studio NET
1.1 1.1.4322.573 24 April 2003 Visual Studio NET
2003 Windows Server 2003
2.0 2.0.50727.42 7 November 2005 Visual Studio 2005 Windows Server 2003 R2
3.0 3.0.4506.30 6 November 2006 Windows Vista, Windows Server
2008
3.5 3.5.21022.8 19 November 2007 Visual Studio 2008 Windows 7, Windows Server 2008 R2
4.0 4.0.30319.1 12 April 2010 Visual Studio 2010
4.5 4.5.?????.? 2012 Visual Studio 11 Windows 8, Windows Server 8
2.1.2.1 NET Framework 1.0 :
Đây là phiên bản đầu tiên của NET Framework, trình làng vào ngày 13-02-2002 và xuất hiện trong các HĐH Win 98, Me, NT 4.0, 2000, và XP Microsoft ngừng hỗ trợ cho phiên bản này vào 10-07-2007
Một số điểm nổi bật trong NET 1.0
+ Giới thiệu Web Services và XML
Windows OS là Windows Server 2003 Phiên bản này được hỗ trợ đến ngày 14-10-2008
Những thay đổi trong NET 1.1 so với 1.0 :
- Hỗ trợ mobile ASP.NET controls
- Những thay đổi về security : cho phép Windows Form assemblies được chạy semi-trusted trên
internet, và cho phép Code Access Security trong các ứng dụng ASP.NET
- Hỗ trợ sẵn (Built-in) ODBC và Oracle database
- Cung cấp NET Compact Framework cho các thiết bị di động
Trang 12- Hỗ trợ IP v6
- Một số thay đổi của API
2.1.2.3 NET Framework 2.0
Ra đời cùng với Visual Studio 2005, MS SQL Server 2005 và BizTalk 2006 Bản 2.0
Redistribute Package cho download từ ngày 22-01-2006
- Hỗ trợ tổng quát hóa Generics (giống hàm template trong C++), và nó được tích hợp sẵn trong NET CLR
- Hỗ trợ hoàn toàn phần cứng 64bit
- Một số thay đổi trong các API
- Tích hợp với SQL Server 2005
- Bổ sung mới và cải thiện 1 số ASP.NET web controls
- Một số data controls mới với cơ chế data binding
- Tính năng Personalization cho ASP.NET : như hỗ trợ theme, skins, master pages và webparts
- NET Micro Framework
Những thay đổi trong NET 3.0 :
- Windows Presentation Foundation (WPF) : tên mã trước đây là Avalon, đây là một hệ
thống giao diện và API mới dựa trên XML và vector graphics, sử dụng phần cứng đồ họa 3D
và Direct3D
- Windows Communication Foundation (WCF) : tên mã là Indigo, đây là một hệ thống giao
tiếp hướng đến dịch vụ (service-oriented messaging system), cho phép các chương trình giao tiếp với nhau ở gần hay từ xa, tương tự như web services
- Windows Workflow Foundation (WF) : cho phép xây dựng nên hệ thống tự động của các
tác vụ và các giao dịch tích hợp, hay gọi là các workflow
- Windows CardSpace : tên trước đây là InfoCard, đây là thành phần giúp lưu trữ an toàn
các chứng minh số (digital itentities), và cung cấp 1 giao diện thống nhất chọn lựa chứng minh
số cho 1 giao dịch, như việc đăng nhập vào 1 website
Trang 132.1.2.5 NET Framework 3.5
Phiên bản NET 3.5 được công bố ngày 19-11-2007, nhưng không được tích hợp trong Windows Server 2008, giống như NET 3.0, NET 3.5 sử dụng CLR của 2.0 Phiên bản 3.5 bổ sung tính năng mới là LINQ (Language Integrated Query) Phiên bản NET Compact Framework 3.5 cũng được trình làng hỗ trợ các tính năng mới cho Windows Mobile và Windows Embedded CE
devices
Các tính năng mới bổ sung trong NET 3.5 SP1 :
- Cải thiện performance cho WPF
- Giới thiệu ADO.NET Entity Framework và ADO.NET Data Services
- 2 assembly mới : System.Web.Abstraction và System.Web.Routing dùng trong ASP.NET
MVC Framework
- NET 3.5 SP1 tích hợp trong SQL Server 2008 và VS 2008 SP1, nó cũng được tích hợp sẵn
trong Windows 7 và Windows Server 2008 R2
Các tính năng trong NET 3.5 SP1 Client Profile :
.NET 3.5 SP1 Client Profile là 1 phiên bản thu nhỏ của NET Framework, chỉ có dung lượng 28MB, nhỏ hơn rất nhiều so với NET Framework đầy đủ, nó chỉ cài đặt những thành phần cần thiết cho ứng dụng desktop
- Bổ sung kiểu mới : System.Numerics.BigInteger và số phức System.Numerics.Complex
- Giới thiệu Windows Server AppFabric
- Tất cả thư viện mới này nằm trong Windows Runtime (WinRT) : một hệ sinh thái mới cho
phép sử dụng nhiều nền tảng và ngôn ngữ khác nhau: NET, C++, và HTML5/JavaScript WinRT cho phép ta dễ dàng sử dụng code-cross platform
- Nâng cấp tính năng cho MEF (Managed Extensibility Framework) : support generics type,
convention-based programming, multiple-scopes support
- Thao tác file bất đồng bộ (Asynchronous File Operations)
- ASP.NET :
+ Hỗ trợ những kiểu form mới HTML5
+ Model binders cho Web form
Trang 14- Thêm System.Net.Http và System.Net.Http.Headers
- WPF :
+ Ribbon control
+ INotifyDataErrorInfo interface, hỗ trợ đồng bộ và bất đồng bộ data validation
+ cải thiện performance
+ support weak event patterns, và events bây giờ có thể support markup extension
+ data binding to static properties or custom types
Trang 152.2 KIẾN TRÚC CỦA NET FRAMEWORK (.NET ARCHITECTURE)
Sau đây chúng ta sẽ đi sâu hơn về kiến trúc bên trong của NET Framework, và các thành phần cơ bản cấu thành
- NET cho phép viết ứng dụng cross-platform
- Vị trí của NET Framework trong ứng dụng NET apps
- Vài điểm chính của kiến trúc NET :
+ Đa ngôn ngữ (multi-language)
+ Đa nền tảng (multi-platform)
+ Dựa trên CLR, FCL (Framework Class Library) và công nghệ JIT (Just-In-Time)
+ Các thành phần NET được đóng gói thành các assemblies