CHƯƠNG 1: GIỚI THIỆU 1.1 Giới thiệu về Microsoft .NET và Kiến trúc .1 Giới thiệu về Microsoft .Net không phải là một ngôn ngữ lập trình, đó là một không gian làm việc tổng hợp bởi bốn bộ ngôn ngữ lập trình: C#, VB.NET, Managed C++, and J#. ở đó có sự chồng gối lên nhau của các ngôn ngữ, và được định nghĩa trong FCL (framework class library).Net bao gồm 2 phần chính: Framework và Intergrated Development Enviroment (IDE). Framework cung cấp những gì cần thiết và căn bản, là khuôn dạng hay môi trường hỗ trợ các hạ tầng cơ sở theo một quy ước nhất định để công việc được thuận tiện. IDE cung cấp một môi trường giúp chúng ta triển khai dễ dàng và được nhanh chóng các ứng d甃⌀ng dựa trên nền tảng.
Thành phần Framework là quan trọng nhất .NET là cốt lõi và tinh hoa của môi trường, còn IDE chỉ là công c甃⌀ để phát triển dựa trên nền tảng đó.NET toàn bộ các ngôn ngữ C#, Visual C++ hay Visual Basic.NET đều dùng cùng một IDE.NET là nền tảng cho việc xây dựng và thực thi các ứng d甃⌀ng phân tán thế hệ kế tiếp. Bao gồm các ứng d甃⌀ng từ client đến server và các dịch v甃⌀ khác. Một số tính năng của Microsoft .NET cho phép những nhà phát triển sử d甃⌀ng như sau: Một mô hình lập trình cho phép nhà phát triển xây dựng các ứng d甃⌀ng dịch v甃⌀ web và ứng d甃⌀ng client với Extensible Markup Language (XML). Tập hợp dịch v甃⌀ XML Web, như Microsoft .NET My Services cho phép nhà phát triển đơn giản và tích hợp người dùng kinh nghiệm.
Cung cấp các server ph甃⌀c v甃⌀ bao gồm: Windows 2000, SQL Server, và BizTalk Server, tất cả điều tích hợp, hoạt động, và quản lý các dịch v甃⌀ XML Web và các ứng d甃⌀ng. 2 Downloaded by ANH LE (bachvan14@gmail.com) lOMoARcPSD|39108650 Các phần mềm client như Windows XP và Windows CE giúp người phát triển phân phối sâu và thuyết ph甃⌀c người dùng kinh nghiệm thông qua các dòng thiết bị. Nhiều công c甃⌀ hỗ trợ như Visual Studio .NET, để phát triển các dịch v甃⌀ Web XML, ứng d甃⌀ng trên nền Windows hay nền web một cách dể dàng và hiệu quả.Net Mô hình kiến trúc của .1: Mô hình kiến trúc của .NET Framework là một platform mới làm đơn giản việc phát triển ứng d甃⌀ng trong môi trường phân tán của Internet.NET Framework được thiết kế đầy đủ để đáp ứng theo quan điểm sau: Để cung cấp một môi trường lập trình hướng đối tượng vững chắc, trong đó mã nguồn đối tượng được lưu trữ và thực thi một cách c甃⌀c bộ. Thực thi c甃⌀c bộ nhưng được phân tán trên Internet, hoặc thực thi từ xa.
Để cung cấp một môi trường thực thi mã nguồn mà tối thiểu được việc đóng gói phần mềm và sự tranh chấp về phiên bản. Để cung cấp một môi trường thực thi mã nguồn mà đảm bảo việc thực thi an toàn mã nguồn, bao gồm cả việc mã nguồn được tạo bởi hãng thứ ba hay bất cứ hãng nào mà tuân thủ theo kiến trúc. 3 Downloaded by ANH LE (bachvan14@gmail.com) lOMoARcPSD|39108650 Để cung cấp một môi trường thực thi mã nguồn mà loại bỏ được những lỗi thực hiện các script hay môi trường thông dịch. Để làm cho những người phát triển có kinh nghiệm vững chắc có thể nắm vững nhiều kiểu ứng d甃⌀ng khác nhau.
Như là từ những ứng d甃⌀ng trên nền Windows đến những ứng d甃⌀ng dựa trên web. Để xây dựng tất cả các thông tin dựa triên tiêu chuẩn công nghiệp để đảm bảo rằng mã nguồn trên .NET có thể tích hợp với bất cứ mã nguồn khác.NET Framework có hai thành phần chính: Common Language Runtime (CLR) và thư viện lớp. CLR là nền tảng của. Phát triển ứng d甃⌀ng Client Những ứng d甃⌀ng client cũng gần với những ứng d甃⌀ng kiểu truyền thống được lập trình dựa trên Windows.
Đây là những kiểu ứng d甃⌀ng hiển thị những cửa sổ hay những form trên desktop cho phép người dùng thực hiện một thao tác hay nhiệm v甃⌀ nào đó. Những ứng d甃⌀ng client bao gồm những ứng d甃⌀ng như xử lý văn bản, xử lý bảng tính, những ứng d甃⌀ng trong lĩnh vực thương mại như công c甃⌀ nhập liệu, công c甃⌀ tạo báo cáo.Những ứng d甃⌀ng client này thường sử d甃⌀ng những cửa sổ, menu, toolbar, button hay các thành phần GUI khác, và chúng thường truy cập các tài nguyên c甃⌀c bộ như là các tập tin hệ thống, các thiết bị ngoại vi như máy in. Một loại ứng d甃⌀ng client khác với ứng d甃⌀ng truyền thống như trên là ActiveX control (hiện nay nó được thay thế bởi các Windows Form control) được nhúng vào các trang web trên Internet. Các ứng d甃⌀ng này cũng giống như những ứng d甃⌀ng client khác là có thể truy cập tài nguyên c甃⌀c bộ.NET Framework chứa trong .NET Framework được thiết kế cho việc sử d甃⌀ng phát triển các GUI.
Điều này cho phép người phát triển nhanh chóng và dễ dàng tạo các cửa sổ, button, menu, toolbar, và các thành phần khác trong các ứng d甃⌀ng được viết ph甃⌀c v甃⌀ cho lĩnh vực thương mại.2 Ngôn ngữ lập trình C# Ngôn ngữ C# khá đơn giản, chỉ khoảng 80 từ khóa và hơn mười mấy kiểu dữ liệu được xây dựng sẵn. Tuy nhiên, ngôn ngữ C# có ý nghĩa cao khi nó thực thi 4 Downloaded by ANH LE (bachvan14@gmail.com) lOMoARcPSD|39108650 những khái niệm lập trình hiện đại. C# bao gồm tất cả những hỗ trợ cho cấu trúc, thành phần component, lập trình hướng đối tượng. Phần cốt lõi hay còn gọi là trái tim của bất cứ ngôn ngữ lập trình hướng đối tượng là sự hỗ trợ của nó cho việc định nghĩa và làm việc với những lớp.
Những lớp thì định nghĩa những kiểu dữ liệu mới, cho phép người phát triển mở rộng ngôn ngữ để tạo mô hình tốt hơn để giải quyết vấn đề. Ngôn ngữ C# chứa những từ khóa cho việc khai báo những kiểu lớp đối tượng mới và những phương thức hay thuộc tính của lớp, và cho việc thực thi đóng gói, kế thừa, và đa hình, ba thuộc tính cơ bản của bất cứ ngôn ngữ lập trình hướng đối tượng. Trong ngôn ngữ C# mọi thứ liên quan đến khai báo lớp điều được tìm thấy trong phần khai báo của nó. Định nghĩa một lớp trong ngôn ngữ C# không đoi hỏi phải chia ra tập tin header và tập tin nguồn giống như trong ngôn ngữ C++.
Hơn thế nữa, ngôn ngữ C# hỗ trợ kiểu XML, cho phép chèn các tag XML để phát sinh tự động các document cho lớp. Ngôn ngữ C# cung cấp những đặc tính hướng thành phần (component- oriented), như là những thuộc tính, những sự kiện. Lập trình hướng thành phần được hỗ trợ bởi CLR cho phép lưu trữ metadata với mã nguồn cho một lớp.3 Hệ quản trị cơ sở dữ liệu Microsoft SQL Server 1.1 Microsoft SQL Server là gì? Microsoft SQL Server là một hệ quản trị cơ sở dữ liệu quan hệ được phát triển bởi Microsoft. Là một máy chủ cơ sở dữ liệu, nó là một sản phẩm phần mềm có chức năng chính là lưu trữ và truy xuất dữ liệu theo yêu cầu của các ứng d甃⌀ng phần mềm khác.
Có thể chạy trên cùng một máy tính hoặc trên một máy tính khác trên mạng (bao gồm cả Internet). Cũng giống như các phần mềm RDBMS (relational database management system viết tắt là RDBMS) khác, Microsoft SQL Server được xây dựng bên trên lớp SQL - ngôn ngữ lập trình tiêu chuẩn hóa mà quản trị viên cơ sở dữ liệu (DBAs) và các chuyên gia CNTT sử d甃⌀ng để quản lý cơ sở dữ liệu và truy vấn dữ liệu nằm bên trong. SQL Server cung cấp đầy đủ công c甃⌀ để quản lý, từ giao diện GUI cho đến việc sử d甃⌀ng ngôn ngữ truy vấn SQL. Ngoài ra điểm mạnh của nó là Microsoft có khá nhiền nền tảng kết hợp hoàn hảo với SQL Server như ASP.NET, C# xây dựng Winform.2 Ưu điểm của Microsoft SQL Server Đơn giản hóa 5 Downloaded by ANH LE (bachvan14@gmail.com) lOMoARcPSD|39108650 Microsoft SQL Server được yêu thích với các nhà phát triển và quản trị viên ảo hóa là dễ sử d甃⌀ng.
Phát triển và xử lý sự cố thường là các khía cạnh khó khăn nhất để hoàn thiện khi nghĩ về việc đưa một dự án SQL vào sản xuất. MS SQL đi kèm với các công c甃⌀ tuyệt vời sẽ giúp bạn tiết kiệm rất nhiều thời gian trong các lĩnh vực này đó là các công c甃⌀ như SQL Server Profiler, SQL Server Management Studio, BI tools và Database Tune Advisor. Thiết lập hầu hết mọi thứ, từ cài đặt trên VM đến viết và chỉnh sửa truy vấn ban đầu, cực kỳ dễ dàng với MS SQL – đặc biệt là so với các sản phẩm SQL khác. Nếu có vấn đề trong bất kỳ giai đoạn phát triển nào, có rất nhiều hỗ trợ và tài liệu trực tuyến ngoài hỗ trợ sản phẩm trực tiếp, trong khi các tùy chọn hỗ trợ cho các sản phẩm SQL khác gần như không mạnh mẽ.
SQL Server còn hơn cả một RDBMS Sự khác biệt lớn nhất giữa một phần mềm độc quyền và phần mềm mã nguồn mở là việc nó được hỗ trợ như thế nào, được hỗ trợ riêng hay không. Trong trường hợp này, lợi thế của SQL server rất rõ ràng, nó được bảo trợ bởi một tập đoàn công nghệ lớn nhất toàn cầu. Microsoft đã xây dựng nhiều công c甃⌀ mạnh mẽ cho SQL Server, hỗ trợ nhiều hơn cho RDBMS, bao gồm các công c甃⌀ phân tích dữ liệu. Nó cũng có tính năng dịch v甃⌀ báo cáo server – SQL Server Reporting servies, cũng như là công c甃⌀ ETL.
Bạn cũng có thể xây dựng các tính năng tương tự trong MySQL, nhưng cần có sự hỗ trợ từ bên thứ ba – vốn không phải là lý tưởng nhất cho mọi người. Hệ thống lưu trữ Sự khác biệt lớn khác nhưng không được xem trọng là MySQL và SQL Server có cách khác nhau để lưu trữ liệu. SQL server sử d甃⌀ng một hệ thống lưu trữ được phát triển bởi Microsoft, khác hoàn toàn so với nhiều loại hệ thống được tạo ra cho MySQL. Điều này giúp lập trình viên MySQL có sự linh hoạt nhất định, vì có thể dùng nhiều hệ thống lưu trữ khác nhau cho bảng, dựa trên tốc độ, độ tin cậy hoặc các lý do khác.
Một hệ thống lưu trữ phổ biến của MySQL là InnoDB, có thể chậm hơn nhưng ổn định hơn so với MyISAM. Bảo mật Với MS SQL Server, Microsoft đã cung cấp cho SQL server những tính năng bảo mật đáng giá và mạnh mẽ. Một công c甃⌀ bảo mật riêng như – Microsoft Baseline Security Analyzer cũng giúp bạn tăng tính bảo mật cho SQL Server. Vì vậy, nếu an toàn là điều ưu tiên nhất của bạn, bạn đã biết nên chọn nền tảng nào rồi đấy.
Cộng đồng hỗ trợ SQL Server có một cộng đồng trao đổi và hỗ trợ bởi các lập trình, chuyên gia giỏi và có mặt khắp thế giới với ngôn ngữ phong phú.