Tổng quan đề tài: Phát triển trang web mạng xã hội trên desktop và mobile là vô cùng cần thiết với người dùng hiện nay.. Điển hình như một số website mạng xã hội: tumblr, zalo, faceboo
Trang 1ĐỒ ÁN MÔN HỌC
MÔN: PHÁT TRIỂN ỨNG DỤNG WEB
Lớp: IS207.M12.HTCL
ĐỀ TÀI: WEB MẠNG XÃ HỘI
Thành viên nhóm: Nguyễn Anh Dũng -1952
Trịnh Công Danh -19521326 Nguyễn Trọng Doanh 1952
Giảng viện hướng dẫn : TS.Mai Xuân Hùng
Trang 2MỤC LỤC
I Giới thiệu: 3
1 Tổng quan đề tài: 3
2 Lý do chọn đề tài: 3
3 Mục tiêu của đề tài: 3
II Nghiên cứu liên quan: 4
1 Các dự án tương đồng: 4
a Facebook: 4
b Zalo: 4
2 So sánh các ứng dụng: 4
III Các công nghệ được sử dụng : 4
1 Ngôn ngữ lập trình PHP: 4
a PHP là gì? 4
b Ưu điểm? 4
2 Cơ sở dữ liệu MySQL: 5
a MySQL là gì ? 5
b Ưu điểm: 5
c Nhược điểm: 5
IV Yêu cầu người dùng: 6
1 Thiết kế Database: 6
a) Sơ đồ ERD – Mô hình quan hệ: 6
b) Table users: 6
c) Table posts: 7
d) Table share_posts: 7
e) Table notifies: 7
f) Table messages: 7
g) Table like_posts: 7
h) Table images: 7
i) Table group message: 8
j) Table comment_posts: 8
V Giao diện người dùng: 9
1 Thiết kế giao diện: 9
i Màn hình đăng nhập – đăng kí: 9
ii Trang chủ: 10
iii Profile: 10
iv Message: 11
Tieu luan
Trang 3I Giới thiệu:
1 Tổng quan đề tài:
Phát triển trang web mạng xã hội trên desktop và mobile là vô cùng cần thiết với người dùng hiện nay Khách hàng có thể cập nhật tin tức của bạn bè, người thân hoặc rộng hơn đó là tin tức thời sự trong đời sống
Kết nối thêm nhiều người dùng ở khắp mọi nơi
2 Lý do chọn đề tài:
Cùng với quá trình toàn cầu hóa và sự phát triển của công nghệ thông tin, mạng internet trên thế giới và Việt Nam ngày càng phát triển mạnh
mẽ Sự tham gia của các cá nhân trên mạng ngày càng tích cực; và nhu cầu chia sẻ thông tin, kết nối bạn bè là nhu cầu thiết yếu thúc đẩy sự ra đời và phát triển của các mạng xã hội.
Hiện nay, tình hình phát triển của các mạng xã hội cũng rất khả quan
Số lượng người truy cập và đăng ký thành viên ở các mạng xã hội này ngày càng tăng Điển hình như một số website mạng xã hội: tumblr, zalo, facebook,… Tuy nhiên, dù đã có rất nhiều các trang mạng xã hội như thế nhưng nhu cầu của người dùng vẫn rất cao và tính phân loại càng cần thiết.
3 Mục tiêu của đề tài:
Chúng ta có thể kết nối với mọi người thông qua ứng dụng bằng cách trò chuyện thông qua tin nhắn , hoặc thể hiện cảm xúc thông qua những bình luận trong những bài viết mà mọi người đăng trên mạng
xã hội
Tạo ra một nơi phù hợp cho mọi lứa tuổi với một giao diện dễ dàng nhận diện và sử dụng cùng với các tính năng cơ bản cho người dùng.
Trang 4II Nghiên cứu liên quan:
1 Các dự án tương đồng:
a Facebook:
Facebook là một trong những mạng xã hội hàng đầu thế giới hiện nay, là nơi kết nối tất cả mọi người lại với nhau trên toàn thế giới Tương tự như mạng Internet, Facebook tạo ra một thế giới phẳng - nơi không còn khoảng cách địa lý cho phép tất cả người dùng đăng tải và chia sẻ trạng thái, thông tin cá nhân và tương tác với người khác.
b Zalo:
Zalo là một trong những ứng dụng cực kỳ phổ biến tại thị trường Việt nam Zalo cho phép nhắn tin và gọi điện miễn phí trong nội bộ những người dùng Zalo và cùng với đó cũng giống như Facebook,
nó cũng là nơi dễ dàng để khách hàng kết nối với tất cả mọi người.
2 So sánh các ứng dụng:
Các ứng dụng đều có các tính năng cơ bản như nhắn tin, đọc thông báo
Đều có tính năng đăng tải các bài viết, hình ảnh
Người dùng có thể bình luận với nhau thông qua các bài viết đã đăng tải
III Các công nghệ được sử dụng :
1 Ngôn ngữ lập trình PHP:
a PHP là gì?
PHP còn được gọi là Hypertext Pre-processor (Bộ tiền xử lý Siêu văn
bản) PHP là một Ngôn ngữ kịch bản phía máy chủ, mã nguồn mở
chủ yếu được sử dụng để phát triển các ứng dụng web.
b Ưu điểm?
Là ngôn ngữ dễ đọc, dễ sử dụng
Có nhiều mã nguồn mở và miễn phí
Chạy trên nhiều hệ điều hành (Windows, Linux, MacOS, )
Hỗ trợ nhiều loại cơ sở dữ liệu (SQL, nonSQL )
Tieu luan
Trang 52 Cơ sở dữ liệu MySQL:
a MySQL là gì ?
MySQL là một hệ thống quản trị cơ sở dữ liệu mã nguồn mở (gọi tắt là
RDBMS) hoạt động theo mô hình client-server Với RDBMS là viết tắt của Relational Database Management System MySQL được tích hợp apache, PHP MySQL quản lý dữ liệu thông qua các cơ sở dữ liệu.
Mỗi cơ sở dữ liệu có thể có nhiều bảng quan hệ chứa dữ liệu MySQL cũng có cùng một cách truy xuất và mã lệnh tương tự với ngôn ngữ SQL.
b Ưu điểm:
Dễ sử dụng: MySQL là cơ sở dữ liệu tốc độ cao, ổn định, dễ sử
dụng và hoạt động trên nhiều hệ điều hành cung cấp một hệ thống lớn các hàm tiện ích rất mạnh.
Độ bảo mật cao: MySQL rất thích hợp cho các ứng dụng có truy
cập CSDL trên Internet khi sở hữu nhiều nhiều tính năng bảo mật thậm chí là ở cấp cao.
Đa tính năng: MySQL hỗ trợ rất nhiều chức năng SQL được
mong chờ từ một hệ quản trị cơ sở dữ liệu quan hệ cả trực tiếp lẫn gián tiếp.
Khả năng mở rộng và mạnh mẽ: MySQL có thể xử lý rất nhiều
dữ liệu và hơn thế nữa nó có thể được mở rộng nếu cần thiết.
Nhanh chóng: Việc đưa ra một số tiêu chuẩn cho phép MySQL để
làm việc rất hiệu quả và tiết kiệm chi phí, do đó nó làm tăng tốc độ thực thi.
c Nhược điểm:
Độ tin cậy: Cách các chức năng cụ thể được xử lý với MySQL (ví
dụ tài liệu tham khảo, các giao dịch, kiểm toán,…) làm cho nó kém tin cậy hơn so với một số hệ quản trị cơ sở dữ liệu quan hệ khác.
Dung lượng hạn chế: Nếu số bản ghi của bạn lớn dần lên thì việc
truy xuất dữ liệu của bạn là khá khó khăn, khi đó chúng ta sẽ phải
áp dụng nhiều biện pháp để tăng tốc độ truy xuất dữ liệu như là chia tải database này ra nhiều server, hoặc tạo cache MySQL
Trang 6IV Yêu cầu người dùng:
1 Thiết kế Database:
a) Sơ đồ ERD – Mô hình quan hệ:
b) Table users:
Tieu luan
Trang 7c) Table posts:
d) Table share_posts:
ngoại)
e) Table notifies:
Tên thuộc tính Kiểu dữ liệu Mô tả
ngoại)
f) Table messages:
Id_groupMessag e
g) Table like_posts:
Trang 8h) Table images:
ngoại)
i) Table group message:
chính)
Image_groupMessag
j) Table comment_posts:
Content_commen t
ngoại)
Tieu luan
Trang 9V Giao diện người dùng:
1 Thiết kế giao diện:
i Màn hình đăng nhập – đăng kí:
Trang 10ii Trang chủ:
iii Profile:
Tieu luan