PDA

View Full Version : Nhờ các bạn giải thích giùm



vanquyenhp
03-04-2011, 23:33
Chào các bạn, mình đang đọc về C#
Các bạn cho mình hỏi là lập trình ứng dụng theo công nghệ 3 lớp là như thế nào, có phải phần mềm nào hiện nay cũng lập trình theo công nghệ 3 lớp không?
Nhờ các bạn giải thích giùm mình
Thanks các bạn nhiều!!!!!!!!!!!!!!!!!!!!!!!!

serivn
04-04-2011, 00:15
Chào bạn!

Mình có thể nói đôi chút về câu hỏi của bạn như sau:

1. Lập trình theo mô hình 3 lớp hay nhiều lớp có nghĩa là chúng ta phân tách ứng dụng ra thành các tầng riêng biết với một số mục đích như:
- Phân tách các tầng với ngôn ngữ xử lý khác nhau.
- Phân tách việc viết code cho các mục đích hiển thị, xử lý, và nghiệp vụ riêng rẽ để tránh nhầm lẫn cũng như chuyên môn cho từng bộ phận, lập trình viên khi làm việc theo nhóm.
- Tạo ra các ứng dụng dễ bảo trì và nâng cấp, tạo ra những thành phần có thể tái sử dụng lại cho các ứng khác về sau...
Tuy nhiên, ở đây bạn cũng cần phân biệt khai niệm 3 lớp (3 Tier) khác với khái niệm class trong lập trình hướng đối tượng. Nghĩa của 2 từ này rất khác nhau.
2. Để trả lời ý thứ 2 trong câu hỏi của bạn mình có thể nói thế này. Từ trên chúng ta thấy việc sử dụng mô hình 3 lớp có rất nhiều các lợi ích nên hâu hết các phần mềm "nên" sử dụng trong quá trình phát triển. Tuy nhiên, không phải bất cứ phần mềm nào cũng cần thiết phải sử dụng, điều này còn phụ thuộc vào quy mô phần mềm cũng như cụ thể bài toán nữa. Một điều nữa là trong khi phát triển phần mềm, không phải chỉ có duy nhất mô hình 3 lớp hay đa lớp được sử dụng mà còn một số mô hình khác cũng thường được áp dụng như MVC (Model,View,Controller), hay MVVM (Model-View-ViewModel),...

OK! Hy vọng có thể giúp gì đó cho bạn!
Thân!

Ps: Bạn có thể tham khảo vào thảo luận thêm về lập trình tại blog: http://ictsharing.i-svn.net

vanquyenhp
04-04-2011, 09:35
Thanks bạn serivn đã giúp đỡ
Bạn có thể giải thích thêm cho mình về từng lớp trong mô hình 3 lớp và một ví dụ về chương trình phát triển theo mô hình 3 lớp?
Thanks bạn nhiều

vanquyenhp
04-04-2011, 10:02
Thanks bạn serivn đã giúp đỡ
Bạn có thể giải thích thêm cho mình về từng lớp trong mô hình 3 lớp và một ví dụ về chương trình phát triển theo mô hình 3 lớp?
Thanks bạn nhiều

kennywoo
04-04-2011, 11:39
Có lẽ bạn serivn đang lẫn lộn giữa tier và layer .
Để hiểu rõ về sự khác biệt các bạn xem hình
http://img823.imageshack.us/img823/7261/tiervslayer.jpg (http://img823.imageshack.us/i/tiervslayer.jpg/)
Như serivn nói tùy theo độ lớn và qui mô của dự án cũng như tính reuseable của phần mềm chúng ta sử dụng design pattern (tier - layer) hay không?
Hiện tại mình đang bận, khi nào rảnh mình sẽ viết một bài để phân biệt rõ Tier VS Layer cho các bạn.

serivn
04-04-2011, 17:30
OK! Thanks bạn kenywoo. Đúng là mình cũng không để ý lắm về phân biệt Tier và layer. Có lần đã đọc ở đâu đó nhưng lại quên béng mất :D.. thanks lần nữa nha!

#vanquyenhp: Về chi tiết các thành phần trong mô hình 3 lớp, ở đây chúng ta sẽ nói về 3 Layer nhé :D,trên ddth và nhiều trang có nói tới, ví dụ bạn có thể tham khảo tạo đây: http://duriangroup.wordpress.com/2007/06/16/l%E1%BA%ADp-trinh-v%E1%BB%9Bi-mo-hinh-3-l%E1%BB%9Bp-3-layers-n-tiers-3-tiers-multi-tiers/

Thân!