Nghiên cứu lựa chọn công cụ xây dựng chương trình

Một phần của tài liệu Ứng dụng công nghệ thông tin trong quản lý khai thác tạp chí địa chất (Trang 64 - 82)

Chương 3 XÂY DỰNG CHƯƠNG TRÌNH MÁY TÍNH QUẢN LÝ VÀ KHAI THÁC TẠP CHÍ ĐỊA CHẤT

3.1. Nghiên cứu lựa chọn công cụ xây dựng chương trình

Công cụ thực hiện sẽ quyết định điểm mạnh yếu của chương trình xây dựng trên đó. Do vậy, việc nghiên cứu đặc trưng của chương trình, cân nhắc những điểm mạnh, điểm yếu của môi trường xung quanh chương trình, để chọn được công cụ phù hợp là vô cùng quan trọng.

Với những yêu cầu đặt ra ở phần trên, đối với việc quản lý và khai thác Tạp chí Địa chất, việc tạo một Website là hoàn toàn phù hợp, không những đáp ứng được việc quản lý mà còn giúp cho việc khai thác thông tin, chia sẻ thông tin một cách nhanh chóng, tiện lợi, chính xác.

Xây dựng một Website quản lý cần có hai công cụ chính là hệ quản trị cơ sở dữ liệu để xây dựng, quản lý dữ liệu cho hệ thống và ngôn ngữ lập trình để xây dựng trang Web.

Trước đây, các ứng dụng về cơ sở dữ liệu hầu hết được xây dựng trên hệ quản trị cơ sở dữ liệu truyền thống là Foxpro, Access, các hệ này rất mạnh trong phạm vi ứng dụng nhỏ.

Hiện nay, xuất hiện thêm nhiều hệ quản trị mới phát huy khả năng trong các ứng dụng lớn như: DB2, SQL server hay Oracle. Trong ứng dụng, chúng tôi lựa chọn hệ quản trị cơ sở dữ liệu là SQL server 2000. SQL server là hệ quản trị cơ sở dữ liệu được phát triển trong môi trường tính toán phía máy chủ trong thập kỷ 90 của thế kỷ 20, bắt đầu với mô hình truyền thống khách/chủ (client/server) và hiện đang phát triển với các xu hướng công nghiệp. Gần đây, SQL server được điều chỉnh để thích nghi với các vai trò

57

khác của server, như Internet, các ứng dụng phân tán. SQL server có khả năng thực hiện các câu hỏi với các nguồn dữ liệu phân tán. Như vậy SQL server là hệ quản trị cơ sở dữ liệu mạnh, dễ sử dụng.

Công cụ dùng để phát triển mạng: dùng Visul Studio.NET để triển khai các trang ASP.NET. Ngôn ngữ lập trình được sử dụng trong trang ASP.NET là VB.NET. Ngôn ngữ này là một trong 25 ngôn ngữ lập trình của .NET được hỗ trợ bởi NET Framework và CLR. VB.NET khác hẳn với ngôn ngữ VB6 và thật sự chuyển thành một ngôn ngữ lập trình OOL chính yếu.

3.1.1. H qun tr cơ s d liu 3.1.1.1. Giới thiệu SQL Server 2000

SQL Server là một hệ quản trị cơ sở dữ liệu quan hệ (RDBMS - Rational Database Management System). RDBMS được xây dựng trên nền tảng lý thuyết về mô hình cơ sở dữ liệu quan hệ, là mô hình thông dụng và nhiều ưu điểm nhất hiện nay. Ngoài ra SQL Server còn là một mô hình cơ sở dữ liệu kiểu khách -chủ (Client -Server).

SQL Server là phần Server của chương trình, có nhiều Client khác nhau được chọn để từ đó có thể kết nối với SQL Server trong đó có cả các tiện ích của Server (như SQL Server Query Analyzer....).

Trong mô hình Client - Server, khi một truy vấn chạy, Server sẽ dò tìm những bản ghi dữ liệu nào phù hợp với yêu cầu của Client. Điều này không những tiết kiệm thời gian mà còn có thể thực thi nhanh hơn là thực hiện các truy vấn tại các máy trạm.

Các mô hình truy cp d liu trong SQL Server

• ADO (Active X Data Object): là mô hình được sử dụng trong chương trình này

• ODBC (Open Database Connective)

58

• OLE DB

• JDBC (Java Database Connectivity)

3.1.1.2. Mô hình kiến trúc hệ thống Client - Server

Chúng ta đã biết hầu hết các hệ thống ứng dụng được xây dựng với các hàm cho các giao diện người dùng cuối, cho việc tiến hành các logic nghiệp vụ và cho việc truy xuất dữ liệu trong hệ cơ sở dữ liệu. Chính vì vậy nên có các vấn đề nảy sinh như:

• Hạn chế về dải thông: dải thông làm chậm tốc độ âm thanh, hình ảnh và các dữ liệu lưu trữ dưới dạng đồ họa.

• Vấn đề truy cập từ xa qua mạng: các công nghệ thể hiện khả năng tương tác.

• Những gì mà máy tính có thể thay thế được con người.

• Không phải tất cả các Business Logic đều có thể cài đặt được.

Trên cơ sở này, việc nghiên cứu ứng dụng đa tầng để đáp ứng tốt yêu cầu người dùng và chương trình ứng dụng là cần thiết.

3.1.1.2.1. Mô hình và đặc trưng của kiến trúc đa tầng Mô hình tổng quát kiến trúc đa tầng được mô tả như hình 3.1.

Hình 3.1. Mô hình ứng dụng kiến trúc đa tầng Mô hình này gm có ba lp:

59

• Người dùng

• Các ứng dụng

• Cơ sở dữ liệu

Đặc trưng: Các ứng dụng không cần đặt trên máy Client mà được đặt trên Server. Cho nên các Client khi nối vào Server luôn luôn được cung cấp một phiên bản mới nhất. Lập trình trên mạng không phụ thuộc vào các hệ điều hành. Lập trình Web là một điển hình về kiến trúc Client - Server vì các chương trình ứng dụng được chạy trên máy chủ còn các Client sử dụng trình duyệt kết nối vào máy chủ để nhận các tin dịch vụ.

3.1.1.2.2. Mô hình kiến trúc Client - Server 2 tầng

Mô hình kiến trúc Client – Server 2 tầng được mô tả như hình 3.2.

Hình 3.2. Mô hình kiến trúc Client - Server 2 tầng Trong mô hình này ta thấy:

• Client kết nối trực tiếp vào máy chủ chứa cơ sở dữ liệu.

• Client điều khiển hiển thị, tương tác với người dùng, có thể cả các ứng dụng logic.

• Server điều khiển truy cập dữ liệu.

3.1.1.2.3. Mô hình kiến trúc Client - Server 3 tầng

Mô hình kiến trúc Client - Server 3 tầng được mô tả như hình 3.3.

60

Hình 3.3. Mô hình kiến trúc Client - Server 3 tầng Đây là một kiến trúc để phát triển cài đặt các ứng dụng phân tán:

• Các ứng dụng phân tán chủ yếu yêu cầu dịch vụ ở mức hệ thống (quản lý giao dịch, bảo mật, kết nối Client, truy xuất cơ sở dữ liệu...).

• Các dịch vụ trên môi trường phân tán: cho phép các lập trình viện tập trung vào các ứng dụng logic, không đi sâu vào mức hệ thống:

o Tầng 1: giải pháp công nghệ cho client độc lập.

o Tầng 2: giải pháp công nghệ cho Middle-Tier, nên quan tâm đến các ngôn ngữ lập trình.

o Tầng 3: giải pháp công nghệ cho cơ sở dữ liệu, nên quan tâm đến các hệ quản trị cơ sở dữ liệu.

• Middle - Tier là một thành phần sống còn của hệ thống. Tại đây nó truy xuất cơ sở dữ liệu theo ứng dụng logic và trả lại cho Client. Đồng thời điều khiển các yêu cầu từ Client về bảo vệ và chống truy cập cơ sở dữ liệu, đảm nhận việc thực hiện quy trình nghiệp vụ trong suốt quá trình sử dụng của người dùng.

• Client là điều khiển giao diện người dùng, không có chức năng truy xuất cơ sở dữ liệu, không thực hiện quy trình nghiệp vụ phức tạp, không kết nối trực tiếp với cơ sở dữ liệu.

61

• Mô hình liên tác thông qua Middle - Tier được mô tả trong hình 3.4:

Hình 3.4. Mô hình liên tác thông qua Middle Tier

Vì những đặc điểm trên, nên chương trình ứng dụng Quản lý và khai thác Tạp chí Địa chất được sử dụng mô hình kiến trúc Client - Server ba tầng.

Trình chủ Web nằm trên một máy chủ, trình khách chỉ cần sử dụng trình duyệt Web (Web Browser) kết nối vào máy chủ để truy cập được thông tin và dịch vụ tương ứng. Trình chủ sử dụng trang ASP.NET để kết nối với cơ sở dữ liệu, các đối tượng phân tán nằm trên một máy chủ khác làm nhiệm vụ xử lý, tính toán và trả kết quả cho trình khách thông qua các trang Web tĩnh. Mô hình này có thể được mô tả như hình 3.5:

Hình 3.5. Mô hình ứng dụng Web

Database

Server Web

Server

Internet/Intranet HTML, XML

Tương tác Users

Logic ứng dụng Presentation

62

3.1.2. Công c lp trình Web - ASP.NET 3.1.2.1. Giới thiệu về DOT NET (.NET)

.NET gồm có hai phần: NET Framework và môi trường phát triển (IDE - Intergrated Development Enviroment). NET Framework cung cấp tất cả những gì cần thiết căn bản để các ứng dụng phát triển trên nó. Còn IDE cung cấp một môi trường giúp ta triển khai dễ dàng, nhanh chóng hơn. Nếu không có IDE ta cũng có thể dùng Notepad để triển khai nhưng chậm hơn. Tóm lại, Framework là quan trọng nhất, còn IDE chỉ là một công cụ gắn lên phía trên Framework.

Trong Visual Studio.NET, C# và VB.NET đều dùng cùng một IDE.

Một cách tổng quát .NET Framework là kiểu mẫu lập trình cách mạng cho tất cả những gì liên quan đến nền Windows.

Framework của .NET gói hệ thống lại khiến lập trình viên không phải quan tâm đến những việc liên quan đến hệ thống như điều khiển file và quản lý bộ nhớ. Chúng ta sẽ hiểu rõ hơn điều này khi xem phần kiến trúc FrameWork mô tả trong hình 3.6.

Hình 3.6. Các thành phần chính của Net - Framework

ASP.NET Application Services Web Forms Web Services

ASP.NET

Windows Application Services

Controls Drawing

WindowsForms

ADO.NET

NET FrameWork Base Classes

XML Theadding Other…

Memory Management

Common Language Runtime

Common Type System Lifecycle Monitoring

63

3.1.2.2. Xây dựng ứng dụng WEB với ASP.NET

Những năm gần đây, xây dựng ứng dụng trên nền Web đã phát triển, do những ưu điểm nổi trội về lập trình, cũng như triển khai, đặc biệt là việc triển khai ứng dụng đã trở nên đơn giản hơn và ít tốn kém hơn. Cùng với sự phát triển của Internet các ngôn ngữ giúp lập trình trên internet cũng phát triển mạnh mẽ bởi các hãng phần mềm trên thế giới. Microsoft phát triển ASP.NET nhằm phát triển ứng dụng Web với những tính năng vượt trội giúp nhà phát triển thuận lợi trong thiết kế cũng như lập trình triển khai. Phần này ta sẽ nghiên cứu kỹ về ASP.NET để xây dựng nên một ứng dụng Web chuyên nghiệp.

3.1.2.2.1. ASP.NET (Active Server Page .NET)

ASP.NET là một công nghệ có tính cách mạng, dùng để phát triển các ứng dụng Web hiện nay cũng như trong tương lai. ASP.NET là một phương pháp dựa trên CLR (Common Language Runtime) để thiết lập các ứng dụng mạng, chứ không phải là một ngôn ngữ lập trình. Ngôn ngữ lập trình được dùng để diễn đạt ASP.NET, ở đây là C# và C# chỉ là một trong 25 ngôn ngữ .NET, hiện nay được dùng để phát triển các trang ASP.NET.

Khi nhắc đến ASP.NET người ta nghĩ nó gần giống như ASP cổ điển, nhưng thực chất nó không phải là ASP. Phần sau cho thấy ASP.NET có một số điểm mới và khác cơ bản so với ASP.

3.1.2.2.2. Cơ sở hạ tầng của các ứng dụng Web trên nền tảng ASP.NET Các đặc điểm nổi bật:

• Hỗ trợ giao diện người sử dụng

Các thành phần điều khiển đa năng (rich control) là một phần trong cài đặt của thư viện ASP.NET. Những điều khiển này giúp chúng ta tạo ra giao diện Web một cách nhanh chóng và đơn giản. Thành phần rich control chạy trên Server và có khả năng tạo ra mã HTML 3.2 tương thích với hầu hết các trình duyệt cũ. Đồng thời chúng ta cũng có thể yêu cầu sinh mã tận dụng các tính năng nâng cao hỗ trợ nhờ trình duyệt phía máy khách như HTML

64

3.2.0, các dịch vụ hỗ trợ bởi Internet Explorer (IS) 4, 5, 6…Chúng ta có thể mở rộng, kế thừa các thành phần điều khiển chuẩn từ thư viện sẵn có.

• Hỗ trợ truy xuất dữ liệu

Môi trường phát triển Visual Studio.NET cung cấp phiên bản mới của ADO gọi là ADO+ (hay ADO.NET). Phiên bản ADO+ cho phép truy xuất dữ liệu bất kể khuôn dạng hoặc vị trí của dữ liệu.

ADO+ thiết kế theo mô hình hướng đối tượng dựa trên dữ liệu quan hệ, chúng cho phép các nhà phát triển có khả năng trích rút dữ liệu từ các nguồn dữ liệu phân tán.

ADO+ cũng tăng cường khả năng hỗ trợ dữ liệu XML. Chúng ta có thể tạo các tập dữ liệu Recordset từ XML, lưu trữ, đóng gói và truyền đi trên mạng. Dữ liệu XML có thể đọc và hiểu được bởi rất nhiều ứng dụng Internet.

• Khả năng mở rộng dành cho các ứng dụng phân tán

Hai yêu cầu thiết yếu với tất cả các ứng dụng dựa trên nền Web đó là hệ điều hành nền (Platform) phải vững chắc và khả năng mở rộng trên môi trường truy xuất lớn cho phép xử lý nhiều kết nối. Môi trường thực thi của FrameWork cung cấp các chức năng tự động kiểm tra lỗi và tự động phát hiện ra những quá tải. FrameWork sẽ tìm cách khởi động và tái tạo lại những ứng dụng cũng như thành phần đối tượng để cho khả năng phục vụ của chúng với các kết nối tốt hơn. Điều này sẽ giảm thiểu những lỗi như tài nguyên hệ thống cạn kiệt, kết nối tắc nghẽn…

.NET FrameWork này cũng được cập nhật với những dịch vụ hạ tầng mới như dịch vụ cho phép tự quản lý và dọn dẹp rác trong bộ nhớ, dịch vụ phân phối và làm đối tượng trung gian trong các lời gọi đối tượng phân tán ở xa, dịch vụ bảo mật trong các truy xuất tài nguyên mạng. Tất cả các dịch vụ được tích hợp trong một tổng thể thống nhất, sử dụng cũng như phân bổ tài nguyên một cách hợp lý.

65

• Tương thích với phần mềm hiện có và giảm chi phí đầu tư

Mặc dù có sự thay đổi lớn trong hệ điều hành và môi trường thực thi nhưng vẫn chú trọng đến tính tương thích với các phiên bản của COM, DCOM và ASP. Trong hầu hết các trường hợp những ứng dụng COM, DCOM, ASP, những kịch bản hoặc tệp (file) thực thi đều hoạt động trơn tru trong môi trường thực thi mới.

3.1.2.2.3. So sánh giữa ASP.NET và ASP

ASP được thiết kế riêng biệt và nằm ở tầng phía trên hệ điều hành Windows và Internet Information Server, do đó các công dụng của nó hết sức rời rạc và giới hạn. Cụ thể như sau:

Các phiên bản ASP trước đây (2.0 hoặc 3.0) chỉ được dùng và gắn vào hệ điều hành như một phần hỗ trợ (add - on). Kể cả phiên bản mới nhất 3.0 cũng vẫn tồn tại khái niệm kết gán (add - on) dựa vào kỹ thuật ISAPI DLL.

ASP 3.0 sử dụng thư viện asp.dll cùng một vài file phụ trợ khác để nâng cấp phiên bản 2.0 sang phiên bản 3.0.

Với ASP.NET thì hoàn toàn khác, ASP.NET được phác thảo lại từ số không, nó được thay đổi tận gốc rễ và phát triển phù hợp với yêu cầu hiện nay.

ASP.NET là một cơ cấu trong các cơ cấu của hệ điều hành Windows dưới dạng nền hay khung .NET (.NET framework), ASP.NET không những có thể dùng các object của các ứng dụng cũ, mà còn có thể sử dụng tất cả mọi tài nguyên mà Windows đang có một cách dễ dàng. Nhờ vậy, có thể nói ASP.NET không phải là ASP. Thật vậy, ASP.NET cung cấp một phương pháp hoàn toàn khác biệt với phương pháp của ASP. Mặc dù ASP.NET và ASP khác biệt nhau nhưng chúng có thể hoạt động hài hòa với nhau trong một Web Server. Do đó, khi cài ASP.NET, ta không cần lập trình lại các ứng dụng hiện có dưới dạng ASP, tuy nhiên nếu muốn, có thể làm điều đó rất dễ dàng.

Có thể tóm tắt một vài thay đổi chính như sau:

66

• Tập tin của ASP.NET có phần mở rộng là .ASPX, còn tập tin của ASP là .ASP.

• Tập tin của ASP.NET được phân tích ngữ pháp bởi XSPISAPI.DLL, còn tập tin của ASP được phân tích bởi ASP.DLL.

• ASP.NET là kiểu mẫu lập trình phát động bằng sự kiện, còn các trang ASP được thi hành theo thứ tự tuần tự từ trên xuống dưới.

• ASP.NET sử dụng trình biên dịch nên rất nhanh, còn ASP dùng trình thông dịch do đó hiệu suất và tốc độ phát triển cũng thua sút hẳn.

• ASP.NET hỗ trợ gần 25 ngôn ngữ lập trình mới với .NET và chạy trong môi trường biên dịch, còn ASP chỉ chấp nhận VBScript và JavaScript nên ASP chỉ là một Scripted Language trong môi trường thông dịch. Không những vậy, ASP.NET còn kết hợp nhuần nhuyễn với XML để chuyển vận các thông tin qua mạng.

• ASP.NET hỗ trợ tất cả các Browser (trình duyệt) và quan trọng hơn nữa là nó hỗ trợ các thiết bị lưu động. Chính do các thiết bị lưu động ngày càng phổ biến, đã khiến việc dùng ASP trong việc phát triển mạng nhằm vươn tới thị trường mới càng trở nên vô cùng khó khăn.

3.1.2.2.4. Xây dựng ứng dụng web với ASP.NET - cơ cấu hoạt động của trang ASP.NET

Khi trình khách lần đầu tiên yêu cầu trang ASP.NET, trình chủ Web Server sẽ kiểm tra xem trang ASP đã được biên dịch và lưu trong bộ đệm hay chưa. Nếu chưa, môi trường thực thi biên dịch .NET sẽ biên dịch trang ASP.NET mà trình khách yêu cầu và đưa mã trang vào vùng đệm. Trang ASP được biên dịch ra mã trung gian IL (khác với mã nhị phân như các chương trình .exe). Vì lý do này, mọi ngôn ngữ lập trình có khả năng tạo ra mã IL đều có thể dùng để viết trang ASP.NET. Những ngôn ngữ được dùng để viết trang ASP là VB, C++, C#, Jscript và sau này có thể là Perl, Java…

Một phần của tài liệu Ứng dụng công nghệ thông tin trong quản lý khai thác tạp chí địa chất (Trang 64 - 82)

Tải bản đầy đủ (PDF)

(131 trang)