Tải bản đầy đủ (.doc) (46 trang)

Khóa luận TN ĐH 2

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.41 MB, 46 trang )

Khoá luận tốt nghiệp SV thực hiện: Hoàng Văn Thắng – MSSV 11030119SB
PHẦN 1: CƠ SỞ LÝ THUYẾT
Chương 1: TÌM HIỂU VỀ CMS
1.1. Định nghĩa CMS
CMS là một hệ thống quản lý các thành phần làm nên nội dung của một
website. Nói cụ thể hơn, CMS là một hệ thống quản lý việc khởi tạo nội dung, quá
trình xử lý nội dung đó cho đến khi nó được xuất bản, phân phối cho người dùng
cuối.
Nội dung được quản lý bao gồm computer files, images, media, audio
files.electronic documents và nội dung web.
Ý nghĩa chính của CMS là làm tăng tính tương tác của các file thông qua web.
CMS thông thường là sự tương tác giữa hai chiều, mọi người dùng đều có thể thao
tác trên cùng một loại tài liệu. Nhiều công ty sử dụng CMS để lưu file dùng chung,
bên cạnh đó CMS còn dùng để lưu file, chia sẽ các ứng dụng dùng chung chạy trên
server, bao gồm cả việc mở rộng thêm tài liệu. Như ví dụ ở trên nhiều hệ thống
CMS bao gồm những tính năng cho Web content, và một số tính năng cho
“WorkFlow process”.
Ví dụ như phần mềm cho Wikipedia phát triển chính yếu trên wiki, là một hệ
thống quản lý nội dung trên website, một website thế hệ thứ 3 mà nội dung trên đó
được xây dựng bởi sự đóng góp kiến thức của nhiều người. Tài liệu mà người
dùng đưa lên có thể là nhiều loại như document, media, ….
1.2. Các loại hệ thống CMS
1.2.1. Web Content Management Systems (WCMS)
Là một trong những ứng dụng của hệ thống CMS thiên về việc quản lý nội
dung trên web.
1.2.2. Enterprise Content Management Systems (ECMS)
ECMS là một hệ thống CMS trên nghĩa toàn diện. Nó được sử dụng để quản
lý nội dung trên nhiều phương diện, bao hàm cả Web, in ấn hay bất kỳ một ứng
Trang 1
Khoá luận tốt nghiệp SV thực hiện: Hoàng Văn Thắng – MSSV 11030119SB
dụng nào. ECMS cung cấp nhiều chức năng tốt, phức tạp, và ứng dụng được trên


nhiều mục đích khác nhau.
1.2.3. Document Management Systems (DMS)
Về mặt kỹ thuật nó tương đương với CMS, nhưng nó chủ yếu phục vụ cho
việc quản lý tài liệu( như là tài liệu Microsoftt Word), nó hữu ích trong việc quản
lý nội dung trong lĩnh vực xuất bản. Nó cũng có nhiều chức năng tương tự như
mọi hệ thống CMS khác
1.2.4. Digital Rights Management Systems (DRMS)
DRMS có thể xem như tương đương hay bổ trợ cho CMS. Hệ thống này thiên
về việc quản lý các nội dung trong lĩnh vực Digital như là music hay video.
1.2.5. Asset Management Systems (AMS)
Hệ thống này cũng tương đương với một hệ thống CMS thông thường. Hệ
thống này thường dùng trong việc quản lý những nội dung mang tính chất thuộc về
quyền sở hữu.
1.3. Cách thức làm việc của hệ thống CMS
1.3.1. Mô hình hoạt động
Hạt nhân của mọi hệ thống CMS là những nơi lưu trữ dữ liệu ngắn, hay nội
dung cơ sở dữ liệu, nơi mà nội dung được lưu. Những người đóng góp nội dung
đưa nội dung vào hệ thống thông qua giao diện nhập của tác giả, và các danh mục
và sắp xếp chúng dựa vào các công cụ điều khiển metadata . Khi nội dung đã sẵn
sàng, CMS sẽ giúp lấy nội dung và xuất bản chúng. Kết thúc của tiến trình xuất
Trang 2
Khoá luận tốt nghiệp SV thực hiện: Hoàng Văn Thắng – MSSV 11030119SB
bản là bắt đầu của tiến trình hiễn thị nội dung cho người xem. Tất cả các tiến trình
đó được quản lý bởi CMS workflow
1.3.2. Tiện ích của CMS
− Cho phép những người đóng góp nội dung cho chúng ta
có thể tạo nội dung và lưu trữ chúng trên nơi lưu trữ. (Content Authoring)
− Cho phép chúng ta theo dõi, điều chỉnh và truy cập vào
các tiến trình tạo hay xuất bản trong hệ thống của chúng ta. Hệ thống sẽ được sắp
xếp từ một cách phức tạp đến đơn giản(Workflow Management).

− Thuộc tính này giữ nội dung tổ chức một cách hợp lý và
dễ dàng truy cập. Hầu hết CMS sử dụng các cơ sở dữ liệu có sự liên kết với nhau.
(Content Storage)
− Cho phép chúng ta tổ chức nội dung của chúng ta với
metadata và kiểu định dạng. CMS có những cách khác nhau để tiến hành việc đó,
có nhiều cách cho phép chúng ta định nghĩa và quản lý metadata và template của
chúng ta. (Publication Management)
− Cho phép chúng ta trộn nội dung dữ liệu và nội dung
format và di chuyển chúng từ nơi lưu trữ tới nơi được xuất bản (Publishing)
1.4.Lợi ích khi sử dụng hệ thống CMS
- Hiện đại, đơn giản, thuận tiện, dễ sử dụng ngay cả với những người có trình
độ tin học căn bản.
Quy trình xử lý thông tin khép kín,, tiết kiệm thời gian, chi phí hoạt động,
nâng cao hiệu quả làm việc.
Khả năng thay đổi nội dung tuỳ biến, linh hoạt, dễ dàng.
Tiết kiệm chi phí, nhân lực cho đội ngữ biên tập viên mà vẫn mang lại hiệu
quả cao.
Linh hoạt trong việc nâng cấp từ phiên bản, hệ thống cũ.
Trang 3
Khoá luận tốt nghiệp SV thực hiện: Hoàng Văn Thắng – MSSV 11030119SB
Cơ chế quản lý workflow giúp cho việc quản lý trở nên dễ dàng hơn, các tiến
trình theo dấu nhanh hơn, và nội dung được chuyển tải một cách đồng bộ hơn. Tùy
thuộc loại hệ thống của chúng ta là đơn giản hay phức tạp thì các tính năng sẽ
nhiều hay ít.
- CMS hỗ trợ mạnh chúng ta trong việc xuất bản nội dung, ví dụ chúng ta
muốn nội dung của mình có thể xuất hiện với nhiều dạng thức khác nhau mà chỉ
với một thao tác đơn giản, CMS sẽ giúp chúng ta. Hay trong trường hợp chúng ta
muốn tổng hợp nội dung từ nhiều nguồn thì CMS là lựa chọn tốt nhất. Vì CMS
không giới hạn kiểu người dùng, một người dù không biết gì về kỹ thuật thì cũng
có thể thực hiện đóng góp xây dựng nội dung, việc đó giờ đây không chỉ giới hạn

cho những người am tường kỹ thuật.
1.5. Ứng dụng hệ thống CMS trên web (Web Content
Manager System)
1.5.1. Nhu cầu thực tế:
Hiện nay, cơ chế thị trường mở cửa, công nghệ thông tin phát triển mạnh trên
toàn thế giới. Nhiều tổ chức, doanh nghiệp ngày nay đều có trang web để quảng bá
thương hiệu, cập nhật thông tin mới của mình cho mọi người truy cập.
Để một hệ thống Website hoạt động được, theo cách cũ trước đây, đầu tiên
phải xây dựng tập hợp các trang web, mỗi trang web được phát triển từ một công
cụ lập trình như HTML, ASP, PHP, Dreamware . . . . đây là công việc của các kỹ
thuật viên tin học chuyên nghiệp và thời gian đáng kể cho một hệ thống website,
Tuy nhiên nó lại không tạo điều kiện thuận lợi cho người dùng, vì tính mở và tính
thân thiện trong quản trị không cao.
Hiện nay trên thế giới đã phổ biến công nghệ có thể giải quyết vấn đề này một
cách nhanh gọn, đó là hệ quản trị nội dung CMS.
CMS rất dễ để tạo mới một trang web, hay phát triển từ một trang có sẵn. Hầu
hết các website dựa chủ yếu trên ngôn ngữ HTML và đòi hỏi hiểu biết một số kỹ
thuật để update (kỹ năng về HTML, kiến thức về Dreamweaver, FontPage ….).
Trang 4
Khoá luận tốt nghiệp SV thực hiện: Hoàng Văn Thắng – MSSV 11030119SB
1.5.2. Nội dung quản lý của trang web:
Nội dung của website bao gồm nhiều thứ như hình ảnh, tài liệu (bao gồm các
báo cáo…) âm thanh và cả video clip
CMS là một công cụ đã được công nhận là có hiệu quả trong việc quản lý nội
dung của website. Bởi vì những trang Web và links có thể tự động phát sinh từ
những dữ liệu lưu giữ trong cơ sở dữ liệu.
Bằng cách sử dụng các kỹ thuật như XML, CMS có thể cho phép nội dung lưu
trữ trong cơ sở dữ liệu nhưng có thể cung cấp cho nhiều thiết bị khác nhau như
mobile pjone, handle computer và Web TV. . .
1.5.3. Đối với người Thiết Kế

Với CMS, người phát triển website có thể tập trung vào cấu trúc của website,
navigation, giao diện mà không phải quan tâm nhiều và việc tạo và biên tập nội
dung.
Toàn bộ website có thể tương thích với thông tin mà nó được cung cấp từ cơ
sở dữ liệu và templates nó được thiết kế phù hợp với mỗi loại website khác nhau.
Các template khác nhau có thể được thiết kế cho từng vùng khác nhau nếu cần
thiết. Ví dụ như trang tin tức có thể thiết kế khác trang tổng kết.
CMS còn có thể cho phép thay đổi toàn cục website một cách dễ dàng nếu
thấy cần thiết. Việc thiết kế template có thể thay đổi thường xuyên hơn là việc
soạn thảo mỗi trang.
1.5.4. Đối với người cập nhật nội dung
Người viết nội dung có thể tập trung vào việc viết nội dung mà không cần
quan tâm tới việc thiết kế. nội dung có thể dễ dàng thêm vào cơ sở dữ liệu và hiển
thị lên trang web chỉ bởi việc gõ hay cắt dán text vào form được định nghĩa sẵn
bởi người quản trị hệ thống. Thông tin về nội dung như tiêu đề, mô tả , từ khóa,
tác giả, ngày xuất bản ,ngày xem..v v có thể được thêm vào. Do đó nội dung có thể
dễ dàng update hay dễ dàng tìm kiếm khi cần thiết.
Trang 5
Khoá luận tốt nghiệp SV thực hiện: Hoàng Văn Thắng – MSSV 11030119SB
CMS còn có thể giúp đỡ quản lý workflow và chú trọng và chất lượng của
control bằng cách cho phép cấp quyền cho user. Ví dụ một số user có thể được
phép upload tài nguyên cho CMS bất cứ lúc nào. Trình biên tập có thể thông báo
khi nội dung mới được thêm vào hệ thống. Tài nguyên mới có thể được truy xuất
lên website ngay chỉ bằng một nút nhấn.
CMS có thể dễ dàng cho phép một người dùng dù không biết nhiều về kỹ
thuật cũng có thể dễ dàng thao tác với nội dung website
1.5.5. Những tính năng quan trọng của hệ thống CMS được tích hợp
trên website
− Những template web (với những khả năng update templates nếu cần) : Là
những mẫu website phù hợp với những tiêu chuẩn kỹ thuật web thông thường và

có tính tương tác cao với các browsers và nền tảng khác nhau
− Bảo mật và sự khả năng tác động đúng của từng loại user: ví dụ . Tương
thích với những hệ thống có sẵn: ví dụ nếu chúng ta đã có một cơ sở dữ liệu phù
hợp và sẵn sàng sử dụng chúng. Ví dụ trong trường hợp chúng ta muốn chuyển đổi
những tài liệu word sẵn có sang HTML?
− Không yêu cầu thông hiểu nội dung những kỹ thuật xuất bản hay phát
hành vì có thể không cần đòi hỏi người viết phải có kỹ năng sử dụng HTML hay
các kỹ năng sáng tạo web khác
− Dễ dàng lưu trữ, soạn thảo hay định dạng text, và dễ dàng thêm các nội
dung khác như images, audio hay video tới trang web một cách dễ dàng
− Có khả năng ghi nhận lại thông tin về nội dung(siêu văn bản :metadata)
như là tác giả, khi tài liệu được cập nhật, hay khi nó được xem xét….
− Nếu hệ thống CMS có nhiều user cùng lúc, thì những tính năng ghi nhận
sẽ tránh những sự va chạm không cần thiết.
− Khả năng như thêm, xóa và lưu trữ nội dung; CMS còn có thể cung cấp
nhiều tính năng đặc biệt hơn với một trang trực tuyến.
Trang 6
Khoá luận tốt nghiệp SV thực hiện: Hoàng Văn Thắng – MSSV 11030119SB
− Quản lý các liên kết: Khi một trang mới được thêm hay xóa thì liên kết
tương ứng cũng được cập nhật theo.
− Công cụ cho phép CMS admin quản trị online một cách dễ dàng.
− Có khả năng chạy trên những thiết bị có sẵn.
− CMS có thể sắp xếp workflow từ một cách đơn giản tới phức tạp. Một vài
hệ thống đòi hỏi người dùng biết một số kỹ năng HTML để format text trong khi
một số hệ thống khác chỉ đòi hỏi những kỹ năng xử lý văn bản thông thường
− chỉ những tác giả chính thức của tài nguyên mới có thể thay đổi nội dung
của website.
1.6. Tính năng cơ bản của một trang web CMS:
Một trang web CMS tối thiểu cần phải có những tính năng cơ bản sau:
− Cung cấp công cụ phục vụ quá trình soạn thảo, biên tập, chỉnh lý nội

dung.
− Có hệ thống lưu giữ nội dung chung.
− Quản lý phiên bản tài liệu, giám sát sự thay đổi, cho phép tìm lại nội dung
của tài liệu trước và sau khi thay đổi, biên tập.
− Cung cấp hệ thống thông tin quản lý quy trình xử lý nội dung thông tin.
− Cung cấp khả năng cá nhân hoá thông tin cho người dùng.
− Cung cấp cho người dùng những công cụ tìm kiếm theo thuộc tính, tìm
kiếm trong văn bản giúp nhanh chóng định vị được nội dung thông tin.
1.7. Một số công nghệ để xây dựng CMS
Các công nghệ sử dụng cho việc phát triển các hệ thống CMS cũng rất đa
dạng. Chúng ta có thể lựa chọn một trong những ngôn ngữ sau:
− Java: CMS Genie, CMS Master, Cofax, Contelligent,
Daisy, imCMS, Jahia, jNetpublic, Magolia, NetPotential CM,…
Trang 7
Khoá luận tốt nghiệp SV thực hiện: Hoàng Văn Thắng – MSSV 11030119SB
− Java Script: CMS master, Complete site Manager,
Contenligent, eazyCMS…
− PHP: Acuity CMS, AGPCMS, BackEnd CMS,
CathcCMS, Complete Site Manager…
− C++: Lighthouse, Manila…
− ASP: Acuty CMS, Baseline CMS…
− Cold Fusion: Asset Now, EasyConsole CMS…
− ASP.NET: AxCMS.Net, Composite CMS, Content
XXL – ASPNet, CMSDotnetNuke
− VB.NET: AxCMS.Net, contentXXL - ASPNET…
− C#: Dozing Dogs ASPNET…
− Python: Easy Publisher…
Trang 8
Khoá luận tốt nghiệp SV thực hiện: Hoàng Văn Thắng – MSSV 11030119SB
CHƯƠNG 2: TÌM HIỂU VỀ NET FRAMEWORK

2.1. Định nghĩa
NET Framework là một tập những giao diện lập trình và là tâm điểm của nền
tảng .NET. Nó cung cấp cơ sở hạ tầng để xây dựng và chạy các dịch vụ Web.
.NET Framework bao gồm ba thành phần chính là Common Language Runtime
(bộ thực thi ngôn ngữ chung), The Base Classes (các lớp thư viện cơ sở) và
ASP.NET (các ứng dụng Web). Thực chất ở phần này còn bao gồm cả phần phát
triển các ứng dụng cho Windows có tên Windows Form như được mô tả trong
hình. Nó cung cấp một môi trường đa ngôn ngữ, dựa trên nền các chuẩn với hiệu
nǎng cao, cho phép tích hợp những đầu tư ban đầu với các ứng dụng và dịch vụ
thế hệ kế tiếp và giải quyết những thách thức của việc triển khai và vận hành các
ứng dụng trên quy mô Internet.
2.2. Các thành phần chính của Net framework
2.2.1 Thực thi ngôn ngữ chung CLR (Common Language Runtime)
Tất cả các ngôn ngữ lập trình đều có một runtime (thi hành), một dịch vụ hoạt
động cùng với ngôn ngữ lập trình. Common Language Runtime (CLR là bộ thực
thi ngôn ngữ chung) là một thành phần cốt lõi (cơ bản nhất) của .NET. Nó cung
Trang 9
Các thành phần của Microsoft .NET Framework
Khoá luận tốt nghiệp SV thực hiện: Hoàng Văn Thắng – MSSV 11030119SB
cấp nền cơ sở mà trên đó các ứng dụng cho. NET được xây dựng. CLR quản lý
nhiều khía cạnh của chu trình phát triển theo quan điểm của người phát triển.
Chẳng hạn, khi làm việc với COM (Mô hình đối tượng ), các nhà phát triển phải
lưu tâm đến vấn đề quản lý bộ nhớ, những sự khởi tạo luồng và loại bỏ nó, các
thành phần bảo mật và những vấn đề tương tự. Điều đó gây ra một số khó khǎn do
các nhà phát triển phải tiêu tốn quá nhiều thời gian vào các vấn đề này. Bộ thi
hành ngôn ngữ chung CLR quản lý tất cả các vấn đề nảy sinh đó một cách tự động
và giải phóng cho các nhà phát triển tập trung vào việc xử lý giao dịch logic. CLR
cung cấp một runtime chung mà nó được sử dụng với tất cả các ngôn ngữ. Thành
phần này làm cho .NET có một khả nǎng "hỗ trợ mọi ngôn ngữ" (language-free).
2.2.2 The Base Classes (các lớp cơ sở)

Các lớp cơ sở cho cho chúng ta những đặc tính của runtime (thực hiện) và
cung cấp những dịch vụ cấp cao khác mà những người lập trình đòi hỏi thông qua
namespace. Namespace là một cách đặt tên để giúp sắp đặt các lớp ta dùng trong
chương trình một cách thứ tự để dễ tìm kiếm chúng. Tất cả các mã (code) trong
.NET, được viết bằng VB.NET, C# hay một ngôn ngữ nào khác đều được chứa
trong một namespace. Ví dụ: System.Web.
2.2.3 ASP.NET (Active Server Pages .NET)
ASP.NET là một "khung" lập trình được xây dựng trên bộ thực thi ngôn ngữ
chung (CLR) và được sử dụng trên một máy chủ phục vụ để tạo ra các ứng dụng
Web mạnh. Web Forms của ASP.NET cho phép xây dựng các giao diện người
dùng Web động một cách hiệu quả. Các dịch vụ của ASP.NET cung cấp những
khối hợp nhất cho việc xây dựng các ứng dụng trên nền Web phân tán. Những
dịch vụ Web dựa trên các chuẩn Internet mở như HTTP
(1)
và XML
(2)
. Bộ thực thi
ngôn ngữ chung CLR cung cấp sự hỗ trợ dựng sẵn để tạo và đưa ra những dịch vụ
Web thông qua việc sử dụng một khái niệm trừu tượng hoá lập trình phù hợp và
thân thiện với các nhà phát triển cho cả ASP Web Forms và Visual Basic. Mô hình
thu được vừa dễ biến đổi, vừa dễ mở rộng. Mô hình này dựa trên các chuẩn
Internet mở (HTTP
(1)
, XML
(2)
, SOAP
(3)
) để nó có thể được truy cập và thông dịch
bởi bất cứ một Client hay thiết bị hỗ trợ Internet nào.
Trang 10

Khoá luận tốt nghiệp SV thực hiện: Hoàng Văn Thắng – MSSV 11030119SB
Một trong các lớp của ASP.NET là System.Web. Trong System.Web
namespace có các dịch vụ mức thấp như lưu giữ (caching), bảo mật, cấu hình và
những dịch vụ khác được chia xẻ giữa các dịch vụ Web và giao diện người dùng
Web. Các lớp System.Web.Services xử lý các dịch vụ Web như các giao thức và
phát hiện. System.Web.UI namespace cung cấp hai lớp cho các điều khiển là các
điều khiển HTML và các điều khiển Web. Điều khiển HTML cho chúng ta ánh xạ
trực tiếp vào các thẻ HTML như input (đầu vào). Cũng có những điều khiển Web
cho phép chúng ta cấu trúc lại các điều khiển với những khuôn mẫu (template), ví
dụ như một grid control (đối tượng điều khiển lưới).
Ngoài ASP.NET, .NET Framework còn cung cấp một bộ thư viện lớp thiết kế
giao diện cho các nhà phát triển các ứng dụng trên nền Windows. Có hai
namespace là System.WinForm và System.Drawing. Chúng ta có thể sử dụng các
lớp trong System.WinForm để xây dựng giao diện người dùng khách (Client). Các
lớp này cho phép chúng ta thực hiện các giao diện người dùng Windows chuẩn
trong các ứng dụng .NET của chúng ta. Chúng ta cũng có thể sử dụng lớp
System.Drawing để truy nhập vào các đặc tính mới của giao diện đồ hoạ. Lớp này
hỗ trợ cho thế hệ kế tiếp của giao diện đồ hoạ là đồ hoạ hai chiều.
.NET Framework được tạo bởi từ hàng trǎm lớp. Nhiều ứng dụng mà chúng ta
xây dựng trong .NET đang tận dụng các lớp này theo cách này hay cách khác. Vì
số lượng các lớp là quá lớn, .NET Framework tổ chức các lớp này vào một cấu
trúc lớp được gọi là một namespace. Có một số lượng lớn các namespace và chúng
được tổ chức theo cách dễ hiểu và minh bạch. System là một Namespace cơ sở
trong .NET Framework. Tất cả các Namespace được cung cấp trong .NET
framework bắt đầu với Namespace cơ sở này. Ví dụ, những lớp phục vụ việc truy
cập và thao tác dữ liệu được tìm thấy trong Namespace System.data. Những ví dụ
khác bao gồm System.IO, System.XML, System.Collections, System.Drawing và
.v.v.. Trong quy tắc đặt tên của Namespace, System.XML.XMLReader đại diện cho
kiểu XMLReader, nó thuộc Namespace System.XML.
Sau đây là hai đoạn mã ví dụ có sử dụng Namespace trong VB.NET và C#

VB:
Trang 11
Khoá luận tốt nghiệp SV thực hiện: Hoàng Văn Thắng – MSSV 11030119SB
Imports System
Public Module HelloWorld
Sub Main()
Console.WriteLine ("Hello World !")
End Sub
End Module
C#:
using System;
Class HelloWorld {public static void Main()
{
Console.WriteLine ("Hello World !");
}
Tóm lại, .NET Framework thật sự quan trọng cho các nhà phát triển các ứng
dụng Web và các dịch vụ Web thế hệ kế tiếp và cho cả các ứng dụng trên nền
Microsoft Windows.
2.3. Hoàn cảnh ra đời
2.3.1. Lịch sử phát triển Web
Khi Web mới bắt đầu được tạo ra, về cơ bản nó là một hệ thống tập tin chỉ có
thể đọc, với ưu điểm là nó sử dụng những chuẩn và giao thức công nghiệp, cho
phép truy cập dễ dàng đến nội dung các tập tin.
Vào buổi ban đầu, Web được phát triển bởi ngôn ngữ lập trình C và CGI
(Giao thức Internet trước đây được sử dụng để tạo ra nội dung tương tác qua
Web). Thêm vào đó, phần lớn các ứng dụng Web được xây dựng trên những kiến
trúc hai lớp (two-tier), gây ra những thách thức xung quanh khả nǎng biến đổi và
tích hợp ứng dụng. Lấy một ví dụ cho vấn đề này là một Website kinh doanh các
thanh rèm cửa nhưng lại không bán các rèm cửa, bắt buộc khách hàng phải tìm
hiểu ít nhất là hai site khác nhau để có thể mua một bộ rèm cửa (bao gồm thanh và

rèm của) cho cửa sổ của họ.
Trang 12
Khoá luận tốt nghiệp SV thực hiện: Hoàng Văn Thắng – MSSV 11030119SB
Từ những ưu thế của COM (Mô hình Đối tượng Thành phần )và sự ra đời các
công nghệ như (ASP) của Microsoft nǎm 1996, các Website cho ra nhiều tương tác
người dùng hơn. ASP thực hiện điều đó một cách dễ dàng để gọi các lôgic doanh
nghiệp
(14)
và các dịch vụ nền tảng mà người phát triển cần thiết thông qua các ngôn
ngữ script đơn giản. Với sự hỗ trợ cho COM, các ứng dụng được viết một cách dễ
dàng thông qua khả nǎng "đóng gói" lôgic doanh nghiệp
(16)
này vào trong các khối
mô-đun được viết trong một phạm vi rộng các ngôn ngữ lập trình phổ biến như
Microsoft Visual Basic, C
++
hay COBOL. Mặc dù vậy, những chiến lược này cho
công việc hợp nhất các ứng dụng vẫn còn có thiếu sót.
Những tiến bộ trong việc phát triển Web nhanh chóng chuyển từ kiến trúc hai
lớp (two-tier) sang một thiết kế N lớp (N-tier
(6)
) mà cho phép một chiến lược hợp
nhất đa dạng hơn qua việc đưa ra các đối tượng doanh nghiệp hay lôgic tầng giữa
(middle-tier) tới việc hợp nhất Web với đối tác. Những thách thức trong việc thử
sử dụng lôgic doanh nghiệp
(16)
được "đóng gói" theo kiểu này là phần lớn các ứng
dụng được thiết kế trên nền các giao thức độc quyền, "ghép nối chặt"
(17)
.

2.3.2. Giải pháp: Các dịch vụ Web XML
Để giải quyết những thách thức trong việc phát triển Internet hiện tại và tương
lai, chúng ta phải có khả nǎng viết các ứng dụng trên bất cứ ngôn ngữ lập trình
nào, truy nhập vào bất cứ nền tảng nào. Chiến lược phát triển ứng dụng rất hấp dẫn
này cho phép các công ty tận dụng các hệ thống phần cứng, các ứng dụng hiện
hành và thuê các nhà phát triển có sẵn, mà không cần "bắt" họ phải chuyển sang
một ngôn ngữ lập trình mới.
Giải pháp này gọi là các dịch vụ Web XML và nó đại diện cho việc phát triển
ứng dụng cho thế hệ kế tiếp. Một dịch vụ Web XML là một ứng dụng cho khả
nǎng hoạt động của nó theo chương trình qua Internet hay intranet khi sử dụng
những giao thức và những chuẩn Internet như HTTP và XML.
2.3.3. Mục đích thiết kế .NET Framework
.NET Framework là thành quả tối ưu của sự kết hợp công sức và trí tuệ của
Microsoft, nhằm tạo ra một nền tảng cho việc xây dựng và triển khai nhanh chóng
Trang 13
Khoá luận tốt nghiệp SV thực hiện: Hoàng Văn Thắng – MSSV 11030119SB
các dịch vụ và ứng dụng Web XML
(2)
. Tầm nhìn của nền tảng .NET Framework
kết hợp một mô hình lập trình đơn giản, dễ sử dụng với các giao thức mở và biến
đổi được của Internet. Để đạt được tầm nhìn này, việc thiết kế .NET Framework
nhằm một số mục đích:
− Sự hợp nhất thông qua các chuẩn Internet công cộng: Để giao tiếp với
những đối tác kinh doanh, những khách hàng phụ thuộc vào các khu vực theo vị trí
địa lý, thậm trí cả những ứng dụng cho tương lai, những giải pháp phát triển cần
được đề nghị hỗ trợ cho các chuẩn Internet mở và tích hợp chặt chẽ với các giao
thức mà không bắt buộc người phát triển phải thông hiểu cơ sở hạ tầng bên dưới
nó.
− Khả nǎng biến đổi được thông qua một kiến trúc "ghép nối lỏng
(5)

": Đa số
các hệ thống lớn, biến đổi được trên thế giới được xây dựng trên những kiến trúc
không đồng bộ dựa trên nền thông điệp (message-based). Nhưng công việc xây
dựng các ứng dụng trên một kiến trúc như vậy thường phức tạp và có ít các công
cụ hơn so với những môi trường phát triển ứng dụng N lớp (N-tier
(6)
). .NET
Framework được xây dựng để đem lại những lợi thế về nǎng suất của kiến trúc với
khả nǎng biến đổi được và vận hành với nhau của kiến trúc "ghép nối lỏng"
(5)
.
− Hỗ trợ nhiều ngôn ngữ: Các nhà phát triển sử dụng những ngôn ngữ khác
nhau do mỗi ngôn ngữ riêng có những ưu thế đặc thù : một số ngôn ngữ đặc biệt
thích hợp với thao tác toán học; một số khác lại đa dạng ở các hàm tính toán tài
chính v.v. .NET Framework cho phép các ứng dụng được viết trong nhiều ngôn
ngữ lập trình khác nhau và chúng có khả nǎng tích hợp với nhau một cách chặt
chẽ. Ngoài ra, với .NET Framework, các công ty còn có thể tận dụng những lợi thế
của kỹ nǎng phát triển sẵn có mà không cần phải đào tạo lại và cho phép những
người phát triển sử dụng ngôn ngữ mà họ ưa thích.
− Nâng cao nǎng suất cho các nhà phát triển: Với số lượng các nhà phát triển
ứng dụng không nhiều nên mỗi giờ làm việc họ phải cho ra kết quả công việc cụ
thể. Các nhóm phát triển với .NET Framework có thể loại bỏ những công việc lập
trình không cần thiết và tập trung vào viết các lôgic doanh nghiệp. Chẳng hạn
như .NET Framework có ưu điểm tiết kiệm thời gian như thực hiện các giao dịch
Trang 14
Khoá luận tốt nghiệp SV thực hiện: Hoàng Văn Thắng – MSSV 11030119SB
tự động và dễ sử dụng, quản lý bộ nhớ một cách tự động và có chứa một tập các
đối tượng điều khiển đa dạng bao hàm nhiều tác vụ phát triển chung.
− Bảo vệ những sự đầu tư thông qua việc bảo mật đã được cải tiến: Một
trong những vấn đề liên quan lớn nhất đến Internet hiện nay là bảo mật. Kiến trúc

bảo mật của .NET Framework được thiết kế từ dưới lên để đảm bảo các ứng dụng
và dữ liệu được bảo vệ thông qua một mô hình bảo mật dựa-trên-bằng-chứng
(evidence-based) và tinh vi.
− Tận dụng những dịch vụ của hệ điều hành: Windows cung cấp một số
lượng đa dạng các dịch vụ có sẵn với bất kỳ nền tảng nào; như truy cập dữ liệu
một cách toàn diện, bảo mật tích hợp, các giao diện người dùng tương tác, mô hình
đối tượng thành phần đáng tin cậy và các giám sát quá trình giao dịch. .NET
Framework đã tận dụng lợi thế đa dạng và phong phú này để đưa ra cho mọi người
theo cách dễ sử dụng nhất.
2.4. Những đặc tính của .NET Framework
2.4.1. Hỗ trợ các chuẩn dịch vụ Web XML
Sự sử dụng ngôn ngữ đánh dấu mở rộng XML
(2)
ở khắp mọi nơi: XML
(2)

một định dạng dữ liệu cho việc trao đổi tài liệu lẫn nhau có cấu trúc trên Web.
.NET Framework sử dụng XML
(2)
ở khắp mọi nơi từ việc mô tả các đối tượng cho
đến bảo mật các tập tin cấu hình.
− Khả nǎng vận hành với nhau qua việc hỗ trợ SOAP
(3)
:
.NET Framework cho phép những người phát triển đưa ra và sử dụng các dịch
vụ Web XML một cách trong suốt thông qua SOAP
(3)
, một vǎn phạm XML chuẩn
tạo khả nǎng thao tác giữa các phần trong ứng dụng.
− Mô tả dễ dàng các dịch vụ Web XML với WSDL:

.NET Framework tạo ra những mô tả WSDL (Ngôn ngữ Mô tả các Dịch vụ
Web) cho các dịch vụ Web XML.
− Đưa ra những dịch vụ Web với SOAP Discovery (viết tắt Disco):
Trang 15
Khoá luận tốt nghiệp SV thực hiện: Hoàng Văn Thắng – MSSV 11030119SB
SOAP Discovery cung cấp cơ chế bởi những dịch vụ Web XML nào được tìm
thấy trên một máy phục vụ Web (Web server). .NET Framework cung cấp một
cách thức để công bố các dịch vụ Web XML thông qua SOAP Discovery.
− Hỗ trợ UDDI
(7)
:
.NET Framework sử dụng UDDI cho phép những dịch vụ Web XML cung cấp
cơ chế bởi những dịch vụ Web XML nào được tìm thấy trên Internet.
2.4.2. Hiệu suất cho người phát triển
− Tích hợp nhiều ngôn ngữ lập trình:
.NET Framework cung cấp khả nǎng tích hợp ngôn ngữ lập-trình-chéo (cross-
programming language), chặt chẽ, thúc đẩy nǎng suất do sự cho phép người phát
triển mở rộng những thành phần một ngôn ngữ lập trình bên trong một ngôn ngữ
khác theo cách kế thừa ngôn-ngữ-chéo (cross-language), gỡ lỗi và xử lý lỗi.
− "Versioning" tự động:
Là phần của bản chất tự mô tả của mỗi thành phần và ứng dụng .NET
Framework ở chỗ mỗi thành phần đó có một tên duy nhất được lưu giữ bên trong.
Do các ứng dụng kết các tên duy nhất của các thành phần lại với nhau, bộ thực
hiện (runtime) của .NET Framework có khả nǎng điều khiển của những thành
phần dùng chung một cách thông minh và làm mất đi cái gọi là "DLL hell"
(8)
.
− Triển khai theo kiểu "No-touch" (không can thiệp):
.NET Framework bao hàm những đặc tính được cải tiến cho việc triển khai
các ứng dụng. Việc cài đặt một ứng dụng vào trong hệ thống cũng đơn giản như

việc sao chép nó vào trong một thư mục đích và cho nó chạy mà không cần đǎng
ký như Windows Registry.
− Quản lý bộ nhớ tự động:
.NET Framework là một môi trường "gom rác" (garbage-ollected). Công việc
"gom rác" giải phóng các ứng dụng sử dụng các đối tượng .NET Framework từ sự
cần thiết loại bỏ dứt khoát các đối tượng này và làm giảm đi những lỗi lập trình
chung không đáng có.
Trang 16
Khoá luận tốt nghiệp SV thực hiện: Hoàng Văn Thắng – MSSV 11030119SB
− Các thành phần tự-mô-tả:
Siêu dữ liệu mà mỗi đối tượng trong .NET Framework chứa đựng cho phép bộ
thực hiện (runtime) "chất vấn" các đối tượng về những kiểu dữ liệu, chức nǎng
hoạt động, v.v. để xác định các đối tượng đã được gọi đúng cách chưa hơn là để
cho lời gọi xảy ra và nhận lấy thất bại. Đặc tính này được gọi là "reflection"
(9)
.
− Mô hình điều khiển giao diện người dùng:
ASP.NET và các đối tượng điều khiển được cải thiện làm tǎng thêm nǎng suất
và hiệu quả do việc "đóng gói" những tương tác phức tạp trong các thành phần
(component) trên máy phục vụ.
− Sự tách biệt giữa mã và nội dung:
Cho phép người phát triển và người tạo ra nội dung làm việc song song với
nhau do việc lưu giữ nội dụng trong một file tách biệt khỏi các mã của ứng dụng.
− Tích hợp nền tảng chặt chẽ:
.NET Framework cho phép những nhà phát triển sử dụng tất cả các ứng dụng
Windows và các dịch vụ hiện hữu. Với ưu thế đó, người phát triển có thể sử dụng
mã đang tồn tại trong khi tận dụng những lợi điểm, thế mạnh trong .NET
Framework.
− Viết ít mã hơn:
Do .NET Framework sử dụng thiết kế "thành phần hóa" cao, những nhà phát

triển có thể tập trung vào việc viết lôgic doanh nghiệp hơn là những công việc như
quản lý bộ nhớ, quản lý trạng thái hay xác định khả nǎng của một trình duỵệt
Client?
2.4.3. Sự nhạy cảm khi giải quyết các thách thức đối với doanh nghiệp
thời nay
− Hỗ trợ những chuẩn Internet công cộng:
Những chuẩn được xem là phần lõi để chuyển giao phần mềm như là một dịch
vụ. Microsoft trình bày những đặc tả cho ngôn ngữ lập trình C# và cơ sở hạ tầng
Trang 17
Khoá luận tốt nghiệp SV thực hiện: Hoàng Văn Thắng – MSSV 11030119SB
ngôn ngữ chung CLI
(10)
(Common Language Infrastructure) và chuyển tới
ECMA
(11)
cho việc chuẩn hóa.
− Hỗ trợ dị bộ (không đồng bộ):
.NET Framework tích hợp hai công nghệ truyền thông dị bộ cho khả nǎng
biến đổi được và tính đáng tin cậy:
− Hỗ trợ giao dịch:
Những nhà phát triển ứng dụng có thể thực hiện cả những công việc thao
tác .NET Framework bên trong các giao dịch có chứa những hoạt động khác như
cập nhật CSDL chẳng hạn. .NET Framework hỗ trợ các giao dịch thông qua MTS
(Microsoft Transaction Services - các Dịch vụ Giao dịch của Microsoft) và
COM+
(12)
và cung cấp một giao diện XA
(13)
tương hợp các chuẩn.
− Biên dịch:

ASP.NET làm tǎng khả nǎng thực hiện bởi việc biên dịch các trang thay vì
phải thông dịch chúng.
− Giám sát phiên:
ASP.NET tự động và khởi động lại làm tǎng thêm độ tin cậy qua việc giám sát
chạy các ứng dụng ASP.NET và thậm chí dừng và bắt đầu lại quá trình chạy nếu
thấy cần thiết.
− Truy nhập dữ liệu toàn bộ với ADO.NET:
.NET Framework có chứa ADO.NET, một giao diện hiệu nǎng truy nhập tới
bất kỳ một CSDL nào được thiết kế riêng cho kiểu "ghép nối lỏng
(5)
". ADO.NET
cung cấp các dịch vụ truy cập dữ liệu cho các ứng dụng trên nền Web biến đổi
được và các dịch vụ Web XML, bao gồm cả sự hỗ trợ mô hình dữ liệu đang kết
nối (connected) cũng như ngừng kết nối (disconnected).
2.4.4. Cải thiện các thao tác
− An ninh bảo mật dựa trên nền tảng bằng chứng (evidence-based):
Hệ thống bảo mật truy cập mã của .NET Framework cho phép các nhà phát
triển định ra những "giấy phép" được yêu cầu rằng mã của họ cần để hoàn thành
Trang 18

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×