Mục lục
- Các bài học Silverlight 1.0 (Đến bài đầu tiên)
- Các bài học Silverlight 2.0 (Đến bài đầu tiên) (Tải về dạng PDF)
- Tất cả các bài viết về Silverlight
- Hỏi đáp Silverlight (Cập nhật ngày 16/04/2008 )
- LINQ to SQL (Tải về dạng PDF)
- Hỏi đáp LINQ (Cập nhật ngày 09/06/2009 )
- Và đây là album mới nhất của 2 anh em Ga (01/06/2009)
- Microsoft .NET
- Giải trí
- Android
- Tin tức
- Những bức ảnh từ Frankfurt và Oslo (cập nhật 21/5/2008 )
- Phần mềm StockViewer
Profile:
- Ngôn ngữ đang dùng: Java, C# và VB.NET
- Hệ điều hành: Vista Enterprise (có bản quyền
) - Công nghệ đang dùng: J2ME, WPF, ASP.NET, Silverlight…
- Database: SQL Server 2008 (có bản quyền
) - IDE đang dùng: VS 2008 (có bản quyền
) và eclipse
QUẢNG CÁO
Mỹ phẩm mini size nhập trực tiếp từ nước ngoài, mong anh em ủng hộ mua tặng chị em
, xem thêm tại http://www.xuanhanh.com
Sách sắp dịch
- PC Assembly Language(http://www.drpaulcarter.com/pcasm/): Đây là một quyển sách về Assembly khá cơ bản, phù hợp với những người mới bắt đầu.
Hỏi đáp về mô hình 3 lớp
1. Mô hình 3 lớp (3-tiers) là gì?
Theo wikipedia thì:
“3-tiers là một kiến trúc kiểu client/server mà trong đó giao diện người dùng (UI-user interface), các quy tắc xử lý(BR-business rule hay BL-business logic), và việc lưu trữ dữ liệu được phát triển như những module độc lập, và hầu hết là được duy trì trên các nền tảng độc lập, và mô hình 3 lớp (3-tiers) được coi là một kiến trúc phần mềm và là một mẫu thiết kế.” (dịch lại từ wikipedia tiếng Anh).
Như vậy, ta có thể mô hình này phân tách ứng dụng ra làm 3 module riêng biệt, bao gồm:
- Lớp Presentation: được dùng để giao tiếp với người dùng, nhiệm vụ chính là hiển thị dữ liệu và nhận dữ liệu từ người dùng.
- Lớp Business Logic: nhiệm vụ chính là cung cấp các chức năng của phần mềm.
- Lớp Data: lưu trữ dữ liệu, cho phép lớp Business Logic có thể tìm kiếm, trích xuất, cập nhật… dữ liệu.
2. Tại sao là 3-tiers mà không phải là 3-layers?
Khi dùng từ layer, chúng ta nói tới việc phân chia ứng dụng thành các thành phần một cách logic theo chức năng hoặc theo vai trò, điều này giúp phần mềm của bạn có cấu trúc sáng sủa, dễ dùng lại, từ đó giúp việc phát triển và bảo trì dễ dàng hơn. Các layer khác nhau khi được thực thi vẫn có thể nằm trong cùng một vùng bộ nhớ của một process, và hiển nhiên việc giao tiếp giữa 2 layer có thể không phải là giao tiếp giữa 2 process, đồng nghĩa với việc chúng không liên quan tới mô hình client/server.
Trái lại, tier liên quan đến cách phân chia một cách vật lý các thành phần trên các máy tính khác nhau.
Điều làm nhiều người nhầm lẫn giữa layer và tier là chúng có cùng cách phân chia (presentation, business, data), tuy nhiên trên thực tế chúng khác nhau. Vì cách phân chia như trên nên 1 tier có thể chứa nhiều hơn 1 layer.
3. 3-tiers có những ưu và nhược điểm gì?
3-tiers là một kiến trúc phần mềm, có nghĩa là bạn có thể dùng nó để xây dựng nên bộ khung tổng thể của ứng dụng. Tuy nhiên bạn cần chú ý những ưu và nhược điểm sau đây để áp dụng nó một cách đúng đắn.
Ưu điểm:
4. Những công nghệ nào hỗ trợ xây dựng các ứng dụng 3-tiers?
Tùy thuộc vào nền tảng, bạn có thể chọn một trong các công nghệ như EJB (J2EE), COM+ (Windows), hay cũng có thể dùng các máy chủ web như nền tảng xây dựng lớp giữa (dùng webservice). Tuy nhiên, EJB và COM+ là hai tùy chọn tốt nhất vì nó có nhiều công nghệ hỗ trợ như Object Pooling, Authentication và Authority, Resource management, Remote Object Access, Transaction…
Các công nghệ truyền thông điệp như JMS hay MSMQ cũng hỗ trợ nhiều trong việc tạo các lời gọi không đồng bộ.
5. Các ứng dụng máy chủ cơ sở dữ liệu có liên quan gì đến mô hình này không?
Có, nó đóng vai trò lớp Data.
Bản thân khi hoạt động, máy chủ CSDL trở thành 1 phần không thể thiếu trong hệ thống, nó chính là nơi chứa dữ liệu của bạn. Việc dùng một hệ CSDL sẵn có là việc nên làm vì nó giúp chúng ta rất nhiều công sức, nhưng điều đó không có nghĩa là nó không thuộc vào hệ thống của chúng ta, chỉ khác ở chỗ đây là một lớp Data được xây dựng sẵn.
6. Lớp Data Access Layer (DAL) thuộc lớp nào?
Lớp Business Logic.
Trái với nhiều người nghĩ, cứ cái gì có chữ Data thì nó phải thuộc lớp 3, tuy nhiên vì DAL chỉ đóng vai trò truy vấn, chứ bản thân nó không cung cấp dữ liệu, và nó vẫn phải được thực thi bởi các Business Object, vậy nên trong đa số trường hợp nó sẽ nằm trong lớp 2 (một số thiết kế tách nó riêng thành 1 tier).
Nên nhớ rằng việc tách riêng ra một DAL giúp bạn có một thiết kế tốt hơn, nhưng không phải là bắt buộc. Và việc tự tạo một DAL với việc dùng chung một tập các lớp truy xuất dữ liệu được cung cấp bởi một công nghệ/công cụ có sẵn như LINQ to SQL, NHibernate hay Entity Framework không có gì khác nhau về kiến trúc hệ thống.
7. Tôi nên kiểm tra dữ liệu nhập bởi người dùng ở lớp nào?
8. Tôi có một ứng dụng, nó không có giao diện người dùng vì nó chỉ nhận dữ liệu từ các ứng dụng khác, tôi có thể viết theo mô hình 3-tiers được không?
9. Tôi nên đọc thêm tài liệu nào để hiểu kỹ hơn về mô hình 3 lớp và cách dùng hiệu quả các công nghệ như EJB và COM+?
Bạn có thể đọc thêm 2 quyển:
- Designing Enterprise Applications with the J2EE Platform, Second Edition, dành cho người làm J2EE (http://java.sun.com/blueprints/guidelines/designing_enterprise_applications_2e/).
- Application Architecture Guide 2.0, quyển này của các bác MS (http://www.codeplex.com/AppArchGuide/)
Ngay cả khi chưa viết ứng dụng mới mô hình 3-tiers thì bạn cũng RẤT RẤT RẤT nên đọc 2 quyển trên.
(Đang cập nhật thêm, nếu có thắc mắc, các bạn có thể post vào phần comment ở dưới)
Visual Studio 2010 and .NET Framework 4 sẽ có thêm phiên bản RC
Do một số cập nhật, đặc biệt liên quan đến vấn để hiệu năng, nhóm phát triển VS 2010 đã quyết định đưa ra thêm phiên bản RC (Release Candidate), phiên bản này sẽ được ra mắt vào khoảng tháng 2/2010.
Hướng dẫn dịch và chạy thử Chrome OS
Sau đây là hướng dẫn dành cho các bạn muốn tự dịch thử một bản Chrome OS
Những điều cần biết về Google Chrome OS
Như chúng ta đã biết, Google vừa công bố dự án hệ điều hành Chrome OS, vậy chúng ta cùng tìm hiểu các đặc điểm của hệ điều hành này.
Những tính năng mới trong WPF 4
StockViewer 0.70
Phiên bản này đã cập nhật đầy đủ bảng thông tin doanh nghiệp niêm yết và cho phép tải về các file tài liệu, báo cáo của doanh nghiệp.
Tải về tại đây: http://www.daohainam.com/download/stockviewer.070.exe
Hi vọng nhận được ý kiến đóng góp của các bạn.
Clean Web.Config Files (VS 2010 and .NET 4.0 Series)
Đây là bài đầu tiên trong loạt bài về VS 2010 và .NET 4.0.
Có thể bài viết này hơi ngắn, nhưng đây là một thay đổi hay, thay đổi đầu tiên sẽ đến với bản ASP.NET 4.0 là: file web.config đơn giản, sáng sủa hơn.
Bạn sẽ thấy ngay điều này ngay khi tạo một dự án ASP.NET 4.0 mới (đó là lý do tại sao tôi chọn bài này là bài đầu tiên).
VS 2010 and .NET 4 Series
Tiếp theo các loạt bài về LINQ, Silverlight… trong thời gian tới, tôi sẽ bắt đầu dịch loạt bài VS 2010 and .NET 4 Series của MR.ScottGu. Loạt bài này giới thiệu về những thay đổi có trong phiên bản kế tiếp của .NET và trình IDE nổi tiếng Visual Studio.
Link các bài viết gốc tại đây: http://weblogs.asp.net/scottgu
Bài viết này sẽ được cập nhật danh sách các bài dịch.
Hi vọng loạt bài này sẽ giúp chúng ta tìm hiểu kỹ hơn và tận dụng những ưu điểm mới của .NET 4.0 và VS 2010.













Phản hồi đã bị khóa